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