K3Cloud服务操作接口(ExcuteOperation)实战及更新冻结人字段(续篇)

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

K3Cloud服务操作接口(ExcuteOperation)实战及更新冻结人字段(续篇)

/// <summary>
        /// 服务接口(同步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public  CloudResult CloudExcuteOperation(string formid, string type, string data)
        {
            List<object> Parameters = new List<object>();
            Parameters.Add(formid);
            Parameters.Add(type);
            Parameters.Add(data);
            var result = HttpClientHelper_HttpPost(CloudLinkConfigModel.excuteOperationUrl, JsonConvert.SerializeObject(Parameters));
            return result == null ? new CloudResult() : JsonConvert.DeserializeObject<CloudResult>(result);
        }
using Model;

namespace K3CloudLink
{
    public interface ICloudLink
    {
        /// <summary>
        /// 登陆验证
        /// </summary>
        /// <returns></returns>
        bool CloudLogin();
        /// <summary>
        /// 登陆验证(异步)
        /// </summary>
        /// <returns></returns>
        Task<bool> CloudLoginAsync();
        /// <summary>
        /// 根据单号或者ID查询数据
        /// </summary>
        /// <param name="formid">业务对象ID 例子:SAL_SaleOrder</param>
        /// <param name="data">数据包Json 例子:"{\"Number\":\"XSDD000040\"}"  "{\"Id\":0}"</param>
        /// <returns>单据数据包JOSN</returns>
        string CloudView(string formid, string data);
        /// <summary>
        /// 根据单号或者ID查询数据(异步)
        /// </summary>
        /// <param name="formid">业务对象ID 例子:SAL_SaleOrder</param>
        /// <param name="data">数据包Json 例子:"{\"Number\":\"XSDD000040\"}"  "{\"Id\":0}"</param>
        /// <returns>单据数据包JOSN</returns>
        Task<string> CloudViewAsync(string formid, string data);

        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        CloudResult CloudSave(string formid, string data);

        /// <summary>
        /// 保存(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        Task<CloudResult> CloudSaveAsync(string formid, string data);

        /// <summary>
        /// 批量保存
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        CloudResult CloudBatchSave(string formid, string data);
        /// <summary>
        /// 批量保存(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        Task<CloudResult> CloudBatchSaveAsync(string formid, string data);
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        CloudResult CloudDelete(string formid, string data);
        /// <summary>
        /// 删除(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        Task<CloudResult> CloudDeleteAsync(string formid, string data);
        /// <summary>
        /// 审核
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        CloudResult CloudAudit(string formid, string data);
        /// <summary>
        /// 审核(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        Task<CloudResult> CloudAuditAsync(string formid, string data);
        /// <summary>
        /// 反审核
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        CloudResult CloudUnAudit(string formid, string data);
        /// <summary>
        /// 反审核(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        Task<CloudResult> CloudUnAuditAsync(string formid, string data);
        /// <summary>
        /// 用语句查询数据库
        /// </summary>
        /// <param name="sql">数据库语句</param>
        /// <returns></returns>
        (string status, string errmsg, string result) CloudDbWebApi(string sql);
        /// <summary>
        /// 用语句查询数据库(异步)
        /// </summary>
        /// <param name="sql">数据库语句</param>
        /// <returns></returns>
        Task<(string status, string errmsg, string result)> CloudDbWebApiAsync(string sql);

        /// <summary>
        /// 下推
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        CloudResult CloudPush(string formid, string data);

        /// <summary>
        /// 下推(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        Task<CloudResult> CloudPushAsync(string formid, string data);
        /// <summary>
        /// 分配
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        CloudResult CloudAllocate(string formid, string data);
        /// <summary>
        /// 分配(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        Task<CloudResult> CloudAllocateAsync(string formid, string data);
        /// <summary>
        /// 暂存
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        CloudResult CloudDraftSave(string formid, string data);

        /// <summary>
        /// 暂存(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        Task<CloudResult> CloudDraftSaveAsync(string formid, string data);

        /// <summary>
        /// 提交
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        CloudResult CloudSubmit(string formid, string data);

        /// <summary>
        /// 表单查询
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        string CloudExecuteBillQuery(string data);

        /// <summary>
        /// 表单查询(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        Task<string> CloudExecuteBillQueryAsync(string data);


        /// <summary>
        /// 服务接口(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="type">服务类型</param>
        /// <param name="data"></param>
        /// <returns></returns>
        Task<CloudResult> CloudExcuteOperationAsync(string formid, string type, string data);

        /// <summary>
        /// 服务接口(同步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public CloudResult CloudExcuteOperation(string formid, string type, string data);
    }
}
using Common;
using Model;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System.Diagnostics;

namespace K3CloudLink
{
    public class CloudLinkN : ICloudLink
    {
        static CloudLinkN()
        {
            ConfigInitialization();
        }

        /// <summary>
        /// 初始化配置
        /// </summary>
        private static void ConfigInitialization()
        {
            if (string.IsNullOrEmpty(CloudLinkConfigModel.dbId))
            {
                CloudLinkConfigModel.dbId = ConfigManager.AppSettings("dbId").ToString();
                CloudLinkConfigModel.userName = ConfigManager.AppSettings("userName").ToString();
                CloudLinkConfigModel.userPassword = ConfigManager.AppSettings("userPassword").ToString();
                CloudLinkConfigModel.saveUrl = ConfigManager.AppSettings("saveUrl").ToString();
                CloudLinkConfigModel.submitUrl = ConfigManager.AppSettings("submitUrl").ToString();
                CloudLinkConfigModel.unAuditUrl = ConfigManager.AppSettings("unAuditUrl").ToString();
                CloudLinkConfigModel.viewUrl = ConfigManager.AppSettings("viewUrl").ToString();
                CloudLinkConfigModel.validateUserUrl = ConfigManager.AppSettings("validateUserUrl").ToString();
                CloudLinkConfigModel.executeBillQueryUrl = ConfigManager.AppSettings("executeBillQueryUrl").ToString();
                CloudLinkConfigModel.deleteUrl = ConfigManager.AppSettings("deleteUrl").ToString();
                CloudLinkConfigModel.auditUrl = ConfigManager.AppSettings("auditUrl").ToString();
                CloudLinkConfigModel.customWebApiUrl = ConfigManager.AppSettings("customWebApiUrl").ToString();
                CloudLinkConfigModel.pushUrl = ConfigManager.AppSettings("pushUrl").ToString();
                CloudLinkConfigModel.allocateUrl = ConfigManager.AppSettings("allocateUrl").ToString();
                CloudLinkConfigModel.draftUrl = ConfigManager.AppSettings("draftUrl").ToString();
                CloudLinkConfigModel.excuteOperationUrl = ConfigManager.AppSettings("ExcuteOperationUrl").ToString();
                CloudLinkConfigModel.batchSaveUrl = ConfigManager.AppSettings("batchSaveUrl").ToString();
            }
        }

        public async Task<string> HttpClientHelper_HttpPostAsync(string Url, string Content) {
            JObject jObj = new JObject();
            jObj.Add("format", 1);
            jObj.Add("useragent", "ApiClient");
            jObj.Add("rid", Guid.NewGuid().ToString().GetHashCode().ToString());
            jObj.Add("parameters", Content);
            jObj.Add("timestamp", DateTime.Now);
            jObj.Add("v", "1.0");
            return await HttpClientHelper.HttpPostAsync(Url, jObj.ToString(), null, "application/json");
        }

        public string HttpClientHelper_HttpPost(string Url, string Content)
        {
            JObject jObj = new JObject();
            jObj.Add("format", 1);
            jObj.Add("useragent", "ApiClient");
            jObj.Add("rid", Guid.NewGuid().ToString().GetHashCode().ToString());
            jObj.Add("parameters", Content);
            jObj.Add("timestamp", DateTime.Now);
            jObj.Add("v", "1.0");
            try
            {
                return HttpClientHelper.HttpPost(Url, jObj.ToString(), null, "application/json");
            }
            catch (OperationCanceledException oce)
            {
                //https://github.com/dotnet/runtime/issues/21965
                // Check ex.CancellationToken.IsCancellationRequested here.
                // If false, it's pretty safe to assume it was a timeout.
                if (false==oce.CancellationToken.IsCancellationRequested)
                {
                    Log.Default.Process(Log.F_LEVEL.Error, $"oce_HttpClientHelper_HttpPost_{oce.ToString()}_具体报错调用串:{jObj.ToString()}");
                    throw new Exception("oce_HttpClientHelper_HttpPost请求超时错误!");
                }
                else
                    throw oce;
            }
            catch (Exception ex)
            {
                Log.Default.Process(Log.F_LEVEL.Error, "HttpClientHelper_HttpPost_"+ ex.ToString() + "_具体报错调用串:" + jObj.ToString());
                throw ex;
            }
        }

