From fe5dd3d5e16980a1fe722712e488875e34bc7455 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周六, 30 11月 2024 06:20:25 +0800 Subject: [PATCH] 22 --- LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs | 118 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 117 insertions(+), 1 deletions(-) diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs index 10276d2..f4a625a 100644 --- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs +++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/WmsTask/WmsOperationTaskService.cs @@ -4,6 +4,10 @@ using System.Data; using System.Web; using System.Text; +using DocumentFormat.OpenXml.Office.CustomUI; +using Microsoft.CodeAnalysis.Operations; +using Admin.NET.Application.Service.WmsTask.WmsRbLineTask.Dto; + namespace Admin.NET.Application; /// <summary> /// 鎿嶄綔浠诲姟鏈嶅姟 @@ -13,10 +17,24 @@ { private readonly SqlSugarRepository<WmsRbLineTask> _rep; private readonly SqlSugarRepository<WmsStockQuan> _wmsStockQuanRep; - public WmsOperationTaskService(SqlSugarRepository<WmsRbLineTask> rep, SqlSugarRepository<WmsStockQuan> wmsStockQuanRep) + private readonly SqlSugarRepository<Mes_Package_Gather> _mesPackageGatherRep; + private readonly SqlSugarRepository<SysConfig> _sysConfigRep; + private readonly SqlSugarRepository<Mes_BatchOrderUPI_New> _mesBatchOrderUpiRep; + private readonly SqlSugarRepository<Mes_Order_Gather> _mesOrderGatherRep; + + public WmsOperationTaskService(SqlSugarRepository<WmsRbLineTask> rep, SqlSugarRepository<WmsStockQuan> wmsStockQuanRep + , SqlSugarRepository<Mes_Package_Gather> mesPackageGatherRep + , SqlSugarRepository<SysConfig> sysConfigRep + , SqlSugarRepository<Mes_BatchOrderUPI_New> mesBatchOrderUpiRep + , SqlSugarRepository<Mes_Order_Gather> mesOrderGatherRep + ) { + _sysConfigRep = sysConfigRep; + _mesPackageGatherRep = mesPackageGatherRep; _rep = rep; _wmsStockQuanRep = wmsStockQuanRep; + _mesBatchOrderUpiRep = mesBatchOrderUpiRep; + _mesOrderGatherRep = mesOrderGatherRep; } @@ -59,6 +77,104 @@ } + /// <summary> + /// 鍒ゆ柇榻愬 + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + [HttpPost] + [ApiDescriptionSettings(Name = "ValdateQiTao")] + [Description("WmsOperationTask/ValdateQiTao")] + public async Task<ValidateQiTaoOutput> ValdateQiTao(ValidateQiTaoInput input) + { + ValidateQiTaoOutput output = new ValidateQiTaoOutput(); + if (input == null || input.PackageCode == null) + { + throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖"); + } + var package = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).FirstAsync(); + if (package == null) + { + throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{input.PackageCode}鐨勬眹鎬绘暟鎹�"); + } + + + + var sysConfig = await _sysConfigRep.GetFirstAsync(x => x.Code == CommonConst.WmsBZ30_QiTao); + if (sysConfig == null) + { + throw Oops.Oh($"娌℃湁閰嶇疆 鍒ゆ柇榻愬 鍊�"); + } + if (!string.IsNullOrEmpty(sysConfig.Value) && sysConfig.Value != "鏃�") + { + throw Oops.Oh($"鍒ゆ柇榻愬鍊煎凡缁忓瓨鍦ㄥ�納sysConfig.Value},涓嶅厑璁告搷浣�"); + } + + var setValue = ""; + var _QiTaoReuslt = ""; + var other_orderList = await _mesPackageGatherRep.AsQueryable().Where(x => x.Info5 == package.Info5 && x.PackageCode != input.PackageCode).ToListAsync(); + var num = other_orderList.Where(x => x.UpiStatus == UpiStatusEnum.鍒濆 || x.UpiStatus == UpiStatusEnum.涓嶉綈鍖�).Count(); + if (num > 0) + { + //涓嶉綈濂� + setValue = $"{input.PackageCode}|涓嶉綈濂�"; + _QiTaoReuslt = "涓嶉綈濂�"; + } + else + { + setValue = $"{input.PackageCode}|榻愬"; + _QiTaoReuslt = "榻愬"; + } + + + + sysConfig.Value = setValue; + await _sysConfigRep.UpdateAsync(sysConfig); + + //璁板綍宸ヤ綔鏃堕棿鍜屽伐浣滀汉 + + + output = package.Adapt<ValidateQiTaoOutput>(); + output.QiTaoReuslt = _QiTaoReuslt; + return output; + } + + + /// <summary> + /// 鏍稿鏍囩 + /// </summary> + /// <param name="input"></param> + /// <returns></returns> + [HttpPost] + [ApiDescriptionSettings(Name = "ValdateLabel")] + [Description("WmsOperationTask/ValdateLabel")] + public async Task<Mes_Package_Gather> ValdateLabel(ValidateLabelInput input) + { + if (input == null || input.PackageCode == null || input.Upi == null) + { + throw Oops.Oh("鍙傛暟涓嶈兘涓虹┖"); + } + + var singleUpi = await _mesBatchOrderUpiRep.AsQueryable().Where(x => x.UPI == input.Upi).FirstAsync(); + if (singleUpi == null) + { + throw Oops.Oh($"娌℃湁鎵惧埌閮ㄤ欢鏉$爜{input.Upi}鐨勬暟鎹�"); + } + if (singleUpi.PackageCode != input.PackageCode) + { + throw Oops.Oh($"閮ㄤ欢鏉$爜{input.Upi}鎵�灞炲寘鏄瘂singleUpi.PackageCode},璺熸壂鎻忕殑鍖呭彿{input.PackageCode}涓嶇"); + } + + var singlePackage = await _mesPackageGatherRep.AsQueryable().Where(x => x.PackageCode == input.PackageCode).FirstAsync(); + if (singlePackage == null) + { + throw Oops.Oh($"娌℃湁鎵惧埌鍖呭彿{input.PackageCode}鐨勬眹鎬绘暟鎹�"); + } + return singlePackage; + } + + + } -- Gitblit v1.9.3