StableVersion4.3/HL_FristAidPlatform_DataBase/SYS/T_SYS_PositionDB.cs

103 lines
3.9 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_SYS_PositionDB : BaseDB, IT_SYS_Position
{
public SqlSugarClient db = GetClient();
public bool Add(T_SYS_Position entity)
{
return db.Insertable(entity).IgnoreColumns(it => new { it.ID }).ExecuteCommand() == 1 ? true : false;
}
public bool Dels(dynamic[] ids)
{
return db.Deleteable<T_SYS_Position>().In(new dynamic[] { ids }).ExecuteCommand() == 1 ? true : false;
}
public T_SYS_Position Get(long id)
{
return db.Queryable<T_SYS_Position>().First(it => it.ID == id);
}
/// <summary>
/// 根据用户编号获取所拥有的菜单权限
/// </summary>
/// <param name="UserID">用户编号</param>
/// <returns>当前用户所对应的所有菜单</returns>
public TableModel<T_SYS_Position> GetListByUserID(long UserID)
{
List<T_SYS_Position> data = db.Queryable<T_SYS_Position>().ToList();
TableModel<T_SYS_Position> t = new TableModel<T_SYS_Position>();
t.Code = 0;
t.Data = data;
t.Msg = "成功";
return t;
}
/// <summary>
/// 获取列表--分页
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="keyWord"></param>
/// <returns></returns>
public TableModel<T_SYS_PositionModel> GetPageList(int pageIndex, int pageSize, string keyWord)
{
int TotalNumber = 0;
TableModel<T_SYS_PositionModel> t = new TableModel<T_SYS_PositionModel>();
var listMode = db.Queryable<T_SYS_Position, T_Base_Hospital>((Position, Hospital) => new object[] {
JoinType.Left,Position.HospitalID==Hospital.ID,
}).Where((Position, Hospital) => Position.DeleteFlag == 0).WhereIF(!string.IsNullOrEmpty(keyWord), (Position) => Position.PositionName.Contains(keyWord))
.Select((Position, Hospital) => new T_SYS_PositionModel
{
ID = Position.ID,
GUID = Position.GUID.ToString(),
PositionName = Position.PositionName,
DeleteFlag = Position.DeleteFlag,
CreationDate = Position.CreationDate,
Description = Position.Description,
OrderBy = Position.OrderBy,
HospitalID = Position.HospitalID,
HospitalName = Hospital.Name,
}).OrderBy((Position) => Position.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>
/// <returns></returns>
public TableModel<T_SYS_Position> GetList()
{
List<T_SYS_Position> data = db.Queryable<T_SYS_Position>().Where(it => it.DeleteFlag == 0).ToList();
TableModel<T_SYS_Position> menu = new TableModel<T_SYS_Position>();
menu.Code = 0;
menu.TotalNumber = data.Count;
menu.Data = data;
menu.Msg = "成功";
return menu;
}
public bool Update(T_SYS_Position entity)
{
return db.Updateable(entity).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommand() == 1 ? true : false;
}
public int LogicalDelete(long id, int deleteFlag)
{
return db.Updateable<T_SYS_Position>().SetColumns(it => new T_SYS_Position() { DeleteFlag = deleteFlag }).Where(it => it.ID == id).ExecuteCommand();
}
}
}