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.start /// public class OapiRhinoMosExecPerformConditionalStartRequest : 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.start"; } 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, 500); 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 } }