From ece80c5d44458eb482467ffafdff68fbc1e6dc94 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周三, 25 12月 2024 09:50:01 +0800 Subject: [PATCH] 接口 多 并发模式 --- SDA/iWareSda/Devices/4-Station/StationService/StationService.cs | 155 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 153 insertions(+), 2 deletions(-) diff --git a/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs b/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs index 260d089..cd0b589 100644 --- a/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs +++ b/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs @@ -1,5 +1,6 @@ 锘縰sing iWareCommon.Utils; using iWareModel; +using iWareSda.Model; using Newtonsoft.Json; using System; using System.Collections.Generic; @@ -12,6 +13,7 @@ namespace iWareSda { // 娉ㄦ剰: 浣跨敤鈥滈噸鏋勨�濊彍鍗曚笂鐨勨�滈噸鍛藉悕鈥濆懡浠わ紝鍙互鍚屾椂鏇存敼浠g爜鍜岄厤缃枃浠朵腑鐨勭被鍚嶁�淪tationService鈥濄�� + [ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple)] public class StationService : IStationService { public SdaResEntity ClearAlarm(int deviceId) @@ -188,6 +190,22 @@ } var Station = (StationResult.resData as StationEntity).View; return Station; + } + + /// <summary> + /// 鑾峰彇褰撳墠姝e湪鎶ヨ鐨勬姤璀﹀垪琛� + /// </summary> + /// <param name="deviceId"></param> + /// <returns></returns> + public List<DeviceWarningInfo> GetWaringInfoList(int deviceId, List<WmsConfigDeviceWarning> configDeviceWarningList) + { + var StationResult = Station_CacheEntity.GetDeviceObj(deviceId); + if (!StationResult.result) + { + return null; + } + var waringList = (StationResult.resData as StationEntity).GetStationAlertDatas(configDeviceWarningList); + return waringList; } @@ -405,6 +423,38 @@ } } + /// <summary> + /// 鍐橮LC bool + /// </summary> + /// <param name="deviceId"></param> + /// <param name="dbAddress"></param> + /// <param name="value"></param> + /// <returns></returns> + public SdaResEntity WriteBoolPlcData(int deviceId, string dbAddress, bool value) + { + SdaResEntity _SdaResEntity = new SdaResEntity(); + try + { + var StationResult = Station_CacheEntity.GetDeviceObj(deviceId); + if (!StationResult.result) + { + return StationResult; + } + var Station = StationResult.resData as StationEntity; + + string msg = ""; + var result = Station.WriteBoolPlcData(dbAddress, value, out msg); + _SdaResEntity.result = result; + _SdaResEntity.resMsg = msg; + return _SdaResEntity; + } + catch (Exception ex) + { + _SdaResEntity.result = false; + _SdaResEntity.resMsg = ex.Message; + return _SdaResEntity; + } + } /// <summary> /// 鍐欏叆榻愬缁撴灉銆佽В鏋愮粨鏋� @@ -535,6 +585,40 @@ } } + + /// <summary> + /// 鎵爜璁板綍娓呴櫎 + /// </summary> + /// <param name="deviceId"></param> + /// <param name="value"></param> + /// <param name="stationCode"></param> + /// <returns></returns> + public SdaResEntity PartClear(int deviceId, bool value, string stationCode) + { + SdaResEntity _SdaResEntity = new SdaResEntity(); + try + { + var StationResult = Station_CacheEntity.GetDeviceObj(deviceId); + if (!StationResult.result) + { + return StationResult; + } + var Station = StationResult.resData as StationEntity; + + string msg = ""; + var result = Station.PartClear(stationCode, value, out msg); + _SdaResEntity.result = result; + _SdaResEntity.resMsg = msg; + return _SdaResEntity; + } + catch (Exception ex) + { + _SdaResEntity.result = false; + _SdaResEntity.resMsg = ex.Message; + return _SdaResEntity; + } + } + /// <summary> /// 鍐欏叆鍏ュ簱浠诲姟淇℃伅 /// </summary> @@ -635,7 +719,8 @@ /// <param name="deviceId"></param> /// <param name="value"></param> /// <returns></returns> - public SdaResEntity WriteSurroundTaskInfo(int deviceId, string stationCode, short taskID, short length, short width, short cartonhigh, short cartonwidth, short placex, short placey) + public SdaResEntity WriteSurroundTaskInfo(int deviceId, string stationCode, short taskID, short length, short width, + short cartonhigh, short cartonwidth, short placex, short placey, bool isNgFlag) { SdaResEntity _SdaResEntity = new SdaResEntity(); try @@ -648,7 +733,7 @@ var Station = StationResult.resData as StationEntity; string msg = ""; - var result = Station.WriteSurroundTaskInfo(stationCode, taskID, length, width, cartonhigh, cartonwidth, placex, placey, out msg); + var result = Station.WriteSurroundTaskInfo(stationCode, taskID, length, width, cartonhigh, cartonwidth, placex, placey, out msg, isNgFlag); _SdaResEntity.result = result; _SdaResEntity.resMsg = msg; return _SdaResEntity; @@ -751,6 +836,72 @@ } /// <summary> + /// 鍐欏叆NG鍖呮爣璁� + /// </summary> + /// <param name="deviceId"></param> + /// <param name="value"></param> + /// <param name="stationCode"></param> + /// <returns></returns> + public SdaResEntity WriteStation_NgFlag(int deviceId, bool value, string stationCode) + { + SdaResEntity _SdaResEntity = new SdaResEntity(); + try + { + var StationResult = Station_CacheEntity.GetDeviceObj(deviceId); + if (!StationResult.result) + { + return StationResult; + } + var Station = StationResult.resData as StationEntity; + + string msg = ""; + var result = Station.WriteStation_NgFlag(stationCode, value, out msg); + _SdaResEntity.result = result; + _SdaResEntity.resMsg = msg; + return _SdaResEntity; + } + catch (Exception ex) + { + _SdaResEntity.result = false; + _SdaResEntity.resMsg = ex.Message; + return _SdaResEntity; + } + } + + /// <summary> + /// 鍐欏叆 浜哄伐鏀捐 + /// </summary> + /// <param name="deviceId"></param> + /// <param name="value"></param> + /// <param name="stationCode"></param> + /// <returns></returns> + public SdaResEntity WriteStation_PersonAllow(int deviceId, bool value, string stationCode) + { + SdaResEntity _SdaResEntity = new SdaResEntity(); + try + { + var StationResult = Station_CacheEntity.GetDeviceObj(deviceId); + if (!StationResult.result) + { + return StationResult; + } + var Station = StationResult.resData as StationEntity; + + string msg = ""; + var result = Station.WriteStation_PersonAllow(stationCode, value, out msg); + _SdaResEntity.result = result; + _SdaResEntity.resMsg = msg; + return _SdaResEntity; + } + catch (Exception ex) + { + _SdaResEntity.result = false; + _SdaResEntity.resMsg = ex.Message; + return _SdaResEntity; + } + } + + /// <summary> /// 鍐欏叆鍑哄簱浠诲姟淇℃伅 /// </summary> /// <param name="deviceId"></param> -- Gitblit v1.9.3