| | |
| | | /// <param name="limit"></param> |
| | | /// <param name="count"></param> |
| | | /// <returns></returns> |
| | | public List<UnitDto> GetUnitList(string unitNo, string unitName, int page, int limit, out int count) |
| | | public async Task<List<UnitDto>> GetUnitList(string unitNo, string unitName, int page, int limit, RefAsync<int> count) |
| | | { |
| | | try |
| | | Expression<Func<SysUnit, bool>> item = Expressionable.Create<SysUnit>() //创建表达式 |
| | | .AndIF(!string.IsNullOrWhiteSpace(unitNo), it => it.UnitNo.Contains(unitNo.Trim())) |
| | | .AndIF(!string.IsNullOrWhiteSpace(unitName), it => it.UnitName.Contains(unitName.Trim())) |
| | | .ToExpression();//注意 这一句 不能少 |
| | | |
| | | |
| | | var data = await UnitRst.GetAllByOrderPage(item, limit, page, out int counts) |
| | | .Includes(x => x.CreateUserInfo) |
| | | .Includes(x => x.UpdateUserInfo).ToListAsync(); |
| | | count = counts; |
| | | return data.Select(m => new UnitDto() |
| | | { |
| | | Expression<Func<SysUnit, bool>> item = Expressionable.Create<SysUnit>() //创建表达式 |
| | | .AndIF(!string.IsNullOrWhiteSpace(unitNo), it => it.UnitNo.Contains(unitNo.Trim())) |
| | | .AndIF(!string.IsNullOrWhiteSpace(unitName), it => it.UnitName.Contains(unitName.Trim())) |
| | | .ToExpression();//注意 这一句 不能少 |
| | | |
| | | |
| | | var data = UnitRst.GetAllByOrderPageAsync(item, limit, page, out int counts) |
| | | .Includes(x => x.CreateUserInfo) |
| | | .Includes(x => x.UpdateUserInfo).ToList(); |
| | | count = counts; |
| | | return data.Select(m => new UnitDto() |
| | | { |
| | | Id = m.Id, |
| | | UnitNo = m.UnitNo, |
| | | UnitName = m.UnitName, |
| | | Abbrev = m.Abbrev, |
| | | CreateTime = m.CreateTime, |
| | | CreateUserName = m.CreateUserInfo == null ? "" : m.CreateUserInfo.RealName, |
| | | UpdateTime = m.UpdateTime, |
| | | UpdateUserName = m.UpdateUserInfo == null ? "" : m.UpdateUserInfo.RealName |
| | | }).ToList(); |
| | | |
| | | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | throw new Exception(e.Message); |
| | | } |
| | | Id = m.Id, |
| | | UnitNo = m.UnitNo, |
| | | UnitName = m.UnitName, |
| | | Abbrev = m.Abbrev, |
| | | CreateTime = m.CreateTime, |
| | | CreateUserName = m.CreateUserInfo == null ? "" : m.CreateUserInfo.RealName, |
| | | UpdateTime = m.UpdateTime, |
| | | UpdateUserName = m.UpdateUserInfo == null ? "" : m.UpdateUserInfo.RealName |
| | | }).ToList(); |
| | | } |
| | | /// <summary> |
| | | /// 获取单条单位信息 |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public SysUnit GetUnit(int id) |
| | | public async Task<SysUnit> GetUnit(int id) |
| | | { |
| | | try |
| | | { |
| | | var data = UnitRst.GetOneById(id); |
| | | return data; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | throw new Exception(e.Message); |
| | | } |
| | | var data = await UnitRst.GetOneByIdAsync(id); |
| | | return data; |
| | | } |
| | | /// <summary> |
| | | /// 添加单位信息 |
| | |
| | | /// <param name="abbrev">缩写</param> |
| | | /// <param name="userId">操作人</param> |
| | | /// <returns></returns> |
| | | public bool AddUnit(string unitName, string abbrev, int userId) |
| | | public async Task<bool> AddUnit(string unitName, string abbrev, int userId) |
| | | { |
| | | try |
| | | { |
| | | if (string.IsNullOrEmpty(abbrev)) |
| | | { |
| | | var date = UnitRst.GetAllWhereAsync(m => m.UnitName == unitName).Count(); |
| | | var date = await UnitRst.GetAllWhere(m => m.UnitName == unitName).CountAsync(); |
| | | if (date > 0) |
| | | { |
| | | throw new Exception("单位名称重复"); |
| | |
| | | } |
| | | else |
| | | { |
| | | var date = UnitRst.GetAllWhereAsync(m => m.UnitName == unitName || m.Abbrev == abbrev).Count(); |
| | | var date = await UnitRst.GetAllWhere(m => m.UnitName == unitName || m.Abbrev == abbrev).CountAsync(); |
| | | if (date > 0) |
| | | { |
| | | throw new Exception("单位名称或英文缩写重复"); |
| | |
| | | } |
| | | |
| | | //自动UnitCode处理 |
| | | var unitList = UnitRst.GetAllAsync().OrderByDescending(m => m.UnitNo); |
| | | var unitList = UnitRst.GetAll().OrderByDescending(m => m.UnitNo); |
| | | var code = "01"; |
| | | if (unitList != null && unitList.Count()>0) |
| | | if (unitList != null && unitList.Count() > 0) |
| | | { |
| | | var unitCode = unitList.First().UnitNo; |
| | | var str = unitCode.Substring(0, 1); |
| | |
| | | code = str == "0" ? (str2 == "9" ? (int.Parse(str2) + 1).ToString() : "0" + (int.Parse(str2) + 1)) : (int.Parse(unitCode) + 1).ToString(); |
| | | } |
| | | |
| | | var num = UnitRst.Add(new SysUnit() |
| | | var num = await UnitRst.AddAsync(new SysUnit() |
| | | { |
| | | UnitNo = code, |
| | | UnitName = unitName, |
| | |
| | | }); |
| | | if (num > 0) |
| | | { |
| | | _operation.InsertOperation("基础信息", "计量单位", code, "添加", "添加计量单位 单位号:" + code, Convert.ToInt32(userId)); |
| | | await _operation.InsertOperation("基础信息", "计量单位", code, "添加", "添加计量单位 单位号:" + code, Convert.ToInt32(userId)); |
| | | } |
| | | return num > 0; |
| | | } |
| | |
| | | /// <param name="abbrev">缩写</param> |
| | | /// <param name="userId">操作人</param> |
| | | /// <returns></returns> |
| | | public bool EditUnit(int id, string unitName, string abbrev, int userId) |
| | | public async Task<bool> EditUnit(int id, string unitName, string abbrev, int userId) |
| | | { |
| | | try |
| | | if (string.IsNullOrEmpty(abbrev)) |
| | | { |
| | | if (string.IsNullOrEmpty(abbrev)) |
| | | var date = await UnitRst.GetAllWhere(m => m.Id != id && m.UnitName == unitName).CountAsync(); |
| | | if (date > 0) |
| | | { |
| | | var date = UnitRst.GetAllWhereAsync(m => m.Id != id && m.UnitName == unitName).Count(); |
| | | if (date > 0) |
| | | { |
| | | throw new Exception("单位名称重复"); |
| | | } |
| | | throw new Exception("单位名称重复"); |
| | | } |
| | | else |
| | | { |
| | | var date = UnitRst.GetAllWhereAsync(m => m.Id != id && (m.UnitName == unitName || m.Abbrev == abbrev)).Count(); |
| | | if (date > 0) |
| | | { |
| | | throw new Exception("单位名称或英文缩写重复"); |
| | | } |
| | | } |
| | | |
| | | //自动UnitCode处理 |
| | | var unit = UnitRst.GetOneById(id); |
| | | if (unit == null) |
| | | { |
| | | throw new Exception("未查询到单位信息"); |
| | | } |
| | | unit.UnitName = unitName; |
| | | unit.Abbrev = abbrev; |
| | | unit.UpdateUser = userId; |
| | | unit.UpdateTime = DateTime.Now; |
| | | |
| | | var num = UnitRst.Edit(unit); |
| | | return num > 0; |
| | | } |
| | | catch (Exception e) |
| | | else |
| | | { |
| | | throw new Exception(e.Message); |
| | | var date = await UnitRst.GetAllWhere(m => m.Id != id && (m.UnitName == unitName || m.Abbrev == abbrev)).CountAsync(); |
| | | if (date > 0) |
| | | { |
| | | throw new Exception("单位名称或英文缩写重复"); |
| | | } |
| | | } |
| | | |
| | | //自动UnitCode处理 |
| | | var unit = UnitRst.GetOneById(id); |
| | | if (unit == null) |
| | | { |
| | | throw new Exception("未查询到单位信息"); |
| | | } |
| | | unit.UnitName = unitName; |
| | | unit.Abbrev = abbrev; |
| | | unit.UpdateUser = userId; |
| | | unit.UpdateTime = DateTime.Now; |
| | | |
| | | var num = await UnitRst.EditAsync(unit); |
| | | return num > 0; |
| | | } |
| | | |
| | | public bool DelUnit(int id, int userId) |
| | | public async Task<bool> DelUnit(int id, int userId) |
| | | { |
| | | try |
| | | var unit = UnitRst.GetOneById(id); |
| | | if (unit == null) |
| | | { |
| | | var unit = UnitRst.GetOneById(id); |
| | | if (unit == null) |
| | | { |
| | | throw new Exception("未查询到单位信息"); |
| | | } |
| | | int num = UnitRst.Remove(id, userId); |
| | | if (num > 0) |
| | | { |
| | | _operation.InsertOperation("基础信息", "计量单位", unit.UnitNo, "删除", "删除计量单位 单位号:" + unit.UnitNo, Convert.ToInt32(userId)); |
| | | } |
| | | throw new Exception("未查询到单位信息"); |
| | | } |
| | | int num = await UnitRst.RemoveAsync(id, userId); |
| | | if (num > 0) |
| | | { |
| | | await _operation.InsertOperation("基础信息", "计量单位", unit.UnitNo, "删除", "删除计量单位 单位号:" + unit.UnitNo, Convert.ToInt32(userId)); |
| | | } |
| | | |
| | | return num > 0; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | throw new Exception(e.Message); |
| | | } |
| | | return num > 0; |
| | | } |
| | | |
| | | public bool DelsUnit(List<int> ids, int userId) |
| | | public async Task<bool> DelsUnit(List<int> ids, int userId) |
| | | { |
| | | try |
| | | { |
| | | var list = UnitRst.GetAllWhereAsync(m => ids.Contains(m.Id)).ToList(); |
| | | var list = await UnitRst.GetAllWhere(m => ids.Contains(m.Id)).ToListAsync(); |
| | | if (list.Count > 0) |
| | | { |
| | | for (int i = 0; i < list.Count; i++) |
| | | { |
| | | _operation.InsertOperation("基础信息", "计量单位", list[i].UnitNo, "删除", "删除计量单位 单位号:" + list[i].UnitNo, Convert.ToInt32(userId)); |
| | | await _operation.InsertOperation("基础信息", "计量单位", list[i].UnitNo, "删除", "删除计量单位 单位号:" + list[i].UnitNo, Convert.ToInt32(userId)); |
| | | } |
| | | } |
| | | var num = UnitRst.RemoveAll(list, userId); |
| | | var num = await UnitRst.RemoveAllAsync(list, userId); |
| | | return num > 0; |
| | | } |
| | | catch (Exception e) |