using Kingdee.CDP.WebApi.SDK;
|
using MES.Service.Dto.webApi.PLM;
|
using Newtonsoft.Json;
|
using System.Text;
|
|
namespace MES.Service.service.PLM;
|
|
public class PLMManager
|
{
|
public List<BaseObject> RetrieveDrawings(string ItemNo)
|
{
|
return GetPlmCfgBase(ItemNo);
|
}
|
|
|
public List<BaseObject> GetPlmCfgBase(string ItemNo)
|
{
|
//注意 1:此处不再使用参数形式传入用户名及密码等敏感信息,改为在登录配置文件中设置。
|
//注意 2:必须先配置第三方系统登录授权信息后,再进行业务操作,详情参考各语言版本SDK介绍中的登录配置文件说明。
|
//读取配置,初始化SDK
|
K3CloudApi client = new K3CloudApi();
|
//用于记录结果
|
StringBuilder Info = new StringBuilder();
|
//业务对象标识
|
//string formId = "PLM_STD_DOCUMENT";
|
string formId = "PLM_CFG_BASE";
|
DateTime dt = DateTime.Now;
|
//查询字段集合,即返回哪些数据,不能为空,根据不同业务单据填写不同的字段名,以下仅为示例
|
//string fieldKeys = "FCode,FFileId,FRelevantObject";
|
//string FilterString = "FID='-2146304'";
|
string fieldKeys = "FID,FCode,FName";
|
string FilterString = "FCode='5.03.14.1414'";
|
string OrderString = "";
|
int TopRowCount = 0;
|
int StartRow = 0;
|
int Limit = 0;
|
|
var param = new QueryParam()
|
{
|
FormId = formId,
|
FieldKeys = fieldKeys,
|
FilterString = FilterString,
|
OrderString = OrderString,
|
TopRowCount = TopRowCount,
|
StartRow = StartRow,
|
Limit = Limit
|
};
|
//调用接口
|
var result = client.ExecuteBillQuery(param.ToJson());
|
|
return result.Select(s =>
|
{
|
var entity = new BaseObject
|
{
|
FID = (long)s[0],
|
FCode = (string)s[1],
|
FName = (string)s[2],
|
};
|
return entity;
|
}).ToList();
|
}
|
}
|