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.workspace.project.create
|
/// </summary>
|
public class OapiWorkspaceProjectCreateRequest : BaseDingTalkRequest<DingTalk.Api.Response.OapiWorkspaceProjectCreateResponse>
|
{
|
/// <summary>
|
/// 创建人(主管理员)在归属组织内的userId
|
/// </summary>
|
public string BelongCorpUserid { get; set; }
|
|
/// <summary>
|
/// 是否建圈自动建群
|
/// </summary>
|
public Nullable<bool> CreateGroup { get; set; }
|
|
/// <summary>
|
/// 描述,长度256字符以内
|
/// </summary>
|
public string Desc { get; set; }
|
|
/// <summary>
|
/// 组织名,长度3-50个字符以内,不允许中划线、下划线、逗号、空格
|
/// </summary>
|
public string Name { get; set; }
|
|
/// <summary>
|
/// 开放的cid,如果有值会把该群作为组织的默认群,否则会新创建1个默认群
|
/// </summary>
|
public string OpenConversationId { get; set; }
|
|
/// <summary>
|
/// 允许调用者传入外部id用于做系统关联
|
/// </summary>
|
public string OuterId { get; set; }
|
|
/// <summary>
|
/// 模板id
|
/// </summary>
|
public Nullable<long> TemplateId { get; set; }
|
|
/// <summary>
|
/// 1项目组织 2圈子组织
|
/// </summary>
|
public Nullable<long> Type { get; set; }
|
|
/// <summary>
|
/// 可以指定创建人在项目/圈子组织内的userId,如果不填系统随机生成
|
/// </summary>
|
public string Userid { get; set; }
|
|
#region IDingTalkRequest Members
|
|
public override string GetApiName()
|
{
|
return "dingtalk.oapi.workspace.project.create";
|
}
|
|
public override string GetApiCallType()
|
{
|
return DingTalkConstants.CALL_TYPE_OAPI;
|
}
|
|
public override IDictionary<string, string> GetParameters()
|
{
|
TopDictionary parameters = new TopDictionary();
|
parameters.Add("belong_corp_userid", this.BelongCorpUserid);
|
parameters.Add("create_group", this.CreateGroup);
|
parameters.Add("desc", this.Desc);
|
parameters.Add("name", this.Name);
|
parameters.Add("open_conversation_id", this.OpenConversationId);
|
parameters.Add("outer_id", this.OuterId);
|
parameters.Add("template_id", this.TemplateId);
|
parameters.Add("type", this.Type);
|
parameters.Add("userid", this.Userid);
|
if (this.otherParams != null)
|
{
|
parameters.AddAll(this.otherParams);
|
}
|
return parameters;
|
}
|
|
public override void Validate()
|
{
|
RequestValidator.ValidateRequired("belong_corp_userid", this.BelongCorpUserid);
|
RequestValidator.ValidateRequired("name", this.Name);
|
RequestValidator.ValidateRequired("type", this.Type);
|
}
|
|
#endregion
|
}
|
}
|