        /// <summary>
        /// 登陆验证
        /// </summary>
        /// <returns></returns>
        public bool CloudLogin()
        {
            List<object> Parameters = new List<object>();
            Parameters.Add(CloudLinkConfigModel.dbId);//帐套Id
            Parameters.Add(CloudLinkConfigModel.userName);//用户名
            Parameters.Add(CloudLinkConfigModel.userPassword);//密码
            Parameters.Add(2052);
            string url = CloudLinkConfigModel.validateUserUrl;
            string postData = JsonConvert.SerializeObject(Parameters);

            string res =HttpClientHelper_HttpPost(url, postData);
            var iResult = JObject.Parse(res)["LoginResultType"].Value<int>();
            //HttpClientHelper.HttpPostAsync()

            if (iResult == 1)
                return true;
            else
                return false;
        }
        /// <summary>
        /// 登陆验证
        /// </summary>
        /// <returns></returns>
        public async Task<bool> CloudLoginAsync()
        {
            List<object> Parameters = new List<object>();
            Parameters.Add(CloudLinkConfigModel.dbId);//帐套Id
            Parameters.Add(CloudLinkConfigModel.userName);//用户名
            Parameters.Add(CloudLinkConfigModel.userPassword);//密码
            Parameters.Add(2052);
            string url = CloudLinkConfigModel.validateUserUrl;
            string postData = JsonConvert.SerializeObject(Parameters);

            string res = await HttpClientHelper_HttpPostAsync(url, postData);
            var iResult = JObject.Parse(res)["LoginResultType"].Value<int>();
            //HttpClientHelper.HttpPostAsync()

            if (iResult == 1)
                return true;
            else
                return false;
        }
        /// <summary>
        /// 根据单号或者ID查询数据
        /// </summary>
        /// <param name="formid">业务对象ID 例子:SAL_SaleOrder</param>
        /// <param name="data">数据包Json 例子:"{\"Number\":\"XSDD000040\"}"  "{\"Id\":0}"</param>
        /// <returns>单据数据包JOSN</returns>
        public string CloudView(string formid, string data)
        {
            List<object> Parameters = new List<object>();
            Parameters.Add(formid);
            Parameters.Add(data);
            var result  = HttpClientHelper_HttpPost(CloudLinkConfigModel.viewUrl, JsonConvert.SerializeObject(Parameters));
            return result == null ? "" : result;
        }

        /// <summary>
        /// 根据单号或者ID查询数据(异步)
        /// </summary>
        /// <param name="formid">业务对象ID 例子:SAL_SaleOrder</param>
        /// <param name="data">数据包Json 例子:"{\"Number\":\"XSDD000040\"}"  "{\"Id\":0}"</param>
        /// <returns>单据数据包JOSN</returns>
        public async Task<string> CloudViewAsync(string formid, string data)
        {
            List<object> Parameters = new List<object>();
            Parameters.Add(formid);
            Parameters.Add(data);
            return await HttpClientHelper_HttpPostAsync(CloudLinkConfigModel.viewUrl, JsonConvert.SerializeObject(Parameters));
            
        }

        /// <summary>
        /// Cloud表单查询
        /// </summary>
        /// <param name="data">CloudExecuteBillQueryModel 反序列化后Json格式</param>
        /// <returns></returns>
        public string CloudExecuteBillQuery(string data)
        {
            List<object> Parameters = new List<object>();
            Parameters.Add(data);
            var result = HttpClientHelper_HttpPost(CloudLinkConfigModel.executeBillQueryUrl, JsonConvert.SerializeObject(Parameters));
            return result == null ? "" : result;
        }

        /// <summary>
        /// Cloud表单查询(异步)
        /// </summary>
        /// <param name="data">CloudExecuteBillQueryModel 反序列化后Json格式</param>
        /// <returns></returns>
        public async Task<string> CloudExecuteBillQueryAsync(string data)
        {
            List<object> Parameters = new List<object>();
            Parameters.Add(data);
            return await HttpClientHelper_HttpPostAsync(CloudLinkConfigModel.executeBillQueryUrl, JsonConvert.SerializeObject(Parameters));
        }

