| | |
| | | /// <summary> |
| | | /// 4楼åºåºæ«ç å®æä¿¡å· |
| | | /// </summary> |
| | | ROutScanningCompletionSignal |
| | | ROutScanningCompletionSignal, |
| | | |
| | | #region æåæºæ¥è¦ä¿¡æ¯ |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç3楼æ¥è¦A301 |
| | | /// </summary> |
| | | R_ElectricDrumA301, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç3楼æ¥è¦A302 |
| | | /// </summary> |
| | | R_ElectricDrumA302, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç3楼æ¥è¦A303 |
| | | /// </summary> |
| | | R_ElectricDrumA303, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç3楼æ¥è¦A304 |
| | | /// </summary> |
| | | R_ElectricDrumA304, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç3楼æ¥è¦A305 |
| | | /// </summary> |
| | | R_ElectricDrumA305, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç3楼æ¥è¦A306 |
| | | /// </summary> |
| | | R_ElectricDrumA306, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç3楼æ¥è¦A307 |
| | | /// </summary> |
| | | R_ElectricDrumA307, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç3楼æåæº1æ¥è¦T001 |
| | | /// </summary> |
| | | R_ElectricDrumT001, |
| | | |
| | | /// <summary> |
| | | /// æåæº1åé¢å¨æ¥è¦ |
| | | /// </summary> |
| | | R_InverterAlarm, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç4楼æ¥è¦A401 |
| | | /// </summary> |
| | | R_ElectricDrumA401, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç4楼æ¥è¦A402 |
| | | /// </summary> |
| | | R_ElectricDrumA402, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç4楼æ¥è¦A403 |
| | | /// </summary> |
| | | R_ElectricDrumA403, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç4楼æ¥è¦A404 |
| | | /// </summary> |
| | | R_ElectricDrumA404, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç4楼æ¥è¦A405 |
| | | /// </summary> |
| | | R_ElectricDrumA405, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç4楼æ¥è¦A406 |
| | | /// </summary> |
| | | R_ElectricDrumA406, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç4楼æ¥è¦A407 |
| | | /// </summary> |
| | | R_ElectricDrumA407, |
| | | |
| | | /// <summary> |
| | | /// æåæº2åé¢å¨æ¥è¦ |
| | | /// </summary> |
| | | R_ElectricDrumT002, |
| | | |
| | | /// <summary> |
| | | /// æåæº1ä¸é使¥è¦ |
| | | /// </summary> |
| | | R_UpperlimitAlarm1, |
| | | |
| | | /// <summary> |
| | | /// æåæº1ä¸é使¥è¦ |
| | | /// </summary> |
| | | R_LowerlimitAlarm1, |
| | | |
| | | /// <summary> |
| | | /// æåæº2ä¸é使¥è¦ |
| | | /// </summary> |
| | | R_UpperlimitAlarm2, |
| | | |
| | | |
| | | /// <summary> |
| | | /// æåæº2ä¸é使¥è¦ |
| | | /// </summary> |
| | | R_LowerlimitAlarm2, |
| | | |
| | | |
| | | /// <summary> |
| | | /// 读ç å¨3楼æ«ç å¼å¸¸ |
| | | /// </summary> |
| | | R_ScancodeError1, |
| | | |
| | | |
| | | /// <summary> |
| | | /// 读ç å¨4楼æ«ç å¼å¸¸ |
| | | /// </summary> |
| | | R_ScancodeError2, |
| | | |
| | | /// <summary> |
| | | /// çµææ¥å3楼 |
| | | /// </summary> |
| | | R_EmergencSytop1, |
| | | |
| | | /// <summary> |
| | | /// çµææ¥å4楼 |
| | | /// </summary> |
| | | R_EmergencSytop2, |
| | | |
| | | /// <summary> |
| | | ///æåæºæ¥å3楼 |
| | | /// </summary> |
| | | R_TSJEmergencSytop1, |
| | | |
| | | /// <summary> |
| | | /// æåæºæ¥å4楼 |
| | | /// </summary> |
| | | R_TSJEmergencSytop2, |
| | | |
| | | /// <summary> |
| | | /// çµæ»ç4楼æ¥è¦T002 |
| | | /// </summary> |
| | | R_DrumAlarmT002, |
| | | |
| | | /// <summary> |
| | | /// å¤ç¨1 |
| | | /// </summary> |
| | | R_TSJSpare1, |
| | | |
| | | /// <summary> |
| | | /// å¤ç¨1 |
| | | /// </summary> |
| | | R_TSJSpare2, |
| | | |
| | | #endregion |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | TargetAddress = taskDTO.toLocationCode, |
| | | Creater = "WMS", |
| | | }; |
| | | content = SendHIKROBOTTask(dt_Task); |
| | | if (!content.Status) throw new Exception(content.Message); |
| | | dt_Task.Dispatchertime = DateTime.Now; |
| | | BaseDal.AddData(dt_Task); |
| | | return content.OK(data: new |
| | | { |
| | | taskCode = taskDTO.taskCode, |
| | | Message = "æå" |
| | | }); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | |
| | | content.Error(ex.Message); |
| | | } |
| | | return content; |
| | |
| | | if (content.Status) |
| | | { |
| | | item.TaskState = (int)TaskStatusEnum.Execut; |
| | | _taskService.UpdateData(item); |
| | | } |
| | | } |
| | | else |
| | |
| | | { |
| | | // åä»»å¡ç¶ææ¹ä¸ºçå¾
空车 |
| | | item.TaskState = (int)TaskStatusEnum.WaitingHkAGVMovePosition; |
| | | _taskService.UpdateData(item); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | item.ExceptionMessage = "æªæ¾å°å¯ç¨AGVå°è½¦"; |
| | | _taskService.UpdateData(item); |
| | | } |
| | | } |
| | | } |
| | |
| | | else |
| | | { |
| | | item.ExceptionMessage = "è·åAGVå°è½¦ä¿¡æ¯å¤±è´¥"; |
| | | _taskService.UpdateData(item); |
| | | } |
| | | } |
| | | else if (item.TaskType == (int)TaskTypeEnum.F01) |
| | |
| | | { |
| | | // ä»ä»»å¡çèµ·å§å°å䏿åéè¦ç楼å±ä»£ç |
| | | string requiredMapCode = GetMapCodeFromAddress(item.SourceAddress); |
| | | if (string.IsNullOrEmpty(requiredMapCode)) |
| | | if (requiredMapCode==null) |
| | | { |
| | | item.ExceptionMessage = $"æ æ³ä»ç®æ å°å {item.SourceAddress} ä¸è¯å«æ¥¼å±ä¿¡æ¯"; |
| | | _taskService.UpdateData(item); |
| | |
| | | if (content.Status) |
| | | { |
| | | item.TaskState = (int)TaskStatusEnum.Execut; |
| | | _taskService.UpdateData(item); |
| | | } |
| | | } |
| | | else |
| | |
| | | if (callCarResult.Status) |
| | | { |
| | | item.TaskState = (int)TaskStatusEnum.WaitingHkAGVMovePosition; |
| | | _taskService.UpdateData(item); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | item.ExceptionMessage = "æªæ¾å°å¯ç¨AGVå°è½¦"; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | _taskService.UpdateData(item); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | private string GetMapCodeFromAddress(string address) |
| | | { |
| | | if (string.IsNullOrEmpty(address)) |
| | | { |
| | | return null; |
| | | |
| | | } |
| | | // å°åæ ¼å¼ç¤ºä¾ ï¼AA å¯¹åº 0339050AA0309145 |
| | | // keys æ¯ AAãBBãCCãDDãEEãFFï¼vuleæ¯å¯¹åºçç¹ä½ä¿¡æ¯ |
| | | foreach (var floorCode in FloorMapping.FloorMap.Keys) |
| | | else |
| | | { |
| | | if (address.Contains(floorCode)) |
| | | { |
| | | return floorCode;//è¿åçå°±æ¯AAãBBãCCãDDãEEãFFä¸çä¸ä¸ªï¼ä»£è¡¨å¯¹åºçæ¥¼å± |
| | | var reslut = _stationInfoService.Repository.QueryFirst(x => x.StationCode == address); |
| | | return reslut.FloorNumber; |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | |
| | | } |
| | | } |
| | |
| | | using System.Reflection; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using WIDESEAWCS_BasicInfoService; |
| | | using WIDESEAWCS_Common.TaskEnum; |
| | | using WIDESEAWCS_Communicator; |
| | | using WIDESEAWCS_Core.BaseRepository; |
| | |
| | | private readonly ITrackloginfoService _trackloginfoService; |
| | | private readonly IUnitOfWorkManage _unitOfWorkManage; |
| | | private readonly IAGVCartInfoService _agvcartInfoService; |
| | | private readonly IStationInfoService _stationInfoService; |
| | | |
| | | public TaskJob(ITaskService taskService, IApiInfoService apiInfoService, IRGVLocationInfoService rGVLocationInfoService, IStationMangerService stationMangerService, ITrackloginfoService trackloginfoService, IUnitOfWorkManage unitOfWorkManage, IAGVCartInfoService agvcartInfoService) |
| | | public TaskJob(ITaskService taskService, IApiInfoService apiInfoService, IRGVLocationInfoService rGVLocationInfoService, IStationMangerService stationMangerService, ITrackloginfoService trackloginfoService, IUnitOfWorkManage unitOfWorkManage, IAGVCartInfoService agvcartInfoService, IStationInfoService stationInfoService) |
| | | { |
| | | _taskService = taskService;//注å
¥ |
| | | _apiInfoService = apiInfoService; |
| | |
| | | _trackloginfoService = trackloginfoService; |
| | | _unitOfWorkManage = unitOfWorkManage; |
| | | _agvcartInfoService = agvcartInfoService; |
| | | _stationInfoService = stationInfoService; |
| | | } |
| | | |
| | | public Task Execute(IJobExecutionContext context) |