wangxinhui
2024-12-26 78b99e5348592a29ca1393a5e13db619cc4eba56
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
using System;
using WIDESEA_Common;
using WIDESEA_Common.DBHelper;
using WIDESEA_Common.Tools;
using WIDESEA_Core.Utilities;
using WIDESEA_Entity.DomainModels;
 
namespace WIDESEA_WCS
{
    public class WCSHelpServer
    {
        FreeDB freeDB = new FreeDB();
 
        /// <summary>
        /// 接口添加测试
        /// </summary>
        /// <param name="task"></param>
        /// <returns></returns>
        public WebResponseContent AddAgvTask(dt_agvtask task)
        {
            WebResponseContent content = new WebResponseContent();
            try
            {
                var haveRoute = freeDB.Select<base_routing_table>().Where(t => t.route_began == task.agv_fromaddress && t.route_end == task.agv_toaddress).Any();
                if (!haveRoute)
                {
                    throw new Exception($"路径{task.agv_fromaddress}到{task.agv_toaddress},不存在!");
                }
                dt_agvtask agvtask = new dt_agvtask();
                agvtask.agv_id = Guid.NewGuid();
                agvtask.agv_tasknum = "KH-" + IdenxManager.GetTaskNo();//任务号
                agvtask.agv_fromaddress = task.agv_fromaddress;//起始地址
                agvtask.agv_toaddress = task.agv_toaddress;
                agvtask.agv_code = task.agv_code;//调度中心名称
                agvtask.agv_taskstate = AGVTaskStateEnum.Create.ToString();//任务状态
                agvtask.agv_tasktype = AGVTaskTypeEnum.TaskType_Outbound.ToString();//任务类型
                agvtask.agv_worktype = 1;//工作类型
                agvtask.agv_materielid = task.agv_materielid;
                agvtask.agv_qty = 1;
                agvtask.agv_createtime = DateTime.Now;
                agvtask.agv_grade = 0;//正常
                agvtask.agv_userid = "接口";
                freeDB.Add(agvtask);
 
                content.OK("添加成功");
            }
            catch (Exception ex)
            {
                content.Error(ex.Message);
            }
            return content;
        }
    }
}