1
zrg
2024-10-15 a1e3e548ea03ceb32d07bf9f73f4719dd14f7f2e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
using System;
using System.Collections.Generic;
using Top.Api.Util;
using Top.Api;
using Top.Api.DingTalk;
 
namespace DingTalk.Api.Request
{
    /// <summary>
    /// TOP API: dingtalk.oapi.crm.contact.create
    /// </summary>
    public class OapiCrmContactCreateRequest : BaseDingTalkRequest<DingTalk.Api.Response.OapiCrmContactCreateResponse>
    {
        /// <summary>
        /// 联系人姓名
        /// </summary>
        public string ContactName { get; set; }
 
        /// <summary>
        /// 联系人手机号
        /// </summary>
        public string ContactPhone { get; set; }
 
        /// <summary>
        /// 联系人职位
        /// </summary>
        public string ContactPositionList { get; set; }
 
        /// <summary>
        /// 创建人用户 ID
        /// </summary>
        public string CreatorUserid { get; set; }
 
        /// <summary>
        /// 所在客户实例 ID
        /// </summary>
        public string CustomerInstanceId { get; set; }
 
        /// <summary>
        /// 服务商组织id, 特殊场景使用,丁税宝客户自建应用时传入对应的丁税宝服务商id用以生成 UnionId 关联自然人
        /// </summary>
        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<string, string> 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
    }
}