From 5ffc36a1db18d3112a9b50a9cf3953d7fcf21bae Mon Sep 17 00:00:00 2001 From: huanghongfeng <huanghongfeng@hnkhzn.com> Date: 星期二, 19 八月 2025 16:37:24 +0800 Subject: [PATCH] 更新 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | 68 ++++++++++++++++++++++++++++++++++ 1 files changed, 68 insertions(+), 0 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" index a32ff9a..89cb35a 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" @@ -40,6 +40,7 @@ private readonly IRouterRepository _routerRepository; private readonly ITask_HtyRepository _taskHtyRepository; private readonly IDt_needBarcodeRepository _taskNeedBarcodeRepository; + private Dictionary<string, OrderByType> _taskOrderBy = new() { @@ -911,6 +912,8 @@ } } + + //璇诲彇鐢宠锛岀粰agv涓嬪彂浠诲姟 public WebResponseContent GetAGVTaskdistribution(string TargetAddress) { @@ -927,6 +930,7 @@ var wmsIpAddress = wmsBase + completeTask; var taskDto = new RequestTaskDto() { + RequestType = "999", Position = TargetAddress, }; @@ -971,6 +975,7 @@ public WebResponseContent GetPlcState(string TargetAddress) { + Dt_StationManager dt_Station=_stationManagerRepository.QueryFirst(x => x.stationLocation == TargetAddress); if(dt_Station == null) return WebResponseContent.Instance.Error("鏈壘鍒板帇瑁呬綅淇℃伅锛�"); @@ -979,6 +984,17 @@ IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == "1000"); CommonConveyorLine conveyorLine = (CommonConveyorLine)device; + + //DeviceProDTO? devicePr = conveyorLine.DeviceProDTOs.Find(x => x.DeviceChildCode == "2033" && x.DeviceProParamName == "ConveyorLineSingal"); + short agv20 = conveyorLine.Communicator.Read<short>("DB5.794"); + if (agv20 != 1) //鑾峰彇涓嬭酱澶勬槸鍚︽湁鏂欏崰鐢� + { + return WebResponseContent.Instance.Error($"鏈娴嬪埌agv鍙栨枡绔欏彴鏈夎揣锛屼笉鍙笅鍙戜换鍔★紝璇诲彇鍒帮細{agv20}"); + } + + + + DeviceProDTO? deviceProDTOt = conveyorLine.DeviceProDTOs.Find(x => x.DeviceChildCode == TargetAddress && x.DeviceProParamName == "ConveyorLineSingal"); DeviceProDTO? deviceProDTOt2 = conveyorLine.DeviceProDTOs.Find(x => x.DeviceChildCode == TargetAddress && x.DeviceProParamName == "ResponState"); if (conveyorLine.Communicator.Read<short>(deviceProDTOt.DeviceProAddress)==1) @@ -992,5 +1008,57 @@ return WebResponseContent.Instance.Error("璇诲彇鍒板帇瑁呬綅淇″彿鍙嶉涓嶅彲鏀捐揣锛佷笉鍙敓鎴恆gv浠诲姟"); } } + + + + public WebResponseContent SetPlcPalletCode(SaveModel saveModel) + { + WebResponseContent webResponse = new WebResponseContent(); + try + { + if (saveModel.DelKeys.Count != 2) + { + return webResponse.Error("wcs浼犲弬閿欒锛�"); + } + string AddStitic = saveModel.DelKeys[0].ToString(); + if (AddStitic == "") return webResponse.Error("閫夋嫨鐨勭珯鍙颁负绌猴紝璇烽�夋嫨閫夋嫨绔欏彴锛�"); + string PalletCode = saveModel.DelKeys[1].ToString(); + if (PalletCode == "") return webResponse.Error("杈撳叆鐨勬潯鐮佷负绌猴紝璇疯緭鍏ユ潯鐮佷俊鎭紒"); + + IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == "1000"); + CommonConveyorLine conveyorLine = (CommonConveyorLine)device; + + bool setplc = false; + switch (AddStitic) + { + case "1010": + setplc = conveyorLine.Communicator.Write("DB5.914", (string)PalletCode); + break; + case "2015": + setplc = conveyorLine.Communicator.Write("DB5.434", (string)PalletCode); + break; + case "2017": + setplc = conveyorLine.Communicator.Write("DB5.554", (string)PalletCode); + break; + case "2021": + setplc = conveyorLine.Communicator.Write("DB5.794", (string)PalletCode); + break; + } + + if (setplc) + { + return webResponse.OK($"瀵箋AddStitic}绔欏彴鍐欏叆鏉$爜锛歿PalletCode}锛屾垚鍔�"); + } + else + { + return webResponse.Error($"瀵箋AddStitic}绔欏彴鍐欏叆鏉$爜锛歿PalletCode}锛屽け璐�"); + } + } + catch (Exception ex) + { + return webResponse.Error($"閿欒淇℃伅锛歿ex.Message}"); + throw; + } + } } } \ No newline at end of file -- Gitblit v1.9.3