´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -18,6 +18,7 @@ using AutoMapper; using SixLabors.ImageSharp.ColorSpaces; using SqlSugar; using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; using WIDESEAWCS_BasicInfoService; using WIDESEAWCS_Common; @@ -106,7 +107,7 @@ continue; //throw new Exception(content.Message); } if (BaseDal.QueryFirst(x => x.WMSTaskNum == task.taskCode) != null) if (BaseDal.QueryFirst(x => x.WMSTaskNum == task.taskCode && x.TaskType == item.taskType) != null) { objects.Add(new { @@ -116,7 +117,7 @@ continue; //throw new Exception($"ä»»å¡å·ã{task.taskCode}ãå·²åå¨ä»»å¡"); } if (BaseDal.QueryFirst(x => x.PalletCode == task.containerCode) != null) if (BaseDal.QueryFirst(x => x.PalletCode == task.containerCode && x.TaskType == item.taskType) != null) { objects.Add(new { @@ -126,7 +127,7 @@ continue; //throw new Exception($"æçå·ã{task.containerCode}ãå·²åå¨ä»»å¡"); } if (BaseDal.QueryFirst(x => x.SourceAddress == task.fromLocationCode) != null) if (BaseDal.QueryFirst(x => x.SourceAddress == task.fromLocationCode && x.TaskType == item.taskType) != null) { objects.Add(new { @@ -232,6 +233,7 @@ if (apiInfo == null) throw new Exception("æªæ¾å°å¯ä¹å£«AGVä»»å¡ä¸åæ¥å£é 置信æ¯ï¼è¯·æ£æ¥æ¥å£é ç½®"); string response = HttpHelper.Post(apiInfo.ApiAddress, KLS.Serialize()); GALAXISReturn agvContent = response.DeserializeObject<GALAXISReturn>(); content.OK(data: agvContent); if (agvContent.success == true && agvContent.code == 0) { //ç´æ¥ç§»å ¥åå² @@ -258,6 +260,7 @@ if (apiInfo == null) throw new Exception("æªæ¾å°åå车AGVä»»å¡ä¸åæ¥å£é 置信æ¯ï¼è¯·æ£æ¥æ¥å£é ç½®"); string response = HttpHelper.Post(apiInfo.ApiAddress, cancelSXCTake.Serialize()); FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>(); content.OK(data: fOURBOTReturn); if (fOURBOTReturn.returnCode == 0 && fOURBOTReturn.returnUserMsg == "æå") { //ç´æ¥ç§»å ¥åå² @@ -283,6 +286,7 @@ if (apiInfo == null) throw new Exception("æªæ¾å°åå车AGVä»»å¡ä¸åæ¥å£é 置信æ¯ï¼è¯·æ£æ¥æ¥å£é ç½®"); string response = HttpHelper.Post(apiInfo.ApiAddress, cancelHIKROBOTTask.Serialize()); HIKROBOTReturn hIKROBOTReturn = response.DeserializeObject<HIKROBOTReturn>(); content.OK(data: hIKROBOTReturn); if (hIKROBOTReturn.code == "SUCCESS" && hIKROBOTReturn.message == "æå") { //ç´æ¥ç§»å ¥åå² @@ -373,6 +377,7 @@ if (apiInfo == null) throw new Exception("æªæ¾å°å¯ä¹å£«AGVä»»å¡ä¸åæ¥å£é 置信æ¯ï¼è¯·æ£æ¥æ¥å£é ç½®"); string response = HttpHelper.Post(apiInfo.ApiAddress, updateGALAXISTaskGrade.Serialize()); GALAXISReturn agvContent = response.DeserializeObject<GALAXISReturn>(); content.OK(data: agvContent); if (agvContent.success == true && agvContent.code == 0) { @@ -398,6 +403,7 @@ if (apiInfo == null) throw new Exception("æªæ¾å°æ´æ°åå车任å¡ä¼å 级æ¥å£é 置信æ¯ï¼è¯·æ£æ¥æ¥å£é ç½®"); string response = HttpHelper.Post(apiInfo.ApiAddress, request.Serialize()); FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>(); content.OK(data: fOURBOTReturn); if (fOURBOTReturn.returnCode == 0 && fOURBOTReturn.returnUserMsg == "æå") { BaseDal.UpdateData(dt_Task); @@ -422,6 +428,7 @@ if (apiInfo == null) throw new Exception("æªæ¾å°åå车AGVä»»å¡ä¸åæ¥å£é 置信æ¯ï¼è¯·æ£æ¥æ¥å£é ç½®"); string response = HttpHelper.Post(apiInfo.ApiAddress, Hkrequest.Serialize()); HIKROBOTReturn hIKROBOTReturn = response.DeserializeObject<HIKROBOTReturn>(); content.OK(data: hIKROBOTReturn); if (hIKROBOTReturn.code == "SUCCESS0" && hIKROBOTReturn.message == "æå") { BaseDal.UpdateData(dt_Task); @@ -1079,11 +1086,15 @@ try { if (getLocationInfo == null) throw new Exception("请æ±åæ°ä¸è½ä¸ºç©ºï¼"); if (getLocationInfo.AreaCode == null) throw new Exception("åºåºç¼å·ä¸è½ä¸ºç©ºï¼"); //if (getLocationInfo.AreaCode == null) throw new Exception("åºåºç¼å·ä¸è½ä¸ºç©ºï¼"); if (getLocationInfo.WarehouseId == 0) throw new Exception("ä»åºIDä¸è½ä¸ºç©ºï¼"); if (getLocationInfo.WarehouseId == 1) { List<Dt_RGVLocationInfo> rGVLocationInfos = _rGVLocationInfoService.Repository.QueryData(x => x.WarehouseId == getLocationInfo.AreaCode.ObjToInt()); List<Dt_RGVLocationInfo> rGVLocationInfos = new List<Dt_RGVLocationInfo>(); if (!string.IsNullOrEmpty(getLocationInfo.AreaCode)) rGVLocationInfos = _rGVLocationInfoService.Repository.QueryData(x => x.WarehouseId == getLocationInfo.AreaCode.ObjToInt()); else rGVLocationInfos = _rGVLocationInfoService.Repository.QueryData(); foreach (var item in rGVLocationInfos) { list.Add(new @@ -1097,7 +1108,11 @@ } else if (getLocationInfo.WarehouseId == 2) { List<Dt_KLSLocationInfo> rGVLocationInfos = _kLSLocationInfoService.Repository.QueryData(x => x.WarehouseId == getLocationInfo.AreaCode.ObjToInt()); List<Dt_KLSLocationInfo> rGVLocationInfos = new List<Dt_KLSLocationInfo>(); if (!string.IsNullOrEmpty(getLocationInfo.AreaCode)) rGVLocationInfos = _kLSLocationInfoService.Repository.QueryData(x => x.WarehouseId == getLocationInfo.AreaCode.ObjToInt()); else rGVLocationInfos = _kLSLocationInfoService.Repository.QueryData(); foreach (var item in rGVLocationInfos) { list.Add(new @@ -1222,6 +1237,7 @@ }; string response = HttpHelper.Post(apiInfo.ApiAddress, fOURBOToccupyStation.Serialize()); FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>(); content.OK(data: fOURBOTReturn); if (fOURBOTReturn.returnCode != 0 /*&& fOURBOTReturn.returnUserMsg != $"ç«ç¹å·²è¢«å ç¨,(podID={iQC.ContainerCode})"*/) throw new Exception(fOURBOTReturn.returnUserMsg); #endregion ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/KLSTaskExtend.cs
@@ -8,6 +8,7 @@ using WIDESEAWCS_Core; using WIDESEAWCS_Core.Helper; using WIDESEAWCS_DTO; using WIDESEAWCS_DTO.RGV.FOURBOT; using WIDESEAWCS_Model.Models; namespace WIDESEAWCS_Tasks @@ -41,7 +42,7 @@ Dt_ApiInfo? apiInfo = _apiInfoService.Repository.QueryFirst(x => x.ApiCode == nameof(GALAXISTaskInfo)) ?? throw new Exception("æªæ¾å°å¯ä¹å£«AGVä»»å¡ä¸åæ¥å£é 置信æ¯ï¼è¯·æ£æ¥æ¥å£é ç½®"); string response = HttpHelper.Post(apiInfo.ApiAddress, gALAXISTaskInfo.Serialize()); GALAXISReturn agvContent = response.DeserializeObject<GALAXISReturn>(); content.Data = agvContent; content.OK(data: agvContent); if (agvContent.success) { if (agvContent.data.returnStatus != 0) throw new Exception(agvContent.data.returnInfo); ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/RGVTaskExtend.cs
@@ -51,7 +51,7 @@ { string response = HttpHelper.Post(apiInfo.ApiAddress, fOURBOTnewMovePodTask.Serialize()); FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>(); content.Data = fOURBOTReturn; content.OK(data: fOURBOTReturn); if (fOURBOTReturn.returnCode != 0) throw new Exception(fOURBOTReturn.returnUserMsg); string dataJson = fOURBOTReturn.data.ToString(); @@ -113,7 +113,7 @@ fOURBOTnewMovePodTask.desNodeID = item.NextAddress; string response = HttpHelper.Post(apiInfo.ApiAddress, fOURBOTnewMovePodTask.Serialize()); FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>(); content.Data = fOURBOTReturn; content.OK(data: fOURBOTReturn); if (fOURBOTReturn.returnCode == 0) { string dataJson = fOURBOTReturn.data.ToString(); @@ -172,7 +172,7 @@ //content.candidatePodIDs = tasks.Select(x => x.PalletCode).ToList(); string response = HttpHelper.Post(apiInfo.ApiAddress, request.Serialize()); FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>(); content.Data = fOURBOTReturn; content.OK(data: fOURBOTReturn); if (fOURBOTReturn.returnCode == 0) { //ReturnBlockPodResultDto getBlockPod = fOURBOTReturn.data as ReturnBlockPodResultDto ?? throw new Exception("æªè·åå°é»ç¢æçå ³ç³»æ°æ®"); @@ -266,7 +266,7 @@ string response = HttpHelper.Post(apiInfo.ApiAddress, fOURBOTnewMovePodTask.Serialize()); var fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>(); content.Data = fOURBOTReturn; content.OK(data: fOURBOTReturn); if (fOURBOTReturn.returnCode == 0) { var data = fOURBOTReturn.data.ToString(); @@ -278,12 +278,12 @@ locationsToUpdate.Add(rGVLocationInfo); #region éæ¾å ¥åºç«å° var stationManger = _stationMangerService.GetInStationInfo(item.SourceAddress); if (stationManger != null) { stationManger.IsOccupied = LocationStatusEnum.Free.ObjToInt(); stationsToUpdate.Add(stationManger); } //var stationManger = _stationMangerService.GetInStationInfo(item.SourceAddress); //if (stationManger != null) //{ // stationManger.IsOccupied = LocationStatusEnum.Free.ObjToInt(); // stationsToUpdate.Add(stationManger); //} content.OK(); #endregion } @@ -386,8 +386,8 @@ _taskService.UpdateData(tasksToUpdate); if (locationsToUpdate.Any()) _rGVLocationInfoService.UpdateData(locationsToUpdate); if (stationsToUpdate.Any()) _stationMangerService.UpdateData(stationsToUpdate); //if (stationsToUpdate.Any()) // _stationMangerService.UpdateData(stationsToUpdate); _unitOfWorkManage.CommitTran(); } @@ -445,6 +445,7 @@ //FOURBOTnewMovePodTaskResponseData fOURBO = fOURBOTReturn.data as FOURBOTnewMovePodTaskResponseData ?? throw new Exception("æªè·åå°åå车è¿åçä»»å¡ID"); string dataJson = fOURBOTReturn.data.ToString(); FOURBOTnewMovePodTaskResponseData? fOURBO = JsonConvert.DeserializeObject<FOURBOTnewMovePodTaskResponseData>(dataJson); content.OK(data: fOURBO); if (fOURBO == null || fOURBO.taskID == 0) { throw new Exception($"æªè·åå°åå车è¿åçä»»å¡IDï¼è¿åæ°æ®ï¼{response}"); @@ -537,7 +538,7 @@ } string response = HttpHelper.Post(apiInfo.ApiAddress, moveBlock.Serialize()); FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>(); content.Data = fOURBOTReturn; content.OK(data: fOURBOTReturn); if (fOURBOTReturn.returnCode == 0) { string dataJson = fOURBOTReturn.data.ToString(); @@ -607,8 +608,12 @@ { i++; var stationManger = _stationMangerService.GetOutStationInfo(item.TargetAddress); //if (stationManger.IsOccupied != LocationStatusEnum.Free.ObjToInt()) //{ // item.ExceptionMessage = $"åºåºç«å°ã{stationManger.StationCode}ã被å ç¨"; // continue; //} item.NextAddress = stationManger.StationCode; if (stationManger.IsOccupied != LocationStatusEnum.Free.ObjToInt()) continue; #region ä¸ååºåºä»»å¡ fOURBOTnewMovePodTask.priority = item.Grade; fOURBOTnewMovePodTask.podID = item.PalletCode; @@ -626,7 +631,7 @@ fOURBOTnewMovePodTask.requestID = DateTime.Now.ToString("yyyyMMddHHmmss") + i; string response = HttpHelper.Post(apiInfo.ApiAddress, fOURBOTnewMovePodTask.Serialize()); FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>(); content.Data = fOURBOTReturn; content.OK(data: fOURBOTReturn); if (fOURBOTReturn.returnCode == 0) { string dataJson = fOURBOTReturn.data.ToString(); @@ -637,8 +642,8 @@ } item.RGVTaskId = fOURBO.taskID; item.TaskState = (int)TaskStatusEnum.Execut; stationManger.IsOccupied = LocationStatusEnum.Lock.ObjToInt(); _stationMangerService.UpdateData(stationManger); //stationManger.IsOccupied = LocationStatusEnum.Lock.ObjToInt(); //_stationMangerService.UpdateData(stationManger); } #endregion }