| | |
| | | continue; |
| | | //throw new Exception("è®¾å¤æ
é"); |
| | | } |
| | | if (task.TaskType == TaskTypeEnum.RK3F.ObjToInt()|| task.TaskType == TaskTypeEnum.Q1TSJ4.ObjToInt()) |
| | | if (task.TaskType == TaskTypeEnum.RK3F.ObjToInt() || task.TaskType == TaskTypeEnum.CHUKU1.ObjToInt() || task.TaskType == TaskTypeEnum.F04.ObjToInt()) |
| | | { |
| | | if (task.TaskType == TaskTypeEnum.RK3F.ObjToInt()) |
| | | { |
| | |
| | | } |
| | | else |
| | | { |
| | | |
| | | #region 4楼å
¥åº |
| | | //4楼åºåºæç®±å°ä½ |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.FOutboundmaterialbox, task.SourceAddress) != 1) |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.ReturnbinAvailable, task.TargetAddress) != 2) |
| | | { |
| | | if (task.ExceptionMessage != "4楼å
¥åºæç®±æ²¡æå°ä½") |
| | | if (task.ExceptionMessage != "4Fæåæºå
¥å£æè´§") |
| | | { |
| | | task.ExceptionMessage = "4楼å
¥åºæç®±æ²¡æå°ä½"; |
| | | task.ExceptionMessage = "4Fæåæºå
¥å£æè´§"; |
| | | Uptasks.Add(task); |
| | | } |
| | | continue; |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | var result = _taskService.Hikvisiontaskscontinue(task.WMSTaskNum); |
| | | if (result.Status == false) |
| | | { |
| | | if (task.ExceptionMessage!= result.Message) |
| | | if (task.ExceptionMessage != result.Message) |
| | | { |
| | | task.ExceptionMessage = result.Message; |
| | | Uptasks.Add(task); |
| | |
| | | //è¿éä»»å¡åæäºCheckPalletCodeing |
| | | |
| | | } |
| | | else if(task.TaskType == TaskTypeEnum.CK3F.ObjToInt()) //åºåº |
| | | else if (task.TaskType == TaskTypeEnum.CK3F.ObjToInt() || task.TaskType == TaskTypeEnum.Q1TSJ4.ObjToInt() || task.TaskType == TaskTypeEnum.F03.ObjToInt()) //åºåº |
| | | { |
| | | ////åºåºæç®±ç¼åæ°é(è¿ä¸ªæ¯åºåºæ¥è¯¢çæ¶åè¦æ¥ä¸ä¸ï¼è¿ç»wms) |
| | | //if (device.GetValue<HoistEnum, short>(HoistEnum.Outboundmaterialbox, "TSJ") == 0) throw new Exception("没æåºåºæç®±ç¼åæ°é为空"); |
| | | |
| | | if (task.TaskType == TaskTypeEnum.CK3F.ObjToInt()) |
| | | { |
| | | //读å3楼åºåºæç®±å°ä½ |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.SOutboundmaterialbox, task.SourceAddress) != 1) |
| | | { |
| | | if (task.ExceptionMessage != "3楼æåæºåºå£å
çµå馿 è´§") |
| | | { |
| | | task.ExceptionMessage = "3楼æåæºåºå£å
çµå馿 è´§"; |
| | | Uptasks.Add(task); |
| | | } |
| | | continue; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.FOutboundmaterialbox, task.SourceAddress) != 1) |
| | | { |
| | | if (task.ExceptionMessage != "4楼æåæºåºå£å
çµå馿 è´§") |
| | | { |
| | | task.ExceptionMessage = "4楼æåæºåºå£å
çµå馿 è´§"; |
| | | Uptasks.Add(task); |
| | | } |
| | | continue; |
| | | } |
| | | |
| | | //读å3楼åºåºæç®±å°ä½ |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.SOutboundmaterialbox, task.SourceAddress) != 1) |
| | | { |
| | | if (task.ExceptionMessage != "3楼åºåºæç®±æ²¡æå°ä½") |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.ROutScanningCompletionSignal, task.SourceAddress) != 1) |
| | | { |
| | | task.ExceptionMessage = "3楼åºåºæç®±æ²¡æå°ä½"; |
| | | Uptasks.Add(task); |
| | | if (task.ExceptionMessage != "4楼æåæºåºå£æ«ç å®æä¿¡å·æ²¡æå®æ") |
| | | { |
| | | task.ExceptionMessage = "4楼æåæºåºå£æ«ç å®æä¿¡å·æ²¡æå®æ"; |
| | | Uptasks.Add(task); |
| | | } |
| | | continue; |
| | | } |
| | | continue; |
| | | } |
| | | //ç¶åè°ç¨è¾é线æ¥å£ï¼éç¥è¾é线ææç®±éè¦å
¥åºï¼ä»»å¡ä¸¾è¡æ§è¡ |
| | | var result = _taskService.Hikvisiontaskscontinue(task.WMSTaskNum); |
| | | if (result.Status == false) |
| | | { |
| | | if (task.ExceptionMessage != result.Message) |
| | | { |
| | | task.ExceptionMessage = result.Message; |
| | | Uptasks.Add(task); |
| | | } |
| | | continue; |
| | | } |
| | | task.TaskState = (int)TaskStatusEnum.AGV_ToExecute; |
| | | task.ExceptionMessage = ""; |
| | | Uptasks.Add(task); |
| | | } |
| | | else if (task.TaskType == TaskTypeEnum.CHUKU1.ObjToInt())//4楼åºåºä»»å¡ |
| | | { |
| | | |
| | | #region åºåºä¿¡å· |
| | | //åç©ºç®±çæ¶åè¦è¯»ä¸ä¸ªå |
| | | if (device.GetValue<HoistEnum, string>(HoistEnum.Emptycontainernumber, task.TargetAddress) == null) |
| | | { |
| | | if (task.ExceptionMessage != "4楼空箱,读ç 卿²¡æè¯»å°å¼") |
| | | { |
| | | task.ExceptionMessage = "4楼空箱,读ç 卿²¡æè¯»å°å¼"; |
| | | Uptasks.Add(task); |
| | | } |
| | | continue; |
| | | } |
| | | //夿4楼空箱å°ä½ |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.ReturnbinAvailable, task.TargetAddress) != 2) |
| | | { |
| | | if (task.ExceptionMessage != "æåæºå
¥åºç©ºæ è´§") |
| | | { |
| | | task.ExceptionMessage = "æåæºå
¥åºç©ºæ è´§"; |
| | | Uptasks.Add(task); |
| | | } |
| | | continue; |
| | | } |
| | | #endregion |
| | | //ç¶åè°ç¨è¾é线æ¥å£ï¼éç¥è¾é线ææç®±éè¦å
¥åºï¼ä»»å¡ä¸¾è¡æ§è¡ |
| | | var result = _taskService.Hikvisiontaskscontinue(task.WMSTaskNum); |
| | | if (result.Status == false) |
| | |
| | | } |
| | | continue; |
| | | } |
| | | |
| | | task.TaskState = (int)TaskStatusEnum.AGV_ToExecute; |
| | | task.ExceptionMessage = ""; |
| | | Uptasks.Add(task); |
| | | } |
| | | //else if (task.TaskType == TaskTypeEnum.CHUKU1.ObjToInt()) //忥¼åºå
å°æåæº |
| | | //{ |
| | | |
| | | |
| | | //} |
| | | } |
| | | |
| | | //æ¥æ¾ä¸æ¥¼å
¥åºä»»å¡ç¶æä¸ºCheckPalletCodeingç任塿çå·ç¡®è®¤ä¸ |
| | | var RK3FTasks = _taskService.Repository.QueryFirst(x => x.TaskType == TaskTypeEnum.RK3F.ObjToInt() && x.TaskState == (int)TaskStatusEnum.CheckPalletCodeing); |
| | | if (RK3FTasks!=null) |
| | | { |
| | | var Barcode = device.SetValue<HoistEnum, short>(HoistEnum.Codereadingtriggered, 1); |
| | | //æ£æ¥3楼å
¥åºç®±å·æ¯å¤å°ï¼ç¶åä¼ ç»wms |
| | | var BinNumber = device.GetValue<HoistEnum, string>(HoistEnum.Inboxnumber, RK3FTasks.TargetAddress); |
| | | //æ ¹æ®è¯»å°çç®±å·è¿è¡æç®±æ£éªï¼æ£éªéè¿å°±è§¦å读ç å¨è¯»åï¼å¦æä¸éè¿å°±æåºå¼å¸¸ |
| | | //var Verification = _taskService.MaterialBoxInspection(RK3FTasks.WMSTaskNum, BinNumber.ToString()); |
| | | //if (!Verification.Status) |
| | | //{ |
| | | // if (!(RK3FTasks.ExceptionMessage == Verification.Message)) |
| | | // { |
| | | // RK3FTasks.ExceptionMessage = Verification.Message; |
| | | // Uptasks.Add(RK3FTasks); |
| | | // } |
| | | // //æç®±éªè¯å好åï¼éè¦æ´æ¹ |
| | | // RK3FTasks.TargetAddress = Verification.Data.ToString(); |
| | | //} |
| | | |
| | | //妿æç®±æ£éªæåå°±åå
¥è¯»ç å¨çå¼ |
| | | var result = _taskService.Hikvisiontaskscontinue(RK3FTasks.WMSTaskNum, RK3FTasks.TargetAddress); |
| | | if (result.Status == false) |
| | | { |
| | | if (RK3FTasks.ExceptionMessage != result.Message) |
| | | { |
| | | RK3FTasks.ExceptionMessage = result.Message; |
| | | Uptasks.Add(RK3FTasks); |
| | | } |
| | | } |
| | | RK3FTasks.TaskState = (int)TaskStatusEnum.CheckPalletCodeFinish; |
| | | Uptasks.Add(RK3FTasks); |
| | | } |
| | | if (Uptasks.Count > 0) |
| | | { |
| | | _taskService.UpdateData(Uptasks); |
| | | } |
| | | WriteInfo(device.DeviceName, "infoLog"); |
| | | |
| | | WriteDebug(device.DeviceName, "debugLog"); |
| | | #region æçå·ç¡®è®¤ä¸ |
| | | //æ¥æ¾ä¸æ¥¼å
¥åºä»»å¡ç¶æä¸ºCheckPalletCodeingç任塿çå·ç¡®è®¤ä¸ |
| | | var RK3FTask = _taskService.Repository.QueryFirst(x => x.TaskType == TaskTypeEnum.RK3F.ObjToInt() && x.TaskState == (int)TaskStatusEnum.CheckPalletCodeing); |
| | | if (RK3FTask != null) |
| | | { |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.RInScanningCompletionSignal, RK3FTask.TargetAddress) != 1) |
| | | { |
| | | RK3FTask.ExceptionMessage = "3楼æ«ç å®æä¿¡å·æ²¡æå®æ"; |
| | | _taskService.UpdateData(RK3FTask); |
| | | } |
| | | else //宿就æä»»å¡ç¶ææ¹ææçå·ç¡®è®¤å®æ |
| | | { |
| | | //æ£æ¥3楼å
¥åºç®±å·æ¯å¤å°ï¼ç¶åä¼ ç»wms |
| | | var BinNumber = device.GetValue<HoistEnum, string>(HoistEnum.Inboxnumber, RK3FTask.TargetAddress); |
| | | if (!string.IsNullOrEmpty(BinNumber)) |
| | | { |
| | | BinNumber = BinNumber.TrimEnd('\0').Substring(2); |
| | | //æ ¹æ®è¯»å°çç®±å·è¿è¡æç®±æ£éªï¼æ£éªéè¿å°±è§¦å读ç å¨è¯»åï¼å¦æä¸éè¿å°±æåºå¼å¸¸ |
| | | var Verification = _taskService.MaterialBoxInspection(RK3FTask.WMSTaskNum, BinNumber); |
| | | if (!Verification.Status) |
| | | { |
| | | if (RK3FTask.ExceptionMessage != Verification.Message) |
| | | { |
| | | RK3FTask.ExceptionMessage = Verification.Message; |
| | | _taskService.UpdateData(RK3FTask); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | if (!string.IsNullOrEmpty(Verification.Message)) RK3FTask.TargetAddress = Verification.Message; |
| | | //妿æç®±æ£éªæåå°±åå
¥è¯»ç å¨çå¼ |
| | | var result = _taskService.Hikvisiontaskscontinue(RK3FTask.WMSTaskNum, RK3FTask.TargetAddress); |
| | | if (result.Status) |
| | | { |
| | | RK3FTask.ExceptionMessage = ""; |
| | | RK3FTask.TaskState = (int)TaskStatusEnum.CheckPalletCodeFinish; |
| | | _taskService.UpdateData(RK3FTask); |
| | | } |
| | | else |
| | | { |
| | | if (RK3FTask.ExceptionMessage != result.Message) |
| | | { |
| | | RK3FTask.ExceptionMessage = result.Message; |
| | | _taskService.UpdateData(RK3FTask); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 4Fæåæºåºå£æçå·ä¸æ¥WMS |
| | | var Address = "TSJC4F"; |
| | | if (device.GetValue<HoistEnum, short>(HoistEnum.ROutScanningCompletionSignal, Address) == 1) |
| | | { |
| | | var BinNumber = device.GetValue<HoistEnum, string>(HoistEnum.Emptycontainernumber, Address); |
| | | if (!string.IsNullOrEmpty(BinNumber)) |
| | | { |
| | | BinNumber = BinNumber.TrimEnd('\0').Substring(2); |
| | | _taskService.InboundElevatorExit(Address, BinNumber); |
| | | } |
| | | } |
| | | #endregion |
| | | //WriteInfo(device.DeviceName, "infoLog"); |
| | | |
| | | //WriteDebug(device.DeviceName, "debugLog"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | } |
| | | else |
| | | { |
| | | WriteError(nameof(TestJob), "åæ°é误,æªä¼ é设å¤åæ°æè®¾å¤ç±»åé误"); |
| | | WriteError(nameof(TSJJob), "åæ°é误,æªä¼ é设å¤åæ°æè®¾å¤ç±»åé误"); |
| | | } |
| | | |
| | | |