using System;
|
using System.Collections.Generic;
|
using System.Data;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
using Newtonsoft.Json;
|
using WebAPI.Utility;
|
|
namespace WebAPI
|
{
|
public static class InvokeHelper
|
{
|
private static string CloudUrl = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "KDApiUrl");//K/3 Cloud 业务站点地址
|
/// <summary>
|
/// 登陆
|
/// </summary>
|
public static string Login()
|
{
|
//从C盘配置文件获取 CLOUD网址、账套信息、登录用户、登录密码
|
Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo);
|
var useName = Pub_Class.ClsPub.sCLOUDUseName;
|
var pwd = Pub_Class.ClsPub.sCLOUDPsd;
|
var dbId = Pub_Class.ClsPub.sCLOUDAcc;
|
CloudUrl = Pub_Class.ClsPub.sCLOUDUrl;
|
|
//原从Config/kdapi.config模块中获取 20240712屏蔽
|
//var dbId = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DbId");
|
//var useName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "UserName");
|
//var pwd = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "PassWord");
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
Parameters.Add(dbId);//账套标示
|
Parameters.Add(useName);//用户名
|
Parameters.Add(pwd);//密码
|
Parameters.Add(2052);//2052代表中文
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
|
return httpClient.SyncRequest();
|
}
|
|
public static string LoginUser(string user)
|
{
|
//从C盘配置文件获取 CLOUD网址、账套信息、登录用户、登录密码
|
Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo);
|
var useName = Pub_Class.ClsPub.sCLOUDUseName;
|
var pwd = Pub_Class.ClsPub.sCLOUDPsd;
|
var dbId = Pub_Class.ClsPub.sCLOUDAcc;
|
CloudUrl = Pub_Class.ClsPub.sCLOUDUrl;
|
|
//获取用户绑定金蝶账号
|
DataSet ds;
|
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
|
ds = oCN.RunProcReturn("exec h_p_API_GetCloudUserByLoginUser '" + user.ToString() + "'", "h_p_API_GetCloudUserByLoginUser");
|
|
if (ds != null && ds.Tables[0].Rows.Count != 0)
|
{
|
useName = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HCloudUserName"]);
|
pwd = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HCloudUserPsd"]);
|
}
|
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
Parameters.Add(dbId);//账套标示
|
Parameters.Add(useName);//用户名
|
Parameters.Add(pwd);//密码
|
Parameters.Add(2052);//2052代表中文
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
|
return httpClient.SyncRequest();
|
}
|
|
public static async Task<string> LoginAsync()
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc");
|
List<object> Parameters = new List<object>();
|
Parameters.Add("622703e117d642");//账套标示
|
Parameters.Add("Administrator");//用户名
|
Parameters.Add("sa@123456");//密码
|
Parameters.Add(2052);//2052代表中文
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
|
return await httpClient.AsyncRequest();
|
}
|
|
/// <summary>
|
/// 保存
|
/// </summary>
|
/// <param name="formId"></param>
|
/// <param name="content"></param>
|
/// <returns></returns>
|
public static string Save(string formId, string content)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
Parameters.Add(formId);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return httpClient.SyncRequest();
|
}
|
|
public static string BatchSave(string formId, string content)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.BatchSave.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
Parameters.Add(formId);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return httpClient.SyncRequest();
|
}
|
|
public static async Task<string> SaveAsync(string formId, string content)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc");
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
Parameters.Add(formId);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return await httpClient.AsyncRequest();
|
}
|
|
/// <summary>
|
/// 提交
|
/// </summary>
|
/// <param name="formId"></param>
|
/// <param name="content"></param>
|
/// <returns></returns>
|
public static string Submit(string formId, string content)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
Parameters.Add(formId);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return httpClient.SyncRequest();
|
}
|
/// <summary>
|
/// 删除
|
/// </summary>
|
/// <param name="formId"></param>
|
/// <param name="content"></param>
|
/// <returns></returns>
|
public static string Delete(string formId, string content)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Delete.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
Parameters.Add(formId);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return httpClient.SyncRequest();
|
}
|
|
public static async Task<string> DeleteAsync(string formId, string content)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Delete.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
Parameters.Add(formId);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return await httpClient.AsyncRequest();
|
}
|
|
|
/// <summary>
|
/// 审核
|
/// </summary>
|
/// <param name="formId"></param>
|
/// <param name="content"></param>
|
/// <returns></returns>
|
public static string Audit(string formId, string content)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
Parameters.Add(formId);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return httpClient.SyncRequest();
|
}
|
/// <summary>
|
/// 查询
|
/// </summary>
|
/// <param name="formId"></param>
|
/// <param name="content"></param>
|
/// <returns></returns>
|
public static string View(string formId, string content)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
Parameters.Add(formId);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return httpClient.SyncRequest();
|
}
|
|
//反审核
|
public static string UnAudit(string formId, string content)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.UnAudit.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
Parameters.Add(formId);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return httpClient.SyncRequest();
|
}
|
//下推
|
public static string Push(string formId, string content)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Push.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
Parameters.Add(formId);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return httpClient.SyncRequest();
|
}
|
|
/// <summary>
|
/// 单据查询
|
/// </summary>
|
public static string Query(string formId, string content)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery.common.kdsvc");
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
//Parameters.Add(formId);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return httpClient.SyncRequest();
|
}
|
|
/// <summary>
|
/// 自定义
|
/// </summary>
|
/// <param name="key">自定义方法标识</param>
|
/// <param name="args">参数</param>
|
/// <returns></returns>
|
public static string AbstractWebApiBusinessService(string key, List<object> args)
|
{
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, key, ".common.kdsvc");
|
|
httpClient.Content = JsonConvert.SerializeObject(args);
|
return httpClient.SyncRequest();
|
}
|
|
//生产订单 执行
|
public static string ExcuteOperation(string formId, string opNumber, string content)
|
{
|
LogService.Write("生产订单 执行,opNumber: " + opNumber + ",content:" + content);
|
HttpClient httpClient = new HttpClient();
|
httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExcuteOperation.common.kdsvc");
|
|
List<object> Parameters = new List<object>();
|
//业务对象Id
|
Parameters.Add(formId);
|
//操作 开工"ToStart"
|
Parameters.Add(opNumber);
|
//Json字串
|
Parameters.Add(content);
|
httpClient.Content = JsonConvert.SerializeObject(Parameters);
|
return httpClient.SyncRequest();
|
}
|
}
|
}
|