using System;
using System.Collections.Generic;
using Top.Api.Util;
using Top.Api;
using Top.Api.DingTalk;
namespace DingTalk.Api.Request
{
///
/// TOP API: dingtalk.oapi.crm.contact.create
///
public class OapiCrmContactCreateRequest : BaseDingTalkRequest
{
///
/// 联系人姓名
///
public string ContactName { get; set; }
///
/// 联系人手机号
///
public string ContactPhone { get; set; }
///
/// 联系人职位
///
public string ContactPositionList { get; set; }
///
/// 创建人用户 ID
///
public string CreatorUserid { get; set; }
///
/// 所在客户实例 ID
///
public string CustomerInstanceId { get; set; }
///
/// 服务商组织id, 特殊场景使用,丁税宝客户自建应用时传入对应的丁税宝服务商id用以生成 UnionId 关联自然人
///
public string ProviderCorpid { get; set; }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.crm.contact.create";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("contact_name", this.ContactName);
parameters.Add("contact_phone", this.ContactPhone);
parameters.Add("contact_position_list", this.ContactPositionList);
parameters.Add("creator_userid", this.CreatorUserid);
parameters.Add("customer_instance_id", this.CustomerInstanceId);
parameters.Add("provider_corpid", this.ProviderCorpid);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateRequired("contact_name", this.ContactName);
RequestValidator.ValidateMaxLength("contact_name", this.ContactName, 20);
RequestValidator.ValidateRequired("contact_phone", this.ContactPhone);
RequestValidator.ValidateMaxLength("contact_phone", this.ContactPhone, 15);
RequestValidator.ValidateMaxListSize("contact_position_list", this.ContactPositionList, 999);
RequestValidator.ValidateRequired("creator_userid", this.CreatorUserid);
RequestValidator.ValidateRequired("customer_instance_id", this.CustomerInstanceId);
RequestValidator.ValidateMaxLength("customer_instance_id", this.CustomerInstanceId, 50);
}
#endregion
}
}