From 761aaf597639c55c6f36b03f3a89ba2d49a1d3f4 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周二, 03 12月 2024 19:24:03 +0800 Subject: [PATCH] 增加是否允许切纸 --- SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs | 770 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 556 insertions(+), 214 deletions(-) diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs b/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs index 8d0dff3..48bb200 100644 --- a/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs +++ b/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs @@ -9,7 +9,7 @@ using iWareCommon.Utils; using iWareCommon.Common.Globle; using iWareCommon; -using iWareSda.Devices._3_Station.StationModel; + using Newtonsoft.Json; using iWareSda.Model; @@ -180,8 +180,9 @@ } + /// <summary> - /// 鍐欏叆榻愬缁撴灉 + /// 鍐欏叆榻愬缁撴灉銆佽В鏋愮粨鏋� /// </summary> /// <param name="deviceId"></param> /// <param name="value">true:琛ㄧず 榻愬銆俧alse锛氫笉榻愬</param> @@ -195,42 +196,50 @@ 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_DataFinish, true, view_stationObj.W_DataFinish); + + MessageModel b2 = null; + if (stationCode == StationLocationEnum.BZ01.ToString()) + { + int i_result = 0; + if (value) + { + i_result = 998; + } + else + { + i_result = 999; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_KittingInfo, i_result, view_stationObj.W_KittingInfo); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + value + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_DataFinish); + return false; + } + } + + b2 = this.plcService.WriteValuePoint(stationObj.W_DataFinish, true, view_stationObj.W_DataFinish); if (!b2.result) { msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - this.DBBlockForWrite.W_1015_ReScan); + stationObj.W_DataFinish); return false; } - int i_result = 0; - if (value) - { - i_result = 998; - } - else - { - i_result = 999; - } - b2 = this.plcService.WriteValuePoint(stationObj.W_KittingInfo, i_result, view_stationObj.W_KittingInfo); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + value + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - this.DBBlockForWrite.W_1015_ReScan); - return false; - } + return true; } catch (Exception ex) { msg = ex.Message; var logcontext = string.Format("鍚慡tation鍦板潃{0} " + value + "鍑虹幇寮傚父:" + JsonConvert.SerializeObject(ex), - this.DBBlockForWrite.W_1015_ReScan); + ""); Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, logcontext, ex); return false; } } - public bool WriteInStoreTaskInfo(string stationCode, string toPlaceNo, short length, short width, short height, out string msg) + + public bool InboundFinishConfirm(string stationCode, bool value, out string msg) { try { @@ -238,41 +247,11 @@ 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_DataFinish, true, view_stationObj.W_DataFinish); + MessageModel b2 = this.plcService.WriteValuePoint(stationObj.W_InboundFinishConfirm, value, view_stationObj.W_DataFinish); if (!b2.result) { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 璇荤爜瑙f瀽瀹屾垚 " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - this.DBBlockForWrite.W_1015_ReScan); - return false; - } - - b2 = this.plcService.WriteValuePoint(stationObj.W_Destination_In, Convert.ToInt32(toPlaceNo), view_stationObj.W_Destination_In); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 搴撲綅鍙� " + toPlaceNo + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - this.DBBlockForWrite.W_1015_ReScan); - return false; - } - - b2 = this.plcService.WriteValuePoint(stationObj.W_Length, length, view_stationObj.W_Length); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 闀垮害 " + length + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - this.DBBlockForWrite.W_1015_ReScan); - return false; - } - b2 = this.plcService.WriteValuePoint(stationObj.W_Width, width, view_stationObj.W_Width); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 瀹藉害 " + width + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - this.DBBlockForWrite.W_1015_ReScan); - return false; - } - b2 = this.plcService.WriteValuePoint(stationObj.W_Height, height, view_stationObj.W_Height); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 楂樺害 " + height + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - this.DBBlockForWrite.W_1015_ReScan); + msg = string.Format("鍚慡tation鍦板潃{0} 鍏ュ簱瀹屾垚纭 鍐� " + value + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_InboundFinishConfirm); return false; } @@ -281,7 +260,526 @@ 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> + /// <param name="isClearData">鏄惁闇�瑕佹竻鐞嗘暟鎹�</param> + /// <returns></returns> + public bool OutboundFinishConfirm(string stationCode, bool value, out string msg, bool isClearData) + { + 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_OutboundFinishConfirm, value, view_stationObj.W_OutboundFinishConfirm); + if (!b2.result) + { + msg = string.Format("鍚慡tation 鍑哄簱浠诲姟瀹屾垚纭 鍦板潃{0} 鍐� " + value + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_OutboundFinishConfirm); + return false; + } + + if (value && isClearData) + { + b2 = this.plcService.WriteValuePoint(stationObj.W_ReqOut, false, view_stationObj.W_ReqOut); + if (!b2.result) + { + msg = string.Format("鍚慡tation W_ReqOut 鍦板潃{0} 鍐� " + false + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_ReqOut); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_Destination_Out, 0, view_stationObj.W_Destination_Out); + if (!b2.result) + { + msg = string.Format("鍚慡tation W_Destination_Out 鍦板潃{0} 鍐� " + 0 + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Destination_Out); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_Outbound_TaskID, 0, view_stationObj.W_Outbound_TaskID); + if (!b2.result) + { + msg = string.Format("鍚慡tation W_Outbound_TaskID 鍦板潃{0} 鍐� " + 0 + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Outbound_TaskID); + 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 ChangeMode(string stationCode, int 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_Mode, value, view_stationObj.W_Mode); + if (!b2.result) + { + msg = string.Format("鍚慡tation 鍒囨崲妯″紡 鍦板潃{0} 鍐� " + value + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Mode); + 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 WriteInStoreTaskInfo(string stationCode, string toPlaceNo, short length, short width, short height, out string msg, int inbound_TaskID) + { + 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_Inbound_TaskID, inbound_TaskID, view_stationObj.W_Inbound_TaskID); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鍏ュ簱浠诲姟鍙� " + inbound_TaskID + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Inbound_TaskID); + return false; + } + + b2 = this.plcService.WriteValuePoint(stationObj.W_Destination_In, Convert.ToInt32(toPlaceNo), view_stationObj.W_Destination_In); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 搴撲綅鍙� " + toPlaceNo + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Destination_In); + return false; + } + + b2 = this.plcService.WriteValuePoint(stationObj.W_Length, length, view_stationObj.W_Length); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 闀垮害 " + length + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Length); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_Width, width, view_stationObj.W_Width); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 瀹藉害 " + width + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Width); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_Height, height, view_stationObj.W_Height); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 楂樺害 " + height + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Height); + return false; + } + + + b2 = this.plcService.WriteValuePoint(stationObj.W_DataFinish, true, view_stationObj.W_DataFinish); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 璇荤爜瑙f瀽瀹屾垚 " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_DataFinish); + return false; + } + + + return true; + } + catch (Exception ex) + { + msg = ex.Message; var logcontext = string.Format("WriteInStoreTaskInfo鍑虹幇寮傚父:" + JsonConvert.SerializeObject(ex), + ""); + Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, logcontext, ex); + return false; + } + } + /// <summary> + /// 鍐欏叆鐮佸灈浠诲姟淇℃伅 + /// </summary> + /// <param name="stationCode"></param> + /// <param name=""></param> + /// <param name="taskID"></param> + /// <param name="isLast"></param> + /// <param name="length"></param> + /// <param name="width"></param> + /// <param name="height"></param> + /// <param name="rotate"></param> + /// <param name="toplace"></param> + /// <param name="placeX"></param> + /// <param name="placeY"></param> + /// <param name=""></param> + /// <param name=""></param> + /// <returns></returns> + public bool WritePalletizingTaskInfo(string stationCode, int taskID, short length, short width, short height, short rotate, short toplace, short placeX, short placeY, short placeZ, short lastnum, 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_PalletizingTaskID, taskID, view_stationObj.W_PalletizingTaskID); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鐮佸灈浠诲姟鍙� " + taskID + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Inbound_TaskID); + return false; + } + + b2 = this.plcService.WriteValuePoint(stationObj.W_Length, length, view_stationObj.W_Length); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 闀垮害 " + length + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Length); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_Width, width, view_stationObj.W_Width); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 瀹藉害 " + width + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Width); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_Height, height, view_stationObj.W_Height); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 楂樺害 " + height + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Height); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_PalletizingStation, toplace, view_stationObj.W_PalletizingStation); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鐩爣浣� " + toplace + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Height); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_Rotate, rotate, view_stationObj.W_Rotate); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鏄惁鏃嬭浆 " + rotate + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Height); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_PalletizingPlaceX, placeX, view_stationObj.W_PalletizingPlaceX); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� X鍧愭爣 " + placeX + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Height); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_PalletizingPlaceY, placeY, view_stationObj.W_PalletizingPlaceY); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� Y鍧愭爣 " + placeY + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Height); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_PalletizingPlaceZ, placeZ, view_stationObj.W_PalletizingPlaceZ); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� Z鍧愭爣 " + placeZ + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Height); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_PalletizingBucketType, lastnum, view_stationObj.W_PalletizingBucketType); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 棣栨湯鏉� " + lastnum + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Height); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_DataFinish, true, view_stationObj.W_DataFinish); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 璇荤爜瑙f瀽瀹屾垚 " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_DataFinish); + return false; + } + + + return true; + } + catch (Exception ex) + { + msg = ex.Message; + var logcontext = string.Format("WriteInStoreTaskInfo鍑虹幇寮傚父:" + JsonConvert.SerializeObject(ex), + ""); + Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, logcontext, ex); + return false; + } + } + /// <summary> + /// 鍚堝寘涓嬪彂浠诲姟 + /// </summary> + /// <param name="stationCode"></param> + /// <param name="taskID"></param> + /// <param name="length"></param> + /// <param name="width"></param> + /// <param name="cartonhigh"></param> + /// <param name="cartonwidth"></param> + /// <param name="placex"></param> + /// <param name="placey"></param> + /// <param name="msg"></param> + /// <returns></returns> + public bool WriteSurroundTaskInfo(string stationCode, short taskID, short length, short width, short cartonhigh, short cartonwidth, short placex, short placey, 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_SurroundTaskNo, taskID, view_stationObj.W_SurroundTaskNo); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鍚堝寘浠诲姟鍙� " + taskID + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Inbound_TaskID); + return false; + } + + b2 = this.plcService.WriteValuePoint(stationObj.W_PackageLength, length, view_stationObj.W_PackageLength); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鍚堝寘闀� " + length + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Destination_In); + return false; + } + + b2 = this.plcService.WriteValuePoint(stationObj.W_PackageWidth, width, view_stationObj.W_PackageWidth); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鍚堝寘瀹� " + width + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Destination_In); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_CartonHeight, cartonhigh, view_stationObj.W_CartonHeight); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 绾哥闀� " + cartonhigh + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Length); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_CartonWidth, cartonwidth, view_stationObj.W_CartonWidth); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 绾哥瀹� " + width + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Width); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_X_Offset, placex, view_stationObj.W_X_Offset); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鏀炬枡x " + placex + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Height); + return false; + } + b2 = this.plcService.WriteValuePoint(stationObj.W_Y_Offset, placey, view_stationObj.W_Y_Offset); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鏀炬枡y " + placey + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Height); + return false; + } + + b2 = this.plcService.WriteValuePoint(stationObj.W_DataFinish, true, view_stationObj.W_DataFinish); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 璇荤爜瑙f瀽瀹屾垚 " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_DataFinish); + return false; + } + + + return true; + } + catch (Exception ex) + { + msg = ex.Message; + var logcontext = string.Format("WriteInStoreTaskInfo鍑虹幇寮傚父:" + 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_FinishACK(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_PalletizingTaskFinish, value, view_stationObj.W_PalletizingTaskFinish); + 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_ACK(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_DataFinish, value, view_stationObj.W_DataFinish); + 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; + } + } + public bool WriteSurround_FinishACK(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_SurroundTaskFinish, value, view_stationObj.W_SurroundTaskFinish); + 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; + } + } + public bool WriteOutStoreTaskInfo(string stationCode, string sourcePlaceNo, out string msg, int outbound_TaskID) + { + 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_Outbound_TaskID, outbound_TaskID, view_stationObj.W_Outbound_TaskID); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鍑哄簱浠诲姟鍙� " + outbound_TaskID + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Outbound_TaskID); + return false; + } + + b2 = this.plcService.WriteValuePoint(stationObj.W_Destination_Out, Convert.ToInt32(sourcePlaceNo), view_stationObj.W_Destination_Out); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 搴撲綅鍙� " + sourcePlaceNo + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Destination_Out); + return false; + } + + b2 = this.plcService.WriteValuePoint(stationObj.W_ReqOut, true, view_stationObj.W_ReqOut); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 璇锋眰鍑哄簱 " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_ReqOut); + return false; + } + + return true; + } + catch (Exception ex) + { + msg = ex.Message; + var logcontext = string.Format("WriteOutStoreTaskInfo 鍑虹幇寮傚父:" + JsonConvert.SerializeObject(ex), ""); Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, logcontext, ex); return false; @@ -298,51 +796,8 @@ /// <returns></returns> public bool WriteStation_FinishACK(int deviceId, bool value, int plcTaskId, out string msg) { - try - { - msg = ""; - Thread.Sleep(1000);//鍋滅暀2绉� - MessageModel b2 = this.plcService.WriteValuePoint(this.DBBlockForWrite.W_Station_FinishACK, value, this.View.W_Station_FinishACK); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + value + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - this.DBBlockForWrite.W_Station_FinishACK); - Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, msg, null); - return false; - } - //閲嶆柊鍐嶈鍙栵紝鍒ゆ柇鏄惁鍐欏叆姝g‘锛屽鏋滃啓鍏ヤ笉姝g‘锛屽氨璁や负澶辫触 銆怑ditby shaocx,2023-04-03銆� - Thread.Sleep(1000);//鍋滅暀3绉� - bool finishStation = (bool)this.plcService.ReadValuePoint(this.DBBlockForRead.R_Station_Finish, typeof(bool)); - bool finisAck = (bool)this.plcService.ReadValuePoint(this.DBBlockForWrite.W_Station_FinishACK, typeof(bool)); - if (finisAck == false && finishStation == true) - { - this.plcService.WriteValuePoint(this.DBBlockForWrite.W_Station_FinishACK, value, this.View.W_Station_FinishACK);//閲嶅彂涓�娆� 20230503 鐜嬮摦 - Thread.Sleep(1000);//鍋滅暀2绉� - finishStation = (bool)this.plcService.ReadValuePoint(this.DBBlockForRead.R_Station_Finish, typeof(bool)); - finisAck = (bool)this.plcService.ReadValuePoint(this.DBBlockForWrite.W_Station_FinishACK, typeof(bool)); - if (finisAck == false && finishStation == true) - { - - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + value + "澶辫触,SDA杩斿洖缁撴灉:true锛屼絾鏄疭DA鍐嶆璇诲彇PLC鐨勫湴鍧�鏃讹紝鑾峰彇鐨勭粨鏋滄槸FALSE锛屽嵆璁ゅ畾涓哄啓鍏ュけ璐�", - this.DBBlockForWrite.W_Station_FinishACK); - Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, msg, null); - return false; - } - - - } - - Log4NetHelper.WriteInfoLog(Station_CacheEntity.curLogType, "鍐欏叆W_Station_FinishACK锛�" + this.DBBlockForWrite.W_Station_FinishACK + "锛夊�间负" + value + "鎴愬姛锛佸洜涓篜LC浠诲姟鍙�:" + plcTaskId); - return true; - } - catch (Exception ex) - { - msg = ex.Message; - var logcontext = string.Format("鍚慡tation鍦板潃{0} " + value + "鍑虹幇寮傚父:" + JsonConvert.SerializeObject(ex), - this.DBBlockForWrite.W_Station_FinishACK); - Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, logcontext, ex); - return false; - } + msg = ""; + return false; } @@ -356,93 +811,7 @@ public bool WriteScanValidateACK(bool isReset, int deviceId, string stationCode, bool value, int plcTaskId, out string msg) { msg = ""; - MessageModel b2 = null; - string address_fail = ""; - string address_success = ""; - try - { - switch (stationCode) - { - case "1002": - address_fail = this.DBBlockForWrite.W_1002_ScanFailACK; - address_success = this.DBBlockForWrite.W_1002_ScanSuccessACK; - break; - case "1004": - address_fail = this.DBBlockForWrite.W_1004_ScanFailACK; - address_success = this.DBBlockForWrite.W_1004_ScanSuccessACK; - break; - case "1006": - address_fail = this.DBBlockForWrite.W_1006_ScanFailACK; - address_success = this.DBBlockForWrite.W_1006_ScanSuccessACK; - break; - case "1007": - address_fail = this.DBBlockForWrite.W_1007_ScanFailACK; - address_success = this.DBBlockForWrite.W_1007_ScanSuccessACK; - break; - default: - throw new Exception("涓嶆敮鎸佺殑绔欑偣"); - } - if (isReset) - {//鏄噸缃� - b2 = this.plcService.WriteValuePoint(address_success, false, this.View.W_1002_ScanSuccessACK); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + false + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - address_success); - Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, msg, null); - return false; - } - b2 = this.plcService.WriteValuePoint(address_fail, false, this.View.W_1002_ScanFailACK); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + false + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - address_fail); - Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, msg, null); - return false; - } - } - else - {//涓嶆槸閲嶇疆 - if (value) - {//琛ㄧず鎵弿楠岃瘉閫氳繃 - b2 = this.plcService.WriteValuePoint(address_success, true, this.View.W_1002_ScanSuccessACK); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - address_success); - Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, msg, null); - return false; - } - } - else - {//琛ㄧず鎵弿楠岃瘉涓嶉�氳繃 - b2 = this.plcService.WriteValuePoint(address_fail, true, this.View.W_1002_ScanFailACK); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - address_fail); - Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, msg, null); - return false; - } - } - } - - Log4NetHelper.WriteInfoLog(Station_CacheEntity.curLogType, "WriteScanFailACK鏂规硶锛屽啓鍏� 鍥涗釜鍏ュ簱鍙f壂鎻忓け璐CK璧嬪�� ScanFailACK锛�" + address_fail + "锛夊�间负" + value + "鎴愬姛锛佸洜涓篜LC浠诲姟鍙�:" + plcTaskId + ",isReset:" + isReset); - return true; - } - catch (Exception ex) - { - msg = ex.Message; - var logcontext = string.Format("WriteScanFailACK鏂规硶锛屽悜Station鍦板潃{0} " + value + "鍑虹幇寮傚父:" + JsonConvert.SerializeObject(ex), - address_fail); - if (value) - { - logcontext = string.Format("WriteScanFailACK鏂规硶锛屽悜Station鍦板潃{0} " + value + "鍑虹幇寮傚父:" + JsonConvert.SerializeObject(ex), - address_success); - } - Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, logcontext, ex); - return false; - } + return false; } @@ -646,33 +1015,6 @@ try { msg = ""; - MessageModel b2 = this.plcService.WriteValuePoint(this.DBBlockForWrite.W_Out_MaterialModel, value__Out_MaterialModel, this.View.W_Out_MaterialModel); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + value__Out_MaterialModel + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - this.DBBlockForWrite.W_Out_MaterialModel); - Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, msg, null); - return false; - } - b2 = this.plcService.WriteValuePoint(this.DBBlockForWrite.W_Out_OrderNo, value_Out_OrderNo, this.View.W_Out_OrderNo); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + value_Out_OrderNo + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - this.DBBlockForWrite.W_Out_OrderNo); - Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, msg, null); - return false; - } - b2 = this.plcService.WriteValuePoint(this.DBBlockForWrite.W_Out_SerialNumber, value_Out_SerialNumber, this.View.W_Out_SerialNumber); - if (!b2.result) - { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + value_Out_SerialNumber + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, - this.DBBlockForWrite.W_Out_SerialNumber); - Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, msg, null); - return false; - } - - - Log4NetHelper.WriteInfoLog(Station_CacheEntity.curLogType, $"鍐欏叆 鍙戝姩鏈哄嚭搴擄紝缁欒タ娓疨LC鍙戦�佸彂鍔ㄦ満鏁版嵁鎴愬姛锛佷换鍔″彿{plcTaskId},鏈哄瀷{value__Out_MaterialModel}锛岃璐у彿{value_Out_OrderNo},缂栧彿{value_Out_SerialNumber}" + plcTaskId); return true; } catch (Exception ex) -- Gitblit v1.9.3