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.mpdev.previewbuild.create
|
/// </summary>
|
public class OapiMpdevPreviewbuildCreateRequest : BaseDingTalkRequest<DingTalk.Api.Response.OapiMpdevPreviewbuildCreateResponse>
|
{
|
/// <summary>
|
/// SDK构建脚本版本
|
/// </summary>
|
public string BuildScriptVersion { get; set; }
|
|
/// <summary>
|
/// 远程调试的channel
|
/// </summary>
|
public string Channel { get; set; }
|
|
/// <summary>
|
/// scheme中corpId值
|
/// </summary>
|
public string Corpid { get; set; }
|
|
/// <summary>
|
/// 开启tabBar
|
/// </summary>
|
public string EnableTabbar { get; set; }
|
|
/// <summary>
|
/// 忽略http安全域名检查
|
/// </summary>
|
public Nullable<bool> IgnoreHttpReqPermission { get; set; }
|
|
/// <summary>
|
/// 忽略web-view安全域名检查
|
/// </summary>
|
public Nullable<bool> IgnoreWebviewDomainCheck { get; set; }
|
|
/// <summary>
|
/// 远程调试模式
|
/// </summary>
|
public Nullable<bool> IsRemoteDebug { get; set; }
|
|
/// <summary>
|
/// remoteX远程调试模式
|
/// </summary>
|
public Nullable<bool> IsRemoteX { get; set; }
|
|
/// <summary>
|
/// 包默认主页
|
/// </summary>
|
public string MainPage { get; set; }
|
|
/// <summary>
|
/// 小程序ID
|
/// </summary>
|
public string MiniappId { get; set; }
|
|
/// <summary>
|
/// 预览上传包地址
|
/// </summary>
|
public string PackageKey { get; set; }
|
|
/// <summary>
|
/// scheme page参数
|
/// </summary>
|
public string Page { get; set; }
|
|
/// <summary>
|
/// 插件预览包地址
|
/// </summary>
|
public string PluginPackageKey { get; set; }
|
|
/// <summary>
|
/// 静态插件信息
|
/// </summary>
|
public string PluginRefs { get; set; }
|
|
public List<PluginReferenceDomain> PluginRefs_ { set { this.PluginRefs = TopUtils.ObjectToJson(value); } }
|
|
/// <summary>
|
/// scheme query参数
|
/// </summary>
|
public string Query { get; set; }
|
|
/// <summary>
|
/// 分包数据
|
/// </summary>
|
public string SubPackages { get; set; }
|
|
public List<OpenSubPackageVoDomain> SubPackages_ { set { this.SubPackages = TopUtils.ObjectToJson(value); } }
|
|
/// <summary>
|
/// 远程调试tyroid
|
/// </summary>
|
public string Tyroid { get; set; }
|
|
#region IDingTalkRequest Members
|
|
public override string GetApiName()
|
{
|
return "dingtalk.oapi.mpdev.previewbuild.create";
|
}
|
|
public override string GetApiCallType()
|
{
|
return DingTalkConstants.CALL_TYPE_OAPI;
|
}
|
|
public override IDictionary<string, string> GetParameters()
|
{
|
TopDictionary parameters = new TopDictionary();
|
parameters.Add("build_script_version", this.BuildScriptVersion);
|
parameters.Add("channel", this.Channel);
|
parameters.Add("corpid", this.Corpid);
|
parameters.Add("enable_tabbar", this.EnableTabbar);
|
parameters.Add("ignore_http_req_permission", this.IgnoreHttpReqPermission);
|
parameters.Add("ignore_webview_domain_check", this.IgnoreWebviewDomainCheck);
|
parameters.Add("is_remote_debug", this.IsRemoteDebug);
|
parameters.Add("is_remote_x", this.IsRemoteX);
|
parameters.Add("main_page", this.MainPage);
|
parameters.Add("miniapp_id", this.MiniappId);
|
parameters.Add("package_key", this.PackageKey);
|
parameters.Add("page", this.Page);
|
parameters.Add("plugin_package_key", this.PluginPackageKey);
|
parameters.Add("plugin_refs", this.PluginRefs);
|
parameters.Add("query", this.Query);
|
parameters.Add("sub_packages", this.SubPackages);
|
parameters.Add("tyroid", this.Tyroid);
|
if (this.otherParams != null)
|
{
|
parameters.AddAll(this.otherParams);
|
}
|
return parameters;
|
}
|
|
public override void Validate()
|
{
|
RequestValidator.ValidateRequired("enable_tabbar", this.EnableTabbar);
|
RequestValidator.ValidateRequired("main_page", this.MainPage);
|
RequestValidator.ValidateRequired("miniapp_id", this.MiniappId);
|
RequestValidator.ValidateRequired("package_key", this.PackageKey);
|
RequestValidator.ValidateRequired("plugin_package_key", this.PluginPackageKey);
|
RequestValidator.ValidateObjectMaxListSize("plugin_refs", this.PluginRefs, 999);
|
RequestValidator.ValidateObjectMaxListSize("sub_packages", this.SubPackages, 999);
|
}
|
|
/// <summary>
|
/// OpenSubPackageVoDomain Data Structure.
|
/// </summary>
|
[Serializable]
|
|
public class OpenSubPackageVoDomain : TopObject
|
{
|
/// <summary>
|
/// 包地址
|
/// </summary>
|
[XmlElement("package_key")]
|
public string PackageKey { get; set; }
|
|
/// <summary>
|
/// 分包路径
|
/// </summary>
|
[XmlElement("path")]
|
public string Path { get; set; }
|
|
/// <summary>
|
/// 包类型,主包or分包
|
/// </summary>
|
[XmlElement("type")]
|
public string Type { get; set; }
|
}
|
|
/// <summary>
|
/// PluginReferenceDomain Data Structure.
|
/// </summary>
|
[Serializable]
|
|
public class PluginReferenceDomain : TopObject
|
{
|
/// <summary>
|
/// 插件ID
|
/// </summary>
|
[XmlElement("plugin_id")]
|
public string PluginId { get; set; }
|
|
/// <summary>
|
/// 版本号
|
/// </summary>
|
[XmlElement("plugin_version")]
|
public string PluginVersion { get; set; }
|
}
|
|
#endregion
|
}
|
}
|