From 0fb0f17319ecf71d66b96a6acfd07f754be9443e Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期四, 24 十月 2024 13:44:38 +0800 Subject: [PATCH] WCS添加穿梭车信息表,修改任务信息表 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | 74 ++++++++++++++++++++++++++++++++++-- 1 files changed, 69 insertions(+), 5 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" index 084be31..989566b 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" @@ -26,9 +26,9 @@ using System.Reflection; using System.Text; using System.Threading.Tasks; +using WIDESEAWCS_Common.TaskEnum; using WIDESEAWCS_Core; using WIDESEAWCS_Core.BaseServices; -using WIDESEAWCS_Core.Enums; using WIDESEAWCS_DTO.TaskInfo; using WIDESEAWCS_ITaskInfoRepository; using WIDESEAWCS_ITaskInfoService; @@ -120,6 +120,8 @@ } return content; } + + /// <summary> /// 鏍规嵁鎵樼洏鍙枫�佽捣濮嬪湴鍧�鍚慦MS璇锋眰浠诲姟 @@ -213,9 +215,9 @@ public Dt_Task QueryStackerCraneTask(string deviceNo, string currentAddress = "") { if (string.IsNullOrEmpty(currentAddress)) - return BaseDal.QueryFirst(x => x.Roadway == deviceNo && (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.Line_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew), TaskOrderBy); + return BaseDal.QueryFirst(x => x.Roadway == deviceNo && (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.Line_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.Car_OutFinish), TaskOrderBy); else - return BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.CurrentAddress == currentAddress && (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.Line_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew), TaskOrderBy); + return BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.CurrentAddress == currentAddress && (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.Line_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.Car_OutFinish), TaskOrderBy); } /// <summary> @@ -241,9 +243,9 @@ public Dt_Task QueryStackerCraneOutTask(string deviceNo, string currentAddress = "") { if (string.IsNullOrEmpty(currentAddress)) - return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew, TaskOrderBy); + return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.Car_OutFinish, TaskOrderBy); else - return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew && x.CurrentAddress == currentAddress, TaskOrderBy); + return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.Car_OutFinish && x.CurrentAddress == currentAddress, TaskOrderBy); } /// <summary> @@ -593,5 +595,67 @@ } return content; } + + public Dt_Task GetTaskInfo(int taskNum) + { + return BaseDal.QueryFirst(x => x.TaskNum == taskNum); + } + + public Dt_Task GetTaskState(int TaskState, int TaskType) + { + Dt_Task task = null; + if (TaskState > 0 && TaskType > 0) + task = BaseDal.QueryFirst(x => x.TaskState == TaskState && x.TaskType == TaskType); + else if (TaskState > 0) + task = BaseDal.QueryFirst(x => x.TaskState == TaskState); + else if (TaskType > 0) + task = BaseDal.QueryFirst(x => x.TaskType == TaskType); + return task; + } + + /// <summary> + /// 鏌ヨ绌挎杞﹀嚭鍏ュ簱浠诲姟 + /// </summary> + /// <param name="deviceNo"></param> + /// <param name="currentAddress"></param> + /// <returns></returns> + public Dt_Task QueryShuttleCarTask(string deviceNo, string currentAddress = "") + { + if (string.IsNullOrEmpty(currentAddress)) + return BaseDal.QueryFirst(x => x.ShuttleCarCode == deviceNo && (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.SC_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew), TaskOrderBy); + else + return BaseDal.QueryFirst(x => x.ShuttleCarCode == deviceNo && x.CurrentAddress == currentAddress && (TaskInboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskInStatusEnum.SC_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskState == (int)TaskOutStatusEnum.OutNew), TaskOrderBy); + } + /// <summary> + /// 娣诲姞绉昏溅浠诲姟 + /// </summary> + /// <param name="SourceAddress">璧风偣</param> + /// <param name="TargetAddress">缁堢偣</param> + /// <param name="ShuttleCarCode">绌挎杞﹀彿</param> + /// <returns></returns> + /// <exception cref="NotImplementedException"></exception> + public WebResponseContent AddRelocationCarTask(string SourceAddress, string TargetAddress, string ShuttleCarCode = "", string remark = "") + { + #region 鍒涘缓鍫嗗灈鏈虹Щ杞︿换鍔� + Dt_Task dt_Task = new Dt_Task() + { + TaskNum = Convert.ToInt32(DateTime.Now.ToString("HHmmss")), + Grade = 2, + Roadway = "SC01", + TaskType = (int)TaskOtherTypeEnum.RelocationCar, + SourceAddress = SourceAddress, + TargetAddress = TargetAddress, + CurrentAddress = "", + NextAddress = TargetAddress, + CreateDate = DateTime.Now, + Creater = "WCS", + TaskState = (int)TaskCarStatusEnum.CarNew, + ShuttleCarCode = ShuttleCarCode, + WMSId = 0, + Remark = remark + }; + return AddData(dt_Task); + #endregion + } } } -- Gitblit v1.9.3