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.corp.hrm.employee.modjobinfo
///
public class CorpHrmEmployeeModjobinfoRequest : BaseDingTalkRequest
{
///
/// 员工信息对象,被操作人userid是必填,其他信息选填,填写则更新
///
public string HrmApiJobModel { get; set; }
public HrmApiJobModelDomain HrmApiJobModel_ { set { this.HrmApiJobModel = TopUtils.ObjectToJson(value); } }
///
/// 操作人userid,必须是拥有被操作人操作权限的管理员userid
///
public string OpUserid { get; set; }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.corp.hrm.employee.modjobinfo";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_TOP;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("hrm_api_job_model", this.HrmApiJobModel);
parameters.Add("op_userid", this.OpUserid);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateRequired("hrm_api_job_model", this.HrmApiJobModel);
RequestValidator.ValidateRequired("op_userid", this.OpUserid);
}
///
/// HrmApiJobModelDomain Data Structure.
///
[Serializable]
public class HrmApiJobModelDomain : TopObject
{
///
/// 生日日期
///
[XmlElement("birth_time")]
public Nullable BirthTime { get; set; }
///
/// 入职日期
///
[XmlElement("confirm_join_time")]
public Nullable ConfirmJoinTime { get; set; }
///
/// 员工状态(2:试用,3:正式)
///
[XmlElement("employee_status")]
public Nullable EmployeeStatus { get; set; }
///
/// 员工类型(1:全职,2:兼职,3:实习,4:劳务派遣,5:退休返聘,6:劳务外包)
///
[XmlElement("employee_type")]
public Nullable EmployeeType { get; set; }
///
/// 首次参加工作时间
///
[XmlElement("join_working_time")]
public Nullable JoinWorkingTime { get; set; }
///
/// 试用期(1:无试用期,2:1个月,3:2个月,4:3个月,5:4个月,6:5个月,7:6个月,8:其他)
///
[XmlElement("probation_period_type")]
public Nullable ProbationPeriodType { get; set; }
///
/// 转正时间
///
[XmlElement("regular_time")]
public Nullable RegularTime { get; set; }
///
/// 被操作人userid
///
[XmlElement("userid")]
public string Userid { get; set; }
}
#endregion
}
}