111
zhanghonglin
5 天以前 b4fe67964e65428d8be84e6aed1a48b864620972
ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -26,6 +26,9 @@
        private readonly IRepository<Dt_Task_Hty> _Task_HtyRepository;
        private readonly IUnitOfWorkManage _unitOfWorkManage;
        private static int kkk = 1;
        private static int ttt = 1;
        public TaskService(IRepository<Dt_Task> BaseDal, IRepository<Dt_StationManger> StationMangerRepository, IRepository<Dt_Task_Hty> Task_HtyRepository, IUnitOfWorkManage unitOfWorkManage) : base(BaseDal)
        {
            _StationMangerRepository = StationMangerRepository;
@@ -50,11 +53,22 @@
            //获取任务
            if (InorOuts.Equals("In"))
            {
                task = BaseDal.QueryData(v => ( v.TaskType == (int)TaskTypeEnum.InEmpty || v.TaskType == (int)TaskTypeEnum.Infull) && v.TaskState == (int)TaskStatusEnum.InNew).OrderByDescending(v => v.Grade).First();
                task = BaseDal.QueryFirst(v => (v.TaskType == (int)TaskTypeEnum.InEmpty || v.TaskType == (int)TaskTypeEnum.Infull) && v.TaskState == (int)TaskStatusEnum.InNew);
            }
            else if (InorOuts.Equals("Out"))
            {
                task = BaseDal.QueryData(v => (v.TaskType == (int)TaskTypeEnum.OutDirect || v.TaskType == (int)TaskTypeEnum.OutEmpty || v.TaskType == (int)TaskTypeEnum.Outfull) && v.TaskState == (int)TaskStatusEnum.OutNew).OrderByDescending(v => v.Grade).First();
                //一满桶出空桶出
                if (kkk == 1)
                {
                    task = BaseDal.QueryFirst(v => (v.TaskType == (int)TaskTypeEnum.OutEmpty) && v.TaskState == (int)TaskStatusEnum.OutNew);
                    kkk = 2;
                }
                else if (kkk == 2)
                {
                    task = BaseDal.QueryFirst(v => (v.TaskType == (int)TaskTypeEnum.OutDirect || v.TaskType == (int)TaskTypeEnum.Outfull) && v.TaskState == (int)TaskStatusEnum.OutNew);
                    kkk = 1;
                }
            }
            return task;
        }
@@ -80,8 +94,12 @@
        {
            Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == TaskNum);
            if (task == null)
            {
                return null;
            }
            //入库
            if (R_TaskPhases == 4 && (task.TaskType == (int)TaskTypeEnum.InEmpty|| task.TaskType == (int)TaskTypeEnum.Infull))
            if (R_TaskPhases == 4 && (task.TaskType == (int)TaskTypeEnum.InEmpty || task.TaskType == (int)TaskTypeEnum.Infull))
            {
                task.TaskState = (int)TaskStatusEnum.Task_Put;
            }
@@ -131,7 +149,7 @@
                        taskhty.Remark = task.Remark;
                        taskhty.TaskType = task.TaskType;
                        taskhty.TaskState = (int)TaskStatusEnum.Task_Finish;
                        //开始数据库事务
                        _unitOfWorkManage.BeginTran();
                        //修改货位状态和创建库存
@@ -292,7 +310,7 @@
            catch (Exception ex)
            {
                //content = WebResponseContent.Instance.Error($"任务完成异常,任务号:{TaskNum},{ex}");
                LogLock.OutLogAOP("接口日志", new string[] { "任务完成异常,任务号:", TaskNum+"|"+ex.ToString() });
                LogLock.OutLogAOP("接口日志", new string[] { "任务完成异常,任务号:", TaskNum + "|" + ex.ToString() });
            }
            return content;
        }