| | |
| | | using Newtonsoft.Json; |
| | | using iWareCommon.Utils; |
| | | using Newtonsoft.Json; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using yunneiWCS.EnumDefine; |
| | | using yunneiWCS.ExtendFunction; |
| | | using yunneiWCS.SystemInteraction.mes2.dto; |
| | | using static WZ.Useful.Commons.NativeMethods; |
| | | |
| | | namespace yunneiWCS.mes |
| | | { |
| | |
| | | /// </summary> |
| | | /// <param name="pushData"></param> |
| | | /// <returns></returns> |
| | | public static ApiResponse<object> Mes_InStockSend(List<InboundStockInfoToMes> pushData) |
| | | public static mesMsg Mes_InStockSend(List<InboundStockInfoToMes> pushData, LogType _logType) |
| | | { |
| | | ApiResponse<object> res = null; |
| | | mesMsg res = null; |
| | | var funName = "Mes_InStockSend"; |
| | | try |
| | | { |
| | | MesRequest<List<InboundStockInfoToMes>> mesRequest = new MesRequest<List<InboundStockInfoToMes>>(); |
| | | mesRequest.data = pushData; |
| | | mesRequest.Datas = pushData; |
| | | mesRequest.TableName = "T_WMS_Inbound_Record"; |
| | | mesRequest.PrimaryKeys = "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)); |
| | | WZ.Useful.Commons.LogTextHelper.WriteLine("PushMesHandler", "Mes_InStockSend 返回状态码:", res.Code + " 返回信息:" + res.Message); |
| | | |
| | | //模拟 |
| | | if (Form1.isvirtual) |
| | | {//模拟环境 |
| | | res = new mesMsg(); |
| | | res.ErrorCode = 0; |
| | | res.ErrorMsg = "系统模拟完成"; |
| | | } |
| | | else |
| | | { |
| | | var resStr = mes_api.postContentForString("", paprm, guid); |
| | | Log4NetHelper.WriteInfoLog(_logType, $"{funName},结果返回:{resStr}"); |
| | | res = JsonConvert.DeserializeObject<mesMsg>(resStr); |
| | | } |
| | | |
| | | Log4NetHelper.WriteInfoLog(_logType, $"{funName},参数:{paprm},返回:{JsonConvert.SerializeObject(res)}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | WZ.Useful.Commons.LogTextHelper.WriteLine("PushMesHandler", "Mes_InStockSend ", " 发送异常:" + JsonConvert.SerializeObject(ex)); |
| | | res.Message = "发送异常:" + ex.Message; |
| | | Log4NetHelper.WriteErrorLog(_logType, $"{funName},异常:" + ex.Message, ex); |
| | | res.ErrorCode = 4; |
| | | res.ErrorMsg = "wms发送异常:" + ex.Message; |
| | | } |
| | | return res; |
| | | |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 给MES推送出库信息 |
| | | /// </summary> |
| | | /// <param name="pushData"></param> |
| | | /// <returns></returns> |
| | | public static mesMsg Mes_OutStockSend(List<InboundStockInfoToMes> pushData, LogType _logType) |
| | | { |
| | | mesMsg res = null; |
| | | var funName = "Mes_OutStockSend"; |
| | | try |
| | | { |
| | | MesRequest<List<InboundStockInfoToMes>> mesRequest = new MesRequest<List<InboundStockInfoToMes>>(); |
| | | mesRequest.Datas = pushData; |
| | | mesRequest.TableName = "T_WMS_Outbound_Record"; |
| | | mesRequest.PrimaryKeys = "identifier"; |
| | | |
| | | string paprm = JsonConvert.SerializeObject(mesRequest); |
| | | Log4NetHelper.WriteInfoLog(_logType, $"{funName},准备参数:{paprm}"); |
| | | Guid guid = System.Guid.NewGuid(); |
| | | //模拟 |
| | | if (Form1.isvirtual) |
| | | {//模拟环境 |
| | | res = new mesMsg(); |
| | | res.ErrorCode = 0; |
| | | res.ErrorMsg = "系统模拟完成"; |
| | | } |
| | | else |
| | | { |
| | | var resStr = mes_api.postContentForString("", paprm, guid); |
| | | Log4NetHelper.WriteInfoLog(_logType, $"{funName},结果返回:{resStr}"); |
| | | res = JsonConvert.DeserializeObject<mesMsg>(resStr); |
| | | } |
| | | |
| | | Log4NetHelper.WriteInfoLog(_logType, $"{funName},参数:{paprm},返回:{JsonConvert.SerializeObject(res)}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log4NetHelper.WriteErrorLog(_logType, $"{funName},异常:" + ex.Message, ex); |
| | | res.ErrorCode = 4; |
| | | res.ErrorMsg = "wms发送异常:" + ex.Message; |
| | | } |
| | | return res; |
| | | |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 给MES推送库存信息 |
| | | /// </summary> |
| | | /// <param name="pushData"></param> |
| | | /// <returns></returns> |
| | | public static mesMsg Mes_StockSend(LogType _logType, List<InboundStockInfoToMes> pushData, LogType _logTypeForInfo) |
| | | { |
| | | mesMsg res = null; |
| | | var funName = "Mes_StockSend"; |
| | | try |
| | | { |
| | | MesRequest<List<InboundStockInfoToMes>> mesRequest = new MesRequest<List<InboundStockInfoToMes>>(); |
| | | mesRequest.Datas = pushData; |
| | | mesRequest.TableName = "T_WMS_Realtime_Data"; |
| | | mesRequest.PrimaryKeys = "serialNumber,positionName"; |
| | | |
| | | string paprm = JsonConvert.SerializeObject(mesRequest); |
| | | Guid guid = System.Guid.NewGuid(); |
| | | Log4NetHelper.WriteInfoLog(_logTypeForInfo, $"{funName},准备参数:{paprm}"); |
| | | var numCount = $"{pushData.Count()}条"; |
| | | Log4NetHelper.WriteInfoLog(_logType, $"{funName},准备参数:{numCount}"); |
| | | //模拟 |
| | | if (Form1.isvirtual) |
| | | {//模拟环境 |
| | | res = new mesMsg(); |
| | | res.ErrorCode = 0; |
| | | res.ErrorMsg = "系统模拟完成"; |
| | | } |
| | | else |
| | | { |
| | | var resStr = mes_api.postContentForString("", paprm, guid); |
| | | Log4NetHelper.WriteInfoLog(_logTypeForInfo, $"{funName},结果返回:{resStr}"); |
| | | Log4NetHelper.WriteInfoLog(_logType, $"{funName},结果返回:{resStr}"); |
| | | res = JsonConvert.DeserializeObject<mesMsg>(resStr); |
| | | } |
| | | |
| | | |
| | | Log4NetHelper.WriteInfoLog(_logTypeForInfo, $"{funName},参数:{paprm},返回:{JsonConvert.SerializeObject(res)}"); |
| | | Log4NetHelper.WriteInfoLog(_logType, $"{funName},参数:{numCount},返回:{JsonConvert.SerializeObject(res)}"); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Log4NetHelper.WriteErrorLog(_logTypeForInfo, $"{funName},异常:" + ex.Message, ex); |
| | | Log4NetHelper.WriteErrorLog(_logType, $"{funName},异常:" + ex.Message, ex); |
| | | res.ErrorCode = 4; |
| | | res.ErrorMsg = "wms发送异常:" + ex.Message; |
| | | } |
| | | return res; |
| | | |