From 25cb7cd50d12f48e93d6cde47420ca3458e9c47a Mon Sep 17 00:00:00 2001 From: helongyang <647556386@qq.com> Date: 星期四, 12 六月 2025 21:39:43 +0800 Subject: [PATCH] 1 --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/MesProInOrderService.cs | 23 +++++++++++++++++++---- 1 files changed, 19 insertions(+), 4 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/MesProInOrderService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/MesProInOrderService.cs" index 9928363..7bc2e90 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/MesProInOrderService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/MesProInOrderService.cs" @@ -15,6 +15,7 @@ using WIDESEA_IInboundRepository; using WIDESEA_IInboundService; using WIDESEA_IOutboundService; +using WIDESEA_IStockRepository; using WIDESEA_Model.Models; namespace WIDESEA_InboundService @@ -24,10 +25,12 @@ public IMesProInOrderRepository Repository => BaseDal; private readonly IUnitOfWorkManage _unitOfWorkManage; private readonly IInboundRepository _inboundRepository; - public MesProInOrderService(IMesProInOrderRepository BaseDal, IUnitOfWorkManage unitOfWorkManag, IInboundRepository inboundRepository) : base(BaseDal) + private readonly IStockRepository _stockRepository; + public MesProInOrderService(IMesProInOrderRepository BaseDal, IUnitOfWorkManage unitOfWorkManag, IInboundRepository inboundRepository, IStockRepository stockRepository) : base(BaseDal) { _unitOfWorkManage = unitOfWorkManag; _inboundRepository = inboundRepository; + _stockRepository = stockRepository; } /// <summary> /// 鎴愬搧鍏ュ簱鎵爜 @@ -41,7 +44,7 @@ try { //鑾峰彇瀵瑰簲MES鎴愬搧鍏ュ簱鍗曟嵁 - Dt_MesProInOrder mesProInOrder = BaseDal.Db.Queryable<Dt_MesProInOrder>().Includes(x => x.Details).First(); + Dt_MesProInOrder mesProInOrder = BaseDal.Db.Queryable<Dt_MesProInOrder>().Where(x => x.Id == Id).Includes(x => x.Details).First(); if (mesProInOrder==null) { return content.Error("褰撳墠MES鍏ュ簱鍗曟嵁涓嶅瓨鍦�"); @@ -51,14 +54,26 @@ return content.Error("褰撳墠鍗曟嵁宸插叆搴撴垨鍏抽棴鐘舵��"); } ProSerNumAnalysisModel model = CodeAnalysisHelper.CodeAnalysis<ProSerNumAnalysisModel>(AnalysisCodeEnum.ProSerNumAnalysis, serNum); + Dt_MesProInOrderDetail? proInOrderDetail = mesProInOrder.Details.FirstOrDefault(x => x.BagNo == model.BagNO); + //鍒ゆ柇鎵弿鍜屽崟鎹腑鏄惁鍖归厤 + if (proInOrderDetail == null) + { + return content.Error($"妗嗙爜{mesProInOrder.BatchNo}涓棤鍐呭寘{model.BagNO}淇℃伅"); + } + if ((proInOrderDetail.OverInQuantity + model.OKPCSQTY.ObjToInt())> proInOrderDetail.OKPCSQTY) + { + return content.Error($"鍐呭寘鏁伴噺婧㈠嚭{(proInOrderDetail.OverInQuantity + model.OKPCSQTY.ObjToInt()) - proInOrderDetail.OKPCSQTY}"); + } float SumPCSQty = mesProInOrder.Details.Sum(x => x.OKPCSQTY); float OverPCSQty = mesProInOrder.Details.Sum(x=>x.OverInQuantity); if ((OverPCSQty+model.OKPCSQTY.ObjToInt())>SumPCSQty) { return content.Error($"褰撳墠鍏ュ簱璁㈠崟鏁伴噺婧㈠嚭{(OverPCSQty + model.OKPCSQTY.ObjToInt())- SumPCSQty}"); } - //鑾峰彇瀵瑰簲鍐呭寘鏄庣粏 - Dt_MesProInOrderDetail? proInOrderDetail = mesProInOrder.Details.FirstOrDefault(x=>x.BagNo==model.BagNO) ?? throw new Exception($"鏈壘鍒�"); + + proInOrderDetail.OverInQuantity += model.OKPCSQTY.ObjToInt(); + _inboundRepository.MesProInOrderDetailRepository.UpdateData(proInOrderDetail); + return content.OK($"鍐呭寘{proInOrderDetail.BagNo}宸叉壂鏁伴噺锛歿proInOrderDetail.OverInQuantity},鍓╀綑锛歿proInOrderDetail.OKPCSQTY-proInOrderDetail.OverInQuantity}"); } catch (Exception ex) { -- Gitblit v1.9.3