| | |
| | | using WIDESEA_Common.Log; |
| | | using WIDESEAWCS_Common.TaskEnum; |
| | | using WIDESEAWCS_Core; |
| | | using WIDESEAWCS_Core.BaseRepository; |
| | | using WIDESEAWCS_Core.BaseServices; |
| | | using WIDESEAWCS_Core.Enums; |
| | | using WIDESEAWCS_Core.Utilities; |
| | | using WIDESEAWCS_DTO; |
| | | using WIDESEAWCS_DTO.Enum; |
| | | using WIDESEAWCS_DTO.TaskInfo; |
| | | using WIDESEAWCS_ISystemServices; |
| | |
| | | using WIDESEAWCS_QuartzJob.Models; |
| | | using WIDESEAWCS_QuartzJob.Repository; |
| | | using WIDESEAWCS_QuartzJob.Service; |
| | | using WIDESEAWCS_TaskInfoRepository; |
| | | using static Microsoft.IO.RecyclableMemoryStreamManager; |
| | | using static System.Net.Mime.MediaTypeNames; |
| | | |
| | |
| | | private readonly IMapper _mapper; |
| | | private readonly IEquipmentStatusService _equipmentStatus; |
| | | private readonly IAgvStationService _gvStationService; |
| | | private readonly IRepository<AbnormalTask> _abnormalTask; |
| | | |
| | | |
| | | private Dictionary<string, OrderByType> _taskOrderBy = new() |
| | |
| | | |
| | | public List<int> TaskOutboundTypes => typeof(TaskOutboundTypeEnum).GetEnumIndexList(); |
| | | |
| | | public TaskService(ITaskRepository BaseDal, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, ITaskExecuteDetailRepository taskExecuteDetailRepository, IMapper mapper, ITask_HtyService task_HtyService, IRouterRepository routerRepository, IEquipmentStatusService equipmentStatus, IAgvStationService agvStationService) : base(BaseDal) |
| | | public TaskService(ITaskRepository BaseDal, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, ITaskExecuteDetailRepository taskExecuteDetailRepository, IMapper mapper, ITask_HtyService task_HtyService, IRouterRepository routerRepository, IEquipmentStatusService equipmentStatus, IAgvStationService agvStationService, IRepository<AbnormalTask> abnormalTask) : base(BaseDal) |
| | | { |
| | | _routerService = routerService; |
| | | _taskExecuteDetailService = taskExecuteDetailService; |
| | |
| | | _routerRepository = routerRepository; |
| | | _equipmentStatus = equipmentStatus; |
| | | _gvStationService = agvStationService; |
| | | _abnormalTask = abnormalTask; |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | if (item.type == 1) //å
¥åº |
| | | { |
| | | Dt_Task dt_Task = new Dt_Task(); |
| | | dt_Task.TaskNum = item.taskNo; |
| | | dt_Task.TaskNum = BaseDal.GetTaskNo().Result; |
| | | dt_Task.PalletCode = item.containerNo; //ææ |
| | | dt_Task.Roadway = "RGV101"; |
| | | dt_Task.TaskType = (int)TaskInboundTypeEnum.Inbound; |
| | |
| | | dt_Task.NextAddress = ""; //ç®åææ |
| | | dt_Task.Grade = item.priority; |
| | | dt_Task.WMSId = 0; //ç®åææ |
| | | dt_Task.LJTaskNum= item.taskNo; |
| | | BaseDal.AddData(dt_Task); |
| | | content.code = 0; |
| | | |
| | |
| | | AGVStation gVStation = _gvStationService.Corridorequipment(roadway); |
| | | |
| | | Dt_Task dt_Task = new Dt_Task(); |
| | | dt_Task.TaskNum = item.taskNo; |
| | | dt_Task.TaskNum = BaseDal.GetTaskNo().Result; |
| | | dt_Task.PalletCode = item.containerNo; //ææ |
| | | dt_Task.Roadway = roadway; |
| | | dt_Task.TaskType = (int)TaskOutboundTypeEnum.Outbound; |
| | |
| | | dt_Task.NextAddress = gVStation.ZicheMotherinlaw.ToString(); //ç®åææ |
| | | dt_Task.Grade = item.priority; |
| | | dt_Task.WMSId = 0; //ç®åææ |
| | | dt_Task.LJTaskNum = item.taskNo; |
| | | BaseDal.AddData(dt_Task); |
| | | content.code = 0; |
| | | |
| | |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && x.TaskState == (int)TaskOutStatusEnum.RGV_OutZicheFinish && x.RGVTaskType == (int)RGVTaskTypeEnum.Placing, TaskOrderBy); |
| | | } |
| | | |
| | | public Dt_Task ChacheGetFinhuoTask(string DeviceCode) |
| | | { |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && x.TaskState == (int)TaskOutStatusEnum.RGV_OutPickupExecuting, TaskOrderBy); |
| | | } |
| | | |
| | | public Dt_Task GetOutkouFinhuoTask(string DeviceCode, string curraderr) |
| | | { |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && x.TaskState == (int)TaskOutStatusEnum.RGV_OutPickupFinish && x.RGVTaskType == (int)RGVTaskTypeEnum.Placing && x.NextAddress != "", TaskOrderBy); |
| | |
| | | /// <param name="type">1ï¼æ¥æ¾éè¦åè´§çä»»å¡</param> |
| | | public Dt_Task PickupWarehouse(string DeviceCode) |
| | | { |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && x.TaskState == (int)TaskInStatusEnum.RGV_InNew && x.RGVTaskType == (int)RGVTaskTypeEnum.PickingUp, TaskOrderBy); |
| | | Dt_Task _Task = BaseDal.QueryFirst(x => x.Roadway == DeviceCode && (x.TaskState == (int)TaskInStatusEnum.Inexcepjxz || x.TaskState == (int)TaskInStatusEnum.InAbnormalFinish || x.TaskState == (int)TaskInStatusEnum.InexceptionalSelection || x.TaskState == (int)TaskInStatusEnum.InFinish_exceptionalSelection |
| | | || x.TaskState == (int)TaskInStatusEnum.InAbnormalFinish || x.TaskState == (int)TaskInStatusEnum.RGV_InPickupExecuting || x.TaskState == (int)TaskInStatusEnum.RGV_InPickupFinish || x.TaskState == (int)TaskInStatusEnum.RGV_InReleaseExecuting || x.TaskState == (int)TaskInStatusEnum.RGV_InReleaseFinish)); |
| | | if (_Task == null) |
| | | { |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && x.TaskState == (int)TaskInStatusEnum.RGV_InNew && x.RGVTaskType == (int)RGVTaskTypeEnum.PickingUp, TaskOrderBy); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | |
| | |
| | | /// <param name="type">1ï¼æ¥æ¾éè¦åè´§çä»»å¡ 2ï¼æ¥æ¾éè¦æ¾è´§çä»»å¡</param> |
| | | public Dt_Task GetInkouFinhuoTask(string DeviceCode) |
| | | { |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && x.NextAddress != "" && x.TaskState == (int)TaskInStatusEnum.RGV_InPickupFinish && x.RGVTaskType == (int)RGVTaskTypeEnum.Placing, TaskOrderBy); |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && x.NextAddress != "" && (x.TaskState == (int)TaskInStatusEnum.RGV_InPickupFinish || x.TaskState == (int)TaskInStatusEnum.InexceptionalSelection) && x.RGVTaskType == (int)RGVTaskTypeEnum.Placing, TaskOrderBy); |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// <returns></returns> |
| | | public Dt_Task MothermachinemovementTask2(string DeviceCode) |
| | | { |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && (x.TaskState == (int)TaskInStatusEnum.RGV_InZicheReleaseFinish || x.TaskState == (int)TaskInStatusEnum.RGV_InMothercarExecuting && x.RGVTaskType == (int)RGVTaskTypeEnum.TravelingOnly), TaskOrderBy); |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && (x.TaskState == (int)TaskInStatusEnum.RGV_InZicheReleaseFinish || x.TaskState == (int)TaskInStatusEnum.RGV_InMothercarExecuting || x.TaskState == (int)TaskInStatusEnum.RGV_InMothercarFinish || x.TaskState == (int)TaskInStatusEnum.SC_InExecuting || x.TaskState == (int)TaskInStatusEnum.InFinish), TaskOrderBy); |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// </summary> |
| | | public Dt_Task MothermacTask(string DeviceCode) |
| | | { |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && (x.TaskState == (int)TaskInStatusEnum.RGV_InZicheReleaseFinish || x.TaskState == (int)TaskInStatusEnum.RGV_InMothercarExecuting || x.TaskState == (int)TaskInStatusEnum.RGV_InMothercarFinish || x.TaskState == (int)TaskInStatusEnum.SC_InExecuting || x.TaskState == (int)TaskInStatusEnum.InFinish && x.RGVTaskType == (int)RGVTaskTypeEnum.TravelingOnly), TaskOrderBy); |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && (x.TaskState == (int)TaskInStatusEnum.RGV_InZicheReleaseFinish || x.TaskState == (int)TaskInStatusEnum.RGV_InMothercarExecuting || x.TaskState == (int)TaskInStatusEnum.RGV_InMothercarFinish || x.TaskState == (int)TaskInStatusEnum.SC_InExecuting || x.TaskState == (int)TaskInStatusEnum.InFinish ), TaskOrderBy); |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// <param name="DeviceCode"></param> |
| | | public Dt_Task ViceChariotPickupTask2(string DeviceCode) |
| | | { |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && (x.TaskState == (int)TaskInStatusEnum.RGV_InReleaseFinish || x.TaskState == (int)TaskInStatusEnum.RGV_InZicheExecuting || x.TaskState == (int)TaskInStatusEnum.RGV_InZicheFinish || x.TaskState == (int)TaskInStatusEnum.RGV_InZicheReleaseExecuting || x.TaskState == (int)TaskInStatusEnum.RGV_InZicheReleaseFinish) && x.RGVTaskType == (int)RGVTaskTypeEnum.PickingUp, TaskOrderBy); |
| | | return BaseDal.QueryFirst(x => x.Roadway == DeviceCode && (x.TaskState == (int)TaskInStatusEnum.RGV_InReleaseFinish || x.TaskState == (int)TaskInStatusEnum.RGV_InZicheExecuting || x.TaskState == (int)TaskInStatusEnum.RGV_InZicheFinish || x.TaskState == (int)TaskInStatusEnum.RGV_InZicheReleaseExecuting || x.TaskState == (int)TaskInStatusEnum.RGV_InZicheReleaseFinish), TaskOrderBy); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | |
| | | { |
| | | dt_Task = BaseDal.QueryFirst(x => x.TaskType == (int)TaskInboundTypeEnum.Inbound && x.TaskState== (int)TaskInStatusEnum.InexceptionalSelection); |
| | | |
| | | if (dt_Task == null) return webResponse.Error("æªæ¾å°éè¦ä¿®æ¹çä»»å¡ï¼æ éä¿®æ¹"); |
| | | dt_Task.NextAddress = NextAddress; |
| | | BaseDal.UpdateData(dt_Task); |
| | | return webResponse.OK("任塿¾è´§å°åä¿®æ¹æå"); |
| | | } |
| | | else |
| | | { |
| | | dt_Task = BaseDal.QueryFirst(x => x.TaskType == (int)TaskOutboundTypeEnum.Outbound && x.NextAddress == ""); |
| | | dt_Task = BaseDal.QueryFirst(x => x.TaskType == (int)TaskOutboundTypeEnum.Outbound && x.NextAddress == ""&&x.TaskState == (int)TaskOutStatusEnum.RGV_OutPickupFinish); |
| | | if (dt_Task == null) return webResponse.Error("æªæ¾å°éè¦ä¿®æ¹çä»»å¡ï¼æ éä¿®æ¹"); |
| | | dt_Task.NextAddress = NextAddress; |
| | | BaseDal.UpdateData(dt_Task); |
| | | return webResponse.OK("任塿¾è´§å°åä¿®æ¹æå"); |
| | | } |
| | | if (dt_Task == null) return webResponse.Error("æªæ¾å°éè¦ä¿®æ¹çä»»å¡ï¼æ éä¿®æ¹"); |
| | | dt_Task.NextAddress = NextAddress; |
| | | BaseDal.UpdateData(dt_Task); |
| | | return webResponse.OK("任塿¾è´§å°åä¿®æ¹æå"); |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | try |
| | | { |
| | | int oldState = task.TaskState; |
| | | if (task.TaskType == (int)TaskInboundTypeEnum.Inbound) |
| | | if (task.TaskType == (int)TaskInboundTypeEnum.Inbound && task.TaskState != (int)TaskInStatusEnum.InexceptionalSelection) |
| | | { |
| | | if (task.TaskState >= (int)TaskInStatusEnum.InFinish) |
| | | { |
| | |
| | | int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskInStatusEnum>(); |
| | | |
| | | task.TaskState = nextStatus; |
| | | /*if (task.TaskState == (int)TaskInStatusEnum.RGV_InPickupExecuting) //å½ä¸åå
¥åºå£åè´§ä¸ï¼åè°åå
°åæ¥å£ |
| | | { |
| | | TaskResultIn(task.TaskNum.ToString(),"",1,""); |
| | | }*/ |
| | | |
| | | } |
| | | else if (task.TaskType == (int)TaskOutboundTypeEnum.Outbound) |
| | | { |
| | |
| | | } |
| | | |
| | | int nextStatus = task.TaskState.GetNextNotCompletedStatus<TaskOutStatusEnum>(); |
| | | |
| | | task.TaskState = nextStatus; |
| | | } |
| | | else if (task.TaskType == (int)TaskInboundTypeEnum.Inbound && task.TaskState== (int)TaskInStatusEnum.InexceptionalSelection) |
| | | { |
| | | int nextStatus = (int)TaskInStatusEnum.Inexcepjxz; |
| | | |
| | | task.TaskState = nextStatus; |
| | | } |
| | |
| | | |
| | | try |
| | | { |
| | | if (task.TaskType == (int)TaskInboundTypeEnum.Inbound) //æ£å¸¸æµç¨ |
| | | if (task.TaskType == (int)TaskInboundTypeEnum.Inbound ) //æ£å¸¸æµç¨ |
| | | { |
| | | HandleInboundTask(task); |
| | | } |
| | | else if (task.TaskType == (int)TaskInboundTypeEnum.Inbound && (task.NextAddress == "1001" || task.NextAddress == "1002")) |
| | | { |
| | | task.TaskState = (int)TaskInStatusEnum.RGV_InMothercarFinish; |
| | | if(task.NextAddress == "1001" || task.NextAddress == "1002") |
| | | { |
| | | task.TaskState = (int)TaskInStatusEnum.InFinish_exceptionalSelection; |
| | | } |
| | | else |
| | | { |
| | | HandleInboundTask(task); |
| | | } |
| | | |
| | | } |
| | | else if (task.TaskType == (int)TaskOutboundTypeEnum.Outbound) |
| | | { |
| | |
| | | : $"ç³»ç»èªå¨æµç¨ï¼ä»»å¡ç¶æä»ã{oldstaterem}ã转å°ã{afterstaterem}ã"); |
| | | |
| | | |
| | | if (task.TaskState == (int)TaskInStatusEnum.RGV_InMothercarFinish || task.TaskState == (int)TaskOutStatusEnum.OutFinish) //å
¥åºä»»å¡å®æ |
| | | if (task.TaskState == (int)TaskInStatusEnum.RGV_InMothercarFinish || task.TaskState == (int)TaskOutStatusEnum.OutFinish || task.TaskState == (int)TaskInStatusEnum.InFinish_exceptionalSelection) //å
¥åºä»»å¡å®æ |
| | | { |
| | | |
| | | if (task.NextAddress == "1001" || task.NextAddress == "1002") |
| | | { |
| | | AbnormalTask abnormalTask = _abnormalTask.QueryFirst(x=> x.TaskNum == task.TaskNum); |
| | | |
| | | //å¼å¸¸æé¤ä»»å¡æ¶ï¼å¼å¸¸ä¸æ¥ |
| | | TaskResultIn(task.LJTaskNum.ToString(), task.NextAddress, 3,abnormalTask.ErrorContent); |
| | | AutomaticTaskCompleted(task); //ä»»å¡å®æ |
| | | BaseDal.DeleteData(task); |
| | | } |
| | | else |
| | | { |
| | | //æ£å¸¸ä»»å¡ï¼æ£å¸¸ä¸æ¥ |
| | | TaskResultIn(task.TaskNum.ToString(), "", 2, ""); |
| | | |
| | | /*AutomaticTaskCompleted(task); //ä»»å¡å®æ |
| | | BaseDal.DeleteData(task);*/ |
| | | if(task.TaskType == (int)TaskInboundTypeEnum.Inbound && task.NextAddress != "1001" && task.NextAddress != "1002") |
| | | { |
| | | TaskResultIn(task.LJTaskNum.ToString(), "", 2, ""); |
| | | } |
| | | else if (task.TaskType == (int)TaskOutboundTypeEnum.Outbound) |
| | | { |
| | | TaskResultOut(task.LJTaskNum.ToString(), task.NextAddress, 2, ""); |
| | | AutomaticTaskCompleted(task); //ä»»å¡å®æ |
| | | BaseDal.DeleteData(task); |
| | | } |
| | | } |
| | | |
| | | } |
| | |
| | | } |
| | | else if (item.type == "put") //æ¾è´§ |
| | | { |
| | | /* if (item.status == 2) //å åæºæ§è¡ä¸ |
| | | /* if (item.status == 2) //å åæºæ§è¡ä¸ |
| | | { |
| | | Dt_Task dt_Task = BaseDal.QueryFirst(x => x.TaskType == (int)TaskOutboundTypeEnum.Outbound && x.TaskState == (int)TaskOutStatusEnum.OutNewLj && x.Roadway == item.rgvTag); |
| | | if (dt_Task != null) |
| | |
| | | _task_HtyService.AddTaskHty(dt_Task); |
| | | BaseDal.DeleteData(dt_Task); |
| | | expoReverse.code = 0; |
| | | WriteLog.Write_Log("ä»»å¡åæ¶ä¿¡æ¯", "ä»»å¡åæ¶", "ä¿¡æ¯", $"ä»»å¡å·ï¼{dt_Task.TaskNum}ï¼å·²åæ¶"); |
| | | WriteLog.Write_Log("å
°åè°åä»»å¡åæ¶ä¿¡æ¯", "ä»»å¡åæ¶", "ä¿¡æ¯", $"ä»»å¡å·ï¼{dt_Task.TaskNum}ï¼å·²åæ¶"); |
| | | } |
| | | else |
| | | { |
| | |
| | | StkRunStatusReturns LJReturns = HttpHelper.Post<StkRunStatusReturns>(urlLanJianWCSAPI + LanJiantaskResult, reception, "ä»»å¡å馿¥å£"); |
| | | if (LJReturns.code == 0) |
| | | { |
| | | WriteLog.Write_Log("å
¥åºä»»å¡ä¸ä¼ æ
åµ", "æ£å¸¸ä¸ä¼ ", "å
容信æ¯", $"ä»»å¡ç¼å·ï¼{taskNo},ç®æ å°åï¼{finalAddress}ï¼ä¸ä¼ ç¶æï¼{status}ï¼ä¿¡æ¯å
容ï¼{remark}"); |
| | | responseContent.OK("ä¸ä¼ æå"); |
| | | } |
| | | else |
| | | { |
| | | responseContent.OK("ä¸ä¼ 失败ï¼åå ï¼" + LJReturns.msg); |
| | | WriteLog.Write_Log("å
¥åºä»»å¡ä¸ä¼ æ
åµ", "ä¸ä¼ 失败", "å
容信æ¯", $"ä»»å¡ç¼å·ï¼{taskNo},ç®æ å°åï¼{finalAddress}ï¼ä¸ä¼ ç¶æï¼{status}ï¼ä¿¡æ¯å
容ï¼{remark}=====ãä¸ä¼ 失败ï¼åå ï¼{LJReturns.msg}"); |
| | | responseContent.Error("ä¸ä¼ 失败ï¼åå ï¼" + LJReturns.msg); |
| | | } |
| | | // å建并èµå¼ |
| | | return responseContent; |
| | |
| | | StkRunStatusReturns LJReturns = HttpHelper.Post<StkRunStatusReturns>(urlLanJianWCSAPI + LanJiantaskResult, reception, "ä»»å¡å馿¥å£"); |
| | | if (LJReturns.code == 0) |
| | | { |
| | | WriteLog.Write_Log("åºåºä»»å¡ä¸ä¼ æ
åµ", "æ£å¸¸ä¸ä¼ ", "å
容信æ¯", $"ä»»å¡ç¼å·ï¼{taskNo},ç®æ å°åï¼{finalAddress}ï¼ä¸ä¼ ç¶æï¼{status}ï¼ä¿¡æ¯å
容ï¼{remark}"); |
| | | responseContent.OK("ä¸ä¼ æå"); |
| | | } |
| | | else |
| | | { |
| | | WriteLog.Write_Log("åºåºä»»å¡ä¸ä¼ æ
åµ", "ä¸ä¼ 失败", "å
容信æ¯", $"ä»»å¡ç¼å·ï¼{taskNo},ç®æ å°åï¼{finalAddress}ï¼ä¸ä¼ ç¶æï¼{status}ï¼ä¿¡æ¯å
容ï¼{remark}=====ãä¸ä¼ 失败ï¼åå ï¼{LJReturns.msg}"); |
| | | responseContent.OK("ä¸ä¼ 失败ï¼åå ï¼" + LJReturns.msg); |
| | | } |
| | | // å建并èµå¼ |
| | |
| | | return WebResponseContent.Instance.Error($"{Remark}失败ï¼"); |
| | | } |
| | | |
| | | if (dt_task.NextAddress == "1001" || dt_task.NextAddress == "1002") |
| | | { |
| | | //å¼å¸¸æé¤ä»»å¡æ¶ï¼å¼å¸¸ä¸æ¥ |
| | | TaskResultIn(dt_task.LJTaskNum.ToString(), dt_task.NextAddress, 3, "æå¨å®æ"); |
| | | } |
| | | else |
| | | { |
| | | |
| | | if (dt_task.TaskType == (int)TaskInboundTypeEnum.Inbound && dt_task.NextAddress != "1001" && dt_task.NextAddress != "1002") |
| | | { |
| | | TaskResultIn(dt_task.LJTaskNum.ToString(), "", 2, "æå¨å®æ"); |
| | | } |
| | | else if(dt_task.TaskType == (int)TaskOutboundTypeEnum.Outbound) |
| | | { |
| | | TaskResultOut(dt_task.LJTaskNum.ToString(), dt_task.NextAddress, 2, "æå¨å®æ"); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | var deletetask = BaseDal.DeleteData(dt_task); |
| | | if (deletetask == false) |
| | | { |
| | |
| | | db.Ado.RollbackTran(); |
| | | return WebResponseContent.Instance.Error("åæ¶ä»»å¡å¤±è´¥ï¼"); |
| | | } |
| | | /*int oldState = dt_task.TaskState; |
| | | _taskExecuteDetailService.AddTaskExecuteDetail( |
| | | dt_task.TaskId, |
| | | $"èªå¨ä»»å¡ç¶æä»ã{oldState}ãè¿å
¥å°ã{dt_Task_Hty.TaskState}ã" |
| | | );*/ |
| | | |
| | | if (dt_task.NextAddress == "1001" || dt_task.NextAddress == "1002") |
| | | { |
| | | //å¼å¸¸æé¤ä»»å¡æ¶ï¼å¼å¸¸ä¸æ¥ |
| | | TaskResultIn(dt_task.LJTaskNum.ToString(), dt_task.NextAddress, 3, "ä»»å¡åæ¶"); |
| | | } |
| | | else |
| | | { |
| | | |
| | | if (dt_task.TaskType == (int)TaskInboundTypeEnum.Inbound) |
| | | { |
| | | TaskResultIn(dt_task.LJTaskNum.ToString(), "", 3, "ä»»å¡åæ¶"); |
| | | } |
| | | else |
| | | { |
| | | TaskResultOut(dt_task.LJTaskNum.ToString(), dt_task.NextAddress, 3, "ä»»å¡åæ¶"); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | bool deletetask = BaseDal.DeleteData(dt_task); |
| | | if (!deletetask) |
| | |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// ä»»å¡å¼å¸¸å®æï¼åå
¥å¼å¸¸ä¿¡æ¯åï¼æ è®°å¼å¸¸å®æï¼ |
| | | /// </summary> |
| | | public WebResponseContent AbnormalComplete(AbnormalCompleteDTO completeDTO) |
| | | { |
| | | try |
| | | { |
| | | Dt_Task dt_task = BaseDal.QueryData().Where(x => x.TaskNum == completeDTO.taskNum).FirstOrDefault(); |
| | | if (dt_task == null) return WebResponseContent.Instance.Error($"æªæ¥è¯¢å°ä»»å¡"); |
| | | dt_task.NextAddress = completeDTO.station; |
| | | dt_task.TargetAddress = completeDTO.station; |
| | | |
| | | //å¼å¸¸æé¤ä»»å¡æ¶ï¼å¼å¸¸ä¸æ¥ |
| | | WebResponseContent webResponse = TaskResultIn(dt_task.LJTaskNum.ToString(), completeDTO.station, 3, completeDTO.message); |
| | | if (webResponse.Status == false) |
| | | { |
| | | return webResponse; |
| | | } |
| | | |
| | | var db = BaseDal.Db as SqlSugarClient; |
| | | |
| | | db.Ado.BeginTran(); |
| | | BaseDal.DeleteData(dt_task); |
| | | var res = _task_HtyService.AddData(new Dt_Task_hty |
| | | { |
| | | TaskNum = dt_task.TaskNum, |
| | | PalletCode = dt_task.PalletCode, |
| | | Roadway = dt_task.Roadway, |
| | | TaskType = dt_task.TaskType, |
| | | TaskState = dt_task.TaskState, |
| | | SourceAddress = dt_task.SourceAddress, |
| | | TargetAddress = dt_task.TargetAddress, |
| | | CurrentAddress = dt_task.CurrentAddress, |
| | | NextAddress = dt_task.NextAddress, |
| | | WMSId = dt_task.WMSId, |
| | | Dispatchertime = dt_task.Dispatchertime, |
| | | Remark = "人工æå¨å¼å¸¸æåº", |
| | | Creater = App.User.UserName, |
| | | CreateDate = DateTime.Now, |
| | | RGVTaskType = dt_task.RGVTaskType, |
| | | RGVCurrentexecution = dt_task.RGVCurrentexecution |
| | | }); |
| | | //æäº¤äºå¡ |
| | | db.Ado.CommitTran(); |
| | | return WebResponseContent.Instance.OK("人工æå¨æåºæå"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return WebResponseContent.Instance.Error(ex.ToString()); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | } |