| | |
| | | { |
| | | IssueTaskHandle(i_deviceId, out errMsg); |
| | | } |
| | | SystemWarningMsg._lbl_Alert_RgvRelease = errMsg; |
| | | SystemWarningMsg._lbl_Alert_PushPaperCutToMes = errMsg; |
| | | Thread.Sleep(2000);//2秒一次 |
| | | } |
| | | |
| | |
| | | { |
| | | ConfirmFinishTaskHandle(i_deviceId, out errMsg); |
| | | } |
| | | SystemWarningMsg._lbl_Alert_RgvReleaseFinish = errMsg; |
| | | SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_ModeChange = errMsg; |
| | | Thread.Sleep(2000); |
| | | } |
| | | |
| | |
| | | catch (Exception ex) |
| | | { |
| | | errMsg = "出现异常:" + ex.Message; |
| | | Log4NetHelper.WriteErrorLog(LogType.RgvThreadService, errMsg, ex); |
| | | Log4NetHelper.WriteErrorLog(LogType.StationThreadService, errMsg, ex); |
| | | TaskRequestLogHandler.InsertTask(base.currentLogType, RequestStatusEnum.请求失败, JsonConvert.SerializeObject(confirmTaskFinish), log, ex); |
| | | trans.Rollback(); |
| | | return; |
| | |
| | | bool rgvFinishAck = FormCC.rgvView.W_RGV_FinishACK; |
| | | |
| | | errMsg = $"RGV任务完成确认补偿线程信息,获取信息:rgvTaskId:{rgvTaskId},isRgvFinish:{isRgvFinish},rgvFinishAck:{rgvFinishAck}"; |
| | | Log4NetHelper.WriteInfoLog(LogType.RgvThreadService, errMsg); |
| | | Log4NetHelper.WriteInfoLog(LogType.StationThreadService, errMsg); |
| | | |
| | | //如果ack为false,finish为true,并且 wms的该任务为 已完成,则表示需要补偿 |
| | | Task_Part currentTask = null; |
| | | if (rgvTaskId > 0 && rgvFinishAck == false && isRgvFinish == true) |
| | | { |
| | | errMsg = $"RGV任务完成确认补偿线程信息,初步符合条件:rgvTaskId:{rgvTaskId},isRgvFinish:{isRgvFinish},rgvFinishAck:{rgvFinishAck}"; |
| | | Log4NetHelper.WriteInfoLog(LogType.RgvThreadService, errMsg); |
| | | Log4NetHelper.WriteInfoLog(LogType.StationThreadService, errMsg); |
| | | |
| | | using (DbModel dbModel = new DbModel()) |
| | | { |
| | |
| | | if (ts.Seconds > 10) |
| | | {//只有 已完成任务时间超出当前3秒后,才能处理! |
| | | errMsg = $"RGV任务完成确认补偿线程信息,准备处理:rgvTaskId:{rgvTaskId},isRgvFinish:{isRgvFinish},rgvFinishAck:{rgvFinishAck}"; |
| | | Log4NetHelper.WriteInfoLog(LogType.RgvThreadService, errMsg); |
| | | Log4NetHelper.WriteInfoLog(LogType.StationThreadService, errMsg); |
| | | |
| | | var confirmTaskFinish = new RgvService.RgvServiceClient().WriteRGV_FinishACK((int)EDevice.RGV, true, Convert.ToInt32(currentTask.PlcTaskId)); |
| | | if (!confirmTaskFinish.result) |
| | | { |
| | | errMsg = $"RGV任务完成确认补偿线程失败:rgvTaskId:{rgvTaskId},SDA返回:" + confirmTaskFinish.resMsg; |
| | | Log4NetHelper.WriteErrorLog(LogType.RgvThreadService, errMsg, null); |
| | | Log4NetHelper.WriteErrorLog(LogType.StationThreadService, errMsg, null); |
| | | return; |
| | | } |
| | | else |
| | | { |
| | | errMsg = $"RGV任务完成确认补偿线程成功{rgvTaskId}:rgvTaskId:{rgvTaskId}"; |
| | | Log4NetHelper.WriteInfoLog(LogType.RgvThreadService, errMsg); |
| | | Log4NetHelper.WriteInfoLog(LogType.StationThreadService, errMsg); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | errMsg = $"RGV任务完成确认补偿线程信息,未超过3秒,不处理:rgvTaskId:{rgvTaskId},isRgvFinish:{isRgvFinish},rgvFinishAck:{rgvFinishAck}"; |
| | | Log4NetHelper.WriteInfoLog(LogType.RgvThreadService, errMsg); |
| | | Log4NetHelper.WriteInfoLog(LogType.StationThreadService, errMsg); |
| | | return; |
| | | } |
| | | } |
| | |
| | | catch (Exception ex) |
| | | { |
| | | errMsg = "RGV任务完成确认补偿线程-出现异常:" + ex.Message; |
| | | Log4NetHelper.WriteErrorLog(LogType.RgvThreadService, errMsg, ex); |
| | | Log4NetHelper.WriteErrorLog(LogType.StationThreadService, errMsg, ex); |
| | | return; |
| | | } |
| | | } |
| | |
| | | if (sdaResult.result == false) |
| | | {//给Rgv下发指令失败 |
| | | errMsg = sdaResult.resMsg; |
| | | Log4NetHelper.WriteErrorLog(LogType.RgvThreadService, errMsg, null); |
| | | Log4NetHelper.WriteErrorLog(LogType.StationThreadService, errMsg, null); |
| | | return; |
| | | } |
| | | else |
| | | { |
| | | Log4NetHelper.WriteInfoLog(LogType.RgvThreadService, "发动机出库,给西港PLC发送发动机数据,主任务号:" + mainTask.Id); |
| | | Log4NetHelper.WriteInfoLog(LogType.StationThreadService, "发动机出库,给西港PLC发送发动机数据,主任务号:" + mainTask.Id); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | errMsg = "出现异常:" + ex.Message; |
| | | Log4NetHelper.WriteErrorLog(LogType.RgvThreadService, errMsg, ex); |
| | | Log4NetHelper.WriteErrorLog(LogType.StationThreadService, errMsg, ex); |
| | | return; |
| | | } |
| | | } |