From 021edcd84d6601249e008141b3027549f864155f Mon Sep 17 00:00:00 2001
From: wanshenmean <cathay_xy@163.com>
Date: 星期一, 11 十一月 2024 17:30:40 +0800
Subject: [PATCH] 24-11-11.01

---
 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs |   43 +++++++++++++++++++++++++++----------------
 1 files changed, 27 insertions(+), 16 deletions(-)

diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs
index 5367dc9..2236c93 100644
--- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs
+++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs
@@ -34,6 +34,7 @@
     private readonly IProcessApplyService _processApplyService; //宸ヨ壓璺嚎
     private readonly IDt_AreaInfoRepository _areaInfoRepository; //鍖哄煙
     private readonly IAgingInOrOutInputService _agingInOrOutInputService; //闈欑疆\闄堝寲
+    private readonly IProductionRepository _productionRepository; //鐢熶骇
 
     public Dt_TaskService(IDt_TaskRepository BaseDal,
                                 IUnitOfWorkManage unitOfWorkManage,
@@ -54,7 +55,8 @@
                                 IProcessApplyService processApplyService,
                                 IDt_AreaInfoRepository areaInfoRepository,
                                 IAgingInOrOutInputService agingInOrOutInputService,
-                                IStockInfoDetailRepository stockInfoDetailRepository) : base(BaseDal)
+                                IStockInfoDetailRepository stockInfoDetailRepository,
+                                IProductionRepository productionRepository) : base(BaseDal)
     {
         _unitOfWorkManage = unitOfWorkManage;
         _outOrderRepository = outOrderRepository;
@@ -75,6 +77,7 @@
         _areaInfoRepository = areaInfoRepository;
         _agingInOrOutInputService = agingInOrOutInputService;
         _stockInfoDetailRepository = stockInfoDetailRepository;
+        _productionRepository = productionRepository;
     }
 
     #region 澶栭儴鎺ュ彛鏂规硶
@@ -452,7 +455,16 @@
             var result = JsonConvert.DeserializeObject<ResultTrayCellsStatus>(content.Data.ToString());
             if (result.SerialNos.Count <= 0)
                 return content.Error(result.MOMMessage);
+
+            // TODO 鑾峰彇鏈湴鏂欐灞炴�т笌鏁寸洏鐢佃姱灞炴�ц幏鍙栫殑鍊艰繘琛屽姣旓紝濡傛灉涓�鑷村垯缁х画锛屽惁鍒欒繑鍥為敊璇俊鎭�
+            var productions = await _productionRepository.QueryDataAsync(x => result.TrayBarcodePropertys.Select(x => x.TrayBarcodeProperty).ToList().Contains(x.TrayBarcodeProperty));
+            if (productions.Count <= 0)
+                return content.Error("鏂欐灞炴�т笉瀛樺湪");
+
+            // 璋冪敤CreateBoxingInfo鏂规硶锛屽垱寤虹粍鐩樹俊鎭�
+
             var boxing = await CreateBoxingInfo(result, input.PalletCode);
+            if (boxing == null) return content.Error("缁勭洏澶辫触");
 
             // 璋冪敤GetProcessApplyAsync鏂规硶锛岃幏鍙栧伐鑹鸿矾绾�
             ProcessApplyDto process = await GetProcessApplyAsync(result);
@@ -460,11 +472,18 @@
             // 濡傛灉process涓簄ull锛屽垯杩斿洖content
             if (process == null) return content;
 
-            // 璋冪敤GetProcessResponseAsync鏂规硶锛岃幏鍙栧伐鑹哄搷搴�
-            var processResponse = await GetProcessResponseAsync(process, input.Position);
+            // 璋冪敤_processApplyService.GetProcessApplyAsync鏂规硶锛岃幏鍙栧伐鑹虹敵璇�
+            content = await _processApplyService.GetProcessApplyAsync(process);
 
+            // 濡傛灉鐘舵�佷负false锛屽垯杩斿洖null
+            if (!content.Status) return content.Error("宸ヨ壓鐢宠澶辫触");
+
+            //// 璋冪敤GetProcessResponseAsync鏂规硶锛岃幏鍙栧伐鑹哄搷搴�
+            //var processResponse = await GetProcessResponseAsync(process, input.Position);
+
+            List<string> strings = input.Position == "1088" ? new List<string>() { "CHSC01" } : new List<string>() { "JZSC01" };
             // 璋冪敤CreateNewTask鏂规硶锛屽垱寤烘柊浠诲姟
-            content =  await CreateNewTask(input, processResponse);
+            content =  await CreateNewTask(input, strings);
             if (content.Status)
             {
                 var isBox = await _boxingInfoRepository.AddDataNavAsync(boxing);
@@ -564,7 +583,7 @@
                 SerialNumber = serialNoObj.SerialNo,
                 OrderNo = serialNoObj.PositionNo.ToString(),
                 Status = serialNoObj.SerialNoStatus,
-                MaterielCode = serialNoObj.BindCode,
+                MaterielCode = result.BindCode,
                 Remark = result.TrayBarcodePropertys.ToJsonString(),
             }).ToList()
         };
@@ -1184,20 +1203,12 @@
     /// <param name="areaId">鍖哄煙ID</param>
     /// <param name="content">鍝嶅簲鍐呭</param>
     /// <returns></returns>
-    private async Task<WebResponseContent> CreateNewTask(RequestTaskDto input, List<Dt_EquipmentProcess> process = null, int flag = 0)
+    private async Task<WebResponseContent> CreateNewTask(RequestTaskDto input, List<string> process = null, int flag = 0)
     {
         WebResponseContent content = new WebResponseContent();
-        List<string> strings = new List<string>();
-        if (process != null)
-        {
-            strings = process.Select(x => x.EquipmentName).ToList();
-        }
-        else
-        {
-            strings = input.Position.Split(',').ToList();
-        }
+
         // 鑾峰彇鐩爣鍦板潃
-        string ToAddress = await GetRoadWayAsync(strings);
+        string ToAddress = await GetRoadWayAsync(process);
 
         // 鍒涘缓鏂颁换鍔″疄渚�
         var task = new Dt_Task

--
Gitblit v1.9.3