From 6e9f630e4e12738d98241b684e6227e02010b6c5 Mon Sep 17 00:00:00 2001 From: Huangxiaoqiang-03 <1247017146@qq.com> Date: 星期五, 01 十一月 2024 17:30:30 +0800 Subject: [PATCH] 1 --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs | 70 ++++++++++++++++------------------- 1 files changed, 32 insertions(+), 38 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs" index d2c5191..9cf7970 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs" @@ -8,11 +8,16 @@ using WIDESEA_Core; using WIDESEA_Model.Models; using WIDESEA_Core.Helper; +using Microsoft.Extensions.Logging; +using System.Net.Http.Headers; +using System.Security.Policy; +using Newtonsoft.Json; namespace WIDESEA_TaskInfoService { public partial class TaskService { + public string url = AppSettings.Configuration["WCS"]; /// <summary> /// PDA鐢宠鍏ュ簱--鍫嗗灈鏈虹珛搴撳叆搴� /// </summary> @@ -72,7 +77,7 @@ WebResponseContent content = new WebResponseContent(); try { - Dt_StockInfo stockInfo = _stockInfoService.Repository.GetStockInfo(palletCode); + Dt_StockInfo stockInfo = _stockService.StockInfoService.Repository.GetStockInfo(palletCode); (bool, string) result = CheckRequestInbound(stationCode, palletCode, true, stockInfo); if (!result.Item1) return content = WebResponseContent.Instance.Error(result.Item2); content = AssignLocUpdateData(stationCode, TaskTypeEnum.Inbound.ObjToInt(), palletCode, true, stockInfo); @@ -99,13 +104,15 @@ WebResponseContent content = new WebResponseContent(); try { - Dt_LocationInfo? locationInfo = _locationInfoService.AssignLocation(stationCode, taskType); + _unitOfWorkManage.BeginTran(); + Dt_LocationInfo? locationInfo = _basicService.LocationInfoService.AssignLocation(stationCode, taskType); + //Dt_LocationInfo dt_LocationInfo = null; if (locationInfo != null) { Dt_Task task = new() { CurrentAddress = stationCode, - Grade = 0, + Grade = 2, PalletCode = palletCode, NextAddress = locationInfo.LocationCode, Roadway = locationInfo.RoadwayNo, @@ -117,31 +124,47 @@ BaseDal.AddData(task); int beforeStatus = locationInfo.LocationStatus; - locationInfo.LocationStatus = LocationStatusEnum.PalletLock.ObjToInt(); + + if (isUpdateStock) { locationInfo.LocationStatus = LocationStatusEnum.Lock.ObjToInt(); + _basicService.LocationInfoService.UpdateLocationLock(locationInfo, task.TaskNum, StockChangeType.Inbound.ObjToInt(), false); + if (stockInfo != null && stockInfo.Details != null && stockInfo.Details.Count > 0) { orderNo = stockInfo.Details.FirstOrDefault()?.OrderNo ?? ""; stockInfo.StockStatus = StockStatusEmun.鍏ュ簱纭.ObjToInt(); - _stockInfoService.Repository.UpdateData(stockInfo); + _stockService.StockInfoService.Repository.UpdateData(stockInfo); } else { return content = WebResponseContent.Instance.Error("鏈壘鍒板簱瀛樹俊鎭�"); } } - _locationInfoService.Repository.UpdateData(locationInfo); - _locationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, beforeStatus, StockChangeType.Inbound.ObjToInt(), orderNo, task.TaskNum); - + else + { + locationInfo.LocationStatus = LocationStatusEnum.PalletLock.ObjToInt(); + _basicService.LocationInfoService.UpdateLocationLock(locationInfo, task.TaskNum, StockChangeType.Inbound.ObjToInt(), false); + } + _basicService.LocationInfoService.Repository.UpdateData(locationInfo); + List<Dt_Task> tasks = new List<Dt_Task>(); + tasks.Add(task); + _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, beforeStatus, StockChangeType.Inbound.ObjToInt(), orderNo, task.TaskNum); + var response = HttpHelper.Post<WebResponseContent>(url + "ReceiveTask/", tasks, "鍏ュ簱浠诲姟涓嬪彂"); + if (!response.Status) + { + return content = WebResponseContent.Instance.Error("浠诲姟涓嬪彂寮傚父"); + } + _unitOfWorkManage.CommitTran(); return content = WebResponseContent.Instance.OK(); } return content = WebResponseContent.Instance.Error("鏈壘鍒板彲鍒嗛厤璐т綅"); } catch (Exception ex) { + _unitOfWorkManage.RollbackTran(); content = WebResponseContent.Instance.Error(ex.Message); } return content; @@ -186,7 +209,7 @@ } else { - if (_stockInfoService.Repository.QueryFirst(x => x.PalletCode == palletCode) != null) + if (_stockService.StockInfoService.Repository.QueryFirst(x => x.PalletCode == palletCode) != null) { return (false, "璇ユ墭鐩樺凡瀛樺湪搴撳唴"); } @@ -195,35 +218,6 @@ return (true, "鎴愬姛"); } - /// <summary> - /// 绌烘墭鐩樺叆搴撳畬鎴愬鐞� - /// </summary> - /// <param name="task">浠诲姟瀹炰綋瀵硅薄</param> - /// <returns>杩斿洖澶勭悊缁撴灉</returns> - public WebResponseContent PalletInboundTaskCompleted(Dt_Task task) - { - Dt_StockInfo stockInfo = new Dt_StockInfo() - { - PalletCode = task.PalletCode, - LocationCode = task.TargetAddress, - StockStatus = StockStatusEmun.宸插叆搴�.ObjToInt() - }; - Dt_LocationInfo locationInfo = _locationInfoService.Repository.QueryFirst(x => x.LocationCode == task.TargetAddress); - CheckInboundCompleted(stockInfo, locationInfo); - - _stockInfoService.Repository.AddData(stockInfo); - - int beforeStatus = locationInfo.LocationStatus; - locationInfo.LocationStatus = LocationStatusEnum.Pallet.ObjToInt(); - _locationInfoService.Repository.UpdateData(locationInfo); - - - BaseDal.DeleteData(task); - - _locationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, beforeStatus, StockChangeType.Inbound.ObjToInt(), "", task.TaskNum); - - return WebResponseContent.Instance.OK(); - } } } -- Gitblit v1.9.3