        /// <summary>
        /// 用语句查询数据库
        /// </summary>
        /// <param name="sql">数据库语句</param>
        /// <returns></returns>
        public (string status, string errmsg, string result) CloudDbWebApi(string sql)
        {
            Stopwatch watch = new Stopwatch();
            watch.Start();

            List<object> parameters = new List<object>();
            parameters.Add(sql);
            var result = HttpClientHelper_HttpPost(CloudLinkConfigModel.customWebApiUrl, JsonConvert.SerializeObject(parameters));
            JObject jo = (JObject)JsonConvert.DeserializeObject(result);
            string status_ = jo["status"] != null ? jo["status"].ToString() : "0";
            string errmsg_ = jo["errmsg"] != null ? jo["errmsg"].ToString() : "";
            string result_ = jo["data"] != null ? jo["data"].ToString() : "";

            watch.Stop();
            if (watch.ElapsedMilliseconds > 60000L)
                Log.Default.Process(Log.F_LEVEL.Error, string.Format("调用:{0},用语句查询数据库CloudDbWebApi_运行时长:{1}秒", sql,(watch.ElapsedMilliseconds / 1000.00)));
            return (status_, errmsg_, result_);
        }
        /// <summary>
        /// 用语句查询数据库(异步)
        /// </summary>
        /// <param name="sql">数据库语句</param>
        /// <returns></returns>
        public async Task<(string status, string errmsg, string result)> CloudDbWebApiAsync(string sql)
        {
            List<object> parameters = new List<object>();
            parameters.Add(sql);
            var result =await HttpClientHelper_HttpPostAsync(CloudLinkConfigModel.customWebApiUrl, JsonConvert.SerializeObject(parameters));
            JObject jo = (JObject)JsonConvert.DeserializeObject(result);
            string status_ = jo["status"] != null ? jo["status"].ToString() : "0";
            string errmsg_ = jo["errmsg"] != null ? jo["errmsg"].ToString() : "";
            string result_ = jo["data"] != null ? jo["data"].ToString() : "";
            return (status_, errmsg_, result_);
        }

        /// <summary>
        /// Cloud 非查询调用方法
        /// </summary>
        /// <param name="formid">业务对象ID</param>
        /// <param name="data">数据包Json</param>
        /// <returns></returns>
        private CloudResult CloudNoQuery(string formid, string data, string Url)
        {
            List<object> Parameters = new List<object>();
            Parameters.Add(formid);
            Parameters.Add(data);
            var result = HttpClientHelper_HttpPost(Url, JsonConvert.SerializeObject(Parameters));
            return result == null ? new CloudResult() : JsonConvert.DeserializeObject<CloudResult>(result);
        }

        /// <summary>
        /// Cloud 非查询调用方法(异步)
        /// </summary>
        /// <param name="formid">业务对象ID</param>
        /// <param name="data">数据包Json</param>
        /// <returns></returns>
        private async Task<CloudResult> CloudNoQueryAsync(string formid, string data, string Url)
        {
            List<object> Parameters = new List<object>();
            Parameters.Add(formid);
            Parameters.Add(data);
            var result =await HttpClientHelper_HttpPostAsync(Url, JsonConvert.SerializeObject(Parameters));
            return result == null ? new CloudResult() : JsonConvert.DeserializeObject<CloudResult>(result);
        }


        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public CloudResult CloudSave(string formid, string data)
        {
            Stopwatch watch = new Stopwatch();
            watch.Start();
            var res = CloudNoQuery(formid, data, CloudLinkConfigModel.saveUrl);
            watch.Stop();
            if (watch.ElapsedMilliseconds > 60000L)
                Log.Default.Process(Log.F_LEVEL.Error, string.Format("调用:{0},保存CloudSave_运行时长:{1}秒", data, (watch.ElapsedMilliseconds/1000.00) ));
            return res;
        }

   

        /// <summary>
        /// 保存(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public async Task<CloudResult> CloudSaveAsync(string formid, string data)
        {
            return await CloudNoQueryAsync(formid, data, CloudLinkConfigModel.saveUrl);
        }

