From 33c75f1b7dbc5ed934a91bea8eacd83dbb94b9a6 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周一, 09 12月 2024 10:41:24 +0800
Subject: [PATCH] 2

---
 SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs |  105 +++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 103 insertions(+), 2 deletions(-)

diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs b/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs
index 89f98f3..d90f7f0 100644
--- a/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs
+++ b/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs
@@ -179,7 +179,35 @@
             }
         }
 
+        /// <summary>
+        /// 鍐橮LC bool
+        /// </summary>
+        /// <param name="dbAddress"></param>
+        /// <param name="value"></param>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        public bool WriteBoolPlcData(string dbAddress, bool value, out string msg)
+        {
+            try
+            {
+                msg = "";
 
+                MessageModel b2 = null;
+                b2 = this.plcService.WriteValuePoint(dbAddress, value, value);
+                if (!b2.result)
+                {
+                    msg = string.Format($"鍐欏叆PLC鍦板潃{dbAddress}锛屽�納value}澶辫触");
+                    return false;
+                }
+                return true;
+            }
+            catch (Exception ex)
+            {
+                msg = ex.Message;
+                Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, $"鍦板潃{dbAddress}澶辫触:" + ex.Message, ex);
+                return false;
+            }
+        }
 
         /// <summary>
         /// 鍐欏叆榻愬缁撴灉銆佽В鏋愮粨鏋�
@@ -715,6 +743,79 @@
                 return false;
             }
         }
+
+        /// <summary>
+        /// 鍐欏叆 琛ユ澘宸ヤ綅鍏佽杩涙澘
+        /// </summary>
+        /// <param name="stationCode"></param>
+        /// <param name="value"></param>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        public bool WriteStation_AllowIn(string stationCode, bool value, out string msg)
+        {
+            try
+            {
+                msg = "";
+                var stationObj = this.DBBlockForWrite.W_StationForWriteCommList.Where(x => x.StationCode == stationCode).FirstOrDefault();
+
+                var view_stationObj = this.View.W_StationForWriteCommList.Where(x => x.StationCode == stationCode).FirstOrDefault();
+                MessageModel b2 = this.plcService.WriteValuePoint(stationObj.W_AllowIn, value, view_stationObj.W_AllowIn);
+                if (!b2.result)
+                {
+                    msg = string.Format("鍚慡tation" + stationCode + " 鍐欏叆 琛ユ澘宸ヤ綅鍏佽杩涙澘 鍦板潃{0} 鍐�  " + value + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg,
+                        stationObj.W_OutboundFinishConfirm);
+                    return false;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                msg = ex.Message;
+                var logcontext = string.Format("鍚慡tatio 琛ユ澘宸ヤ綅鍏佽杩涙澘 鍑虹幇寮傚父:" + JsonConvert.SerializeObject(ex),
+                        "");
+                Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, logcontext, ex);
+                return false;
+            }
+        }
+
+        /// <summary>
+        /// 鍐欏叆 浜哄伐鏀捐
+        /// </summary>
+        /// <param name="stationCode"></param>
+        /// <param name="value"></param>
+        /// <param name="msg"></param>
+        /// <returns></returns>
+        public bool WriteStation_PersonAllow(string stationCode, bool value, out string msg)
+        {
+            try
+            {
+                msg = "";
+                //var stationObj = this.DBBlockForWrite.W_StationForWriteCommList.Where(x => x.StationCode == stationCode).FirstOrDefault();
+                //var view_stationObj = this.View.W_StationForWriteCommList.Where(x => x.StationCode == stationCode).FirstOrDefault();
+                //MessageModel b2 = this.plcService.WriteValuePoint(stationObj.W_PersonAllow, value, view_stationObj.W_PersonAllow);
+
+                var stationObj = this.DBBlockForRead.R_StationForReadCommList.Where(x => x.StationCode == stationCode).FirstOrDefault();
+                var view_stationObj = this.View.R_StationForReadCommList.Where(x => x.StationCode == stationCode).FirstOrDefault();
+                MessageModel b2 = this.plcService.WriteValuePoint(stationObj.R_ReqParseData, value, view_stationObj.R_ReqParseData);
+                if (!b2.result)
+                {
+                    msg = string.Format("鍚慡tation" + stationCode + " 鍐欏叆 浜哄伐鏀捐 鍦板潃{0} 鍐�  " + value + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg,
+                        stationObj.R_ReqParseData);
+                    return false;
+                }
+
+                return true;
+            }
+            catch (Exception ex)
+            {
+                msg = ex.Message;
+                var logcontext = string.Format("鍚慡tatio 浜哄伐鏀捐 鍑虹幇寮傚父:" + JsonConvert.SerializeObject(ex),
+                        "");
+                Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, logcontext, ex);
+                return false;
+            }
+        }
         public bool WriteSurround_FinishACK(string stationCode, bool value, out string msg)
         {
             try
@@ -1081,10 +1182,10 @@
             try
             {
                 var r_dbBlock = this.DBBlockForRead;
-                short value = Convert.ToInt16(this.plcService.ReadValuePoint(r_dbBlock.R_HandShake, typeof(short)));
+                short value = Convert.ToInt16(this.plcService.ReadValuePoint(r_dbBlock.R_HandShake_FJ, typeof(short)));
                 //绾﹀畾 绛夊緟2绉�
                 Thread.Sleep(2000);
-                short value_next = Convert.ToInt16(this.plcService.ReadValuePoint(r_dbBlock.R_HandShake, typeof(short)));
+                short value_next = Convert.ToInt16(this.plcService.ReadValuePoint(r_dbBlock.R_HandShake_FJ, typeof(short)));
                 if (value == value_next)
                 {//娌℃湁蹇冭烦
                     return false;

--
Gitblit v1.9.3