泛微E9工作流字段适配器
1. StringToArray:字符串转数组解析器
功能特性:
- 智能处理空值场景:当输入字符串为空或仅含空白字符时,自动返回空数组
- 采用高性能
explode
函数实现字符串分割,支持自定义分隔符配置 - 典型应用场景:处理CSV格式数据、多值属性字段解析等
配置示例:
{
"name": "StringToArray",
"params": ","
}
输入输出对比:
- 原始数据:
{ "DynamicPropertyKeys": "priuserdefnvc1,priuserdefnvc2" }
- 转换结果:
{ "DynamicPropertyKeys": [ "priuserdefnvc1", "priuserdefnvc2" ] }
2. ArrayToString:数组转字符串解析器
核心能力:
- 通过
implode
函数实现数组元素的高效拼接 - 支持自定义连接符配置,满足不同系统对接需求
- 典型应用:将多选字段值转换为目标系统可识别的字符串格式
配置模板:
{
"name": "ArrayToString",
"params": ","
}
转换示例:
- 输入数据:
{ "DynamicPropertyKeys": [ "test1", "test2", "test3" ] }
- 输出结果:
{ "DynamicPropertyKeys": "test1,test2,test3" }
3. ConvertJson:JSON格式转换器
技术特性:
- 自动清理JSON字符串中的换行符等特殊字符
- 采用
json_decode
实现深度格式转换 - 支持复杂JSON结构的标准化处理
基础配置:
{
"name": "ConvertJson"
}
典型转换案例:
- 原始JSON:
{ "FName": { "1033": "2037", "2052": "2037" } }
- 标准化输出:
{ "FName": [ { "Key": 1033, "Value": "2037" }, { "Key": 2052, "Value": "2037" } ] }
4. ConvertObjectParser:对象封装解析器
特殊处理能力:
- 实现K3wise/黑湖等系统的特殊对象封装需求
- 支持字段名的动态配置
- 确保数据符合目标系统的严格格式要求
配置示例:
{
"name": "ConvertObjectParser",
"params": "FNUMBER"
}
转换过程:
- 输入数据:
{ "FNUMBER": "FKDLX04_SYS" }
- 封装结果:
{ "FBillTypeID": { "FNUMBER": "FKDLX04_SYS" } }
5. ConvertTwoStageObjectParser:多层对象解析器
嵌套处理能力:
- 构建两级嵌套的对象结构
- 支持动态配置各级字段名
- 满足复杂系统的深度嵌套格式要求
配置模板:
{
"name": "ConvertTwoStageObjectParser",
"params1": "value",
"params2": "phone"
}
输出示例:
{
"_widget_1432728651499": {
"value": {
"phone": "13800000000"
}
}
}
6. K3WiseHeiHuCustomParser:行业专用解析器
行业适配特性:
- 专为K3wise/黑湖系统设计的格式转换器
- 支持物料编码等业务字段的特殊处理
- 确保数据符合制造业ERP系统的规范要求
配置示例:
{
"name": "K3WiseHeiHuCustomParser",
"params": "物料短代码"
}
转换案例:
- 原始数据:
{ "物料短代码": "6030130021" }
- 标准输出:
{ "materialCustomFields": [ { "keyName": "物料短代码", "keyValue": "6030130021" } ] }
7. workflowRequestTableFields:泛微E9适配器
OA系统集成能力:
- 专为泛微E9工作流设计的字段转换器
- 支持字段权限控制(查看/编辑)
- 符合泛微API的严格格式规范
完整配置:
{
"name": "workflowRequestTableFields",
"view": true,
"edit": true,
"fieldId": "12258"
}
转换示例:
- 输入数据:
{ "wldwlx": "BD_Supplier" }
- 接口就绪数据:
{ "fieldName": "wldwlx", "fieldValue": "BD_Supplier", "view": true, "edit": true, "fieldId": "12258" }