From 607fa9a9dec5ff4fe780231d635bbd62e1740f37 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周一, 02 12月 2024 18:37:27 +0800 Subject: [PATCH] 1 --- SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs | 397 +++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 360 insertions(+), 37 deletions(-) diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs b/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs index 38284bb..73f687c 100644 --- a/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs +++ b/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs @@ -180,8 +180,9 @@ } + /// <summary> - /// 鍐欏叆榻愬缁撴灉 + /// 鍐欏叆榻愬缁撴灉銆佽В鏋愮粨鏋� /// </summary> /// <param name="deviceId"></param> /// <param name="value">true:琛ㄧず 榻愬銆俧alse锛氫笉榻愬</param> @@ -196,21 +197,25 @@ var view_stationObj = this.View.W_StationForWriteCommList.Where(x => x.StationCode == stationCode).FirstOrDefault(); - int i_result = 0; - if (value) + MessageModel b2 = null; + if (stationCode == StationLocationEnum.BZ01.ToString()) { - i_result = 998; - } - else - { - i_result = 999; - } - MessageModel 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; + 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); @@ -262,7 +267,15 @@ } } - public bool OutboundFinishConfirm(string stationCode, bool value, out string msg) + /// <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 { @@ -278,28 +291,32 @@ 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; + } + } - 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; @@ -417,8 +434,314 @@ 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 -- Gitblit v1.9.3