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
|
{
|
/// <summary>
|
/// TOP API: dingtalk.oapi.impaas.user.getprofile
|
/// </summary>
|
public class OapiImpaasUserGetprofileRequest : BaseDingTalkRequest<DingTalk.Api.Response.OapiImpaasUserGetprofileResponse>
|
{
|
/// <summary>
|
/// 获取用户属性入参
|
/// </summary>
|
public string Request { get; set; }
|
|
public GetProfileReqDomain Request_ { set { this.Request = TopUtils.ObjectToJson(value); } }
|
|
#region IDingTalkRequest Members
|
|
public override string GetApiName()
|
{
|
return "dingtalk.oapi.impaas.user.getprofile";
|
}
|
|
public override string GetApiCallType()
|
{
|
return DingTalkConstants.CALL_TYPE_OAPI;
|
}
|
|
public override IDictionary<string, string> GetParameters()
|
{
|
TopDictionary parameters = new TopDictionary();
|
parameters.Add("request", this.Request);
|
if (this.otherParams != null)
|
{
|
parameters.AddAll(this.otherParams);
|
}
|
return parameters;
|
}
|
|
public override void Validate()
|
{
|
RequestValidator.ValidateRequired("request", this.Request);
|
}
|
|
/// <summary>
|
/// AccountInfoDomain Data Structure.
|
/// </summary>
|
[Serializable]
|
|
public class AccountInfoDomain : TopObject
|
{
|
/// <summary>
|
/// type为channelUser时有效。接入方channel信息,该值由接入方接入IMPaaS平台时,向IMPaaS平台申请,例如“hema”“eleme”等。
|
/// </summary>
|
[XmlElement("channel")]
|
public string Channel { get; set; }
|
|
/// <summary>
|
/// 待操作成员id,ID类型由type字段确定。当type为“staff”时,本字段填写staffid,当type为“channelUser”时,本字段填写channelUserId。
|
/// </summary>
|
[XmlElement("id")]
|
public string Id { get; set; }
|
|
/// <summary>
|
/// 代操作成员ID类型,目前支持“staff” “channelUser”两种类型
|
/// </summary>
|
[XmlElement("type")]
|
public string Type { get; set; }
|
}
|
|
/// <summary>
|
/// GetProfileReqDomain Data Structure.
|
/// </summary>
|
[Serializable]
|
|
public class GetProfileReqDomain : TopObject
|
{
|
/// <summary>
|
/// 用户信息
|
/// </summary>
|
[XmlElement("accountInfo")]
|
public AccountInfoDomain AccountInfo { get; set; }
|
}
|
|
#endregion
|
}
|
}
|