222
schangxiang@126.com
2025-09-02 ac4209926b9d911988be67a8957d5a7a53ec2ce8
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
using iWareCommon.Utils;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
using yunneiWCS.EnumDefine;
using yunneiWCS.ExtendFunction;
using yunneiWCS.SystemInteraction.mes2.dto;
 
namespace yunneiWCS.mes
{
    /// <summary>
    /// MES推送接口
    /// </summary>
    public class PushMesHandler
    {
        public static string mes_api_url = ConfigHelper.GetConfigString("MesUrl");//修改为配置文件 【EditBy shaocx,2022-01-27】
        static HTTPService mes_api = new HTTPService(mes_api_url);//mes基地址
 
        /// <summary>
        /// 给MES推送入库信息
        /// </summary>
        /// <param name="pushData"></param>
        /// <returns></returns>
        public static ApiResponse<object> Mes_InStockSend(List<InboundStockInfoToMes> pushData, string _identifier, LogType _logType)
        {
            ApiResponse<object> res = null;
            var funName = "Mes_InStockSend";
            try
            {
                MesRequest<List<InboundStockInfoToMes>> mesRequest = new MesRequest<List<InboundStockInfoToMes>>();
                mesRequest.data = pushData;
                mesRequest.identifier = _identifier;
 
                string paprm = JsonConvert.SerializeObject(mesRequest);
                Log4NetHelper.WriteInfoLog(_logType, $"{funName},准备参数:{paprm}");
                Guid guid = System.Guid.NewGuid();
                res = JsonConvert.DeserializeObject<ApiResponse<object>>(mes_api.postContentForString("T_WMS_Inbound_Record", paprm, guid));
                Log4NetHelper.WriteInfoLog(_logType, $"{funName},参数:{paprm},返回:{res}");
            }
            catch (Exception ex)
            {
                Log4NetHelper.WriteErrorLog(_logType, $"{funName},异常:" + ex.Message, ex);
                res.Message = "发送异常:" + ex.Message;
            }
            return res;
 
        }
 
 
        /// <summary>
        /// 给MES推送出库信息
        /// </summary>
        /// <param name="pushData"></param>
        /// <returns></returns>
        public static ApiResponse<object> Mes_OutStockSend(List<InboundStockInfoToMes> pushData, string _identifier, LogType _logType)
        {
            ApiResponse<object> res = null;
            var funName = "Mes_OutStockSend";
            try
            {
                MesRequest<List<InboundStockInfoToMes>> mesRequest = new MesRequest<List<InboundStockInfoToMes>>();
                mesRequest.data = pushData;
                mesRequest.identifier = _identifier;
 
                string paprm = JsonConvert.SerializeObject(mesRequest);
                Log4NetHelper.WriteInfoLog(_logType, $"{funName},准备参数:{paprm}");
                Guid guid = System.Guid.NewGuid();
                res = JsonConvert.DeserializeObject<ApiResponse<object>>(mes_api.postContentForString("T_WMS_Outbound_Record", paprm, guid));
                Log4NetHelper.WriteInfoLog(_logType, $"{funName},参数:{paprm},返回:{res}");
            }
            catch (Exception ex)
            {
                Log4NetHelper.WriteErrorLog(_logType, $"{funName},异常:" + ex.Message, ex);
                res.Message = "发送异常:" + ex.Message;
            }
            return res;
 
        }
 
 
        /// <summary>
        /// 给MES推送库存信息
        /// </summary>
        /// <param name="pushData"></param>
        /// <returns></returns>
        public static ApiResponse<object> Mes_StockSend(List<InboundStockInfoToMes> pushData, LogType _logType)
        {
            ApiResponse<object> res = null;
            var funName = "Mes_StockSend";
            try
            {
                MesRequest<List<InboundStockInfoToMes>> mesRequest = new MesRequest<List<InboundStockInfoToMes>>();
                mesRequest.data = pushData;
 
                string paprm = JsonConvert.SerializeObject(mesRequest);
                Guid guid = System.Guid.NewGuid();
                res = JsonConvert.DeserializeObject<ApiResponse<object>>(mes_api.postContentForString("T_WMS_Realtime_Data", paprm, guid));
                Log4NetHelper.WriteInfoLog(_logType, $"{funName},参数:{paprm},返回:{res}");
            }
            catch (Exception ex)
            {
                Log4NetHelper.WriteErrorLog(_logType, $"{funName},异常:" + ex.Message, ex);
                res.Message = "发送异常:" + ex.Message;
            }
            return res;
 
        }
    }
}