using System;
using System.Xml.Serialization;
using System.Collections.Generic;
using Top.Api.Util;
using Top.Api;
using Top.Api.DingTalk;
namespace DingTalk.Api.Request
{
///
/// TOP API: dingtalk.oapi.rhino.mos.exec.perform.conditional.finish
///
public class OapiRhinoMosExecPerformConditionalFinishRequest : BaseDingTalkRequest
{
///
/// 执行设备ID列表
///
public string DeviceIds { get; set; }
///
/// 实体条件
///
public string EntityCondition { get; set; }
public EntityConditionDomain EntityCondition_ { set { this.EntityCondition = TopUtils.ObjectToJson(value); } }
///
/// 工序ID列表
///
public string OperationUids { get; set; }
///
/// 订单ID
///
public Nullable OrderId { get; set; }
///
/// 租户ID
///
public string TenantId { get; set; }
///
/// 系统参数
///
public string Userid { get; set; }
///
/// 执行员工列表
///
public string WorkNos { get; set; }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.rhino.mos.exec.perform.conditional.finish";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("device_ids", this.DeviceIds);
parameters.Add("entity_condition", this.EntityCondition);
parameters.Add("operation_uids", this.OperationUids);
parameters.Add("order_id", this.OrderId);
parameters.Add("tenant_id", this.TenantId);
parameters.Add("userid", this.Userid);
parameters.Add("work_nos", this.WorkNos);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateMaxListSize("device_ids", this.DeviceIds, 20);
RequestValidator.ValidateRequired("entity_condition", this.EntityCondition);
RequestValidator.ValidateMaxListSize("operation_uids", this.OperationUids, 20);
RequestValidator.ValidateRequired("tenant_id", this.TenantId);
RequestValidator.ValidateMaxListSize("work_nos", this.WorkNos, 20);
}
///
/// SourceDomain Data Structure.
///
[Serializable]
public class SourceDomain : TopObject
{
///
/// 实体来源ID
///
[XmlElement("source_id")]
public string SourceId { get; set; }
///
/// 实体来源类型
///
[XmlElement("source_type")]
public string SourceType { get; set; }
}
///
/// EntityConditionDomain Data Structure.
///
[Serializable]
public class EntityConditionDomain : TopObject
{
///
/// 实体ID列表
///
[XmlArray("entity_ids")]
[XmlArrayItem("number")]
public List EntityIds { get; set; }
///
/// 实体来源
///
[XmlElement("entity_source")]
public SourceDomain EntitySource { get; set; }
///
/// 实体类型
///
[XmlElement("entity_type")]
public string EntityType { get; set; }
}
#endregion
}
}