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.ats.job.query /// public class OapiAtsJobQueryRequest : BaseDingTalkRequest { /// /// 招聘业务标识 /// public string BizCode { get; set; } /// /// 分页游标,传空时默认为第一页 /// public string Cursor { get; set; } /// /// 查询参数 /// public string QueryParam { get; set; } public TopQueryJobsParamDomain QueryParam_ { set { this.QueryParam = TopUtils.ObjectToJson(value); } } /// /// 分页大小,最大200 /// public Nullable Size { get; set; } #region IDingTalkRequest Members public override string GetApiName() { return "dingtalk.oapi.ats.job.query"; } public override string GetApiCallType() { return DingTalkConstants.CALL_TYPE_OAPI; } public override IDictionary GetParameters() { TopDictionary parameters = new TopDictionary(); parameters.Add("biz_code", this.BizCode); parameters.Add("cursor", this.Cursor); parameters.Add("query_param", this.QueryParam); parameters.Add("size", this.Size); if (this.otherParams != null) { parameters.AddAll(this.otherParams); } return parameters; } public override void Validate() { RequestValidator.ValidateRequired("biz_code", this.BizCode); RequestValidator.ValidateRequired("query_param", this.QueryParam); RequestValidator.ValidateRequired("size", this.Size); RequestValidator.ValidateMaxValue("size", this.Size, 200); } /// /// TopQueryJobsParamDomain Data Structure. /// [Serializable] public class TopQueryJobsParamDomain : TopObject { /// /// 是否校招 /// [XmlElement("campus")] public Nullable Campus { get; set; } /// /// 创建人员工标识列表 /// [XmlArray("creator_user_ids")] [XmlArrayItem("string")] public List CreatorUserIds { get; set; } /// /// 更新时间的查询结束时间 /// [XmlElement("end_modified_time")] public Nullable EndModifiedTime { get; set; } /// /// 职位标识列表 /// [XmlArray("job_ids")] [XmlArrayItem("string")] public List JobIds { get; set; } /// /// 职位性质 /// [XmlElement("job_nature")] public string JobNature { get; set; } /// /// 关联会话标识 /// [XmlElement("open_conversation_id")] public string OpenConversationId { get; set; } /// /// 更新时间的查询起始时间 /// [XmlElement("start_modified_time")] public Nullable StartModifiedTime { get; set; } /// /// 职位状态列表,1表示启用中,2表示关闭 /// [XmlArray("status_list")] [XmlArrayItem("number")] public List StatusList { get; set; } } #endregion } }