bklLiudl
2024-07-23 277bbae216debe7e6c04e8cc6ee6e1ba9763e14b
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
using BLL.DAL;
using Json;
using Model;
using Model.MessageModel;
using Model.WmsModel;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Helpers;
using System.Web.Http;
using System.Web.Script.Serialization;
 
namespace wms.Controllers
{
    //[RoutePrefix("api/WCSApi")]
    public class WCSApiController : ApiController
    {
 
        //private WSChatController _chat;
        //public WCSApiController(WSChatController chat)
        //{
        //    _chat = chat;
        //}
 
        /// <summary>
        /// WMS多条任务下发接口  Liudl
        /// </summary>
        /// <param name="model">任务信息</param>
        /// <returns></returns>
        //[HttpPost]aaaa
        //public object AddTasks(Tasks model)
        //{
        //    DALWMSApi wcsApi = new DALWMSApi();
        //    return wcsApi.AddWcsTasks(model);
        //}
        [HttpPost]
        public object AddTasks(dynamic model)
        {
            //WebStocket发送消息
            WSChatController wSChat = new WSChatController();
 
            JsonObject obj = new JsonObject();
            var aa = JsonConvert.SerializeObject(model);
            var taskList = JsonConvert.DeserializeObject<List<WCSTasks>>(aa);
            DALWMSApi wcsApi = new DALWMSApi();
            WCSResultModel bb = new WCSResultModel();
            if (taskList != null)
            {
                foreach (var item in taskList)
                {
                    bb = wcsApi.AddWcsTasks(item);
                    //_chat.Get();
                    // 通知任务界面任务已存在更新 请更新界面
                    wSChat.AlarmInformation("1");
                }
            }
            return bb;
        }
 
        /// <summary>
        /// WMS单条任务下发接口 Liudl
        /// </summary>
        /// <param name="model">任务信息</param>
        /// <returns></returns>
        [HttpPost]
        public object AddTask(WCSTasks model)
        {
            DALWMSApi wcsApi = new DALWMSApi();
            model.Type = model.TaskType;
            var data = wcsApi.AddWcsTask(model);
            if (data.stateCode == "1")
            {
                data.stateCode = "0";
            }
            return data;
        }
 
        /// <summary>
        /// wms多条任务取消\完成接口
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        [HttpPost]
        public object FinshTasks(dynamic model)
        {
            //WebStocket发送消息
            WSChatController wSChat = new WSChatController();
 
            JsonObject obj = new JsonObject();
            var aa = JsonConvert.SerializeObject(model);
            var taskList = JsonConvert.DeserializeObject<WCSTasks>(aa);
            DALWMSApi wcsApi = new DALWMSApi();
            WCSResultModel bb = new WCSResultModel();
            if (taskList != null)
            {
                WCSTasks task = taskList;
                bb = wcsApi.FinshTasks(taskList);
                //_chat.Get();
                // 通知任务界面任务已存在更新 请更新界面
                wSChat.AlarmInformation("1");
 
                //通知设备
                DeviceMessage message = new DeviceMessage();
                message.Message = "任务更新";
                message.Status = "2";
                message.RoadwayNo = task.Type == "0" ? task.EndRoadway : task.StartRoadway;
                wSChat.AlarmInformationModel(message);
            }
            return bb;
        }
 
        /// <summary>
        /// WMS下发修改储位状态
        /// </summary>
        /// <param name="model">储位信息</param>
        /// <returns></returns>
        [HttpPost]
        public object EditLocatStatus(List<WmsLocat> model)
        {
            DALWMSApi wcsApi = new DALWMSApi();
            WCSResultModel bb = new WCSResultModel();
 
            bb = wcsApi.EditLocaetStatus(model);
 
            return bb;
        }
 
    }
 
}