123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142 |
- using Newtonsoft.Json;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Security.Policy;
- using System.Text;
- namespace MainForm.ClassFile.XiaomiAPI_MES
- {
- /// <summary>
- /// 小米MES - 进站接⼝
- /// 接口地址:
- /// 接口方法:UnitConfirmDataSetIn
- /// </summary>
- public class XiaomiMESHttp_MaterialVerify : XiaomiMESHttp_X5
- {
- #region 变量
- /// <summary>
- /// 接口地址
- /// </summary>
- protected new static string MESUrl { set; get; } = GlobalContext.StationInMESUrl;
- /// <summary>
- /// 接口方法
- /// </summary>
- protected new static string Method { set; get; } = "ConsumableMaterialVerify";
- #endregion 变量
- /// <summary>
- /// 小米MES - 进站
- /// </summary>
- /// <param name="requestBody"></param>
- /// <returns></returns>
- public static XmMES_MaterialVerifyResponse MaterialVerifyPostMES(XmMES_MaterialVerifyRequest_Body body)
- {
- XmMES_MaterialVerifyResponse MaterialVerifyResponse = new XmMES_MaterialVerifyResponse();
- string bodyJson = JsonConvert.SerializeObject(body);
- XiaomiMES_X5RequestHeader header = new XiaomiMES_X5RequestHeader();
- header.appid = Appid; // 系统分配的应⽤ID
- header.method = Method; // API接⼝名称
- header.sign = GetSign_Up(Appid, bodyJson, Appkey); // md5签名
- header.url = MESUrl; // 接⼝地址
- //转base64
- dynamic requestData = new { header = header, body = bodyJson };
- var serializedBody = JsonConvert.SerializeObject(requestData);
- var base64EncodedBody = Convert.ToBase64String(Encoding.UTF8.GetBytes(serializedBody));
- XiaomiMES_X5Response response = Post(MESUrl, base64EncodedBody);
- // ZS保存日志
- MaterialVerifyResponse.header = response.header;
- string responseBody = response.body;
- MaterialVerifyResponse.body = JsonConvert.DeserializeObject<XmMESMaterialVerify_Body>(responseBody);
- return MaterialVerifyResponse;
- }
- #region 入参
- /// <summary>
- /// 进站接⼝ - 入参
- /// </summary>
- public class XmMES_MaterialVerifyRequest
- {
- /// <summary>
- /// 进站接⼝ - 入参 - header
- /// </summary>
- public XiaomiMES_X5RequestHeader header { get; set; } = new XiaomiMES_X5RequestHeader();
- /// <summary>
- /// 进站接⼝ - 入参 - body
- /// </summary>
- public XmMES_MaterialVerifyRequest_Body body { get; set; } = new XmMES_MaterialVerifyRequest_Body();
- }
- /// <summary>
- /// 进站接⼝ - 入参 - Body 实体
- /// </summary>
- public class XmMES_MaterialVerifyRequest_Body
- {
- /// <summary>
- /// ⼯位ID(可配置)
- /// </summary>
- public string stationId { get; set; } = string.Empty;
- /// <summary>
- /// 客⼾端本机MAC地址(格式:4C-52-62-39-CC-F0)
- /// </summary>
- public string clientMac { get; set; } = string.Empty;
- /// <summary>
- /// 客⼾端请求时间(格式:yyyy-MM-dd HH:mm:ss)
- /// </summary>
- public string clientTime { get; set; } = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
- /// <summary>
- /// 物料sn
- /// </summary>
- public string sn { get; set; } = string.Empty;
- /// <summary>
- /// ⼯⼚id:1
- /// </summary>
- public long factoryId { get; set; } = 1;
- /// <summary>
- /// 操作⼈
- /// </summary>
- public string userId { get; set; } = string.Empty;
- }
- #endregion 入参
- #region 出参
- /// <summary>
- /// 进站接⼝ - 出参
- /// </summary>
- public class XmMES_MaterialVerifyResponse
- {
- /// <summary>
- /// header字段描述
- /// </summary>
- public XiaomiMES_X5ResponseHeader header { get; set; } = new XiaomiMES_X5ResponseHeader();
- /// <summary>
- /// body字段描述
- /// </summary>
- public XmMESMaterialVerify_Body body { get; set; } = new XmMESMaterialVerify_Body();
- }
- /// <summary>
- /// 进站接⼝ - 出参 - Body
- /// </summary>
- public class XmMESMaterialVerify_Body
- {
- /// <summary>
- /// 响应时间戳
- /// </summary>
- public string serverTime { get; set; } = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");
- /// <summary>
- /// 剩余寿命(次/克)
- /// </summary>
- public string remainLife { get; set; } = "";
- }
- #endregion
- }
- }
|