From f1d82d4646a78092f04204995a01c381ed77242f Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周六, 14 12月 2024 15:59:37 +0800
Subject: [PATCH] 222
---
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs | 402 ++++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 369 insertions(+), 33 deletions(-)
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs
index 0de0c10..831130c 100644
--- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsOperationTask/WmsOperationTaskService.cs
@@ -8,6 +8,8 @@
using Microsoft.CodeAnalysis.Operations;
using Admin.NET.Application.Service.WmsTask.WmsRbLineTask.Dto;
using Furion.DatabaseAccessor;
+using Admin.NET.Application.Service.WmsCommonnQuery.Dto;
+using Admin.NET.Application.CommonHelper;
namespace Admin.NET.Application;
/// <summary>
@@ -22,21 +24,36 @@
private readonly SqlSugarRepository<SysConfig> _sysConfigRep;
private readonly SqlSugarRepository<Mes_BatchOrderUPI_New> _mesBatchOrderUpiRep;
private readonly SqlSugarRepository<Mes_Order_Gather> _mesOrderGatherRep;
+ private readonly SqlSugarRepository<WmsRecordUpiProcess> _wmsRecordUpiProcessRep;
+ private readonly SqlSugarRepository<WmsRecordPackageProcess> _wmsRecordPackageProcessRep;
+ private readonly SqlSugarRepository<Mes_Upi_LineQueue> _mes_Upi_LineQueueRep;
+ private readonly SqlSugarRepository<WmsRecordUpiNg> _wmsRecordUpiNgRep;
+ private readonly WmsCommonnQueryService _wmsCommonnQueryService;
-
- public WmsOperationTaskService(SqlSugarRepository<WmsRbLineTask> rep, SqlSugarRepository<WmsStockQuan> wmsStockQuanRep
+ public WmsOperationTaskService(
+ SqlSugarRepository<Mes_Upi_LineQueue> mes_Upi_LineQueueRep,
+ SqlSugarRepository<WmsRbLineTask> rep, SqlSugarRepository<WmsStockQuan> wmsStockQuanRep
, SqlSugarRepository<Mes_Package_Gather> mesPackageGatherRep
, SqlSugarRepository<SysConfig> sysConfigRep
, SqlSugarRepository<Mes_BatchOrderUPI_New> mesBatchOrderUpiRep
, SqlSugarRepository<Mes_Order_Gather> mesOrderGatherRep
+ , SqlSugarRepository<WmsRecordUpiProcess> wmsRecordUpiProcessRep
+ , SqlSugarRepository<WmsRecordPackageProcess> wmsRecordPackageProcessRep
+ , SqlSugarRepository<WmsRecordUpiNg> wmsRecordUpiNgRep
+ , WmsCommonnQueryService wmsCommonnQueryService
)
{
+ _wmsCommonnQueryService = wmsCommonnQueryService;
+ _wmsRecordUpiNgRep = wmsRecordUpiNgRep;
_sysConfigRep = sysConfigRep;
_mesPackageGatherRep = mesPackageGatherRep;
_rep = rep;
_wmsStockQuanRep = wmsStockQuanRep;
_mesBatchOrderUpiRep = mesBatchOrderUpiRep;
_mesOrderGatherRep = mesOrderGatherRep;
+ _wmsRecordUpiProcessRep = wmsRecordUpiProcessRep;
+ _wmsRecordPackageProcessRep = wmsRecordPackageProcessRep;
+ _mes_Upi_LineQueueRep = mes_Upi_LineQueueRep;
}
@@ -49,30 +66,107 @@
[HttpPost]
[ApiDescriptionSettings(Name = "ForceOutbound")]
[Description("WmsOperationTask/ForceOutbound")]
+ [UnitOfWork]
public async Task ForceOutbound(ForceOutboundInput input)
{
if (input == null || input.PackageCodeList?.Count == 0)
{
throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖");
}
+ //楠岃瘉浼犻�掔殑鍖呮槸鍚﹂兘鍦ㄩ綈鍖呬箣鍐呫��
+ List<WmsPackListOutput> packList = await _wmsCommonnQueryService.PackList(new Service.WmsCommonnQuery.Dto.PackListInput() { IsPack = false });
+
List<WmsStockQuan> updateQuanList = new List<WmsStockQuan>();
foreach (var item in input.PackageCodeList)
{
+ var isExistCount = packList.Where(x => x.PackageCode == item).Count();
+ if (isExistCount == 0)
+ {
+ throw Oops.Oh($"鍖厈item}涓嶆槸缂哄寘鐘舵�侊紝璇锋鏌ワ紒");
+ }
+
var quanList = await _wmsStockQuanRep.AsQueryable().Where(x => x.PackageCode == item).ToListAsync();
- var isExist = quanList.Where(x => x.StockStatus == StockStatusEnum.榻愬寘寰呭嚭搴�).Count();
+ var isExist = quanList.Where(x => x.StockStatus == StockStatusEnum.榻愬寘寰呭嚭搴� || x.StockStatus == StockStatusEnum.浜哄伐榻愬寘鍑哄簱浠诲姟宸插垱寤�).Count();
if (isExist > 0)
{
- throw Oops.Oh($"鍖厈item}涓叾涓湁鏉跨姸鎬佹槸'{StockStatusEnum.榻愬寘寰呭嚭搴�.ToString()}'锛屼笉鍏佽寮哄埗鍑哄簱");
+ throw Oops.Oh($"鍖厈item}涓叾涓湁鏉跨姸鎬佹槸'{StockStatusEnum.榻愬寘寰呭嚭搴�.ToString()}' 鎴�'{StockStatusEnum.浜哄伐榻愬寘鍑哄簱浠诲姟宸插垱寤�.ToString()}'锛屼笉鍏佽寮哄埗鍑哄簱");
}
//鏇存柊鐘舵��
foreach (var quan in quanList)
{
quan.StockStatus = StockStatusEnum.浜哄伐寮哄埗寰呭嚭搴�;
+ quan.StockStatusName = StockStatusEnum.浜哄伐寮哄埗寰呭嚭搴�.ToString();
quan.UpdateTime = DateTime.Now;
quan.OperReason = "浜哄伐寮哄埗寰呭嚭搴�";
}
updateQuanList.AddRange(quanList);
+ }
+
+ //妯″紡鍒ゆ柇
+ var client = await WCFServiceHelper.GetWCFService_SAPCC_Client(_sysConfigRep);
+ var res = await client.ValidateModeAsync(1);
+ if (res.result == false)
+ {
+ throw Oops.Oh(res.resMsg);
+ }
+
+ await _wmsStockQuanRep.UpdateRangeAsync(updateQuanList);
+
+ }
+
+
+ /// <summary>
+ /// 浜哄伐榻愬寘鍑哄簱
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "PersonOutbound")]
+ [Description("WmsOperationTask/PersonOutbound")]
+ [UnitOfWork]
+ public async Task PersonOutbound(PersonOutboundInput input)
+ {
+ if (input == null || input.PackageCodeList?.Count == 0)
+ {
+ throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖");
+ }
+ //楠岃瘉浼犻�掔殑鍖呮槸鍚﹂兘鍦ㄩ綈鍖呬箣鍐呫��
+ List<WmsPackListOutput> packList = await _wmsCommonnQueryService.PackList(new Service.WmsCommonnQuery.Dto.PackListInput() { IsPack = true });
+
+ List<WmsStockQuan> updateQuanList = new List<WmsStockQuan>();
+ foreach (var item in input.PackageCodeList)
+ {
+ var isExistCount = packList.Where(x => x.PackageCode == item).Count();
+ if (isExistCount == 0)
+ {
+ throw Oops.Oh($"鍖厈item}涓嶆槸榻愬寘鐘舵�侊紝璇锋鏌ワ紒");
+ }
+
+ var quanList = await _wmsStockQuanRep.AsQueryable().Where(x => x.PackageCode == item).ToListAsync();
+ var isExist = quanList.Where(x => x.StockStatus == StockStatusEnum.浜哄伐寮哄埗寰呭嚭搴� || x.StockStatus == StockStatusEnum.浜哄伐寮哄埗浠诲姟宸插垱寤�).Count();
+ if (isExist > 0)
+ {
+ throw Oops.Oh($"鍖厈item}涓叾涓湁鏉跨姸鎬佹槸'{StockStatusEnum.浜哄伐寮哄埗寰呭嚭搴�.ToString()}'鎴�'{StockStatusEnum.浜哄伐寮哄埗浠诲姟宸插垱寤�.ToString()}'锛屼笉鍏佽浜哄伐榻愬寘鍑哄簱");
+ }
+
+ //鏇存柊鐘舵��
+ foreach (var quan in quanList)
+ {
+ quan.StockStatus = StockStatusEnum.榻愬寘寰呭嚭搴�;
+ quan.StockStatusName = StockStatusEnum.榻愬寘寰呭嚭搴�.ToString();
+ quan.UpdateTime = DateTime.Now;
+ quan.OperReason = "浜哄伐榻愬寘鍑哄簱";
+ }
+ updateQuanList.AddRange(quanList);
+ }
+
+ //妯″紡鍒ゆ柇
+ var client = await WCFServiceHelper.GetWCFService_SAPCC_Client(_sysConfigRep);
+ var res = await client.ValidateModeAsync(2);
+ if (res.result == false)
+ {
+ throw Oops.Oh(res.resMsg);
}
await _wmsStockQuanRep.UpdateRangeAsync(updateQuanList);
@@ -109,7 +203,7 @@
{
throw Oops.Oh($"娌℃湁閰嶇疆 鍒ゆ柇榻愬 鍊�");
}
- if (!string.IsNullOrEmpty(sysConfig.Value) && sysConfig.Value != "鏃�")
+ if (!string.IsNullOrEmpty(sysConfig.Value) && sysConfig.Value.Trim() != "鏃�")
{
throw Oops.Oh($"鍒ゆ柇榻愬鍊煎凡缁忓瓨鍦ㄥ�納sysConfig.Value},涓嶅厑璁告搷浣�");
}
@@ -134,9 +228,9 @@
}
-
sysConfig.Value = setValue;
await _sysConfigRep.UpdateAsync(sysConfig);
+ //*/
var sysConfig_wms_unline_oper = await _sysConfigRep.GetFirstAsync(x => x.Code == CommonConst.wms_unline_oper);
@@ -173,6 +267,7 @@
[HttpPost]
[ApiDescriptionSettings(Name = "ValdateLabel")]
[Description("WmsOperationTask/ValdateLabel")]
+ [UnitOfWork]
public async Task<Mes_Package_Gather> ValdateLabel(ValidateLabelInput input)
{
if (input == null || input.PackageCode == null || input.Upi == null)
@@ -195,53 +290,294 @@
{
throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{input.PackageCode}鐨勬眹鎬绘暟鎹�");
}
+
+ var _cretaorName = App.User.FindFirst(ClaimConst.RealName)?.Value;
+
+ WmsRecordPackageProcess wmsRecordPackage = new WmsRecordPackageProcess();
+ wmsRecordPackage = singlePackage.Adapt<WmsRecordPackageProcess>();
+ wmsRecordPackage.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+ wmsRecordPackage.CreateTime = DateTime.Now;
+ wmsRecordPackage.CreateUserName = _cretaorName;
+ wmsRecordPackage.Location = "BZ29";
+ wmsRecordPackage.OperRemark = "鏍稿鏍囩";
+ await _wmsRecordPackageProcessRep.InsertAsync(wmsRecordPackage);
+
+ WmsRecordUpiProcess wmsRecordUpi = new WmsRecordUpiProcess();
+ wmsRecordUpi = singleUpi.Adapt<WmsRecordUpiProcess>();
+ wmsRecordUpi.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+ wmsRecordUpi.CreateTime = DateTime.Now;
+ wmsRecordUpi.CreateUserName = _cretaorName;
+ wmsRecordUpi.Location = "BZ29";
+ wmsRecordUpi.OperRemark = "鏍稿鏍囩";
+ await _wmsRecordUpiProcessRep.InsertAsync(wmsRecordUpi);
+
return singlePackage;
}
/// <summary>
- /// NG鍖呬笅绾�
+ /// NG鍖呬笅绾�-鎵弿鍖呭彿
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost]
[ApiDescriptionSettings(Name = "UnlineForNGPackage")]
[Description("WmsOperationTask/UnlineForNGPackage")]
+ [UnitOfWork]
public async Task UnlineForNGPackage(UnlineForNGPackageInput input)
{
- //if (input == null)
- //{
- // throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖");
- //}
- //if (string.IsNullOrEmpty(input.PackageCode))
- //{
- // throw Oops.Oh("鍖呭彿涓嶈兘涓虹┖");
- //}
+ if (input == null)
+ {
+ throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖");
+ }
+ if (string.IsNullOrEmpty(input.PackageCode))
+ {
+ throw Oops.Oh("鍖呭彿涓嶈兘涓虹┖");
+ }
//if (string.IsNullOrEmpty(input.Reason))
//{
// throw Oops.Oh("鍘熷洜涓嶈兘涓虹┖");
//}
- //List<WmsStockQuan> updateQuanList = new List<WmsStockQuan>();
- //foreach (var item in input.PackageCodeList)
- //{
- // var quanList = await _wmsStockQuanRep.AsQueryable().Where(x => x.PackageCode == item).ToListAsync();
- // var isExist = quanList.Where(x => x.StockStatus == StockStatusEnum.榻愬寘寰呭嚭搴�).Count();
- // if (isExist > 0)
- // {
- // throw Oops.Oh($"鍖厈item}涓叾涓湁鏉跨姸鎬佹槸'{StockStatusEnum.榻愬寘寰呭嚭搴�.ToString()}'锛屼笉鍏佽寮哄埗鍑哄簱");
- // }
- // 鏇存柊鐘舵��
- // foreach (var quan in quanList)
- // {
- // quan.StockStatus = StockStatusEnum.浜哄伐寮哄埗寰呭嚭搴�;
- // quan.UpdateTime = DateTime.Now;
- // quan.OperReason = "浜哄伐寮哄埗寰呭嚭搴�";
- // }
- // updateQuanList.AddRange(quanList);
+ var singlePackage = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).FirstAsync();
+ if (singlePackage == null)
+ {
+ throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{input.PackageCode}鐨勬眹鎬绘暟鎹�");
+ }
+
+ singlePackage.UpiFlag = UpiFlagEnum.NG;
+ singlePackage.UpdateTime = DateTime.Now;
+ singlePackage.UpiStatus = UpiStatusEnum.宸蹭笅绾�;
+ singlePackage.AreaCode = AreaCodeEnum.涓嬬嚎鍖哄煙;
+
+ var upiLineQueueList = await _mes_Upi_LineQueueRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).ToListAsync();
+ if (upiLineQueueList?.Count > 0)
+ {
+ await _mes_Upi_LineQueueRep.DeleteAsync(upiLineQueueList);
+ }
+
+ var upiList = await _mesBatchOrderUpiRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).ToListAsync();
+ if (upiList == null)
+ {
+ throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{input.PackageCode}鐨勬澘浠舵暟鎹�");
+ }
+ var _cretaorName = App.User.FindFirst(ClaimConst.RealName)?.Value;
+
+ foreach (var item in upiList)
+ {
+ item.UpiFlag = UpiFlagEnum.NG;
+ item.UpdateTime = DateTime.Now;
+ item.UpiStatus = UpiStatusEnum.宸蹭笅绾�;
+ item.AreaCode = AreaCodeEnum.涓嬬嚎鍖哄煙;
+
+ WmsRecordUpiProcess wmsRecordUpi = new WmsRecordUpiProcess();
+ wmsRecordUpi = item.Adapt<WmsRecordUpiProcess>();
+ wmsRecordUpi.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+ wmsRecordUpi.CreateTime = DateTime.Now;
+ wmsRecordUpi.CreateUserName = _cretaorName;
+ wmsRecordUpi.Location = "";
+ wmsRecordUpi.OperRemark = "NG涓嬬嚎";
+ await _wmsRecordUpiProcessRep.InsertAsync(wmsRecordUpi);
+
+ WmsRecordUpiNg wmsRecordUpiNg = new WmsRecordUpiNg();
+ wmsRecordUpiNg = item.Adapt<WmsRecordUpiNg>();
+ wmsRecordUpiNg.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+ wmsRecordUpiNg.CreateTime = DateTime.Now;
+ wmsRecordUpiNg.CreateUserName = _cretaorName;
+ wmsRecordUpiNg.OperRemark = "NG涓嬬嚎";
+ await _wmsRecordUpiNgRep.InsertAsync(wmsRecordUpiNg);
+
+
+ }
+
+
+ WmsRecordPackageProcess wmsRecordPackage = new WmsRecordPackageProcess();
+ wmsRecordPackage = singlePackage.Adapt<WmsRecordPackageProcess>();
+ wmsRecordPackage.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+ wmsRecordPackage.Location = "";
+ wmsRecordPackage.OperRemark = "NG涓嬬嚎";
+ wmsRecordPackage.CreateTime = DateTime.Now;
+ wmsRecordPackage.CreateUserName = _cretaorName;
+ await _wmsRecordPackageProcessRep.InsertAsync(wmsRecordPackage);
+
+
+ await _mesPackageGatherRep.UpdateAsync(singlePackage);
+ await _mesBatchOrderUpiRep.UpdateRangeAsync(upiList);
+
+ }
+
+ /// <summary>
+ /// 鏍囪NG-鎵弿浠跺彿
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "SetNG")]
+ [Description("WmsOperationTask/SetNG")]
+ [UnitOfWork]
+ public async Task SetNG(SetNGInput input)
+ {
+ if (input == null)
+ {
+ throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖");
+ }
+ if (string.IsNullOrEmpty(input.Upi))
+ {
+ throw Oops.Oh("閮ㄤ欢鏉$爜涓嶈兘涓虹┖");
+ }
+ //if (string.IsNullOrEmpty(input.Reason))
+ //{
+ // throw Oops.Oh("鍘熷洜涓嶈兘涓虹┖");
//}
- //await _wmsStockQuanRep.UpdateRangeAsync(updateQuanList);
+ var singleUpi = await _mesBatchOrderUpiRep.AsQueryable().Where(x => x.UPI == input.Upi).FirstAsync();
+ if (singleUpi == null)
+ {
+ throw Oops.Oh($"娌℃湁鎵惧埌閮ㄤ欢鏉$爜{input.Upi}鐨勬暟鎹�");
+ }
+ var packageCode = singleUpi.PackageCode;
+ var singlePackage = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == packageCode).FirstAsync();
+ if (singlePackage == null)
+ {
+ throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{packageCode}鐨勬眹鎬绘暟鎹�");
+ }
+
+ var _cretaorName = App.User.FindFirst(ClaimConst.RealName)?.Value;
+
+ singlePackage.UpiFlag = UpiFlagEnum.NG;
+ singlePackage.UpdateTime = DateTime.Now;
+ singlePackage.UpdateUserName = _cretaorName;
+
+ var upiList = await _mesBatchOrderUpiRep.AsQueryable().Where(x => x.PackageCode == packageCode).ToListAsync();
+ if (upiList == null)
+ {
+ throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{packageCode}鐨勬澘浠舵暟鎹�");
+ }
+ foreach (var item in upiList)
+ {
+ item.UpiFlag = UpiFlagEnum.NG;
+ item.UpdateTime = DateTime.Now;
+ item.UpdateUserName = _cretaorName;
+
+ WmsRecordUpiProcess wmsRecordUpi = new WmsRecordUpiProcess();
+ wmsRecordUpi = item.Adapt<WmsRecordUpiProcess>();
+ wmsRecordUpi.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+ wmsRecordUpi.CreateTime = DateTime.Now;
+ wmsRecordUpi.CreateUserName = _cretaorName;
+ wmsRecordUpi.Location = "";
+ wmsRecordUpi.OperRemark = "鏍囪NG";
+ await _wmsRecordUpiProcessRep.InsertAsync(wmsRecordUpi);
+
+ WmsRecordUpiNg wmsRecordUpiNg = new WmsRecordUpiNg();
+ wmsRecordUpiNg = item.Adapt<WmsRecordUpiNg>();
+ wmsRecordUpiNg.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+ wmsRecordUpiNg.CreateTime = DateTime.Now;
+ wmsRecordUpiNg.CreateUserName = _cretaorName;
+ wmsRecordUpiNg.OperRemark = "鏍囪NG";
+ await _wmsRecordUpiNgRep.InsertAsync(wmsRecordUpiNg);
+ }
+
+
+ WmsRecordPackageProcess wmsRecordPackage = new WmsRecordPackageProcess();
+ wmsRecordPackage = singlePackage.Adapt<WmsRecordPackageProcess>();
+ wmsRecordPackage.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+ wmsRecordPackage.Location = "";
+ wmsRecordPackage.OperRemark = "鏍囪NG";
+ wmsRecordPackage.CreateTime = DateTime.Now;
+ wmsRecordPackage.CreateUserName = _cretaorName;
+ await _wmsRecordPackageProcessRep.InsertAsync(wmsRecordPackage);
+
+
+ await _mesPackageGatherRep.UpdateAsync(singlePackage);
+ await _mesBatchOrderUpiRep.UpdateRangeAsync(upiList);
+
+ }
+
+
+ /// <summary>
+ /// 鍙栨秷NG-鎵弿浠跺彿
+ /// </summary>
+ /// <param name="input"></param>
+ /// <returns></returns>
+ [HttpPost]
+ [ApiDescriptionSettings(Name = "CancelNG")]
+ [Description("WmsOperationTask/CancelNG")]
+ [UnitOfWork]
+ public async Task CancelNG(CancelNGInput input)
+ {
+ if (input == null)
+ {
+ throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖");
+ }
+ if (string.IsNullOrEmpty(input.Upi))
+ {
+ throw Oops.Oh("閮ㄤ欢鏉$爜涓嶈兘涓虹┖");
+ }
+ //if (string.IsNullOrEmpty(input.Reason))
+ //{
+ // throw Oops.Oh("鍘熷洜涓嶈兘涓虹┖");
+ //}
+
+ var singleUpi = await _mesBatchOrderUpiRep.AsQueryable().Where(x => x.UPI == input.Upi).FirstAsync();
+ if (singleUpi == null)
+ {
+ throw Oops.Oh($"娌℃湁鎵惧埌閮ㄤ欢鏉$爜{input.Upi}鐨勬暟鎹�");
+ }
+ var packageCode = singleUpi.PackageCode;
+ var singlePackage = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == packageCode).FirstAsync();
+ if (singlePackage == null)
+ {
+ throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{packageCode}鐨勬眹鎬绘暟鎹�");
+ }
+
+ var _cretaorName = App.User.FindFirst(ClaimConst.RealName)?.Value;
+
+ singlePackage.UpiFlag = UpiFlagEnum.姝e父;
+ singlePackage.UpdateTime = DateTime.Now;
+ singlePackage.UpdateUserName = _cretaorName;
+
+ var upiList = await _mesBatchOrderUpiRep.AsQueryable().Where(x => x.PackageCode == packageCode).ToListAsync();
+ if (upiList == null)
+ {
+ throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{packageCode}鐨勬澘浠舵暟鎹�");
+ }
+ foreach (var item in upiList)
+ {
+ item.UpiFlag = UpiFlagEnum.姝e父;
+ item.UpdateTime = DateTime.Now;
+ item.UpdateUserName = _cretaorName;
+
+ WmsRecordUpiProcess wmsRecordUpi = new WmsRecordUpiProcess();
+ wmsRecordUpi = item.Adapt<WmsRecordUpiProcess>();
+ wmsRecordUpi.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+ wmsRecordUpi.CreateTime = DateTime.Now;
+ wmsRecordUpi.CreateUserName = _cretaorName;
+ wmsRecordUpi.Location = "";
+ wmsRecordUpi.OperRemark = "鍙栨秷NG";
+ await _wmsRecordUpiProcessRep.InsertAsync(wmsRecordUpi);
+
+ WmsRecordUpiNg wmsRecordUpiNg = new WmsRecordUpiNg();
+ wmsRecordUpiNg = item.Adapt<WmsRecordUpiNg>();
+ wmsRecordUpiNg.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+ wmsRecordUpiNg.CreateTime = DateTime.Now;
+ wmsRecordUpiNg.CreateUserName = _cretaorName;
+ wmsRecordUpiNg.OperRemark = "鍙栨秷NG";
+ await _wmsRecordUpiNgRep.InsertAsync(wmsRecordUpiNg);
+ }
+
+
+ WmsRecordPackageProcess wmsRecordPackage = new WmsRecordPackageProcess();
+ wmsRecordPackage = singlePackage.Adapt<WmsRecordPackageProcess>();
+ wmsRecordPackage.Id = Yitter.IdGenerator.YitIdHelper.NextId();
+ wmsRecordPackage.Location = "";
+ wmsRecordPackage.OperRemark = "鍙栨秷NG";
+ wmsRecordPackage.CreateTime = DateTime.Now;
+ wmsRecordPackage.CreateUserName = _cretaorName;
+ await _wmsRecordPackageProcessRep.InsertAsync(wmsRecordPackage);
+
+
+ await _mesPackageGatherRep.UpdateAsync(singlePackage);
+ await _mesBatchOrderUpiRep.UpdateRangeAsync(upiList);
}
--
Gitblit v1.9.3