        /// <summary>
        /// 暂存
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public CloudResult CloudDraftSave(string formid, string data)
        {
            return CloudNoQuery(formid, data, CloudLinkConfigModel.draftUrl);
        }

        /// <summary>
        /// 暂存(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public async Task<CloudResult> CloudDraftSaveAsync(string formid, string data)
        {
            return await CloudNoQueryAsync(formid, data, CloudLinkConfigModel.draftUrl);
        }
        /// <summary>
        /// 批量保存
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public CloudResult CloudBatchSave(string formid, string data)
        {
            return CloudNoQuery(formid, data, CloudLinkConfigModel.batchSaveUrl);
        }

        /// <summary>
        /// 批量保存(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public async Task<CloudResult> CloudBatchSaveAsync(string formid, string data)
        {
            return await CloudNoQueryAsync(formid, data, CloudLinkConfigModel.batchSaveUrl);
        }

        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public CloudResult CloudDelete(string formid, string data)
        {
            return CloudNoQuery(formid, data, CloudLinkConfigModel.deleteUrl);
        }

        /// <summary>
        /// 删除(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public async Task<CloudResult> CloudDeleteAsync(string formid, string data)
        {
            return await CloudNoQueryAsync(formid, data, CloudLinkConfigModel.deleteUrl);
        }

        /// <summary>
        /// 审核
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public CloudResult CloudAudit(string formid, string data)
        {
            return CloudNoQuery(formid, data, CloudLinkConfigModel.auditUrl);
        }


        /// <summary>
        /// 审核(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public async Task<CloudResult> CloudAuditAsync(string formid, string data)
        {
            return await CloudNoQueryAsync(formid, data, CloudLinkConfigModel.auditUrl);
        }

        /// <summary>
        /// 提交
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public CloudResult CloudSubmit(string formid, string data)
        {
            return CloudNoQuery(formid, data, CloudLinkConfigModel.submitUrl);
        }

        /// <summary>
        /// 反审核
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public CloudResult CloudUnAudit(string formid, string data)
        {
            return CloudNoQuery(formid, data, CloudLinkConfigModel.unAuditUrl);
        }
        /// <summary>
        /// 反审核(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public async Task<CloudResult> CloudUnAuditAsync(string formid, string data)
        {
            return await CloudNoQueryAsync(formid, data, CloudLinkConfigModel.unAuditUrl);
        }
        /// <summary>
        /// 下推
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public CloudResult CloudPush(string formid, string data)
        {
            return CloudNoQuery(formid, data, CloudLinkConfigModel.pushUrl);
        }
        /// <summary>
        /// 下推(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public async Task<CloudResult> CloudPushAsync(string formid, string data)
        {
            return await CloudNoQueryAsync(formid, data, CloudLinkConfigModel.pushUrl);
        }
        /// <summary>
        /// 分配
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public CloudResult CloudAllocate(string formid, string data)
        {
            return CloudNoQuery(formid, data, CloudLinkConfigModel.allocateUrl);
        }
        /// <summary>
        /// 分配(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public async Task<CloudResult> CloudAllocateAsync(string formid, string data)
        {
            return await CloudNoQueryAsync(formid, data, CloudLinkConfigModel.allocateUrl);
        }


        /// <summary>
        /// 服务接口(异步)
        /// </summary>
        /// <param name="formid"></param>
        /// <param name="data"></param>
        /// <returns></returns>
        public async Task<CloudResult> CloudExcuteOperationAsync(string formid,string type, string data)
        {
            List<object> Parameters = new List<object>();
            Parameters.Add(formid);
            Parameters.Add(type);
            Parameters.Add(data);
            var result = await HttpClientHelper_HttpPostAsync(CloudLinkConfigModel.excuteOperationUrl, JsonConvert.SerializeObject(Parameters));
            return result == null ? new CloudResult() : JsonConvert.DeserializeObject<CloudResult>(result);
            //return await CloudNoQueryAsync(formid, data, CloudLinkConfigModel.excuteOperationUrl);
        }

        /// <summary>
        /// 服务接口(同步)
        /// </summary>
     &

K3Cloud服务操作接口(ExcuteOperation)实战及更新冻结人字段(续篇)

/// <summary> /// 服务接口(同步) /// </summary> /// <param name="formid"></param> /// <param name="dat...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息