From 092971a8ba7848f024427694c642959d0fbc8599 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期四, 08 五月 2025 15:56:09 +0800 Subject: [PATCH] 1 --- 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_ProductionLine.cs | 119 ++++++----------------------------------------------------- 1 files changed, 12 insertions(+), 107 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_ProductionLine.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_ProductionLine.cs" index 1699356..a8b8f2f 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_ProductionLine.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_ProductionLine.cs" @@ -1,4 +1,5 @@ 锘縰sing Magicodes.IE.Core; +using MailKit.Search; using System; using System.Threading.Tasks; using WIDESEA_Core; @@ -24,17 +25,19 @@ WebResponseContent content = new WebResponseContent(); try { - #region MyRegion Dt_StockInfo stockInfo = _stockService.StockInfoService.Repository.GetStockInfo(productionlineDTO.Barcode); if (stockInfo != null) throw new Exception($"鎵樼洏銆恵productionlineDTO.Barcode}銆戝凡瀛樺湪搴撳瓨淇℃伅"); stockInfo = new Dt_StockInfo(); stockInfo.Details = new List<Dt_StockInfoDetail>(); - var OrderNo = productionlineDTO.batchNo.Split('T')[0]; - Dt_InboundOrder inboundOrder = _inboundService.InbounOrderService.GetInboundOrder(OrderNo); - if (inboundOrder == null) throw new Exception($"鏈壘鍒板叆搴撳崟銆恵OrderNo}銆�"); - Dt_InboundOrderDetail inboundOrderDetail = inboundOrder.Details.FirstOrDefault(x => x.BatchNo == productionlineDTO.batchNo); - if (inboundOrderDetail == null) throw new Exception($"鏈壘鍒版壒鍙枫�恵productionlineDTO.batchNo}銆戠殑鍏ュ簱璇︽儏"); - if (inboundOrderDetail.OrderQuantity - inboundOrderDetail.ReceiptQuantity < 1) throw new Exception($"鎵瑰彿銆恵productionlineDTO.batchNo}銆戠粍鐩樻暟閲忚秴鍑�"); + #region MyRegion + string OrderNo = productionlineDTO.batchNo.Substring(0, 8);// DateTime.Now.ToString("yyMMdd"); + Dt_InboundOrder? inboundOrder = _inboundService.InbounOrderService.GetInboundOrder(OrderNo); + if (inboundOrder == null) throw new Exception($"鏈壘鍒版壒鍙蜂负銆恵OrderNo}銆戠殑鍏ュ簱鍗�"); + //var BatchNo = string.Join("", productionlineDTO.batchNo.Except(OrderNo)); + var BatchNo = productionlineDTO.batchNo.Substring(8); + Dt_InboundOrderDetail? inboundOrderDetail = inboundOrder.Details.Where(x => x.BatchNo == BatchNo).FirstOrDefault(); + if (inboundOrderDetail == null) throw new Exception($"鎵瑰彿銆恵OrderNo}銆戠殑鍏ュ簱鍗曟湭鎵惧埌鏌滃彿銆恵BatchNo}銆�"); + if (inboundOrderDetail.OrderQuantity - inboundOrderDetail.ReceiptQuantity < 1) throw new Exception($"鎵瑰彿銆恵OrderNo}銆戠殑鏌滃彿銆恵BatchNo}銆戝彲缁勭洏鏁伴噺涓嶈冻"); Dt_Task dt_Task = new Dt_Task() { @@ -45,15 +48,15 @@ Creater = "System", PalletCode = productionlineDTO.Barcode, Roadway = "SC01", - OrderNo = OrderNo, + OrderNo = productionlineDTO.batchNo,// inboundOrder.OrderNo, TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)), TaskState = InTaskStatusEnum.InNew.ObjToInt(), TaskType = TaskTypeEnum.Inbound.ObjToInt(), - //TaskType = productionlineDTO.traytype == 2 ? TaskTypeEnum.PalletInbound.ObjToInt() : TaskTypeEnum.PalletReturnInbound.ObjToInt(), CreateDate = DateTime.Now, Dispatchertime = DateTime.Now, }; + productionlineDTO.batchNo = BatchNo; content = _stockService.StockInfoService.AddStockInfo(ref stockInfo, ref inboundOrder, productionlineDTO); if (!content.Status) throw new Exception(content.Message); Db.Ado.BeginTran(); @@ -62,104 +65,6 @@ AddData(dt_Task); content.OK(data: dt_Task); Db.Ado.CommitTran(); - #endregion - #region MyRegion - //switch (productionlineDTO.traytype) - //{ - // case 1://鏀剧┖鎵� - // case 3://鏀剧┖鐩� - // //case 5://鏀炬弧鐩� - // { - // //鏌ユ壘鐗╂枡鎵�鏈夊簱瀛� - // var stockInfos = _stockService.StockInfoService.Repository.GetStockInfos(productionlineDTO.traytype.ToString()); - // //鏌ユ壘鍏堝叆鐗╂枡璐т綅鏈�鍚庡叆搴撶墿鏂� - // var stockInfo = stockInfos.Where(x => x.LocationCode == stockInfos.OrderBy(x => x.InDate).FirstOrDefault()?.LocationCode).OrderByDescending(x => x.InDate).FirstOrDefault(); - // if (stockInfo == null) throw new Exception($"鏃犵墿鏂欑紪鍙枫�恵productionlineDTO.traytype}銆戠殑搴撳瓨"); - // var location = _basicService.LocationInfoService.GetLocation(stockInfo.LocationCode); - // #region 鐢熸垚鍑哄簱浠诲姟 - // Dt_Task dt_Task = new Dt_Task() - // { - // CurrentAddress = stockInfo.LocationCode, - // NextAddress = "SC01", - // SourceAddress = stockInfo.LocationCode, - // TargetAddress = productionlineDTO.stationCode, - // Creater = "System", - // PalletCode = stockInfo.PalletCode, - // OrderNo = null, - // Roadway = "SC01", - // TaskNum = Convert.ToInt32(DateTime.Now.ToString("HHmmss")), - // TaskState = OutTaskStatusEnum.OutNew.ObjToInt(), - // TaskType = productionlineDTO.traytype == 1 ? TaskTypeEnum.PalletOutbound.ObjToInt() : TaskTypeEnum.PalletFillOutbound.ObjToInt(), - // IsPickPlace = location.MaxQty - location.CurrentQty == 0, - // CreateDate = DateTime.Now, - // Dispatchertime = DateTime.Now, - // }; - // #endregion - // location.CurrentQty--; - // location.LocationStatus = LocationStatusEnum.Outbounding.ObjToInt(); - // stockInfo.StockStatus = StockStatusEmun.鍑哄簱閿佸畾.ObjToInt(); - // stockInfo.Details.FirstOrDefault().Status = StockStatusEmun.鍑哄簱閿佸畾.ObjToInt(); - - // Db.Ado.BeginTran(); - // AddData(dt_Task); - // _basicService.LocationInfoService.UpdateData(location); - // _stockService.StockInfoService.Repository.UpdateDataWithDetail(stockInfo); - // content.OK(data: dt_Task); - // Db.Ado.CommitTran(); - // } - // break; - // case 2://鍙栫┖鎵� - // case 4://鍙栨弧鐩� - // case 6://鍙栫┖鐩� - // { - // Dt_StockInfo stockInfo = _stockService.StockInfoService.Repository.GetStockInfo(productionlineDTO.Barcode); - // if (stockInfo != null) throw new Exception($"鎵樼洏銆恵productionlineDTO.Barcode}銆戝凡瀛樺湪搴撳瓨淇℃伅"); - // productionlineDTO.QtySum = Array.ConvertAll(productionlineDTO.productQty.Split(","), s => decimal.Parse(s)).Sum();//鍏ュ簱鎬绘暟 - // stockInfo = new Dt_StockInfo(); - // stockInfo.Details = new List<Dt_StockInfoDetail>(); - // Dt_InboundOrder inboundOrder = null; - // #region 鐢熸垚鍏ュ簱浠诲姟 - // Dt_Task dt_Task = new Dt_Task() - // { - // CurrentAddress = productionlineDTO.stationCode, - // NextAddress = "SC01", - // SourceAddress = productionlineDTO.stationCode, - // TargetAddress = "SC01", - // Creater = "System", - // PalletCode = productionlineDTO.Barcode, - // Roadway = "SC01", - // TaskNum = Convert.ToInt32(DateTime.Now.ToString("HHmmss")), - // TaskState = InTaskStatusEnum.InNew.ObjToInt(), - // TaskType = productionlineDTO.traytype == 2 ? TaskTypeEnum.PalletInbound.ObjToInt() : TaskTypeEnum.PalletReturnInbound.ObjToInt(), - // CreateDate = DateTime.Now, - // Dispatchertime = DateTime.Now, - // }; - // #endregion - // if (productionlineDTO.traytype == 4) - // { - // var OrderNo = productionlineDTO.batchNo.Split('T')[0]; - // inboundOrder = _inboundService.InbounOrderService.GetInboundOrder(OrderNo); - // if (inboundOrder == null) throw new Exception($"鏈壘鍒板叆搴撳崟銆恵OrderNo}銆�"); - // Dt_InboundOrderDetail inboundOrderDetail = inboundOrder.Details.FirstOrDefault(x => x.BatchNo == productionlineDTO.batchNo); - // if (inboundOrderDetail == null) throw new Exception($"鏈壘鍒版壒鍙枫�恵productionlineDTO.batchNo}銆戠殑鍏ュ簱璇︽儏"); - // if (inboundOrderDetail.OrderQuantity - inboundOrderDetail.ReceiptQuantity < 1) throw new Exception($"鎵瑰彿銆恵productionlineDTO.batchNo}銆戠粍鐩樻暟閲忚秴鍑�"); - - // dt_Task.OrderNo = OrderNo; - // dt_Task.TaskType = TaskTypeEnum.Inbound.ObjToInt(); - // } - // content = _stockService.StockInfoService.AddStockInfo(ref stockInfo, ref inboundOrder, productionlineDTO); - // if (!content.Status) throw new Exception(content.Message); - // Db.Ado.BeginTran(); - // if (inboundOrder != null) _inboundService.InbounOrderService.UpdateDataWithDetail(inboundOrder); - // _stockService.StockInfoService.AddMaterielGroup(stockInfo); - // AddData(dt_Task); - // content.OK(data: dt_Task); - // Db.Ado.CommitTran(); - // } - // break; - // default: - // throw new Exception("鏈畾涔夋墭鐩樼被鍨�"); - //} #endregion } catch (Exception ex) -- Gitblit v1.9.3