zoukankan      html  css  js  c++  java
  • 调用K3Cloud webapi

     public class K3CloudWebApi
        {
            #region 表单保存、提交、审核
    
            /// <summary>
            /// 验证登陆
            /// </summary>
            /// <param name="context"></param>
            /// <param name="DBCenterID"></param>
            /// <param name="F_AT_ServiceSettings"></param>
            /// <param name="F_AT_USERNAME"></param>
            /// <param name="F_AT_Password"></param>
            /// <returns></returns>
            public static KeyValuePair<bool, K3CloudApiClient> ValidateLogin(Context context, string DBCenterID, string F_AT_ServiceSettings, string F_AT_USERNAME, string F_AT_Password)
            {
    
                F_AT_ServiceSettings = F_AT_ServiceSettings + "/";
                K3CloudApiClient client = new K3CloudApiClient(F_AT_ServiceSettings);
                var ret = client.ValidateLogin(DBCenterID, F_AT_USERNAME, F_AT_Password, 2052);
                var result = JObject.Parse(ret)["LoginResultType"].Value<int>();
                if (result == 1)
                {
                    return new KeyValuePair<bool, K3CloudApiClient>(true, client);
                }
                return new KeyValuePair<bool, K3CloudApiClient>(false, null);
            }
            /// <summary>
            /// 保存
            /// </summary>
            /// <param name="client"></param>
            /// <param name="formId"></param>
            /// <param name="Entity"></param>
            /// <returns></returns>
            public static KeyValuePair<bool, string> FormSave<T>(K3CloudApiClient client, string formId, RequestBase<T> Entity)
            {
                var ret1 = client.Save(formId, JsonConvert.SerializeObject(Entity));
                var result1 = JsonConvert.DeserializeObject<K3CloudResponse>(ret1);
                if (!result1.Result.ResponseStatus.IsSuccess)
                {
                    string errMsg = "保存失败原因:";
                    foreach (var error in result1.Result.ResponseStatus.Errors)
                    {
                        errMsg += error.Message + ";";
                    }
                    return new KeyValuePair<bool, string>(false, errMsg + "
    ");
                }
                else
                {
                    string Number = "";
                    foreach (var entity in result1.Result.ResponseStatus.SuccessEntitys)
                    {
                        Number += entity.Number + ",";
                    }
                    return new KeyValuePair<bool, string>(true, Number.Trim(','));
                }
            }
    
            /// <summary>
            /// 提交
            /// </summary>
            /// <param name="client"></param>
            /// <param name="formId"></param>
            /// <param name="Numbers"></param>
            /// <returns></returns>
            public static KeyValuePair<bool, string> FormSubmit(K3CloudApiClient client, string formId, string[] Numbers)
            {
                //提交
                var submitDate = new
                {
                    CreateOrgId = 0,
                    Numbers = Numbers,
                    Ids = "",
                    SelectedPostId = 0
                };
                var ret1 = client.Submit(formId, JsonConvert.SerializeObject(submitDate));
                var result1 = JsonConvert.DeserializeObject<K3CloudResponse>(ret1);
                if (!result1.Result.ResponseStatus.IsSuccess)
                {
                    string errMsg = "提交失败原因:";
                    foreach (var error in result1.Result.ResponseStatus.Errors)
                    {
                        errMsg += error.Message + ";";
                    }
                    return new KeyValuePair<bool, string>(false, errMsg + "
    ");
                }
                else
                {
                    string Number = "";
                    foreach (var entity in result1.Result.ResponseStatus.SuccessEntitys)
                    {
                        Number += entity.Number + ",";
                    }
                    return new KeyValuePair<bool, string>(true, Number.Trim(','));
                }
            }
    
            /// <summary>
            /// 审核
            /// </summary>
            /// <param name="client"></param>
            /// <param name="formId"></param>
            /// <param name="Numbers"></param>
            /// <returns></returns>
            public static KeyValuePair<bool, string> FormAudit(K3CloudApiClient client, string formId, string[] Numbers)
            {
                //审核 
                var auditDate = new
                {
                    CreateOrgId = 0,
                    Numbers = Numbers,
                    Ids = "",
                    InterationFlags = ""
                };
                var ret1 = client.Audit(formId, JsonConvert.SerializeObject(auditDate));
                var result1 = JsonConvert.DeserializeObject<K3CloudResponse>(ret1);
                if (!result1.Result.ResponseStatus.IsSuccess)
                {
                    string errMsg = "审核失败原因:";
                    foreach (var error in result1.Result.ResponseStatus.Errors)
                    {
                        errMsg += error.Message + ";";
                    }
                    return new KeyValuePair<bool, string>(false, errMsg + "
    ");
                }
                else
                {
                    string Number = "";
                    foreach (var entity in result1.Result.ResponseStatus.SuccessEntitys)
                    {
                        Number += entity.Number + ",";
                    }
                    return new KeyValuePair<bool, string>(true, Number.Trim(','));
                }
            }
    
            #endregion
    
            #region 查询
            public static KeyValuePair<bool, List<List<object>>> ExecuteBillQuery(K3CloudApiClient client, string formId, string FieldKeys, string FilterString)
            {
                //查询
                var date = new
                {
                    FormId = formId,
                    FieldKeys = FieldKeys,//"FID,FBILLNO,FEntity_FENTRYID,FEntity_FSeq,FMaterialID,FMaterialName,FMaterialID.FName,FMaterialID.FStockId",
                    FilterString = FilterString,//"FBILLNO = 'XSCKD000001'",
                    OrderString = "",
                    TopRowCount = 0,
                    StartRow = 0,
                    Limit = 0
                };
                var result1 = client.ExecuteBillQuery(JsonConvert.SerializeObject(date));
                if (result1.Any())
                {
                    return new KeyValuePair<bool, List<List<object>>>(true, result1);
                }
                return new KeyValuePair<bool, List<List<object>>>(false, null);
    
            }
            #endregion
    
            /// <summary>
            /// 新增--销售订单
            /// </summary>
            /// <param name="client"></param>
            /// <param name="Entity"></param>
            /// <returns></returns>
            public static KeyValuePair<bool, string> InsertSalOrder(K3CloudApiClient client, RequestBase<SALORDER> Entity)
            {
    
                return FormSave(client, "SAL_SaleOrder", Entity);
            }
            /// <summary>
            /// 新增--客户
            /// </summary>
            /// <param name="client"></param>
            /// <param name="Entity"></param>
            /// <returns></returns>
            public static KeyValuePair<bool, string> InsertSalCust(K3CloudApiClient client, RequestBase<BD_Customer> Entity)
            {
                var saveResult = FormSave(client, "BD_Customer", Entity);
                if (saveResult.Key)
                {
                    string[] Numbers = { saveResult.Value };
                    var submitResult = FormSubmit(client, "BD_Customer", Numbers);
                    if (submitResult.Key)
                    {
                        return FormAudit(client, "BD_Customer", Numbers);
                    }
                    return new KeyValuePair<bool, string>(false, submitResult.Value);
                }
                return new KeyValuePair<bool, string>(false, saveResult.Value);
            }
            /// <summary>
            /// 新增--计量单位
            /// </summary>
            /// <param name="client"></param>
            /// <param name="Entity"></param>
            /// <returns></returns>
            public static KeyValuePair<bool, string> InsertSalUnit(K3CloudApiClient client, RequestBase<BD_UNIT> Entity)
            {
                var saveResult = FormSave(client, "BD_UNIT", Entity);
                if (saveResult.Key)
                {
                    string[] Numbers = { saveResult.Value };
                    var submitResult = FormSubmit(client, "BD_UNIT", Numbers);
                    if (submitResult.Key)
                    {
                        return FormAudit(client, "BD_UNIT", Numbers);
                    }
                    return new KeyValuePair<bool, string>(false, submitResult.Value);
                }
                return new KeyValuePair<bool, string>(false, saveResult.Value);
            }
            /// <summary>
            /// 新增--物料
            /// </summary>
            /// <param name="client"></param>
            /// <param name="Entity"></param>
            /// <returns></returns>
            public static KeyValuePair<bool, string> InsertSalMaterial(K3CloudApiClient client, RequestBase<BD_MATERIAL> Entity)
            {
    
                var saveResult = FormSave(client, "BD_MATERIAL", Entity);
                if (saveResult.Key)
                {
                    string[] Numbers = { saveResult.Value };
                    var submitResult = FormSubmit(client, "BD_MATERIAL", Numbers);
                    if (submitResult.Key)
                    {
                        return FormAudit(client, "BD_MATERIAL", Numbers);
                    }
                    return new KeyValuePair<bool, string>(false, submitResult.Value);
                }
                return new KeyValuePair<bool, string>(false, saveResult.Value);
            }
            /// <summary>
            /// 新增--职员
            /// </summary>
            /// <param name="client"></param>
            /// <param name="Entity"></param>
            /// <returns></returns>
            public static KeyValuePair<bool, string> InsertEmployee(K3CloudApiClient client, RequestBase<HR_EMPINFO> Entity)
            {
    
                var saveResult = FormSave(client, "HR_EMPINFO" ,Entity);
                if (saveResult.Key)
                {
                    string[] Numbers = { saveResult.Value };
                    var submitResult = FormSubmit(client, "HR_EMPINFO", Numbers);
                    if (submitResult.Key)
                    {
                        return FormAudit(client, "HR_EMPINFO", Numbers);
                    }
                    return new KeyValuePair<bool, string>(false, submitResult.Value);
                }
                return new KeyValuePair<bool, string>(false, saveResult.Value);
            }
            /// <summary>
            /// 新增--供应商
            /// </summary>
            /// <param name="client"></param>
            /// <param name="Entity"></param>
            /// <returns></returns>
            public static KeyValuePair<bool, string> InsertSupplier(K3CloudApiClient client, RequestBase<BD_SUPPLIER> Entity)
            {
    
                var saveResult = FormSave(client, "BD_SUPPLIER",Entity);
                if (saveResult.Key)
                {
                    string[] Numbers = { saveResult.Value };
                    var submitResult = FormSubmit(client, "BD_SUPPLIER", Numbers);
                    if (submitResult.Key)
                    {
                        return FormAudit(client, "BD_SUPPLIER", Numbers);
                    }
                    return new KeyValuePair<bool, string>(false, submitResult.Value);
                }
                return new KeyValuePair<bool, string>(false, saveResult.Value);
            }
    
        }
    

      

  • 相关阅读:
    Windows Server 2019 Core 或 hyper-v server 2019图形工具安装
    添加进站允许规则和出站规则命令 netsh advfirewall firewall
    ID 1196 请确保与从属 IP 地址相关联的网络适配器已配置为至少可以访问一个 DNS 服务器
    通过注册表的方式禁用IPV6
    MS-SQL SERVER服务器占用CPU高,用语句先排查。
    hyper-v server 卸载软件(MD-DOS卸载软件)
    除getopenFilename以外。打开文件的另一种方式FileDialog
    返回当前工作簿的目录ThisWorkbook.path & ""
    筛选
    自动填充
  • 原文地址:https://www.cnblogs.com/yuking/p/10754813.html
Copyright © 2011-2022 走看看