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 | 61 ++++++++++++++++++++++++------ 1 files changed, 49 insertions(+), 12 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 13fe744..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,14 +1,14 @@ -锘縰sing System; -using System.Collections.Generic; -using System.Linq; -using System.Text; +锘縰sing Magicodes.IE.Core; +using MailKit.Search; +using System; using System.Threading.Tasks; -using WIDESEA_Core.Enums; using WIDESEA_Core; +using WIDESEA_Core.Enums; +using WIDESEA_Core.Helper; +using WIDESEA_DTO.Inbound; using WIDESEA_DTO.WCSInfo; using WIDESEA_Model.Models; using WIDESEAWCS_DTO.WCSInfo; -using WIDESEA_Core.Helper; namespace WIDESEA_TaskInfoService { @@ -25,14 +25,51 @@ WebResponseContent content = new WebResponseContent(); try { - (bool, string) result = CheckRequestInbound(productionlineDTO.Station, productionlineDTO.TrayBarcode, false); - if (!result.Item1) return content = WebResponseContent.Instance.Error(result.Item2); - var task = BaseDal.QueryFirst(x => x.PalletCode == productionlineDTO.TrayBarcode); - if (task != null && task.TaskType == TaskTypeEnum.Inbound.ObjToInt()) - return content.OK(data: task); + 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>(); + #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() + { + CurrentAddress = productionlineDTO.stationCode, + NextAddress = "SC01", + SourceAddress = productionlineDTO.stationCode, + TargetAddress = "SC01", + Creater = "System", + PalletCode = productionlineDTO.Barcode, + Roadway = "SC01", + OrderNo = productionlineDTO.batchNo,// inboundOrder.OrderNo, + TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)), + TaskState = InTaskStatusEnum.InNew.ObjToInt(), + TaskType = TaskTypeEnum.Inbound.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(); + _inboundService.InbounOrderService.UpdateDataWithDetail(inboundOrder); + _stockService.StockInfoService.AddMaterielGroup(stockInfo); + AddData(dt_Task); + content.OK(data: dt_Task); + Db.Ado.CommitTran(); + #endregion } catch (Exception ex) { + Db.Ado.RollbackTran(); content.Error(ex.Message); } return content; @@ -67,7 +104,7 @@ PalletCode = lineDTO.Barcode, OrderNo = StockInfoDetails.Count() == 1 ? StockInfoDetails.First().OrderNo : null, Roadway = "SC01", - TaskNum = Convert.ToInt32(DateTime.Now.ToString("HHmmss")), + TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)), TaskState = InTaskStatusEnum.InNew.ObjToInt(), TaskType = TaskTypeEnum.Inbound.ObjToInt(), }; -- Gitblit v1.9.3