123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- using System;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using Newtonsoft.Json;
- using MainForm.ClassFile.XiaomiAPI_MES;
- using static MainForm.ClassFile.XiaomiAPI_AGV.XiaomiAGVHttp_Response;
- using System.Collections.Generic;
- namespace MainForm.ClassFile.XiaomiAPI_AGV
- {
- /// <summary>
- /// 小米AGV(x5协议)- 容器搬运请求接⼝
- /// SMT装备向物流服务发送空箱搬运下线的请求;装备之间物料的纯搬运动作,不经过MES.
- /// 如:‘Tray盘上料装备’站 下料
- /// 接⼝地址:${HOST}/x5/task/carry/create
- /// 接口方法:createCarryTask
- /// </summary>
- public class XiaomiAGVHttp_CallEmptyContainerUnLoading : XiaomiMESHttp_X5
- {
- #region 变量
- /// <summary>
- /// 接口地址
- /// </summary>
- protected new static string MESUrl { set; get; } = string.Format($"{0}/x5/task/carry/create",
- GlobalContext.AGVHttpHost);
- /// <summary>
- /// 接口方法
- /// </summary>
- protected new static string Method { set; get; } = "createCarryTask";
- #endregion 变量
- /// <summary>
- /// 请求 容器搬运
- /// </summary>
- public XiaomiAGVHttp_Response Call(XmAGVCallEmptyContainerUnLoadingRequest_Body body)
- {
- XiaomiAGVHttp_Response agvResponse = new XiaomiAGVHttp_Response();
- 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; // 接⼝地址
- dynamic request = new { header = header, body = bodyJson };
- string data = JsonConvert.SerializeObject(request);
- XiaomiMES_X5Response response = Post(MESUrl, data);
- // ZS保存日志
- agvResponse.header = response.header;
- string responseBody = response.body;
- agvResponse.body = JsonConvert.DeserializeObject<XmAGVHttp_Body>(responseBody);
- return agvResponse;
- }
- #region 入参
- /// <summary>
- /// 容器搬运请求接⼝ - 入参 - Body
- /// </summary>
- public class XmAGVCallEmptyContainerUnLoadingRequest_Body
- {
- /// <summary>
- /// 任务类型;非必填
- /// 默认:CARRY
- /// </summary>
- public string taskType { get; set; } = string.Empty;
- /// <summary>
- /// 容器编码
- /// </summary>
- public string containerCode { get; set; } = string.Empty;
- /// <summary>
- /// 容器类型;非必填
- /// </summary>
- public string containerType { get; set; } = string.Empty;
- /// <summary>
- /// 起始点
- /// 料站点(接驳⼝/地⾯码)
- /// PORTCODE_1
- /// </summary>
- public string startingContainerCode { get; set; } = string.Empty;
- /// <summary>
- /// 起始区域;非必填
- /// </summary>
- public string startingArea { get; set; } = string.Empty;
- /// <summary>
- /// ⽬标区域;非必填
- /// </summary>
- public string targetArea { get; set; } = string.Empty;
- /// <summary>
- /// ⽬标点(料站点);非必填
- /// </summary>
- public string targetContainerCode { get; set; } = string.Empty;
- }
- #endregion 入参
- }
- }
|