using Newtonsoft.Json;
using System;
namespace MainForm.ClassFile.XiaomiAPI
{
///
/// 小米 MqttClient类 - API拓展方法
/// 过站结果
///
public partial class XiaomiMqttClient_Extend : XiaomiMqttClient
{
///
/// 过站结果- 事件Id
///
private static string PassStationResultId { get; set; } = "pass_station/pass_station_result";
///
/// 过站结果- 事件方法
///
/// 事件数据;Json
/// 自定义事件Id;如:guid
///
public static int Write_PassStationResult(PassStationResultRequest request, string dataId = "")
{
int result = 0;
string msg = JsonConvert.SerializeObject(request);
byte[] bytes = ToUTF8(msg);
// 发送
if (string.IsNullOrEmpty(dataId))
result = Write(PassStationResultId, bytes);
else
result = WriteWithDataId(PassStationResultId, bytes, dataId);
return result;
}
///
/// 过站结果- 参数
///
public class PassStationResultRequest
{
///
/// 过站唯⼀标识(36位)
/// string[1,64]
/// 要确保唯⼀性,每次过站时⽣成的ID必须唯⼀。
/// • 对于同⼀次过站⽽⾔,过站明细中的pass_station_id字段值与过站结果中的pass_station_id字段值是⼀样的。
/// • 与mes中的过站明细uuid字段uuidInspection要求⼀致(这两个值需确保是⼀致的,以MES为主,如果关闭MES⽣产,则此项传空字符串)
///
public string pass_station_id { get; set; } = Guid.NewGuid().ToString();
///
/// 项⽬编码
/// string[1,32]
///
public string project_code { get; set; } = string.Empty;
///
/// ⼯⼚Id
/// string[1,64]
///
public string factory_code { get; set; } = string.Empty;
///
/// ⼯段编码
/// string[1,32]
///
public string process_section_code { get; set; } = string.Empty;
///
/// 线体编码
/// string[1,32]
///
public string line_code { get; set; } = string.Empty;
///
/// ⼯站
/// string[1,32]
///
public string work_station { get; set; } = string.Empty;
///
/// 装备编码
/// string[1,32]
///
public string device_code { get; set; } = string.Empty;
///
/// ⼯位Id
/// string[1,32]
/// 与MES那边的stationId保持⼀致
///
public string station { get; set; } = string.Empty;
///
/// 过站时间
/// string[1,32]
/// 日期格式:2022-06-01 14:27:57.283
///
public string process_time { get; set; } = string.Empty;
///
/// 槽位编码
/// string[1,32]
///
public string slot { get; set; } = string.Empty;
///
/// 产品SN
/// string[1,32]
///
public string sn { get; set; } = string.Empty;
///
/// 进站状态:PASS/FAIL
/// string[1,32]
/// MES进站接⼝调⽤状态
///
public string enter_status { get; set; } = "PASS";
///
/// 过站结果
/// string[1,32]
/// PASS/FAIL
///
public string result { get; set; } = "PASS";
///
/// 作业类型
/// string[1,32]
/// PRESSURE_TEST(压测)
/// POINT_CHECK(点检)
/// OUT_STATION(正常跑料数据)
///
public string work_type { get; set; } = "OUT_STATION";
}
}
}