using System; using System.Collections.Generic; using System.Linq; using WMS.Core.ImportExecl; using WMS.Info; using WMS.Util; namespace WMS.Core { public class BaseMatIQC { /// /// 获取列表数据 /// /// 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_NAME.Contains(keyword)).ToList(); } catch (Exception ex) { throw ex; } } /// /// 获取分页数据 /// /// //public IEnumerable GetPageList(string keyword, string matgrpId, 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_NAME.Contains(keyword)); // var list = db.WhereIF(!matgrpId.IsEmpty(), v => v.F_MATGRPNO == matgrpId).ToList(); // 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); // } // //list.ForEach(w => w.F_QCQTY = w.MINVAL); // pagination.records = count; // return list; // } // catch (Exception ex) // { // throw ex; // } //} /// /// 获取实体数据 /// 主键 /// /// public BASE_MATITEM 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_MATITEM { F_ISDELETE = 1 }).Where(it => it.F_NO == keyValue).ExecuteCommand(); } catch (Exception ex) { throw ex; } } /// /// 保存实体数据(新增、修改) /// 主键 /// /// public void SaveEntity(LoginUserInfo loginUserInfo, string keyValue, BASE_MATITEM entity) { try { if (entity == null) { throw SysExCore.ThrowFailException("输入数据为空。"); } //if (string.IsNullOrWhiteSpace(entity.F_NO)) //{ // throw SysExCore.ThrowFailException("编码为空。"); //} //if (string.IsNullOrWhiteSpace(entity.F_NAME)) //{ // throw SysExCore.ThrowFailException("名称为空。"); //} var mat = SysDbCore.GetDbCtx().Queryable().First(v => v.F_NO == keyValue); if (mat == null) throw SysExCore.ThrowFailException("未找到物料"); if (entity.F_QCTYPECODE == "1") { JsonConvUnitEntity json = UnitByConvUnit.GetConvUnitByBase(1, mat.F_NO, mat.F_DEFINE04, entity.F_QCQTY); entity.F_QCQTY = json.Entity.BaseValue; } 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("物料编号不能重复。"); } entity.F_ADDTIME = DateTime.Now; entity.F_ADDUSERNO = loginUserInfo.UserNo; entity.F_ISDELETE = 0; //entity.F_ISSTOP = 0; SysDbCore.GetDbCtx().Insertable(entity).ExecuteCommand(); } else { mat.F_QCQTY = entity.F_QCQTY; mat.F_QCTYPECODE = entity.F_QCTYPECODE; mat.F_QCADDR = entity.F_QCADDR; mat.F_MEMO = entity.F_MEMO; mat.F_DEFINE03 = entity.F_DEFINE03; mat.F_EDITTIME = DateTime.Now; mat.F_EDITUSERNO = loginUserInfo.UserNo; SysDbCore.GetDbCtx().Updateable(mat).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; } } /// /// 获取树形数据 /// /// 父级id /// public List GetTree(string parentId) { try { var baseMatGrpList = new BaseMatGrp().GetList(string.Empty); List treeList = new List(); string guidid = Guid.NewGuid().ToString(); treeList.Add(new TreeModel() { id = guidid, text = "所有物料组", value = guidid, showcheck = false, checkstate = 0, isexpand = true, parentId = "0" }); foreach (var item in baseMatGrpList) { TreeModel node = new TreeModel { id = item.F_NO, text = item.F_NAME, value = item.F_NO, showcheck = false, checkstate = 0, isexpand = true, parentId = string.IsNullOrEmpty(item.F_PNO) ? guidid : item.F_PNO }; treeList.Add(node); } return treeList.ToTree(parentId); } catch (Exception ex) { throw ex; } } } }