using System;
using System.Collections.Generic;
using System.Linq;
using HH.WCS.Mobox3.RiDong.dispatch;
using HH.WCS.Mobox3.RiDong.dto;
using HH.WCS.Mobox3.RiDong.models;
using HH.WCS.Mobox3.RiDong.Quartz;
using HH.WCS.Mobox3.RiDong.util;
using HH.WCS.Mobox3.RiDong.wms;
namespace HH.WCS.Mobox3.RiDong.generalMethod;
///
/// 任务帮助类
///
public static class TaskHelper
{
///
/// 根据作业创建对应任务
///
/// 作业模型
public static void CreateTask(Operation operation)
{
// 根据任务类型创建不同的任务
switch (operation.N_TYPE)
{
case 1:
case 2:
case 3:
case 4:
case 5:
case 7:
CreateTwoTask(operation);
break;
case 6:
CreateOneTask(operation);
break;
}
}
///
/// 创建一条任务
///
///
private static void CreateOneTask(Operation operation)
{
var tasks = new List();
// 任务1
var task1 = new Task()
{
// 作业编码
S_OP_CODE = operation.S_CODE,
// 任务号
S_CODE = HelperMethod.GenerateTaskNo("任务号", "TA"),
// 任务类型
N_TYPE = operation.N_TYPE,
// 任务类型
S_TYPE = Task.GetStateType(operation.N_TYPE),
// 起点货位
S_START_LOC = operation.S_START_LOC,
// 起点库区
S_START_AREA = operation.S_START_AREA,
// 终点货位
S_END_LOC = operation.S_END_LOC,
// 终点库区
S_END_AREA = operation.S_END_AREA,
// 设备类型
N_SCHEDULE_TYPE = 2,
// 设备类型
S_SCHEDULE_TYPE = "agv",
// 容器编码
S_CNTR_CODE = operation.S_CNTR_CODE,
// 配盘单号
S_DC_NO = operation.S_DC_NO,
// 作业类型
S_OP_NAME = operation.S_OP_DEF_NAME,
// 巷道
N_ROADWAY = operation.N_ROADWAY,
};
tasks.Add(task1);
var querySqlSugarClient = AdoSqlMethod