Merge branch 'master' of http://115.159.85.185:8098/r/RuiShengZhiNeng/GaoPuLiTiKu
| | |
| | | [ |
| | | { title: "å··éç¼å·", field: "roadwayNo", type: "like" }, |
| | | { title: "è´§ä½ç±»å", field: "locationType", type: "select", |
| | | data: [ |
| | | { key: "0", value: "æªå®ä¹" }, |
| | | { key: "1", value: "å°æç" }, |
| | | { key: "2", value: "䏿ç" }, |
| | | { key: "3", value: "大æç" }, |
| | | { key: "4", value: "ç¹å¤§æç" }, |
| | | ], |
| | | dataKey:"LocationTypeEnum", |
| | | }, |
| | | { title: "è´§ä½ç¶æ", field: "locationStatus", type: "select", |
| | | data: [ |
| | |
| | | type: "select", |
| | | width: 100, |
| | | align: "left", |
| | | bind: { |
| | | key: "value", |
| | | data: [ |
| | | { key: "0", value: "æªå®ä¹" }, |
| | | { key: "1", value: "å°æç" }, |
| | | { key: "2", value: "䏿ç" }, |
| | | { key: "3", value: "大æç" }, |
| | | { key: "4", value: "ç¹å¤§æç" }, |
| | | ], |
| | | bind: {key:"LocationTypeEnum",data:[] |
| | | }, |
| | | }, |
| | | { |
| | |
| | | ], |
| | | [ |
| | | { title: "å··éç¼å·", field: "roadwayNo", type: "like" }, |
| | | { title: "è´§ä½ç±»å", field: "locationType", type: "select", |
| | | data: [ |
| | | { key: "0", value: "æªå®ä¹" }, |
| | | { key: "1", value: "å°æç" }, |
| | | { key: "2", value: "䏿ç" }, |
| | | { key: "3", value: "大æç" }, |
| | | { key: "4", value: "ç¹å¤§æç" }, |
| | | ], |
| | | { title: "è´§ä½ç±»å", field: "locationType", type: "select",dataKey: "RGVLocationTypeEnum",data:[] |
| | | }, |
| | | { title: "è´§ä½ç¶æ", field: "locationStatus", type: "select", |
| | | data: [ |
| | |
| | | type: "select", |
| | | width: 100, |
| | | align: "left", |
| | | bind: { |
| | | key: "value", |
| | | data: [ |
| | | { key: "0", value: "æªå®ä¹" }, |
| | | { key: "1", value: "å°æç" }, |
| | | { key: "2", value: "䏿ç" }, |
| | | { key: "3", value: "大æç" }, |
| | | { key: "4", value: "ç¹å¤§æç" }, |
| | | ], |
| | | }, |
| | | bind: { key: "RGVLocationTypeEnum", data: [] }, |
| | | }, |
| | | { |
| | | field: "locationStatus", |
| | |
| | | type: "string", |
| | | width: 90, |
| | | align: "left", |
| | | hidden: true, |
| | | // hidden: true, |
| | | }, |
| | | { |
| | | field: "grade", |
| | |
| | | { title: "ä¸ä¸ä½ç½®", field: "nextAddress", type: "like" }, |
| | | ], |
| | | [ |
| | | { title: "å··éå·", field: "roadway", type: "like" }, |
| | | { |
| | | title: "ä»»å¡ç±»å", |
| | | field: "taskType", |
| | |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "sourceId", |
| | | title: "æºä»»å¡ID", |
| | | type: "int", |
| | | width: 100, |
| | | align: "left", |
| | | hidden: false, |
| | | }, |
| | | { |
| | | field: "operateType", |
| | | title: "æä½ç±»å", |
| | | type: "string", |
| | | width: 100, |
| | | align: "left", |
| | | bind: { key: "OperateTypeEnum", data: [] }, |
| | | }, |
| | | { |
| | | field: "insertTime", |
| | | title: "æå
¥æ¶é´", |
| | | type: "datetime", |
| | | width: 150, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "taskNum", |
| | | title: "ä»»å¡å·", |
| | | type: "int", |
| | |
| | | title: "æçç¼å·", |
| | | type: "string", |
| | | width: 120, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "roadway", |
| | | title: "åºå", |
| | | type: "string", |
| | | width: 90, |
| | | align: "left", |
| | | }, |
| | | { |
| | |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "insertTime", |
| | | title: "æå
¥æ¶é´", |
| | | type: "datetime", |
| | | width: 150, |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "creater", |
| | | title: "å建è
", |
| | | type: "string", |
| | |
| | | align: "left", |
| | | }, |
| | | { |
| | | field: "operateType", |
| | | title: "æä½ç±»å", |
| | | type: "string", |
| | | width: 100, |
| | | align: "left", |
| | | bind: { key: "OperateTypeEnum", data: [] }, |
| | | }, |
| | | { |
| | | field: "remark", |
| | | title: "夿³¨", |
| | | type: "string", |
| | |
| | | align: "left", |
| | | hidden: false, |
| | | }, |
| | | |
| | | ]); |
| | | |
| | | const detail = ref({ |
| | |
| | | result = new VueDictionaryDTO { DicNo = key, Config = "", Data = data }; |
| | | } |
| | | break; |
| | | case "LocationTypeEnum": |
| | | { |
| | | List<object> data = new List<object>(); |
| | | Type type = typeof(LocationTypeEnum); |
| | | List<int> enums = Enum.GetValues(typeof(LocationTypeEnum)).Cast<int>().ToList(); |
| | | int index = 0; |
| | | foreach (var item in enums) |
| | | { |
| | | FieldInfo? fieldInfo = typeof(LocationTypeEnum).GetField(((LocationTypeEnum)item).ToString()); |
| | | DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>(); |
| | | if (description != null) |
| | | { |
| | | data.Add(new { key = item.ToString(), value = description.Description }); |
| | | } |
| | | else |
| | | { |
| | | data.Add(new { key = item.ToString(), value = item.ToString() }); |
| | | } |
| | | index++; |
| | | } |
| | | |
| | | result = new VueDictionaryDTO { DicNo = key, Config = "", Data = data }; |
| | | } |
| | | break; |
| | | } |
| | | return result; |
| | | } |
| | |
| | | "Microsoft.AspNetCore": "Warning" |
| | | } |
| | | }, |
| | | "dics": "deviceType,devicePlcType,jobAssembly,jobClassName,deviceStatus,taskType,taskState,inOutType,TaskStatusEnum,TaskTypeEnum,RGVLocationTypeEnum", |
| | | "dics": "deviceType,devicePlcType,jobAssembly,jobClassName,deviceStatus,taskType,taskState,inOutType,TaskStatusEnum,TaskTypeEnum,RGVLocationTypeEnum,LocationTypeEnum", |
| | | "AllowedHosts": "*", |
| | | "ConnectionStringsEncryption": false, |
| | | "MainDB": "DB_WIDESEA", //å½å项ç®ç主åºï¼æå¯¹åºçè¿æ¥å符串çEnabledå¿
须为true |
| | |
| | | WebResponseContent content = new WebResponseContent(); |
| | | try |
| | | { |
| | | var stationManger = _stationMangerService.GetOutStationInfo(taskDTO.toLocationCode); |
| | | if (stationManger==null) |
| | | { |
| | | return content.Error($"{taskDTO.toLocationCode}䏿¯åºåºç«å°"); |
| | | } |
| | | Dt_RGVLocationInfo rGVLocationInfo = _rGVLocationInfoService.Repository.QueryFirst(x => x.LocationCode == taskDTO.fromLocationCode) ?? throw new Exception($"æªæ¾å°èµ·ç¹åºä½ã{taskDTO.fromLocationCode}ãï¼"); |
| | | if (rGVLocationInfo.LocationStatus != LocationStatusEnum.InStock.ObjToInt()) throw new Exception($"èµ·ç¹åºä½ã{taskDTO.fromLocationCode}ãå½ååºä½ç¶æä¸å¯åºåºï¼"); |
| | | if (rGVLocationInfo.PalletCode != taskDTO.containerCode) throw new Exception($"èµ·ç¹åºä½ã{taskDTO.fromLocationCode}ãç»å®æç®±å·ã{rGVLocationInfo.PalletCode}ãä¸ä»»å¡æç®±å·ã{taskDTO.containerCode}ãä¸å¹é
ï¼"); |
| | |
| | | //var task = BaseDal.QueryFirst(x => x.RGVTaskId == Rgv.content.taskID); |
| | | var task = BaseDal.QueryFirst(x => x.PalletCode == Rgv.content.podID); |
| | | if (task == null) throw new Exception($"æªæ¾å°ä»»å¡,ä»»å¡ç¼å·ã{Rgv.content.taskID}ã"); |
| | | |
| | | if (Rgv.messageType == 72)//å°è½¦é¡¶èµ·è´§ç© |
| | | { |
| | | if (task.TaskType == (int)TaskTypeEnum.CPInbound && task.TaskState == (int)TaskStatusEnum.Execut) |
| | | { |
| | | task.TaskState = (int)TaskStatusEnum.WaiCheckShape; |
| | | //BaseDal.UpdateData(task);//ç»è´¨æ£é¨åå
¥å¯å¨ä¿¡å· |
| | | var device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == "F1") as OtherDevice; |
| | | if (device == null) task.ExceptionMessage = "æªæ¾å°1楼质æ£é¨è®¾å¤ä¿¡æ¯"; |
| | | else |
| | | { |
| | | if (device.IsConnected) |
| | | device.SetValue(QualityInspectionCommandEnum.StartqualityInspection, true, task.SourceAddress); |
| | | else |
| | | task.ExceptionMessage = "1楼质æ£é¨è®¾å¤è¿æ¥å¤±è´¥"; |
| | | } |
| | | TaskFeedback(task, 4); |
| | | } |
| | | else |
| | | { |
| | | TaskFromCompleted(task, deviceTypeEnum); |
| | | } |
| | | } |
| | | else if (Rgv.messageType == 10) |
| | | { |
| | | if (Rgv.content.status == 2) TaskFeedback(task, 1); |
| | | if (Rgv.content.status == 4) |
| | | { |
| | | if (task.TaskType == TaskTypeEnum.CPMoveInventory.ObjToInt()) |
| | | //ç§»åº |
| | | if (task.TaskType == TaskTypeEnum.CPMoveInventory.ObjToInt() && Rgv.messageType == 10 && Rgv.content.status == 4) |
| | | { |
| | | deviceName += "ç§»åº"; |
| | | WMSMoveLocationFeedback wMSMoveLocationFeedback = new WMSMoveLocationFeedback() |
| | |
| | | BaseDal.DeleteAndMoveIntoHty(task, OperateTypeEnum.èªå¨å®æ); |
| | | } |
| | | } |
| | | else if (task.TaskType == (int)TaskTypeEnum.CPInbound && task.TaskState == (int)TaskStatusEnum.TakeFinish) |
| | | else |
| | | { |
| | | //ç«å°å°è´¨æ£å° |
| | | if (Rgv.messageType == 72)//å°è½¦é¡¶èµ·è´§ç© |
| | | { |
| | | if (task.TaskType == (int)TaskTypeEnum.CPInbound && task.TaskState == (int)TaskStatusEnum.Execut) |
| | | { |
| | | task.TaskState = (int)TaskStatusEnum.WaiCheckShape; |
| | | //BaseDal.UpdateData(task);//ç»è´¨æ£é¨åå
¥å¯å¨ä¿¡å· |
| | | var device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == "F1") as OtherDevice; |
| | | if (device == null) task.ExceptionMessage = "æªæ¾å°1楼质æ£é¨è®¾å¤ä¿¡æ¯"; |
| | | else |
| | | { |
| | | if (device.IsConnected) |
| | | device.SetValue(QualityInspectionCommandEnum.StartqualityInspection, true, task.SourceAddress); |
| | | else |
| | | task.ExceptionMessage = "1楼质æ£é¨è®¾å¤è¿æ¥å¤±è´¥"; |
| | | } |
| | | TaskFeedback(task, 4); |
| | | } |
| | | else |
| | | { |
| | | //è¿éåºåºï¼è¿ä¸ªæ¥å£ä¸ä¹è¿åç»äºwmsç¶æ |
| | | TaskFromCompleted(task, deviceTypeEnum); |
| | | } |
| | | } |
| | | else if (Rgv.messageType == 10)//è´¨æ£å°å°ç®æ è´§ä½ |
| | | { |
| | | if (Rgv.content.status == 2) TaskFeedback(task, 1); |
| | | if (Rgv.content.status == 4) |
| | | { |
| | | if (task.TaskType == (int)TaskTypeEnum.CPInbound && task.TaskState == (int)TaskStatusEnum.TakeFinish) |
| | | { |
| | | if (!string.IsNullOrEmpty(task.ExceptionMessage)) task.TaskState = TaskStatusEnum.CheckShapeingNG.ObjToInt(); |
| | | else task.TaskState = (int)TaskStatusEnum.CheckShapeing; |
| | |
| | | else |
| | | TaskCompleted(task, deviceTypeEnum); |
| | | } |
| | | else if (task.TaskType == (int)TaskTypeEnum.CPOutbound || task.TaskType == (int)TaskTypeEnum.CPMoveInventory)//åºåºãç§»åºå®æ |
| | | else if (task.TaskType == (int)TaskTypeEnum.CPOutbound )//åºåºå®æ |
| | | { |
| | | TaskCompleted(task, deviceTypeEnum); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | content.OK(); |
| | | } |
| | | catch (Exception ex) |
| | |
| | | deviceName = "åå车"; |
| | | if (dt_Task.RGVTaskId == 0) |
| | | { |
| | | if (dt_Task.TaskType == TaskTypeEnum.CPOutbound.ObjToInt()&&dt_Task.TaskState==TaskStatusEnum.RGV_WaitSend.ObjToInt()) |
| | | { |
| | | //ä¿®æ¹åºä½ç¶æ |
| | | var rgvlocaiion = _rGVLocationInfoService.Repository.QueryFirst(x => x.LocationCode == dt_Task.SourceAddress); |
| | | rgvlocaiion.LocationStatus = LocationStatusEnum.InStock.ObjToInt(); //å°åºä½ç¶ææ¹ä¸ºæè´§ |
| | | } |
| | | BaseDal.DeleteAndMoveIntoHty(dt_Task, OperateTypeEnum.èªå¨å é¤); |
| | | content.OK($"åæ¶{dt_Task.WMSTaskNum}任塿å", dt_Task); |
| | | } |