1
dengjunjie
2026-01-29 79949594d0ce05704353369e755dbc771a96739f
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -18,12 +18,14 @@
using AutoMapper;
using SqlSugar;
using System.Diagnostics.CodeAnalysis;
using WIDESEAWCS_Common;
using WIDESEAWCS_Common.TaskEnum;
using WIDESEAWCS_Core;
using WIDESEAWCS_Core.BaseRepository;
using WIDESEAWCS_Core.BaseServices;
using WIDESEAWCS_Core.Helper;
using WIDESEAWCS_DTO.TaskInfo;
using WIDESEAWCS_DTO.WMS;
using WIDESEAWCS_IBasicInfoService;
using WIDESEAWCS_ITaskInfoService;
using WIDESEAWCS_Model.Models;
@@ -76,17 +78,36 @@
            {
                foreach (var item in taskDTOs)
                {
                    if (item.taskType == TaskTypeEnum.MLInbound.ObjToInt())
                    foreach (var task in item.tasks)
                    {
                        foreach (var task in item.tasks)
                        content = TaskHelpMethods.isOkTaskInfo(task, true, true);
                        if (!content.Status) throw new Exception(content.Message);
                        if (BaseDal.QueryFirst(x => x.WMSTaskNum == task.taskCode || x.PalletCode == task.containerCode) != null)
                        {
                            content = TaskHelpMethods.isOkTaskInfo(task, true, true);
                            if (!content.Status) throw new Exception(content.Message);
                            if (BaseDal.QueryFirst(x => x.WMSTaskNum == task.taskCode || x.PalletCode == task.containerCode) != null)
                            {
                                continue;
                            }
                            CreateNewInTask(task);
                            continue;
                        }
                        switch (item.taskType)
                        {
                            case (int)TaskTypeEnum.MLInbound:
                                CreateKLSNewInTask(task, item.taskType);
                                break;
                            case (int)TaskTypeEnum.MLOutbound:
                                CreateKLSNewOutTask(task, item.taskType);
                                break;
                            case (int)TaskTypeEnum.CPInbound:
                                CreateRGVNewInTask(task, item.taskType);
                                break;
                            case (int)TaskTypeEnum.CPOutbound:
                                CreateRGVNewOutTask(task, item.taskType);
                                break;
                            case (int)TaskTypeEnum.CJInbound:
                                CreateHKNewInTask(task, item.taskType);
                                break;
                            case (int)TaskTypeEnum.CJOutbound:
                                CreateHKNewOutTask(task, item.taskType);
                                break;
                            default:
                                break;
                        }
                    }
                }
@@ -625,5 +646,14 @@
            }
            return content;
        }
        static object lock_taskNum = new object();
        public int GetTaskNum(string sequenceName)
        {
            lock (lock_taskNum)
            {
                return Db.Ado.GetScalar($"SELECT NEXT VALUE FOR {sequenceName}").ObjToInt();
            }
        }
    }
}