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.hrm.employee.delandhandover
///
public class OapiHrmEmployeeDelandhandoverRequest : BaseDingTalkRequest
{
///
/// 确认离职对象
///
public string DismissionInfoWithHandOver { get; set; }
public EmpDismissionInfoWithHandOverVoDomain DismissionInfoWithHandOver_ { set { this.DismissionInfoWithHandOver = TopUtils.ObjectToJson(value); } }
///
/// 操作人userid
///
public string OpUserid { get; set; }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.hrm.employee.delandhandover";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("dismission_info_with_hand_over", this.DismissionInfoWithHandOver);
parameters.Add("op_userid", this.OpUserid);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateRequired("dismission_info_with_hand_over", this.DismissionInfoWithHandOver);
RequestValidator.ValidateRequired("op_userid", this.OpUserid);
}
///
/// EmpDismissionInfoWithHandOverVoDomain Data Structure.
///
[Serializable]
public class EmpDismissionInfoWithHandOverVoDomain : TopObject
{
///
/// 离职描述
///
[XmlElement("dismission_memo")]
public string DismissionMemo { get; set; }
///
/// 离职原因(1:家庭原因,2:个人原因,3:发展原因,4:合同到期不续签,5:协议解除,6:无法胜任工作,7:经济性裁员,8:严重违法违纪,9:其他)
///
[XmlElement("dismission_reason")]
public string DismissionReason { get; set; }
///
/// 离职人userid
///
[XmlElement("dismission_userid")]
public string DismissionUserid { get; set; }
///
/// 交接人userid
///
[XmlElement("hand_over_userid")]
public string HandOverUserid { get; set; }
///
/// 最后工作日
///
[XmlElement("last_work_date")]
public Nullable LastWorkDate { get; set; }
}
#endregion
}
}