From 5c40d83463c3db4455985f0302b10b79c63af23a Mon Sep 17 00:00:00 2001
From: bklLiudl <673013083@qq.com>
Date: 星期四, 22 八月 2024 09:14:22 +0800
Subject: [PATCH] Merge branch 'master' into Liudl
---
Wms/WMS.BLL/SysServer/MaterialsServer.cs | 221 ++++++++++++++++--------------------------------------
1 files changed, 67 insertions(+), 154 deletions(-)
diff --git a/Wms/WMS.BLL/SysServer/MaterialsServer.cs b/Wms/WMS.BLL/SysServer/MaterialsServer.cs
index 2e80823..e10d30f 100644
--- a/Wms/WMS.BLL/SysServer/MaterialsServer.cs
+++ b/Wms/WMS.BLL/SysServer/MaterialsServer.cs
@@ -9,6 +9,7 @@
using AutoMapper;
using Model.ModelDto.SysDto;
using SqlSugar;
+using Utility;
using WMS.DAL;
using WMS.Entity.Context;
using WMS.Entity.SysEntity;
@@ -25,75 +26,20 @@
public IMaterialsRepository _mate { get; set; }
private readonly IMapper _mapper;
private static readonly SqlSugarScope Db = DataContext.Db;
+ private readonly UserManager _userManager;
/// <summary>
/// 鏋勯�犲嚱鏁�
/// </summary>
/// <param name="mate">鐗╂枡缂栫爜</param>
/// <param name="mapper">automapper</param>
- public MaterialsServer(IMaterialsRepository mate, IMapper mapper) : base(Db)
+ public MaterialsServer(IMaterialsRepository mate, IMapper mapper, UserManager userManager) : base(Db)
{
_mate = mate; //鐗╂枡缂栫爜
_mapper = mapper; //automapper
+ _userManager = userManager;
}
#region wms
-
- //public List<MaterialsDto> GetMaterialsList(string skuNo, string skuName, string type, string isInspect, int page, int limit, out int count)
- //{
- // try
- // {
- // Expression<Func<SysMaterials, bool>> item = Expressionable.Create<SysMaterials>()
- // .AndIF(!string.IsNullOrWhiteSpace(skuNo), it => it.SkuNo.Contains(skuNo.Trim()))
- // .AndIF(!string.IsNullOrWhiteSpace(skuName), it => it.SkuName.Contains(skuName.Trim()))
- // .AndIF(!string.IsNullOrWhiteSpace(type), it => it.Type == type)
- // .AndIF(!string.IsNullOrWhiteSpace(isInspect), it => it.IsInspect == isInspect)
- // .ToExpression();//娉ㄦ剰 杩欎竴鍙� 涓嶈兘灏�
-
- // var data = _mate.GetAllByOrderPageAsync(item, limit, page, out int counts)
- // .Includes(x => x.TypeInfo)
- // .Includes(x => x.EnvironmentInfo)
- // .Includes(x => x.UnitInfo)
- // .Includes(x => x.PackagInfo)
- // .Includes(x => x.CreateUserInfo)
- // .Includes(x => x.UpdateUserInfo)
- // .ToList();
- // count = counts;
-
- // return data.Select(m => new MaterialsDto()
- // {
- // Id = m.Id,
- // SkuNo = m.SkuNo,
- // SkuName = m.SkuName,
- // Standard = m.Standard,
- // AuditStatusNo = m.AuditStatusNo,
- // Type = m.Type,
- // TypeName = m.TypeInfo == null ? "" : m.TypeInfo.DictName,
- // IsControlled = m.IsControlled,
- // IsInspect = m.IsInspect,
- // Origin = m.Origin,
- // UnitNo = m.UnitNo,
- // UnitName = m.UnitInfo == null ? "" : m.UnitInfo.UnitName,
- // PackagNo = m.PackagNo,
- // PackagName = m.PackagInfo == null ? "" : m.PackagInfo.PackagName,
- // Environment = m.Environment,
- // EnvironmentName = m.EnvironmentInfo == null ? "" : m.EnvironmentInfo.DictName,
- // Weight = m.Weight,
- // Warranty = m.Warranty,
- // Price = m.Price,
- // Demo = m.Demo,
-
- // CreateUserName = m.CreateUserInfo == null ? "" : m.CreateUserInfo.UserName,
- // UpdateUserName = m.UpdateUserInfo == null ? "" : m.UpdateUserInfo.UserName,
- // CreateTime = m.CreateTime,
- // UpdateTime = m.UpdateTime
- // }).ToList();
- // }
- // catch (Exception e)
- // {
- // throw new Exception(e.Message);
- // }
- //}
-
/// <summary>
/// 鑾峰彇鐗╂枡淇℃伅鍒楄〃
@@ -107,10 +53,23 @@
/// <param name="environment">瀛樺偍鐜</param>
/// <param name="categoryNo">绫诲埆缂栫爜</param>
/// <returns></returns>
- public List<MaterialsDto> GetMateList(string skuNo, string skuName, string auditStatusNo, string type, string isControlled, string isInspect, string environment, string categoryNo)
+ public Task<List<MaterialsDto>> GetMateList(string skuNo, string skuName, string auditStatusNo, string type, string isControlled, string isInspect, string environment, string categoryNo)
{
- List<MaterialsDto> matedto = _mate.GetMateList(skuNo, skuName, auditStatusNo, type, isControlled, isInspect, environment, categoryNo);
- return matedto;
+ return Db.Queryable<SysMaterials>()
+ .LeftJoin<SysUserInfor>((a, b) => a.CreateUser == b.Id)
+ .LeftJoin<SysPackag>((a, b,c) => a.PackagNo == c.PackagNo)
+ .Where((a,b,c) => c.IsDel == "0")
+ .WhereIF(!string.IsNullOrEmpty(skuNo), a => a.SkuNo.Contains(skuNo))
+ .WhereIF(!string.IsNullOrEmpty(skuName), a => a.SkuNo.Contains(skuName))
+ .WhereIF(!string.IsNullOrEmpty(auditStatusNo), a => a.AuditStatusNo == auditStatusNo)
+ .WhereIF(!string.IsNullOrEmpty(type), a => a.Type == type)
+ .WhereIF(!string.IsNullOrEmpty(isControlled), a => a.IsControlled == isControlled)
+ .WhereIF(!string.IsNullOrEmpty(isInspect), a => a.IsInspect == isInspect)
+ .WhereIF(!string.IsNullOrEmpty(environment), a => a.Environment == environment)
+ .WhereIF(!string.IsNullOrEmpty(categoryNo), a => a.CategoryNo == categoryNo)
+ .Where(a => a.IsDel == "0")
+ .Select<MaterialsDto>((a, b, c) => new MaterialsDto() { CreateUserName = b.RealName,PackagName = c.PackagName }, true)
+ .ToListAsync();
}
/// <summary>
@@ -118,10 +77,9 @@
/// </summary>
/// <param name="id">鐗╂枡id</param>
/// <returns></returns>
- public SysMaterials GetMateById(int id)
+ public async Task<SysMaterials> GetMateById(int id)
{
- SysMaterials mate = _mate.GetMateById(id);
- return mate;
+ return await Db.Queryable<SysMaterials>().FirstAsync(s => s.Id == id);
}
/// <summary>
@@ -129,10 +87,9 @@
/// </summary>
/// <param name="SkuNo">鐗╂枡缂栧彿</param>
/// <returns></returns>
- public int GetMateByNo(string SkuNo)
+ public async Task<int> GetMateByNo(string SkuNo)
{
- List<SysMaterials> mate = _mate.GetMateByNo(SkuNo);
- return mate.Count;
+ return await Db.Queryable<SysMaterials>().CountAsync(s => s.SkuNo == SkuNo && s.IsDel == "0");
}
/// <summary>
@@ -143,42 +100,22 @@
/// <exception cref="Exception">鎹曡幏寮傚父</exception>
public async Task<int> AddMate(MaterialsDto matedto)
{
- //鎹曡幏寮傚父
- try
- {
- int count = GetMateByNo(matedto.SkuNo);
-
- if (count > 0)
- {
- throw new Exception("绯荤粺涓凡瀛樺湪璇ョ墿鏂�");
- }
- if (string.IsNullOrWhiteSpace(matedto.PackagNo))
- {
- throw new Exception("鍖呰淇℃伅涓嶈兘涓虹┖");
- }
-
-
- //鏄犲皠妯″瀷
- SysMaterials mate = _mapper.Map<SysMaterials>(matedto);
- mate.AuditStatusNo = "9"; //瀹℃牳鐘舵��
- mate.Type = mate.Type; //绫诲瀷
- mate.IsControlled = string.IsNullOrWhiteSpace(mate.IsControlled) ? "0" : mate.IsControlled; //鏄惁鍙楁帶
- mate.IsInspect = string.IsNullOrWhiteSpace(mate.IsInspect) ? "0" : mate.IsInspect; //鏄惁鍏嶆
- mate.IsPasteCode = string.IsNullOrWhiteSpace(mate.IsPasteCode) ? "0" : mate.IsPasteCode; //鏄惁鍏嶆
- mate.Origin = "WMS"; //鏉ユ簮
- mate.IsDel = "0";
- mate.CreateTime = Db.GetDate();
- Db.BeginTran();
- Db.Insertable(mate).ExecuteCommand();
- Db.CommitTran();
- return 1;
- }
- catch (Exception ex)
- {
- Db.RollbackTran();
- //鎶涘嚭寮傚父
- throw new Exception(ex.Message);
- }
+ if (string.IsNullOrWhiteSpace(matedto.PackagNo))
+ throw Oops.Bah("鍖呰淇℃伅涓嶈兘涓虹┖");
+ if (await GetMateByNo(matedto.SkuNo) > 0)
+ throw Oops.Bah("绯荤粺涓凡瀛樺湪璇ョ墿鏂�");
+ //鏄犲皠妯″瀷
+ SysMaterials mate = _mapper.Map<SysMaterials>(matedto);
+ mate.AuditStatusNo = "9"; //瀹℃牳鐘舵��
+ mate.Type = mate.Type; //绫诲瀷
+ mate.IsControlled = string.IsNullOrWhiteSpace(mate.IsControlled) ? "0" : mate.IsControlled; //鏄惁鍙楁帶
+ mate.IsInspect = string.IsNullOrWhiteSpace(mate.IsInspect) ? "0" : mate.IsInspect; //鏄惁鍏嶆
+ mate.IsPasteCode = string.IsNullOrWhiteSpace(mate.IsPasteCode) ? "0" : mate.IsPasteCode; //鏄惁鍏嶆
+ mate.Origin = "WMS"; //鏉ユ簮
+ mate.IsDel = "0";
+ mate.CreateTime = DateTime.Now;
+ mate.CreateUser = _userManager.UserId;
+ return await Db.Insertable(mate).ExecuteCommandAsync();
}
/// <summary>
@@ -189,18 +126,12 @@
/// <exception cref="Exception">鎹曡幏寮傚父</exception>
public async Task<int> DelMate(SysMaterials mate)
{
- //鎹曡幏寮傚父
- try
- {
- //鍒犻櫎
- int i = await _mate.DelMate(mate);
- return i;
- }
- catch (Exception ex)
- {
- //鎶涘嚭寮傚父
- throw new Exception("鍒犻櫎鐗╂枡寮傚父", ex);
- }
+ return await Db.Updateable<SysMaterials>()
+ .Where(s => s.Id == mate.Id)
+ .SetColumns(s => s.IsDel == "1")
+ .SetColumns(s => s.UpdateTime == DateTime.Now)
+ .SetColumns(s => s.UpdateUser == _userManager.UserId)
+ .ExecuteCommandAsync();
}
/// <summary>
@@ -211,43 +142,27 @@
/// <exception cref="Exception">鎹曡幏寮傚父</exception>
public async Task<int> ExitMate(MaterialsDto matedto)
{
- //鎹曡幏寮傚父
- try
+ if (matedto.AdventTime > 365 && matedto.AdventTime < 30)
{
- if (matedto.AdventTime > 365 && matedto.AdventTime < 30)
- {
- return 2;
- }
- else if (string.IsNullOrWhiteSpace(matedto.PackagNo))
- {
- throw new Exception("鍖呰涓嶈兘涓虹┖");
- }
- //else if (matedto.LowInventory > 1000)
- //{
- // return 4;
- //}
- else
- {
- //鏄犲皠妯″瀷
- SysMaterials mate = _mapper.Map<SysMaterials>(matedto);
- //缂栬緫
- //鏍规嵁id鑾峰彇鐗╂枡淇℃伅
- var list = Db.Queryable<SysMaterials>().First(a => a.IsDel == "0" && a.Id == mate.Id);
- //mate.CategoryNo = list.CategoryNo;
- mate.Origin = list.Origin;
- mate.CreateUser = list.CreateUser;
- mate.UpdateTime = Db.GetDate();
- mate.CreateTime = list.CreateTime;
-
- int i = Db.Updateable(mate).ExecuteCommand();
- return i;
- }
+ throw Oops.Bah("涓存湡澶╂暟涓嶅彲澶т簬365鍙婂皬浜�30");
}
- catch (Exception ex)
+ else if (string.IsNullOrWhiteSpace(matedto.PackagNo))
{
- //鎶涘嚭寮傚父
- throw new Exception(ex.Message);
+ throw Oops.Bah("鍖呰涓嶈兘涓虹┖");
}
+ //鏄犲皠妯″瀷
+ SysMaterials mate = _mapper.Map<SysMaterials>(matedto);
+ //缂栬緫
+ //鏍规嵁id鑾峰彇鐗╂枡淇℃伅
+ var modMaterial = await Db.Queryable<SysMaterials>().FirstAsync(a => a.IsDel == "0" && a.Id == mate.Id);
+ //mate.CategoryNo = list.CategoryNo;
+ mate.Origin = modMaterial.Origin;
+ mate.CreateUser = modMaterial.CreateUser;
+ mate.UpdateTime = DateTime.Now;
+ mate.UpdateUser = _userManager.UserId;
+ mate.CreateTime = modMaterial.CreateTime;
+ int i = Db.Updateable(mate).ExecuteCommand();
+ return i;
}
#region 鍖呰 鍗曚綅
@@ -256,20 +171,18 @@
/// 鑾峰彇璁¢噺鍗曚綅淇℃伅鍒楄〃
/// </summary>
/// <returns></returns>
- public List<SysUnit> GetUnitList()
+ public async Task<List<SysUnit>> GetUnitList()
{
- List<SysUnit> unitlist = _mate.GetUnitList();
- return unitlist;
+ return await Db.Queryable<SysUnit>().Where(s => s.IsDel == "0").ToListAsync();
}
/// <summary>
/// 鑾峰彇鍖呰淇℃伅鍒楄〃
/// </summary>
/// <returns></returns>
- public List<SysPackag> GetPackagList()
+ public async Task<List<SysPackag>> GetPackagList()
{
- List<SysPackag> packlist = _mate.GetPackagList();
- return packlist;
+ return await Db.Queryable<SysPackag>().Where(s => s.IsDel == "0").ToListAsync();
}
#endregion
--
Gitblit v1.8.0