From e3b6c01acf7228c009d861c1efea4cbcc7926abe Mon Sep 17 00:00:00 2001
From: 刘磊 <1161824510@qq.com>
Date: 星期三, 04 十二月 2024 14:13:33 +0800
Subject: [PATCH] 分容空框出库

---
 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs             |   39 ++++++++++---------
 Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/RequestChangeLocation.cs |   67 ++++++++++++++++++++++++++++++++-
 2 files changed, 86 insertions(+), 20 deletions(-)

diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/RequestChangeLocation.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/RequestChangeLocation.cs
index 7db9ba8..7efa91a 100644
--- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/RequestChangeLocation.cs
+++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/RequestChangeLocation.cs
@@ -4,8 +4,12 @@
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
+using WIDESEA_Common;
 using WIDESEA_Core;
+using WIDESEA_Core.Enums;
 using WIDESEA_DTO;
+using WIDESEA_DTO.WMS;
+using WIDESEA_Model.Models;
 
 namespace WIDESEA_StoragIntegrationServices
 {
@@ -24,10 +28,69 @@
                 if (string.IsNullOrEmpty(json.ToString())) throw new Exception("涓婁紶鍙傛暟涓虹┖");
 
                 var result = JsonConvert.DeserializeObject<RequestReMove>(json.ToString());
-                ;
-                if (result.MoveType == 5) Console.WriteLine($"鍒嗗妫�娴嬫煖鐏瑙﹀彂:搴撲綅{result.LocationID}");
 
+                var location = _locationRepository.QueryFirst(x => x.AreaId == result.LocationArea && x.LocationCode == result.LocationID);
 
+                if (location == null) throw new Exception("鏈煡搴撲綅");
+
+                if (result.MoveType == 5)
+                {
+                    Console.WriteLine($"鍒嗗妫�娴嬫煖鐏瑙﹀彂:搴撲綅{result.LocationID}");
+
+                    //鏌ユ壘娑堥槻绔欏彴
+                    var station = _stationManagerRepository.QueryFirst(t => t.Roadway == location.RoadwayNo
+                         && t.stationType == (int)StationManager.FireStation
+                         /*&& t. == "Enable"*/);
+                    if (station == null)
+                    {
+                        throw new Exception("娑堥槻绔欏彴鏈厤缃�!");
+                    }
+                    //鏌ユ壘搴撳瓨淇℃伅
+                    var barcodeData = _stockInfoRepository.QueryFirst(t => t.LocationCode == location.LocationCode);
+                    //鎵樼洏鐮�
+                    string barcode = string.Empty;
+                    if (barcodeData != null)
+                    {
+                        barcode = barcodeData.PalletCode;
+                    }
+                    else
+                    {
+                        //鏃犲簱瀛樹俊鎭紝鐢熸垚闅忔満鎵樼洏鐮�
+                        barcode = "M" + DateTime.Now.ToString("MMddHHmmss") + "-" + new Random().Next(100, 1000);
+                    }
+                    int taskNum = _taskRepository.GetTaskNo().Result;
+                    Dt_Task task = new Dt_Task
+                    {
+                        CreateDate = DateTime.Now,
+                        Creater = "HK",
+                        CurrentAddress = result.LocationID,
+                        Grade = 1,
+                        Dispatchertime = DateTime.Now,
+                        PalletCode = result.PalletBarcode,
+                        Roadway = location.RoadwayNo,
+                        SourceAddress = result.LocationID,
+                        TaskState = (int)TaskOutStatusEnum.OutNew,
+                        TaskType = 500,
+                        TargetAddress = station.stationLocation,
+                        NextAddress = station.stationChildCode,
+                        TaskNum = taskNum, //_taskRepository.GetTaskNo().Result,
+                        TaskId = 0,
+                    };
+
+                    // 灏濊瘯娣诲姞鏂颁换鍔�
+                    WMSTaskDTO taskDTO = new WMSTaskDTO()
+                    {
+                        TaskNum = task.TaskNum.Value,
+                        Grade = 1,
+                        PalletCode = task.PalletCode,
+                        RoadWay = task.Roadway,
+                        SourceAddress = task.SourceAddress,
+                        TargetAddress = task.TargetAddress,
+                        TaskState = task.TaskState.Value,
+                        Id = 0,
+                        TaskType = 500,
+                    };
+                }
                 LogFactory.GetLog("鍒嗗绉诲簱鐢宠").Info(true, $"\r\r--------------------------------------");
                 LogFactory.GetLog("鍒嗗绉诲簱鐢宠").Info(true, result);
                 return content.OK();
diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs
index c47ade2..0aeacb5 100644
--- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs
+++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs
@@ -391,24 +391,24 @@
             }
 
             //鍒涘缓涓�涓猅rayCellsStatusDto瀵硅薄锛屽苟璧嬪��
-            TrayCellsStatusDto trayCells = new TrayCellsStatusDto()
-            {
-                Software = "WMS",
-                TrayBarcode = input.PalletCode,
-                //EquipmentCode = "EQ_CWJZ01"
-                EquipmentCode = input.EquiCodeMOM
-            };
+            //TrayCellsStatusDto trayCells = new TrayCellsStatusDto()
+            //{
+            //    Software = "WMS",
+            //    TrayBarcode = input.PalletCode,
+            //    //EquipmentCode = "EQ_CWJZ01"
+            //    EquipmentCode = input.EquiCodeMOM
+            //};
 
             // 璋冪敤GetTrayCellStatusAsync鏂规硶锛岃幏鍙栨暣鐩樼數鑺�
-            content = await GetTrayCellStatusAsync(trayCells);
+            //content = await GetTrayCellStatusAsync(trayCells);
             // 濡傛灉鐘舵�佷负false锛屽垯杩斿洖content
-            if (!content.Status) return content;
+            //if (!content.Status) return content;
 
             // 娣诲姞缁勭洏淇℃伅
             // 灏哻ontent.Data杞崲涓篟esultTrayCellsStatus瀵硅薄
-            var result = JsonConvert.DeserializeObject<ResultTrayCellsStatus>(content.Data.ToString());
-            if (result.SerialNos.Count <= 0)
-                return content.Error(result.MOMMessage);
+            //var result = JsonConvert.DeserializeObject<ResultTrayCellsStatus>(content.Data.ToString());
+            //if (result.SerialNos.Count <= 0)
+            //    return content.Error(result.MOMMessage);
 
             //Console.WriteLine(result);
             //// TODO 鑾峰彇鏈湴鏂欐灞炴�т笌鏁寸洏鐢佃姱灞炴�ц幏鍙栫殑鍊艰繘琛屽姣旓紝濡傛灉涓�鑷村垯缁х画锛屽惁鍒欒繑鍥為敊璇俊鎭�
@@ -417,8 +417,8 @@
             ////    return content.Error("鏂欐灞炴�т笉瀛樺湪");
 
             //// 璋冪敤CreateBoxingInfo鏂规硶锛屽垱寤虹粍鐩樹俊鎭�
-            var boxing = CreateBoxingInfo(result, input.PalletCode);
-            if (boxing == null) return content.Error("缁勭洏澶辫触");
+            //var boxing = CreateBoxingInfo(result, input.PalletCode);
+            //if (boxing == null) return content.Error("缁勭洏澶辫触");
 
             //// 璋冪敤GetProcessApplyAsync鏂规硶锛岃幏鍙栧伐鑹鸿矾绾�
             //ProcessApplyDto process = await GetProcessApplyAsync(input, result);
@@ -436,10 +436,10 @@
             ////var processResponse = await GetProcessResponseAsync(process, input.Position);
             // 璋冪敤CreateNewTask鏂规硶锛屽垱寤烘柊浠诲姟
             content = await CreateNewTask(input);
-            if (content.Status)
-            {
-                var isBox = await _boxingInfoRepository.AddDataNavAsync(boxing);
-            }
+            //if (content.Status)
+            //{
+            //    var isBox = await _boxingInfoRepository.AddDataNavAsync(boxing);
+            //}
         }
         catch (Exception err)
         {
@@ -510,6 +510,8 @@
                 TaskType = task.TaskType,
             };
             content.OK(data: taskDTO);
+
+           
         }
         else
             content.Error("娣诲姞浠诲姟澶辫触");
@@ -637,6 +639,7 @@
 
             ////// 璋冪敤GetProcessResponseAsync鏂规硶锛岃幏鍙栧伐鑹哄搷搴�
             ////var processResponse = await GetProcessResponseAsync(process, input.Position);
+            var isBox = await _boxingInfoRepository.AddDataNavAsync(boxing);
         }
 
         var task = new Dt_Task

--
Gitblit v1.9.3