From 5ffc36a1db18d3112a9b50a9cf3953d7fcf21bae Mon Sep 17 00:00:00 2001 From: huanghongfeng <huanghongfeng@hnkhzn.com> Date: 星期二, 19 八月 2025 16:37:24 +0800 Subject: [PATCH] 更新 --- 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Location/LocationInfoService.cs | 41 +++++++++++++++++++++++++++-------------- 1 files changed, 27 insertions(+), 14 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Location/LocationInfoService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Location/LocationInfoService.cs" index e320f9d..27fb0fd 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Location/LocationInfoService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageBasicServices/Location/LocationInfoService.cs" @@ -21,6 +21,7 @@ private readonly ITaskExecuteDetailRepository _taskExecuteDetailRepository; private readonly ILocationStatusChangeRecordRepository _locationStatusChangeRecordRepository; private readonly IDt_WheelsStockRepository _WheelsStockRepository; + private readonly IDt_ZdpStockRepository _zdpStockRepository; private readonly IMapper _mapper; public LocationInfoService(ILocationInfoRepository BaseDal, @@ -33,7 +34,8 @@ IStockInfoDetailRepository stockInfoDetailRepository, IMapper mapper, IDt_TaskService taskService, - IDt_WheelsStockRepository wheelsStockRepository) : base(BaseDal) + IDt_WheelsStockRepository wheelsStockRepository, + IDt_ZdpStockRepository zdpStockRepository) : base(BaseDal) { _unitOfWorkManage = unitOfWorkManage; _taskRepository = taskRepository; @@ -45,6 +47,7 @@ _mapper = mapper; _taskService = taskService; _WheelsStockRepository = wheelsStockRepository; + _zdpStockRepository = zdpStockRepository; } /// <summary> @@ -80,6 +83,8 @@ // 鑾峰彇鏂扮殑搴撲綅鐨勪换鍔� var internalTransferTask = await _taskRepository.QueryFirstAsync(x => x.SourceAddress == newLocationID && x.Roadway == outboundTask.Roadway && x.TaskState == (int)TaskOutStatusEnum.OutNew); + + LogFactory.GetLog("妫�鏌ユ槸鍚﹂渶瑕佺Щ搴�").InfoFormat(true, "闇�瑕佺Щ搴�,鑾峰彇鏂板簱浣嶇殑浠诲姟", $"鏂板簱浣嶄换鍔★細{internalTransferTask}"); // 濡傛灉鏂扮殑搴撲綅娌℃湁鎵惧埌瀵瑰簲鐨勪换鍔� @@ -369,8 +374,12 @@ // 鍒ゆ柇璇ヤ綅缃槸鍚︽湁搴撳瓨 var stockInfo = await _WheelsStockRepository.QueryFirstAsync(x => x.Wheels_Location == newLocationID); + // 鍒ゆ柇璇ヤ綅缃槸鍚︽湁搴撳瓨 + var zdpInfo = await _zdpStockRepository.QueryFirstAsync(x => x.Zdp_Location == newLocationID); + + LogFactory.GetLog("妫�鏌ユ槸鍚﹂渶瑕佺Щ搴�").InfoFormat(true, "闇�瑕佺Щ搴�,鏈幏鍙栧埌鏂板簱浣嶄换鍔�", $"璇ヤ綅缃槸鍚︽湁搴撳瓨锛歿stockInfo}"); - if (stockInfo == null) + if (stockInfo == null && zdpInfo==null) { LogFactory.GetLog("妫�鏌ユ槸鍚﹂渶瑕佺Щ搴�").InfoFormat(true, "闇�瑕佺Щ搴�,鏈幏鍙栧埌搴撳瓨鏁版嵁", $"鐩存帴杩斿洖鍘熷厛鍑哄簱浠诲姟锛歿outboundTask}"); // 濡傛灉娌℃湁搴撳瓨锛岀洿鎺ヨ繑鍥炲綋鍓嶅嚭搴撲换鍔� @@ -388,14 +397,14 @@ { CreateDate = DateTime.Now, Creater = App.User.UserName == null ? "admin" : App.User.UserName, - CurrentAddress = stockInfo.Wheels_Location, + CurrentAddress = stockInfo != null ?stockInfo.Wheels_Location: zdpInfo.Zdp_Location, Grade = 99, - MaterialNo = stockInfo.Wheels_Type, + MaterialNo = stockInfo != null ? stockInfo.Wheels_Type: "2", NextAddress = emptyLocation.LocationCode, - PalletCode = stockInfo.Wheels_Num, + PalletCode = stockInfo != null ? stockInfo.Wheels_Num : zdpInfo.Zdp_code, Remark = "绉诲簱", Roadway = "SC1", - SourceAddress = stockInfo.Wheels_Location, + SourceAddress = stockInfo != null ? stockInfo.Wheels_Location : zdpInfo.Zdp_Location, TaskNum = taskNo, TargetAddress = emptyLocation.LocationCode, TaskState = (int)TaskStatus.Created, @@ -424,8 +433,12 @@ // 鍒ゆ柇璇ヤ綅缃槸鍚︽湁搴撳瓨 var stockInfo = await _WheelsStockRepository.QueryFirstAsync(x => x.Wheels_Location == newLocationID); + // 鍒ゆ柇璇ヤ綅缃槸鍚︽湁搴撳瓨 + var zdpInfo = await _zdpStockRepository.QueryFirstAsync(x => x.Zdp_Location == newLocationID); + + LogFactory.GetLog("妫�鏌ユ槸鍚﹂渶瑕佺Щ搴�").InfoFormat(true, "闇�瑕佺Щ搴�,鏈幏鍙栧埌鏂板簱浣嶄换鍔�", $"璇ヤ綅缃槸鍚︽湁搴撳瓨锛歿stockInfo}"); - if (stockInfo == null) + if (stockInfo == null && zdpInfo == null) { LogFactory.GetLog("妫�鏌ユ槸鍚﹂渶瑕佺Щ搴�").InfoFormat(true, "闇�瑕佺Щ搴�,鏈幏鍙栧埌搴撳瓨鏁版嵁", $"鐩存帴杩斿洖鍘熷厛鍑哄簱浠诲姟锛歿inboundTask}"); // 濡傛灉娌℃湁搴撳瓨锛岀洿鎺ヨ繑鍥炲綋鍓嶅嚭搴撲换鍔� @@ -443,14 +456,14 @@ { CreateDate = DateTime.Now, Creater = App.User.UserName == null ? "admin" : App.User.UserName, - CurrentAddress = stockInfo.Wheels_Location, + CurrentAddress = stockInfo != null ? stockInfo.Wheels_Location : zdpInfo.Zdp_Location, Grade = 99, - MaterialNo = stockInfo.Wheels_Type, + MaterialNo = stockInfo != null ? stockInfo.Wheels_Type : "2", NextAddress = emptyLocation.LocationCode, - PalletCode = stockInfo.Wheels_Num, + PalletCode = stockInfo != null ? stockInfo.Wheels_Num : zdpInfo.Zdp_code, Remark = "绉诲簱", Roadway = "SC1", - SourceAddress = stockInfo.Wheels_Location, + SourceAddress = stockInfo != null ? stockInfo.Wheels_Location : zdpInfo.Zdp_Location, TaskNum = taskNo, TargetAddress = emptyLocation.LocationCode, TaskState = (int)TaskStatus.Created, @@ -497,7 +510,7 @@ //List<DtLocationInfo> locations = new List<DtLocationInfo>(); if (locationInfos == null || locationInfos.Count == 0) { - locationInfos = BaseDal.QueryData(x => x.LocationStatus == (int)LocationEnum.Free && x.RoadwayNo == "SC1" && x.EnalbeStatus == 1 && x.LocationType == 1); + locationInfos = BaseDal.QueryData(x => x.LocationStatus == 0 && x.RoadwayNo == "SC1" && x.EnalbeStatus == 1 && x.LocationType == 1); } @@ -518,7 +531,7 @@ { locationInfos.Remove(location); if (locationInfos.Count == 0) return null; - RequestLocation(RoadWayNo, locationInfos); + return RequestLocation(RoadWayNo, locationInfos); } } } @@ -539,7 +552,7 @@ } private DtLocationInfo GetEmptyLocation(List<DtLocationInfo> dtLocationInfos) { - var locationinfo = dtLocationInfos.Where(x => x.LocationStatus == (int)LocationEnum.Free && x.RoadwayNo == "SC1" && x.EnalbeStatus == 1 && x.LocationType == 1).OrderBy(x => x.Layer).ThenByDescending(x => x.Depth).ThenBy(x => x.Row).ThenBy(x => x.Column).FirstOrDefault(); + var locationinfo = dtLocationInfos.Where(x => x.LocationStatus == 0 && x.RoadwayNo == "SC1" && x.EnalbeStatus == 1 && x.LocationType == 1).OrderBy(x => x.Layer).ThenByDescending(x => x.Depth).ThenBy(x => x.Row).ThenBy(x => x.Column).FirstOrDefault(); return locationinfo; } -- Gitblit v1.9.3