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.smartwork.hrm.employee.dismission.update /// public class OapiSmartworkHrmEmployeeDismissionUpdateRequest : BaseDingTalkRequest { /// /// 微应用在企业的AgentId /// public string Agentid { get; set; } /// /// 离职信息 /// public string Param { get; set; } public EmpDismissionUpdateParamDomain Param_ { set { this.Param = TopUtils.ObjectToJson(value); } } #region IDingTalkRequest Members public override string GetApiName() { return "dingtalk.oapi.smartwork.hrm.employee.dismission.update"; } public override string GetApiCallType() { return DingTalkConstants.CALL_TYPE_OAPI; } public override IDictionary GetParameters() { TopDictionary parameters = new TopDictionary(); parameters.Add("agentid", this.Agentid); parameters.Add("param", this.Param); if (this.otherParams != null) { parameters.AddAll(this.otherParams); } return parameters; } public override void Validate() { RequestValidator.ValidateRequired("agentid", this.Agentid); RequestValidator.ValidateRequired("param", this.Param); } /// /// EmpDismissionUpdateParamDomain Data Structure. /// [Serializable] public class EmpDismissionUpdateParamDomain : TopObject { /// /// 离职备注 /// [XmlElement("dismission_memo")] public string DismissionMemo { get; set; } /// /// 最后工作日期 /// [XmlElement("last_work_date")] public Nullable LastWorkDate { get; set; } /// /// 是否计入离职不统计 /// [XmlElement("partner")] public Nullable Partner { get; set; } /// /// 主动原因 /// [XmlArray("terminationReasonPassive")] [XmlArrayItem("string")] public List TerminationReasonPassive { get; set; } /// /// 被动原因 /// [XmlArray("terminationReasonVoluntary")] [XmlArrayItem("string")] public List TerminationReasonVoluntary { get; set; } /// /// 员工userId /// [XmlElement("userid")] public string Userid { get; set; } } #endregion } }