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.attendance.group.member.update /// public class OapiAttendanceGroupMemberUpdateRequest : BaseDingTalkRequest { /// /// 考勤组id /// public Nullable GroupId { get; set; } /// /// 操作人userId /// public string OpUserId { get; set; } /// /// 0表示从今天开始排班,1表示从明天 /// public Nullable ScheduleFlag { get; set; } /// /// 更新入参 /// public string UpdateParam { get; set; } public TopGroupMemberUpdateParamDomain UpdateParam_ { set { this.UpdateParam = TopUtils.ObjectToJson(value); } } #region IDingTalkRequest Members public override string GetApiName() { return "dingtalk.oapi.attendance.group.member.update"; } public override string GetApiCallType() { return DingTalkConstants.CALL_TYPE_OAPI; } public override IDictionary GetParameters() { TopDictionary parameters = new TopDictionary(); parameters.Add("group_id", this.GroupId); parameters.Add("op_user_id", this.OpUserId); parameters.Add("schedule_flag", this.ScheduleFlag); parameters.Add("update_param", this.UpdateParam); if (this.otherParams != null) { parameters.AddAll(this.otherParams); } return parameters; } public override void Validate() { RequestValidator.ValidateRequired("group_id", this.GroupId); RequestValidator.ValidateRequired("op_user_id", this.OpUserId); RequestValidator.ValidateRequired("schedule_flag", this.ScheduleFlag); RequestValidator.ValidateRequired("update_param", this.UpdateParam); } /// /// TopGroupMemberUpdateParamDomain Data Structure. /// [Serializable] public class TopGroupMemberUpdateParamDomain : TopObject { /// /// 要添加的考勤部门,没有的话,无需赋值 /// [XmlArray("add_depts")] [XmlArrayItem("string")] public List AddDepts { get; set; } /// /// 要添加的无需考勤人员,没有的话,无需赋值 /// [XmlArray("add_extra_users")] [XmlArrayItem("string")] public List AddExtraUsers { get; set; } /// /// 要添加的考勤人员,没有的话,无需赋值 /// [XmlArray("add_users")] [XmlArrayItem("string")] public List AddUsers { get; set; } /// /// 要删除的考勤部门,没有的话,无需赋值 /// [XmlArray("remove_depts")] [XmlArrayItem("string")] public List RemoveDepts { get; set; } /// /// 要删除的无需考勤人员,没有的话,无需赋值 /// [XmlArray("remove_extra_users")] [XmlArrayItem("string")] public List RemoveExtraUsers { get; set; } /// /// 要删除的考勤人员,没有的话,无需赋值 /// [XmlArray("remove_users")] [XmlArrayItem("string")] public List RemoveUsers { get; set; } } #endregion } }