262 lines
12 KiB
C#
262 lines
12 KiB
C#
using HL_FristAidPlatform_Help;
|
|
using HL_FristAidPlatform_IDataBase;
|
|
using HL_FristAidPlatform_Models;
|
|
using SqlSugar;
|
|
using System.Collections.Generic;
|
|
|
|
namespace HL_FristAidPlatform_DataBase
|
|
{
|
|
public class T_Base_TimeAxisDB : BaseDB, IT_Base_TimeAxis
|
|
{
|
|
public SqlSugarClient db = GetClient();
|
|
|
|
#region 增
|
|
public bool Add(T_Base_TimeAxis menu)
|
|
{
|
|
return db.Insertable(menu).IgnoreColumns(ignoreNullColumn: true).ExecuteCommand() == 1 ? true : false;
|
|
}
|
|
#endregion
|
|
|
|
#region 改
|
|
public bool Update(T_Base_TimeAxis menu)
|
|
{
|
|
return db.Updateable(menu).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommand() == 1 ? true : false;
|
|
}
|
|
#endregion
|
|
|
|
#region 删
|
|
public bool Dels(dynamic[] ids)
|
|
{
|
|
return db.Deleteable<T_Base_TimeAxis>().In(new dynamic[] { ids }).ExecuteCommand() == 1 ? true : false;
|
|
}
|
|
#endregion
|
|
|
|
#region 查
|
|
public T_Base_TimeAxis Get(long id)
|
|
{
|
|
return db.Queryable<T_Base_TimeAxis>().First(it => it.ID == id);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 分页获取列表
|
|
/// </summary>
|
|
/// <param name="pageIndex">起始页</param>
|
|
/// <param name="pageSize">每页大小</param>
|
|
/// <param name="systemModuleID">所属系统模块</param>
|
|
/// <param name="groupID">所属分组</param>
|
|
/// <param name="parentID">父级节点</param>
|
|
/// <param name="keyWord">关键词</param>
|
|
/// <returns></returns>
|
|
public TableModel<T_Base_TimeAxisModel> GetPageList(int pageIndex, int pageSize, long systemModuleID, long groupID, long parentID, string keyWord)
|
|
{
|
|
int TotalNumber = 0;
|
|
TableModel<T_Base_TimeAxisModel> t = new TableModel<T_Base_TimeAxisModel>();
|
|
|
|
var listMode = db.Queryable<T_Base_TimeAxis, T_Base_TimeAxis, T_Base_TimeAxisGroup, T_SYS_SystemModule>((TimeAxis, Parent, AxisGroup, System) => new object[] {
|
|
JoinType.Left,TimeAxis.ParentID==Parent.ID,
|
|
JoinType.Left,TimeAxis.GroupID==AxisGroup.ID,
|
|
JoinType.Left,TimeAxis.SystemModuleID==System.ID,
|
|
}).Where((TimeAxis, Parent, AxisGroup, System) => TimeAxis.DeleteFlag == 0 && AxisGroup.DeleteFlag == 0 && System.DeleteFlag == 0)
|
|
.WhereIF(systemModuleID > 0, (TimeAxis, Parent, AxisGroup, System) => TimeAxis.SystemModuleID == systemModuleID)
|
|
.WhereIF(groupID > 0, (TimeAxis, Parent, AxisGroup, System) => TimeAxis.GroupID == groupID)
|
|
.WhereIF(parentID > 0, (TimeAxis, Parent, AxisGroup, System) => TimeAxis.ID == parentID)
|
|
.WhereIF(!string.IsNullOrEmpty(keyWord), (TimeAxis, Parent, Group, System) => TimeAxis.TimeName.Contains(keyWord))
|
|
.Select((TimeAxis, Parent, AxisGroup, System) => new T_Base_TimeAxisModel
|
|
{
|
|
ID = TimeAxis.ID,
|
|
GUID = TimeAxis.GUID.ToString(),
|
|
SystemModuleID = TimeAxis.SystemModuleID,
|
|
ParentID = TimeAxis.ParentID,
|
|
TimeName = TimeAxis.TimeName,
|
|
Interval = TimeAxis.Interval,
|
|
ContrastTimeAxisID = TimeAxis.ContrastTimeAxisID,
|
|
IsPrintBarCode = TimeAxis.IsPrintBarCode,
|
|
PrintBarCodeNumber = TimeAxis.PrintBarCodeNumber,
|
|
Describe = TimeAxis.Describe,
|
|
GroupID = TimeAxis.GroupID,
|
|
LocationX = TimeAxis.LocationX,
|
|
LocationY = TimeAxis.LocationY,
|
|
OrderBy = TimeAxis.OrderBy,
|
|
IsDisplayTimeAxis = TimeAxis.IsDisplayTimeAxis,
|
|
Form_Flag = TimeAxis.Form_Flag,
|
|
From_Table = TimeAxis.From_Table,
|
|
From_Columns = TimeAxis.From_Columns,
|
|
DeleteFlag = TimeAxis.DeleteFlag,
|
|
CreationDate = TimeAxis.CreationDate,
|
|
ModificationDate = TimeAxis.ModificationDate,
|
|
ParentName = Parent.TimeName.ToString(),
|
|
GroupName = AxisGroup.GroupName,
|
|
SystemModule = System.SystemName,
|
|
IsPrintBarCodeCase = TimeAxis.IsPrintBarCode.ToString(),
|
|
IsDisplayTimeAxisCase = TimeAxis.IsDisplayTimeAxis.ToString(),
|
|
}).OrderBy((TimeAxis) => TimeAxis.OrderBy).ToPageList(pageIndex, pageSize, ref TotalNumber);
|
|
|
|
t.Code = 0;
|
|
t.PageCount = listMode.Count;
|
|
t.TotalNumber = TotalNumber;
|
|
t.Data = listMode;
|
|
t.Msg = "成功";
|
|
return t;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取当前系统所有节点
|
|
/// </summary>
|
|
/// <param name="systemModuleID">所属系统模块</param>
|
|
/// <returns></returns>
|
|
public TableModel<T_Base_TimeAxisModel> GetListBySystemModuleID(long systemModuleID)
|
|
{
|
|
TableModel<T_Base_TimeAxisModel> t = new TableModel<T_Base_TimeAxisModel>();
|
|
|
|
var listMode = db.Queryable<T_Base_TimeAxis, T_Base_TimeAxis, T_Base_TimeAxisGroup, T_SYS_SystemModule>((TimeAxis, Parent, AxisGroup, System) => new object[] {
|
|
JoinType.Left,TimeAxis.ParentID==Parent.ID,
|
|
JoinType.Left,TimeAxis.GroupID==AxisGroup.ID,
|
|
JoinType.Left,TimeAxis.SystemModuleID==System.ID,
|
|
}).Where((TimeAxis, Parent, AxisGroup, System) => TimeAxis.DeleteFlag == 0 && AxisGroup.DeleteFlag == 0 && System.DeleteFlag == 0)
|
|
.WhereIF(systemModuleID > 0, (TimeAxis, Parent, AxisGroup, System) => TimeAxis.SystemModuleID == systemModuleID)
|
|
.Select((TimeAxis, Parent, AxisGroup, System) => new T_Base_TimeAxisModel
|
|
{
|
|
ID = TimeAxis.ID,
|
|
GUID = TimeAxis.GUID.ToString(),
|
|
SystemModuleID = TimeAxis.SystemModuleID,
|
|
ParentID = TimeAxis.ParentID,
|
|
TimeName = TimeAxis.TimeName,
|
|
Interval = TimeAxis.Interval,
|
|
ContrastTimeAxisID = TimeAxis.ContrastTimeAxisID,
|
|
IsPrintBarCode = TimeAxis.IsPrintBarCode,
|
|
PrintBarCodeNumber = TimeAxis.PrintBarCodeNumber,
|
|
Describe = TimeAxis.Describe,
|
|
GroupID = TimeAxis.GroupID,
|
|
LocationX = TimeAxis.LocationX,
|
|
LocationY = TimeAxis.LocationY,
|
|
IsDisplayTimeAxis = TimeAxis.IsDisplayTimeAxis,
|
|
Form_Flag = TimeAxis.Form_Flag,
|
|
From_Table = TimeAxis.From_Table,
|
|
From_Columns = TimeAxis.From_Columns,
|
|
OrderBy = TimeAxis.OrderBy,
|
|
DeleteFlag = TimeAxis.DeleteFlag,
|
|
CreationDate = TimeAxis.CreationDate,
|
|
ModificationDate = TimeAxis.ModificationDate,
|
|
ParentName = Parent.TimeName.ToString(),
|
|
GroupName = AxisGroup.GroupName,
|
|
SystemModule = System.SystemName,
|
|
IsPrintBarCodeCase = TimeAxis.IsPrintBarCode.ToString(),
|
|
IsDisplayTimeAxisCase = TimeAxis.IsDisplayTimeAxis.ToString(),
|
|
}).OrderBy((TimeAxis) => TimeAxis.OrderBy).ToList();
|
|
|
|
t.Code = 0;
|
|
t.PageCount = listMode.Count;
|
|
t.TotalNumber = listMode.Count;
|
|
t.Data = listMode;
|
|
t.Msg = "成功";
|
|
return t;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据父级节点获取子节点
|
|
/// </summary>
|
|
/// <param name="parentID"></param>
|
|
/// <returns></returns>
|
|
public TableModel<T_Base_TimeAxis> GetTimeAxis(int parentID)
|
|
{
|
|
List<T_Base_TimeAxis> dt = db.Queryable<T_Base_TimeAxis>().Where(w => w.ParentID == parentID).OrderBy("OrderBy asc").ToList();
|
|
TableModel<T_Base_TimeAxis> t = new TableModel<T_Base_TimeAxis>();
|
|
t.Code = 0;
|
|
t.PageCount = dt.Count;
|
|
t.TotalNumber = 1;
|
|
t.Data = dt;
|
|
t.Msg = "成功";
|
|
return t;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 通过节点组编号获取该组内所有父节点为0的节点列表
|
|
/// </summary>
|
|
/// <param name="parentID">节点组编号</param>
|
|
/// <returns></returns>
|
|
public TableModel<T_Base_TimeAxis> GetTimeAxisByGroupID(int groupId)
|
|
{
|
|
List<T_Base_TimeAxis> dt = db.Queryable<T_Base_TimeAxis>().WhereIF(groupId != -1, it => it.GroupID == groupId).Where(it => it.DeleteFlag == 0).OrderBy(it => it.OrderBy).ToList();
|
|
TableModel<T_Base_TimeAxis> t = new TableModel<T_Base_TimeAxis>();
|
|
t.Code = 0;
|
|
t.PageCount = dt.Count;
|
|
t.TotalNumber = 1;
|
|
t.Data = dt;
|
|
t.Msg = "成功";
|
|
return t;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 通过节点组编号获取该组内所有父节点为0的节点列表
|
|
/// </summary>
|
|
/// <param name="isPrintBarCode">是否打印条码</param>
|
|
/// <param name="systemModuleID">所属模块ID</param>
|
|
/// <returns></returns>
|
|
public TableModel<T_Base_TimeAxisModel> GetTimeAxisByIsPrintBarCode(int isPrintBarCode, long systemModuleID)
|
|
{
|
|
TableModel<T_Base_TimeAxisModel> t = new TableModel<T_Base_TimeAxisModel>();
|
|
|
|
var listMode = db.Queryable<T_Base_TimeAxis, T_SYS_SystemModule>((TimeAxis, System) => new object[] {
|
|
JoinType.Left,TimeAxis.SystemModuleID==System.ID,
|
|
}).Where((TimeAxis, System) => TimeAxis.IsPrintBarCode == isPrintBarCode && TimeAxis.SystemModuleID == systemModuleID && TimeAxis.DeleteFlag == 0 && System.DeleteFlag == 0)
|
|
.Select((TimeAxis, System) => new T_Base_TimeAxisModel
|
|
{
|
|
ID = TimeAxis.ID,
|
|
GUID = TimeAxis.GUID.ToString(),
|
|
SystemModuleID = TimeAxis.SystemModuleID,
|
|
ParentID = TimeAxis.ParentID,
|
|
TimeName = TimeAxis.TimeName,
|
|
Interval = TimeAxis.Interval,
|
|
ContrastTimeAxisID = TimeAxis.ContrastTimeAxisID,
|
|
IsPrintBarCode = TimeAxis.IsPrintBarCode,
|
|
PrintBarCodeNumber = TimeAxis.PrintBarCodeNumber,
|
|
Describe = TimeAxis.Describe,
|
|
GroupID = TimeAxis.GroupID,
|
|
LocationX = TimeAxis.LocationX,
|
|
LocationY = TimeAxis.LocationY,
|
|
OrderBy = TimeAxis.OrderBy,
|
|
IsDisplayTimeAxis = TimeAxis.IsDisplayTimeAxis,
|
|
Form_Flag = TimeAxis.Form_Flag,
|
|
From_Table = TimeAxis.From_Table,
|
|
From_Columns = TimeAxis.From_Columns,
|
|
DeleteFlag = TimeAxis.DeleteFlag,
|
|
CreationDate = TimeAxis.CreationDate,
|
|
ModificationDate = TimeAxis.ModificationDate,
|
|
SystemModule = System.SystemName,
|
|
IsPrintBarCodeCase = TimeAxis.IsPrintBarCode.ToString(),
|
|
IsDisplayTimeAxisCase = TimeAxis.IsDisplayTimeAxis.ToString(),
|
|
}).OrderBy((TimeAxis) => TimeAxis.OrderBy).ToList();
|
|
|
|
t.Code = 0;
|
|
t.PageCount = listMode.Count;
|
|
t.TotalNumber = listMode.Count;
|
|
t.Data = listMode;
|
|
t.Msg = "成功";
|
|
return t;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取未配置到指定时间轴模板中的其他时间节点
|
|
/// </summary>
|
|
/// <param name="keyWord">关键词</param>
|
|
/// <param name="systemModuleID">系统编号(ID)</param>
|
|
/// <param name="templetGUID">时间轴模板编号(GUID)</param>
|
|
/// <returns></returns>
|
|
public TableModel<T_Base_TimeAxisModel> GetNoConfigured(string keyWord, long systemModuleID, string templetGUID)
|
|
{
|
|
string Sql = @"SELECT [ID],[GUID],TimeName,OrderBy FROM T_Base_TimeAxis WHERE SystemModuleID='{0}' AND TimeName LIKE '%{1}%' AND ParentID!=-1 AND DeleteFlag=0 AND [GUID] NOT IN(SELECT TimeAxisGUID FROM T_Base_TimeAxis_TempletDetail WHERE TempletGUID='{2}' AND DeleteFlag=0) ORDER BY OrderBy";
|
|
|
|
Sql = string.Format(Sql, systemModuleID, keyWord, templetGUID);
|
|
List<T_Base_TimeAxisModel> data = db.Ado.SqlQuery<T_Base_TimeAxisModel>(Sql);
|
|
TableModel<T_Base_TimeAxisModel> t = new TableModel<T_Base_TimeAxisModel>();
|
|
t.Code = 0;
|
|
t.PageCount = data.Count;
|
|
t.TotalNumber = data.Count;
|
|
t.Data = data;
|
|
t.Msg = "成功";
|
|
return t;
|
|
}
|
|
#endregion
|
|
}
|
|
}
|