From 37ea017aad42d0682d068b65e82aa62ea9e2c1ea Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期四, 20 二月 2025 17:42:16 +0800 Subject: [PATCH] 1 --- 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Service/StockInfoService.cs | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 59 insertions(+), 0 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Service/StockInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Service/StockInfoService.cs" index 6a69746..f13f851 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Service/StockInfoService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Service/StockInfoService.cs" @@ -10,7 +10,9 @@ using WIDESEA_Core.BaseServices; using WIDESEA_Core.Enums; using WIDESEA_Core.Helper; +using WIDESEA_DTO.Inbound; using WIDESEA_DTO.Stock; +using WIDESEA_DTO.WCSInfo; using WIDESEA_IBasicRepository; using WIDESEA_IRecordRepository; using WIDESEA_IRecordService; @@ -31,6 +33,63 @@ } return stockInfo; } + /// <summary> + /// 娣诲姞缁勭洏/搴撳瓨淇℃伅 + /// </summary> + /// <returns></returns> + public WebResponseContent AddStockInfo(ref Dt_StockInfo stockInfo, ref Dt_InboundOrder inboundOrder, ProductionlineDTO productionlineDTO) + { + WebResponseContent content = new WebResponseContent().OK(); + try + { + var materielCode = productionlineDTO.traytype.ToString(); + if (inboundOrder != null) + { + var inboundOrderDetail = inboundOrder.Details.FirstOrDefault(x => x.BatchNo == productionlineDTO.batchNo); + materielCode = inboundOrderDetail.MaterielCode; + inboundOrderDetail.ReceiptQuantity++; + inboundOrderDetail.OrderDetailStatus = inboundOrderDetail.OverInQuantity == inboundOrderDetail.OrderQuantity ? OrderDetailStatusEnum.Over.ObjToInt() : OrderDetailStatusEnum.GroupAndInbound.ObjToInt(); + + if (inboundOrder.Details.FirstOrDefault(x => x.OrderDetailStatus != OrderDetailStatusEnum.Over.ObjToInt()) == null) + { + inboundOrder.OrderStatus = InboundStatusEnum.鍏ュ簱瀹屾垚.ObjToInt(); + } + else if (inboundOrder.OrderStatus == InboundStatusEnum.鏈紑濮�.ObjToInt()) + { + inboundOrder.OrderStatus = InboundStatusEnum.鍏ュ簱涓�.ObjToInt(); + } + } + var materielInfo = _basicRepository.MaterielInfoRepository.QueryFirst(x => x.MaterielCode == materielCode); + if (materielInfo == null) throw new Exception($"鏈壘鍒扮墿鏂欎俊鎭�,鐗╂枡缂栫爜銆恵materielCode}銆�"); + Dt_StockInfoDetail stockInfoDetail = new Dt_StockInfoDetail() + { + Status = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(), + OrderNo = inboundOrder?.OrderNo, + StockId = stockInfo.Id != 0 ? stockInfo.Id : 0, + MaterielName = materielInfo.MaterielName, + MaterielCode = materielInfo.MaterielCode, + BatchNo = inboundOrder.Details.FirstOrDefault().BatchNo, + StockQuantity = 1,// productionlineDTO.QtySum, + SerialNumber = "", + //SerialNumber = $"{inboundOrder.OrderNo} | {materielInfo.MaterielCode} | {pdaMaterielGroupDTO.BatchNo} | {pdaMaterielGroupDTO.ReceiptQuantity}", + Creater = "System" + }; + if (stockInfo.Id == 0) + { + stockInfo.PalletCode = productionlineDTO.Barcode; + stockInfo.StockStatus = StockStatusEmun.缁勭洏鏆傚瓨.ObjToInt(); + stockInfo.Creater = "System"; + stockInfo.Remark = productionlineDTO.productQty; + } + stockInfo.Details.Add(stockInfoDetail); + + } + catch (Exception ex) + { + content.Error(ex.Message); + } + return content; + } public void AddMaterielGroup(Dt_StockInfo stockInfo) { -- Gitblit v1.9.3