using System; using System.Collections.Generic; using WMS.Info; using WMS.Util; namespace WMS.Core { public class BaseAgvStation { /// /// 获取列表数据 /// /// public IEnumerable GetList(string keyword) { try { return SysDbCore.GetDbCtx().Queryable().Where(it => it.F_ISDELETE == 0).WhereIF(!keyword.IsEmpty(), it => it.F_NO.Contains(keyword) || it.F_AGVSTATIONNO.Contains(keyword)).ToList(); } catch (Exception ex) { throw ex; } } /// /// 获取分页数据 /// /// public IEnumerable GetPageList(string keyword, Pagination pagination) { try { int count = 0; var db = SysDbCore.GetDbCtx().Queryable().Where(it => it.F_ISDELETE == 0).WhereIF(!keyword.IsEmpty(), it => it.F_NO.Contains(keyword) || it.F_AGVSTATIONNO.Contains(keyword)); List list = null; if (pagination.sord.ToUpper() == "ASC") { list = db.OrderBy(pagination.sidx).ToPageList(pagination.page, pagination.rows, ref count); } else { string orderstr = pagination.sidx + " DESC"; list = db.OrderBy(orderstr).ToPageList(pagination.page, pagination.rows, ref count); } pagination.records = count; return list; } catch (Exception ex) { throw ex; } } /// /// 获取实体数据 /// 主键 /// /// public BASE_AGVSTATION GetEntity(string keyValue) { try { return SysDbCore.GetDbCtx().Queryable().Where(it => it.F_ISDELETE == 0 && it.F_NO == keyValue).First(); } catch (Exception ex) { throw ex; } } /// /// 删除实体数据 /// 主键 /// /// public void DeleteEntity(string keyValue) { try { //SysDbCore.GetDbCtx().Deleteable().Where(it => it.F_NO == keyValue).ExecuteCommand(); SysDbCore.GetDbCtx().Updateable().UpdateColumns(it => new BASE_AGVSTATION { F_ISDELETE = 1 }).Where(it => it.F_NO == keyValue).ExecuteCommand(); } catch (Exception ex) { throw ex; } } /// /// 保存实体数据(新增、修改) /// 主键 /// /// public void SaveEntity(LoginUserInfo loginUserInfo, string keyValue, BASE_AGVSTATION entity) { try { if (entity == null) { throw SysExCore.ThrowFailException("输入数据为空。"); } if (string.IsNullOrWhiteSpace(entity.F_NO)) { throw SysExCore.ThrowFailException("编码为空。"); } if (string.IsNullOrWhiteSpace(entity.F_AGVSTATIONNO)) { throw SysExCore.ThrowFailException("名称为空。"); } entity.F_EDITTIME = DateTime.Now; entity.F_EDITUSERNO = loginUserInfo.UserNo; if (string.IsNullOrEmpty(keyValue)) { var item = SysDbCore.GetDbCtx().Queryable().First(v => v.F_NO == entity.F_NO); if (item != null) { throw SysExCore.ThrowFailException("AGV站台编号不能重复。"); } entity.F_ADDTIME = DateTime.Now; entity.F_ADDUSERNO = loginUserInfo.UserNo; entity.F_ISDELETE = 0; //entity.F_ISSTOP = 0; SysDbCore.GetDbCtx().Insertable(entity).ExecuteCommand(); } else { SysDbCore.GetDbCtx().Updateable(entity).IgnoreColumns(it => new { it.F_ADDTIME, it.F_ADDUSERNO }).Where(it => it.F_NO == keyValue).ExecuteCommand(); } } catch (Exception ex) { throw ex; } } public Dictionary GetMap() { try { Dictionary dics = new Dictionary(); SysDbCore.GetDbCtx().Queryable().ToList().ForEach(it => dics.Add(it.F_NO, it)); return dics; } catch (Exception ex) { throw ex; } } } }