| | |
| | | |
| | | |
| | | |
| | | ////è¿éä¸å å
¥åºåºä»»å¡ |
| | | //using (StationServiceClient client = new StationServiceClient()) |
| | | //{ |
| | | |
| | | // var res = await client.WriteInStoreTaskInfoAsync((int)EDevice.Station, rgvLocation, doTask.PlaceCode, |
| | | // (short)doTask.Length, |
| | | // (short)doTask.Width, (short)doTask.Thk, Convert.ToInt32(doTask.TaskNo)); |
| | | // if (!res.result) |
| | | // { |
| | | // SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ 失败,WriteInStoreTaskInfoAsync è¿å:{res.resMsg}"; |
| | | // Log4NetHelper.WriteErrorLog(logType, $"{rgvLocation.ToString()}-ä¸åPLCå
¥åºä»»å¡å¤±è´¥ ,WriteInStoreTaskInfoAsyncï¼è¿å:{res.resMsg},åæ°: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo}", null); |
| | | // continue; |
| | | // } |
| | | // else |
| | | // { |
| | | // Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸åPLCå
¥åºä»»å¡ æå,WriteInStoreTaskInfoAsyncï¼åæ°: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo}"); |
| | | // } |
| | | //} |
| | | |
| | | doTask.TaskStatus = (int)TaskStatusEnum.å·²ä¸å; |
| | | doTask.IssueTime = DateTime.Now; |
| | | |
| | | int changeNum = wmsDB.SaveChanges(); |
| | | if (changeNum > 0) |
| | | { |
| | | //å¿
é¡»è¦ç»PLCä¸åæå,è§£å³å¯è½ä¼ç»PLCéå¤ä¸åä»»å¡çæ
åµ |
| | | var isRight = true; |
| | | while (isRight) |
| | | { |
| | | //è¿éä¸å å
¥åºåºä»»å¡ |
| | | using (StationServiceClient client = new StationServiceClient()) |
| | | { |
| | |
| | | if (!res.result) |
| | | { |
| | | SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ 失败,WriteInStoreTaskInfoAsync è¿å:{res.resMsg}"; |
| | | Log4NetHelper.WriteErrorLog(logType, $"{rgvLocation.ToString()}-ä¸åPLCå
¥åºä»»å¡å¤±è´¥ ,WriteInStoreTaskInfoAsyncï¼è¿å:{res.resMsg},åæ°: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo},æ¡ç :{doTask.Upi}", null); |
| | | continue; |
| | | } |
| | | else |
| | | { |
| | | Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ æå,WriteInStoreTaskInfoAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸åPLCå
¥åºä»»å¡ æå,WriteInStoreTaskInfoAsyncï¼åæ°: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo},æ¡ç :{doTask.Upi}"); |
| | | isRight = false; |
| | | } |
| | | } |
| | | |
| | | doTask.TaskStatus = (int)TaskStatusEnum.å·²ä¸å; |
| | | doTask.IssueTime = DateTime.Now; |
| | | |
| | | wmsDB.SaveChanges(); |
| | | Thread.Sleep(1000); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | |
| | | var place = StationHandler.GetPlaceByPlaceCode(task.PlaceCode, wmsDB); |
| | | place.PlaceStatus = (int)PlaceStatusEnum.æ£å¸¸; |
| | | |
| | | //if (isFlagFinish == false) |
| | | //{ |
| | | // //ç»PLCæ¨éä»»å¡å®æç¡®è®¤ä¿¡å· |
| | | // using (StationServiceClient client = new StationServiceClient()) |
| | | // { |
| | | // var res = await client.InboundFinishConfirmAsync((int)EDevice.Station, true, rgvLocation); |
| | | // if (!res.result) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTask = $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ 失败,InboundFinishConfirmAsync è¿å:{res.resMsg}"; |
| | | // return false; |
| | | // } |
| | | // else |
| | | // { |
| | | // Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ æå,InboundFinishConfirmAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | // } |
| | | // } |
| | | //} |
| | | |
| | | var flag = isFlagFinish ? "人工强å¶å®æ" : "ï¼èªå¨å®æï¼"; |
| | | WmsRecordUpiProcessHandler.SaveWmsRecordUpiProcess(wmsDB, upiObj, task.PlaceCode, "ç¼åå
¥åºå®æ(" + flag + "):" + task.PlaceCode); |
| | | |
| | | int changeNum = wmsDB.SaveChanges(); |
| | | if (changeNum > 0) |
| | | { |
| | | //å¿
é¡»è¦ç»PLCä¸åæå,è§£å³å¯è½ä¼ç»PLCéå¤ä¸åä»»å¡çæ
åµ |
| | | var isRight = true; |
| | | |
| | | if (isFlagFinish == false) |
| | | { |
| | | while (isRight) |
| | | { |
| | | var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault(); |
| | | isRight = obj.R_InboundFinish; |
| | | //ç»PLCæ¨éä»»å¡å®æç¡®è®¤ä¿¡å· |
| | | using (StationServiceClient client = new StationServiceClient()) |
| | | { |
| | |
| | | if (!res.result) |
| | | { |
| | | SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTask = $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ 失败,InboundFinishConfirmAsync è¿å:{res.resMsg}"; |
| | | return false; |
| | | Log4NetHelper.WriteErrorLog(logType, $"{rgvLocation.ToString()}-宿å
¥åºä»»å¡åå
¥ãtrueã 失败,InboundFinishConfirmAsyncï¼è¿å:{res.resMsg}ï¼åæ°:TaskNo:{task.TaskNo}, PlaceCodeï¼{task.PlaceCode},æ¡ç :{task.Upi}"); |
| | | } |
| | | else |
| | | { |
| | | Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ æå,InboundFinishConfirmAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-宿å
¥åºä»»å¡åå
¥ãtrueã æå,InboundFinishConfirmAsyncï¼åæ°:TaskNo:{task.TaskNo}, PlaceCodeï¼{task.PlaceCode},æ¡ç :{task.Upi}"); |
| | | //isRight = false; |
| | | } |
| | | } |
| | | Thread.Sleep(1000); |
| | | } |
| | | } |
| | | } |
| | | |
| | | var flag = isFlagFinish ? "人工强å¶å®æ" : "ï¼èªå¨å®æï¼"; |
| | | WmsRecordUpiProcessHandler.SaveWmsRecordUpiProcess(wmsDB, upiObj, task.PlaceCode, "ç¼åå
¥åºå®æ(" + flag + "):" + task.PlaceCode); |
| | | |
| | | wmsDB.SaveChanges(); |
| | | |
| | | return true; |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | //using Admin.NET.Application; |
| | | //using iWareCC.Common.Helper; |
| | | //using iWareCC.StationService; |
| | | //using iWareCommon.Common.Globle; |
| | | //using iWareCommon.Utils; |
| | | //using iWareModel; |
| | | //using iWareSql.DataAccess; |
| | | //using iWareSql.DBModel; |
| | | //using iWareSql.WmsDBModel; |
| | | //using System; |
| | | //using System.Collections.Generic; |
| | | //using System.Linq; |
| | | //using System.ServiceModel.Configuration; |
| | | //using System.Text; |
| | | //using System.Threading; |
| | | //using System.Threading.Tasks; |
| | | //using WZ.Useful.Commons; |
| | | //using XiGang.Core.Model; |
| | | |
| | | //namespace iWareCC.ThreadService |
| | | //{ |
| | | // /// <summary> |
| | | // /// æºå¨äººç¼åå² èªå¨ä¸ååºåºä»»å¡ å¤ç |
| | | // /// </summary> |
| | | // public static class DataProcess_RobotBuffer_IssueOutboundTask |
| | | // { |
| | | |
| | | // public static async void Handler() |
| | | // { |
| | | // var alertMsg = ""; |
| | | // LogType logType = LogType.DataProcess_RobotBuffer_IssueOutboundTask; |
| | | // while (true) |
| | | // { |
| | | // Thread.Sleep(1000);//ä¼ç 2ç§ï¼å°ä¼ç åå°åé¢ï¼æ¯ä¸ºäºä¸é¢çcontinueæ¹æ³æ§è¡å䏿¾ç¤ºé误信æ¯çæç¤ºï¼ï¼ï¼ãEditBy shaocx,2022-05-24ã |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = string.Empty; |
| | | // try |
| | | // {//SystemValue.isAllowRuning_DataProcess_RobotBuffer_IssueOutboundTask && |
| | | // if (SystemValue.isStartedModel) |
| | | // { |
| | | // var rgvLocation = StationLocationEnum.BZ39.ToString(); |
| | | // /* |
| | | // * 1ã仿°æ®åºä¸å¤ææ¯å¦é½å¥ |
| | | // * 2ãæ ¹æ®é½å¥ç»æï¼æ¨éç»PLC |
| | | // */ |
| | | |
| | | // using (WmsDBModel wmsDB = new WmsDBModel()) |
| | | // { |
| | | // var noFinishOutTask = TaskHandler.ValidateIssueTaskForNoFinishTaskByOutStore(wmsDB); |
| | | // if (noFinishOutTask == true) |
| | | // {//è¡¨ç¤ºæ²¡ææªç»æçåºåºä»»å¡ï¼é£ä¹å°± åå§å请æ±åºåºæä»¤ |
| | | // using (StationServiceClient client = new StationServiceClient()) |
| | | // { |
| | | // var res = await client.WriteOutStoreTaskInfoAsync(true, (int)EDevice.Station, rgvLocation, "", 0); |
| | | // if (!res.result) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-åå§å请æ±åºåºæä»¤ 失败,WriteOutStoreTaskInfoAsync è¿å:{res.resMsg}"; |
| | | // continue; |
| | | // } |
| | | // else |
| | | // { |
| | | // //Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-åå§å请æ±åºåºæä»¤ æå,WriteOutStoreTaskInfoAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | // } |
| | | // } |
| | | // } |
| | | |
| | | // //è¦æ¯æå·²ä¸åçä»»å¡ï¼å°±ä¸è¦æ§è¡ |
| | | // var isValidate = TaskHandler.ValidateIssueOutTaskForRobotBuffer(wmsDB); |
| | | // if (!isValidate) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-æâå·²ä¸åâçä»»å¡ï¼ä¸è½å¤ç,æ¤æ¬¡å¾ªç¯ç»æ"; |
| | | // continue; |
| | | // } |
| | | |
| | | // //åå建æ¶é´ææ©çé£ä¸ªè¦åºåºçå
|
| | | // if (string.IsNullOrEmpty(FormCC.currHandlerPackageCodeForIssueOutboundTask)) |
| | | // { |
| | | // var firstTask = wmsDB.wms_rbline_task.Where(x => |
| | | // (x.RbTaskType == (int)RbTaskTypeEnum.é½å
åºåºä»»å¡ || x.RbTaskType == (int)RbTaskTypeEnum.强å¶åºåºä»»å¡) |
| | | // && x.TaskStatus == (int)TaskStatusEnum.æ°å»º).OrderBy(x => x.CreateTime).FirstOrDefault(); |
| | | // if (firstTask == null) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()},æ ¹æ® æ²¡ææ¾å° æ°å»º çä»»å¡ "; |
| | | // FormCC.currHandlerPackageCodeForIssueOutboundTask = ""; |
| | | // continue; |
| | | // } |
| | | // FormCC.currHandlerPackageCodeForIssueOutboundTask = firstTask.PackageCode; |
| | | // } |
| | | // else |
| | | // { |
| | | // var firstTask = wmsDB.wms_rbline_task.Where(x => |
| | | // (x.RbTaskType == (int)RbTaskTypeEnum.é½å
åºåºä»»å¡ || x.RbTaskType == (int)RbTaskTypeEnum.强å¶åºåºä»»å¡) |
| | | // && x.TaskStatus == (int)TaskStatusEnum.æ°å»º |
| | | // && x.PackageCode == FormCC.currHandlerPackageCodeForIssueOutboundTask |
| | | // ).OrderBy(x => x.CreateTime).FirstOrDefault(); |
| | | // if (firstTask == null) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()},æ ¹æ® æ²¡ææ¾å° æ°å»º çä»»å¡ "; |
| | | // FormCC.currHandlerPackageCodeForIssueOutboundTask = ""; |
| | | // continue; |
| | | // } |
| | | // } |
| | | |
| | | // var taskList = wmsDB.wms_rbline_task.Where(x => |
| | | // (x.RbTaskType == (int)RbTaskTypeEnum.é½å
åºåºä»»å¡ || x.RbTaskType == (int)RbTaskTypeEnum.强å¶åºåºä»»å¡) |
| | | // && x.TaskStatus == (int)TaskStatusEnum.æ°å»º).Where(x => x.PackageCode == FormCC.currHandlerPackageCodeForIssueOutboundTask).OrderBy(x => x.CreateTime).ToList(); |
| | | // if (taskList == null) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()},æ ¹æ® æ²¡ææ¾å° æ°å»º çä»»å¡ "; |
| | | // continue; |
| | | // } |
| | | |
| | | // var doTask = taskList.FirstOrDefault(); |
| | | |
| | | |
| | | // ////è¿éä¸å åºåºä»»å¡ |
| | | // //using (StationServiceClient client = new StationServiceClient()) |
| | | // //{ |
| | | // // //é¦å
è¦æ¸
ç |
| | | // // //var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, false, rgvLocation); |
| | | // // //if (!res.result) |
| | | // // //{ |
| | | // // // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,OutboundFinishConfirmAsync è¿å:{res.resMsg}"; |
| | | // // // continue; |
| | | // // //} |
| | | // // //else |
| | | // // //{ |
| | | // // // Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ æå,OutboundFinishConfirmAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | // // //} |
| | | |
| | | // // var res = await client.WriteOutStoreTaskInfoAsync(false, (int)EDevice.Station, rgvLocation, doTask.PlaceCode, Convert.ToInt32(doTask.TaskNo)); |
| | | // // if (!res.result) |
| | | // // { |
| | | // // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,WriteOutStoreTaskInfoAsync è¿å:{res.resMsg}"; |
| | | // // continue; |
| | | // // } |
| | | // // else |
| | | // // { |
| | | // // Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ æå,WriteOutStoreTaskInfoAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | // // } |
| | | // //} |
| | | |
| | | // doTask.TaskStatus = (int)TaskStatusEnum.å·²ä¸å; |
| | | // doTask.IssueTime = DateTime.Now; |
| | | |
| | | // int changeNum = wmsDB.SaveChanges(); |
| | | // if (changeNum > 0) |
| | | // { |
| | | // //å¿
é¡»è¦ç»PLCä¸åæå,è§£å³å¯è½ä¼ç»PLCéå¤ä¸åä»»å¡çæ
åµ |
| | | // var isRight = true; |
| | | // while (isRight) |
| | | // { |
| | | // //è¿éä¸å åºåºä»»å¡ |
| | | // using (StationServiceClient client = new StationServiceClient()) |
| | | // { |
| | | |
| | | // var res = await client.WriteOutStoreTaskInfoAsync(false, (int)EDevice.Station, rgvLocation, doTask.PlaceCode, Convert.ToInt32(doTask.TaskNo)); |
| | | // if (!res.result) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,WriteOutStoreTaskInfoAsync è¿å:{res.resMsg}åæ°: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo}"; |
| | | // Log4NetHelper.WriteErrorLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,WriteOutStoreTaskInfoAsyncï¼åæ°: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo},æ¡ç :{doTask.Upi}"); |
| | | // continue; |
| | | // } |
| | | // else |
| | | // { |
| | | // Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ æå,WriteOutStoreTaskInfoAsyncï¼åæ°: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo},æ¡ç :{doTask.Upi}"); |
| | | // isRight = false; |
| | | // } |
| | | // } |
| | | // Thread.Sleep(1000); |
| | | // } |
| | | // } |
| | | // } |
| | | |
| | | // } |
| | | // } |
| | | // catch (Exception ex) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask += " åºç°å¼å¸¸:" + ex.Message + SysGloble.SPLIT_STR; |
| | | // Log4NetHelper.WriteErrorLog(logType, " åºç°å¼å¸¸ï¼" + ex.Message, ex); |
| | | // } |
| | | // } |
| | | // } |
| | | |
| | | // } |
| | | //} |
| | |
| | | var isValidate = TaskHandler.ValidateIssueOutTaskForRobotBuffer(wmsDB); |
| | | if (!isValidate) |
| | | { |
| | | SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-æâå·²ä¸åâçä»»å¡ï¼ä¸è½å¤ç,æ¤æ¬¡å¾ªç¯ç»æ"; |
| | | SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $" å½åæâå·²ä¸åâçåºåºä»»å¡ï¼ä¸è½å次å¤çä¸åä»»å¡,æ¤æ¬¡å¾ªç¯ç»æ"; |
| | | continue; |
| | | } |
| | | |
| | |
| | | var doTask = taskList.FirstOrDefault(); |
| | | |
| | | |
| | | //è¿éä¸å åºåºä»»å¡ |
| | | using (StationServiceClient client = new StationServiceClient()) |
| | | { |
| | | //é¦å
è¦æ¸
ç |
| | | //var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, false, rgvLocation); |
| | | ////è¿éä¸å åºåºä»»å¡ |
| | | //using (StationServiceClient client = new StationServiceClient()) |
| | | //{ |
| | | // //é¦å
è¦æ¸
ç |
| | | // //var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, false, rgvLocation); |
| | | // //if (!res.result) |
| | | // //{ |
| | | // // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,OutboundFinishConfirmAsync è¿å:{res.resMsg}"; |
| | | // // continue; |
| | | // //} |
| | | // //else |
| | | // //{ |
| | | // // Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ æå,OutboundFinishConfirmAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | // //} |
| | | |
| | | // var res = await client.WriteOutStoreTaskInfoAsync(false, (int)EDevice.Station, rgvLocation, doTask.PlaceCode, Convert.ToInt32(doTask.TaskNo)); |
| | | //if (!res.result) |
| | | //{ |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,OutboundFinishConfirmAsync è¿å:{res.resMsg}"; |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,WriteOutStoreTaskInfoAsync è¿å:{res.resMsg}"; |
| | | // continue; |
| | | //} |
| | | //else |
| | | //{ |
| | | // Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ æå,OutboundFinishConfirmAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | // Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ æå,WriteOutStoreTaskInfoAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | //} |
| | | |
| | | var res = await client.WriteOutStoreTaskInfoAsync(false, (int)EDevice.Station, rgvLocation, doTask.PlaceCode, Convert.ToInt32(doTask.TaskNo)); |
| | | if (!res.result) |
| | | { |
| | | SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,WriteOutStoreTaskInfoAsync è¿å:{res.resMsg}"; |
| | | continue; |
| | | } |
| | | else |
| | | { |
| | | Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ æå,WriteOutStoreTaskInfoAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | } |
| | | } |
| | | //} |
| | | |
| | | doTask.TaskStatus = (int)TaskStatusEnum.å·²ä¸å; |
| | | doTask.IssueTime = DateTime.Now; |
| | | |
| | | wmsDB.SaveChanges(); |
| | | int changeNum = wmsDB.SaveChanges(); |
| | | if (changeNum > 0) |
| | | { |
| | | //å¿
é¡»è¦ç»PLCä¸åæå,è§£å³å¯è½ä¼ç»PLCéå¤ä¸åä»»å¡çæ
åµ |
| | | var isRight = true; |
| | | while (isRight) |
| | | { |
| | | //è¿éä¸å åºåºä»»å¡ |
| | | using (StationServiceClient client = new StationServiceClient()) |
| | | { |
| | | |
| | | var res = await client.WriteOutStoreTaskInfoAsync(false, (int)EDevice.Station, rgvLocation, doTask.PlaceCode, Convert.ToInt32(doTask.TaskNo)); |
| | | if (!res.result) |
| | | { |
| | | SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_IssueOutboundTask = $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,WriteOutStoreTaskInfoAsync è¿å:{res.resMsg}åæ°: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo}"; |
| | | Log4NetHelper.WriteErrorLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,WriteOutStoreTaskInfoAsyncï¼åæ°: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo},æ¡ç :{doTask.Upi}"); |
| | | continue; |
| | | } |
| | | else |
| | | { |
| | | Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ æå,WriteOutStoreTaskInfoAsyncï¼åæ°: PlaceCode:{doTask.PlaceCode},TaskNo:{doTask.TaskNo},æ¡ç :{doTask.Upi}"); |
| | | isRight = false; |
| | | } |
| | | } |
| | | Thread.Sleep(1000); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | //using Admin.NET.Application; |
| | | //using iWareCC.StationService; |
| | | //using iWareCommon.Common.Globle; |
| | | //using iWareCommon.Utils; |
| | | //using iWareModel; |
| | | //using iWareSql.DataAccess; |
| | | //using iWareSql.WmsDBModel; |
| | | //using System; |
| | | //using System.Linq; |
| | | //using System.Threading; |
| | | //using System.Threading.Tasks; |
| | | |
| | | //namespace iWareCC.ThreadService |
| | | //{ |
| | | // /// <summary> |
| | | // /// æºå¨äººç¼åå²åºåºä»»å¡å®æå¤ç |
| | | // /// </summary> |
| | | // public static class DataProcess_RobotBuffer_FinishTaskForOutbound |
| | | // { |
| | | // public static async void Handler() |
| | | // { |
| | | // var alertMsg = ""; |
| | | // LogType logType = LogType.DataProcess_RobotBuffer_FinishTaskForOutbound; |
| | | // while (true) |
| | | // { |
| | | // Thread.Sleep(500);//ä¼ç 2ç§ï¼å°ä¼ç åå°åé¢ï¼æ¯ä¸ºäºä¸é¢çcontinueæ¹æ³æ§è¡å䏿¾ç¤ºé误信æ¯çæç¤ºï¼ï¼ï¼ãEditBy shaocx,2022-05-24ã |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = string.Empty; |
| | | // try |
| | | // {//SystemValue.isAllowRuning_DataProcess_RobotBuffer_FinishTaskForOutbound && |
| | | // if (SystemValue.isStartedModel) |
| | | // { |
| | | // var rgvLocation = StationLocationEnum.BZ39.ToString(); |
| | | // if (FormCC.stationView == null) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-è·åPLC对象为null"; |
| | | // continue; |
| | | // } |
| | | // var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault(); |
| | | // if (obj.R_OutboundFinish) |
| | | // { |
| | | // //var result = obj.R_OutboundNumber; |
| | | // //if (string.IsNullOrEmpty(result)) |
| | | // //{ |
| | | // // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}- åºåºåºä½å·æ¯ç©ºç,æ¤æ¬¡å¾ªç¯ç»æ"; |
| | | // // continue; |
| | | // //} |
| | | |
| | | // var result2 = obj.R_Outbound_TaskID; |
| | | // if (result2 == 0) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}- åºåºä»»å¡å·æ¯ç©ºç,æ¤æ¬¡å¾ªç¯ç»æ"; |
| | | // continue; |
| | | // } |
| | | |
| | | |
| | | |
| | | // using (WmsDBModel wmsDB = new WmsDBModel()) |
| | | // { |
| | | // var task = wmsDB.wms_rbline_task.Where(x => |
| | | // x.TaskNo == obj.R_Outbound_TaskID.ToString() |
| | | // && (x.RbTaskType == (int)RbTaskTypeEnum.é½å
åºåºä»»å¡ || x.RbTaskType == (int)RbTaskTypeEnum.强å¶åºåºä»»å¡) |
| | | // ).OrderByDescending(x => x.Id).FirstOrDefault(); |
| | | // if (task == null) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()},æ ¹æ® R_OutboundNumber:{obj.R_OutboundNumber}æ²¡ææ¾å°å·²ä¸åçä»»å¡ "; |
| | | // continue; |
| | | // } |
| | | // else |
| | | // { |
| | | // if (task.TaskStatus == (int)TaskStatusEnum.已宿) |
| | | // { |
| | | // using (StationServiceClient client = new StationServiceClient()) |
| | | // { |
| | | // var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, true, rgvLocation, false); |
| | | // } |
| | | // continue; |
| | | // } |
| | | |
| | | // } |
| | | |
| | | // var isSuccess = await HandlerData(wmsDB, task, rgvLocation, logType, false); |
| | | // if (isSuccess == false) |
| | | // { |
| | | // continue; |
| | | // } |
| | | |
| | | // //var upiCode = task.Upi; |
| | | // //var upiObj = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == upiCode).FirstOrDefault(); |
| | | // //if (upiObj == null) |
| | | // //{ |
| | | // // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()},æ ¹æ®UPI:{upiCode}æ²¡ææ¾å°å¯¹è±¡ "; |
| | | // // continue; |
| | | // //} |
| | | // ////æ´æ°æ¿ä»¶çç¶æååºå |
| | | // //if (task.RbTaskType == (int)RbTaskTypeEnum.é½å
åºåºä»»å¡) |
| | | // //{ |
| | | // // upiObj.UpiStatus = (int)UpiStatusEnum.å·²é½å
; |
| | | // // upiObj.AreaCode = (int)AreaCodeEnum.ç ååºå; |
| | | // //} |
| | | // //else if (task.RbTaskType == (int)RbTaskTypeEnum.强å¶åºåºä»»å¡) |
| | | // //{ |
| | | // // upiObj.UpiStatus = (int)UpiStatusEnum.å·²ä¸çº¿; |
| | | // // upiObj.AreaCode = (int)AreaCodeEnum.ä¸çº¿åºå; |
| | | // //} |
| | | |
| | | // ////åºååå° |
| | | // //wms_stock_quan qun = wmsDB.wms_stock_quan.Where(x => x.PlaceCode == task.PlaceCode).FirstOrDefault(); |
| | | // //wmsDB.wms_stock_quan.Remove(qun); |
| | | |
| | | // //task.TaskStatus = (int)TaskStatusEnum.已宿; |
| | | // //task.FinishedTime = DateTime.Now; |
| | | |
| | | // //var place = StationHandler.GetPlaceByPlaceCode(task.PlaceCode, wmsDB); |
| | | // //place.PlaceStatus = (int)PlaceStatusEnum.æ£å¸¸; |
| | | |
| | | // ////ç»PLCæ¨éä»»å¡å®æç¡®è®¤ä¿¡å· |
| | | // //using (StationServiceClient client = new StationServiceClient()) |
| | | // //{ |
| | | // // var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, true, rgvLocation, true); |
| | | // // if (!res.result) |
| | | // // { |
| | | // // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,OutboundFinishConfirmAsync è¿å:{res.resMsg}"; |
| | | // // continue; |
| | | // // } |
| | | // // else |
| | | // // { |
| | | // // Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ æå,OutboundFinishConfirmAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | // // } |
| | | // //} |
| | | |
| | | // //WmsRecordUpiProcessHandler.SaveWmsRecordUpiProcess(wmsDB, upiObj, task.PlaceCode, $"åºç¼ååºï¼{task.PlaceCode}," + task.TaskMsg); |
| | | |
| | | // //wmsDB.SaveChanges(); |
| | | // } |
| | | // } |
| | | // else |
| | | // { |
| | | // using (StationServiceClient client = new StationServiceClient()) |
| | | // { |
| | | // var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, false, rgvLocation, false); |
| | | // } |
| | | |
| | | // using (WmsDBModel wmsDB = new WmsDBModel()) |
| | | // { |
| | | // var task = wmsDB.wms_rbline_task.Where(x => |
| | | // x.IsFlagFinish == true |
| | | // && (x.RbTaskType == (int)RbTaskTypeEnum.é½å
åºåºä»»å¡ || x.RbTaskType == (int)RbTaskTypeEnum.强å¶åºåºä»»å¡) |
| | | // && x.TaskStatus == (int)TaskStatusEnum.å·²ä¸å |
| | | // ).OrderByDescending(x => x.Id).FirstOrDefault(); |
| | | // if (task == null) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()},æ²¡ææ¾å°å·²ä¸å,并䏿 记强å¶å®æçä»»å¡ "; |
| | | // continue; |
| | | // } |
| | | |
| | | // var isSuccess = await HandlerData(wmsDB, task, rgvLocation, logType, true); |
| | | // if (isSuccess == false) |
| | | // { |
| | | // continue; |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | // catch (Exception ex) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound += " åºç°å¼å¸¸:" + ex.Message + SysGloble.SPLIT_STR; |
| | | // Log4NetHelper.WriteErrorLog(logType, " åºç°å¼å¸¸ï¼" + ex.Message, ex); |
| | | // } |
| | | // } |
| | | // } |
| | | |
| | | |
| | | // public static async Task<bool> HandlerData(WmsDBModel wmsDB, wms_rbline_task task, string rgvLocation, iWareCommon.Utils.LogType logType, bool isFlagFinish) |
| | | // { |
| | | // var upiCode = task.Upi; |
| | | // var upiObj = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == upiCode).FirstOrDefault(); |
| | | // if (upiObj == null) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()},æ ¹æ®UPI:{upiCode}æ²¡ææ¾å°å¯¹è±¡ "; |
| | | // return false; |
| | | // } |
| | | // //æ´æ°æ¿ä»¶çç¶æååºå |
| | | // if (task.RbTaskType == (int)RbTaskTypeEnum.é½å
åºåºä»»å¡) |
| | | // { |
| | | // upiObj.UpiStatus = (int)UpiStatusEnum.å·²é½å
; |
| | | // upiObj.AreaCode = (int)AreaCodeEnum.ç ååºå; |
| | | // } |
| | | // else if (task.RbTaskType == (int)RbTaskTypeEnum.强å¶åºåºä»»å¡) |
| | | // { |
| | | // upiObj.UpiStatus = (int)UpiStatusEnum.å·²ä¸çº¿; |
| | | // upiObj.AreaCode = (int)AreaCodeEnum.ä¸çº¿åºå; |
| | | // } |
| | | |
| | | // //åºååå° |
| | | // wms_stock_quan qun = wmsDB.wms_stock_quan.Where(x => x.PlaceCode == task.PlaceCode).FirstOrDefault(); |
| | | // wmsDB.wms_stock_quan.Remove(qun); |
| | | |
| | | // task.TaskStatus = (int)TaskStatusEnum.已宿; |
| | | // task.FinishedTime = DateTime.Now; |
| | | |
| | | // var place = StationHandler.GetPlaceByPlaceCode(task.PlaceCode, wmsDB); |
| | | // place.PlaceStatus = (int)PlaceStatusEnum.æ£å¸¸; |
| | | |
| | | // //if (isFlagFinish == false) |
| | | // //{ |
| | | // // //ç»PLCæ¨éä»»å¡å®æç¡®è®¤ä¿¡å· |
| | | // // using (StationServiceClient client = new StationServiceClient()) |
| | | // // { |
| | | // // var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, true, rgvLocation, true); |
| | | // // if (!res.result) |
| | | // // { |
| | | // // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ 失败,OutboundFinishConfirmAsync è¿å:{res.resMsg}"; |
| | | // // return false; |
| | | // // } |
| | | // // else |
| | | // // { |
| | | // // Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-ä¸ååºåºä»»å¡ æå,OutboundFinishConfirmAsyncï¼åæ°: ç«ç¹{rgvLocation}"); |
| | | // // } |
| | | // // } |
| | | // //} |
| | | |
| | | // var flag = isFlagFinish ? "人工强å¶å®æ" : "ï¼èªå¨å®æï¼"; |
| | | // WmsRecordUpiProcessHandler.SaveWmsRecordUpiProcess(wmsDB, upiObj, task.PlaceCode, $"åºç¼ååºï¼{task.PlaceCode}(" + flag + ")," + task.TaskMsg); |
| | | |
| | | // int changeNum = wmsDB.SaveChanges(); |
| | | // if (changeNum > 0) |
| | | // { |
| | | // //å¿
é¡»è¦ç»PLCä¸åæå,è§£å³å¯è½ä¼ç»PLCéå¤ä¸åä»»å¡çæ
åµ |
| | | // var isRight = true; |
| | | |
| | | // if (isFlagFinish == false) |
| | | // { |
| | | // while (isRight) |
| | | // { |
| | | // var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault(); |
| | | // isRight = obj.R_OutboundFinish; |
| | | // //ç»PLCæ¨éä»»å¡å®æç¡®è®¤ä¿¡å· |
| | | // using (StationServiceClient client = new StationServiceClient()) |
| | | // { |
| | | // var res = await client.OutboundFinishConfirmAsync((int)EDevice.Station, true, rgvLocation, true); |
| | | // if (!res.result) |
| | | // { |
| | | // SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()}-ä¸åå
¥åºä»»å¡ 失败,InboundFinishConfirmAsync è¿å:{res.resMsg}"; |
| | | // Log4NetHelper.WriteErrorLog(logType, $"{rgvLocation.ToString()}-宿åºåºä»»å¡ãtrueã 失败,OutboundFinishConfirmAsyncï¼è¿å:{res.resMsg}ï¼åæ°:TaskNo:{task.TaskNo}, PlaceCodeï¼{task.PlaceCode},æ¡ç :{task.Upi}"); |
| | | // } |
| | | // else |
| | | // { |
| | | // Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-宿åºåºä»»å¡ãtrueã æå,OutboundFinishConfirmAsyncï¼ï¼åæ°:TaskNo:{task.TaskNo}, PlaceCodeï¼{task.PlaceCode},æ¡ç :{task.Upi}"); |
| | | // //isRight = false; |
| | | // } |
| | | // } |
| | | // Thread.Sleep(1000); |
| | | // } |
| | | // } |
| | | // } |
| | | |
| | | // return true; |
| | | // } |
| | | |
| | | // } |
| | | //} |
| | |
| | | { |
| | | var task = wmsDB.wms_rbline_task.Where(x => |
| | | x.TaskNo == obj.R_Outbound_TaskID.ToString() |
| | | //å¢å è¿ä¸¤ä¸ªéå¶æ¡ä»¶ ãEditby shaocx,2025-03-27ã |
| | | && x.TaskStatus == (int)TaskStatusEnum.å·²ä¸å |
| | | && (x.IsFlagFinish == false) |
| | | && (x.RbTaskType == (int)RbTaskTypeEnum.é½å
åºåºä»»å¡ || x.RbTaskType == (int)RbTaskTypeEnum.强å¶åºåºä»»å¡) |
| | | ).OrderByDescending(x => x.Id).FirstOrDefault(); |
| | | if (task == null) |
| | |
| | | <Compile Include="ThreadService\01_BZ01å·¥ä½ï¼æ¸
ç°ï¼æ´æ¿åå·¥ä½ï¼\DataProcess_BZ01.cs" /> |
| | | <Compile Include="ThreadService\02_BZ39å·¥ä½ï¼è¡¥æ¿åå·¥ä½ï¼\DataProcess_RobotBuffer_ModeChange.cs" /> |
| | | <Compile Include="ThreadService\02_BZ39å·¥ä½ï¼è¡¥æ¿åå·¥ä½ï¼\Inbound\2ãDataProcess_BZ39_IssueInboundTask.cs" /> |
| | | <Compile Include="ThreadService\02_BZ39å·¥ä½ï¼è¡¥æ¿åå·¥ä½ï¼\Outbound\2ãDataProcess_RobotBuffer_IssueOutboundTask - å¤å¶.cs" /> |
| | | <Compile Include="ThreadService\02_BZ39å·¥ä½ï¼è¡¥æ¿åå·¥ä½ï¼\Outbound\3ãDataProcess_RobotBuffer_FinishTaskForOutbound - å¤å¶.cs" /> |
| | | <Compile Include="ThreadService\02_BZ39å·¥ä½ï¼è¡¥æ¿åå·¥ä½ï¼\Outbound\5ãDataProcess_RobotBuffer_PesonOutbound.cs" /> |
| | | <Compile Include="ThreadService\02_BZ39å·¥ä½ï¼è¡¥æ¿åå·¥ä½ï¼\Outbound\4ãDataProcess_RobotBuffer_ForceOutbound.cs" /> |
| | | <Compile Include="ThreadService\02_BZ39å·¥ä½ï¼è¡¥æ¿åå·¥ä½ï¼\Outbound\CC_DataProcess_RobotBuffer_ForceOutbound.cs" /> |
| | |
| | | { |
| | | int iSeed = 9999; |
| | | //ä»101-9999ï¼ä¸ºä»ä¹è¦ä»101å¼å§ï¼å 为1-100ä½ä¸ºæå¨ä»»å¡ä¸åããEditBy shaocx,2022-05-10ã |
| | | return new Random(Guid.NewGuid().GetHashCode()).Next(101, iSeed).ToString(); |
| | | return new Random(Guid.NewGuid().GetHashCode()).Next(100, iSeed).ToString(); |
| | | } |
| | | } |
| | | } |