using Model.ModelDto; using Model.ModelDto.SysDto; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using System.Text; using WMS.DAL; using WMS.Entity.BllSoEntity; using WMS.Entity.Context; using WMS.Entity.SysEntity; using WMS.IBLL.ISysServer; namespace WMS.BLL.SysServer { /// /// 物料类别管理方法 /// public class MaterialCategory : DbHelper, IMaterialCategory { private static readonly SqlSugarScope Db = DataContext.Db; public MaterialCategory() : base(Db) { } /// /// 获取物料类别信息 /// /// 类别名称 /// 区域编码 /// /// public List GetMaterialCategories(string categoryName, string areaNo) { try { var list = Db.Queryable() .WhereIF(!string.IsNullOrWhiteSpace(categoryName), a => a.CategoryName == categoryName) .WhereIF(!string.IsNullOrWhiteSpace(areaNo), a => a.AreaNo == areaNo) .Where(a => a.IsDel == "0").ToList(); return list; } catch (Exception ex) { throw new Exception(ex.Message); } } /// /// 新增类别信息 /// /// 物料类别实体 /// /// public string InsertMaterialCategories(SysMaterialCategory category) { try { string msg = ""; //获取类别信息 var categoryInfo = Db.Queryable().First(a => a.IsDel == "0" && a.CategoryNo == category.CategoryNo); //获取区域信息 var area = Db.Queryable().First(a => a.AreaNo == category.AreaNo && a.IsDel == "0"); if (categoryInfo != null) { msg = "当前类别信息已被创建,请重新填写信息!"; return msg; } if (area == null) { msg = "当前选择区域信息异常,请重新选择或联系管理员!"; return msg; } Db.BeginTran(); SysMaterialCategory list = new SysMaterialCategory() { CategoryNo = category.CategoryNo, //类别号 CategoryName = category.CategoryName, //类别名称 AreaNo = category.AreaNo, //区域编码 WareHouseNo = area.WareHouseNo, //所属仓库 Demo = category.Demo, //备注 IsDel = "0", //是否删除 CreateUser = category.CreateUser, //创建人 CreateTime = Db.GetDate(), //创建时间 }; Db.Insertable(list).ExecuteCommand(); Db.CommitTran(); msg = "新增类别信息成功!"; return msg; } catch (Exception ex) { Db.RollbackTran(); throw new Exception(ex.Message); } } /// /// 编辑类别信息 /// /// 物料类别实体 /// /// public string ExitMaterialCategories(SysMaterialCategory category) { try { string msg = ""; //获取类别信息 var categoryInfo = Db.Queryable().First(a => a.IsDel == "0" && a.CategoryNo == category.CategoryNo); //获取区域信息 var area = Db.Queryable().First(a => a.AreaNo == category.AreaNo && a.IsDel == "0"); if (categoryInfo != null) { msg = "当前类别信息已被创建,请重新填写信息!"; return msg; } if (area == null) { msg = "当前选择区域信息异常,请重新选择或联系管理员!"; return msg; } Db.BeginTran(); categoryInfo = new SysMaterialCategory() { CategoryNo = category.CategoryNo, //类别号 CategoryName = category.CategoryName, //类别名称 AreaNo = category.AreaNo, //区域编码 WareHouseNo = area.WareHouseNo, //所属仓库 Demo = category.Demo, //备注 IsDel = "0", //是否删除 UpdateUser = category.CreateUser, //更改人 UpdateTime = Db.GetDate(), //更改时间 }; Db.Updateable(categoryInfo).ExecuteCommand(); Db.CommitTran(); msg = "编辑类别信息成功!"; return msg; } catch (Exception ex) { Db.RollbackTran(); throw new Exception(ex.Message); } } /// /// 删除类别信息 /// /// 物料类别实体 /// /// public string DeleteMaterialCategories(SysMaterialCategory category) { try { string msg = ""; //获取类别信息 var categoryInfo = Db.Queryable().First(a => a.IsDel == "0" && a.CategoryNo == category.CategoryNo); //获取区域信息 var area = Db.Queryable().First(a => a.AreaNo == category.AreaNo && a.IsDel == "0"); if (categoryInfo != null) { msg = "当前类别信息已被删除,请重新选择!"; return msg; } if (area == null) { msg = "当前选择区域信息异常,请重新选择或联系管理员!"; return msg; } Db.BeginTran(); categoryInfo.IsDel = "1"; Db.Updateable(categoryInfo).ExecuteCommand(); Db.CommitTran(); msg = "删除类别信息成功!"; return msg; } catch (Exception ex) { Db.RollbackTran(); throw new Exception(ex.Message); } } } }