Merge branch 'apps_dev' of https://e.coding.net/yilidev/yilipalkaifa/apps into apps_dev

This commit is contained in:
zhal 2023-10-17 17:51:46 +08:00
commit d8bdb24019

View File

@ -1,16 +1,45 @@
package com.awspaas.user.bpa.job;
import com.actionsoft.apps.coe.pal.pal.output.constant.OutputConst;
import com.actionsoft.apps.coe.pal.pal.output.dao.OutputTask;
import com.actionsoft.apps.coe.pal.pal.output.extend.OutputAppManager;
import com.actionsoft.apps.coe.pal.pal.output.extend.OutputAppProfile;
import com.actionsoft.apps.coe.pal.pal.output.model.OutputTaskModel;
import com.actionsoft.apps.coe.pal.pal.repository.PALRepositoryQueryAPIManager;
import com.actionsoft.apps.coe.pal.pal.repository.cache.PALRepositoryCache;
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryModel;
import com.actionsoft.apps.coe.pal.pal.repository.upfile.model.UpfileModel;
import com.actionsoft.apps.coe.pal.pal.repository.upfile.web.UpfileWeb;
import com.actionsoft.apps.resource.plugin.profile.DCPluginProfile;
import com.actionsoft.bpms.bo.engine.BO;
import com.actionsoft.bpms.bpmn.engine.model.run.delegate.ProcessInstance;
import com.actionsoft.bpms.commons.database.RowMap;
import com.actionsoft.bpms.commons.login.constant.LoginConst;
import com.actionsoft.bpms.commons.mvc.view.ResponseObject;
import com.actionsoft.bpms.schedule.IJob;
import com.actionsoft.bpms.server.SSOUtil;
import com.actionsoft.bpms.server.UserContext;
import com.actionsoft.bpms.server.fs.DCContext;
import com.actionsoft.bpms.util.DBSql;
import com.actionsoft.bpms.util.UUIDGener;
import com.actionsoft.bpms.util.UtilString;
import com.actionsoft.exception.AWSException;
import com.actionsoft.sdk.local.SDK;
import com.actionsoft.sdk.local.api.AppAPI;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.apache.commons.lang.StringUtils;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import java.util.*;
public class BatchRefreshKnowJob implements IJob {
@Override
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
DBSql.getMaps("SELECT * FROM APP_ACT_COE_PAL_REPOSITORY WHERE" +
List<RowMap> maps = DBSql.getMaps("SELECT * FROM APP_ACT_COE_PAL_REPOSITORY WHERE" +
" ISPUBLISH = 1 AND ISUSE = 1 AND ISSTOP = 0 AND EXT4 IS NULL" +
" PLCATEGORY = 'process'and PLMETHODID !='process.framework'" +
" AND PLCATEGORY = 'process'and PLMETHODID !='process.framework'" +
"and PLNAME not in ('流程架构图','测试用','GMY-截图用','sx批量测试'" +
",'8.2培训使用','用户练习使用','YX测试分部','yx测试人员','yx测试部','流程架构测试')" +
" and PLPARENTID not in ('63ff93c6-2f27-4851-a396-6830c428db2e',"
@ -19,5 +48,451 @@ public class BatchRefreshKnowJob implements IJob {
+ " '98bd5917-7563-4b29-b775-815e91d9864c','f07da63c-3423-4c1e-ae75-b323c6a69093',"
+ " '79cb4c35-d2f7-4c43-a7db-44038b557eac','7ad79a73-a497-417a-a5ec-d4c9fd45061c',"
+ " '42c09260-c1d3-44b7-ac3d-f8280e04c294')");
for (RowMap rowMap:
maps) {
String id = rowMap.getString("ID");//PAL模型ID
UserContext me = UserContext.fromUID("admin");
createFile(id,me);
SDK.getLogAPI().consoleInfo("该文件名称创建成功>>>>>>>>>>"+rowMap.getString("PLNAME"));
}
}
/**
* 创建手册,如果是未发布的流程模型,会在N表中创建一个数据
* @param plId 流程模型ID
* @param me 用户信息
*/
public void createFile(String plId, UserContext me){
int count = 0;
// 生成手册
PALRepositoryModel model = PALRepositoryCache.getCache().get(plId);
String taskId = createOutputReport(model, "7d3ca852-a0bd-42e6-80b1-3dcea6f55083", "admin", "", plId);
System.err.println("======手动生成手册id======"+taskId);
// 刷新预览加载的表
String sqlr = "UPDATE BO_EU_PAL_OUTPUTREPORT SET TASKID = '" + taskId + "' WHERE PLID = '" + plId + "'";
DBSql.update(sqlr);
String sql1 = "SELECT ID FROM BO_ACT_COE_PUBLISH_N WHERE PUBLISHFILEID = '" + plId + "'";
String string = DBSql.getString(sql1);
System.out.println(">>>>>>>>>>>>>>>"+string);
String sql2 = "SELECT ID FROM BO_ACT_COE_PUBLISH_C WHERE CHANGEDFILEIDNEW = '" + plId + "'";
if (UtilString.isNotEmpty(DBSql.getString(sql1))) {
count = DBSql.update(
"UPDATE BO_ACT_COE_PUBLISH_N SET TASKID='" + taskId + "'WHERE PUBLISHFILEID ='" + plId + "'");
}
if (UtilString.isNotEmpty(DBSql.getString(sql2))) {
count = DBSql.update(
"UPDATE BO_ACT_COE_PUBLISH_C SET TASKID='" + taskId + "'WHERE CHANGEDFILEIDNEW ='" + plId + "'");
}
if (count != 0) {
DBSql.update("UPDATE APP_ACT_COE_PAL_PUBLISH_LIST SET TASKID='" + taskId + "'WHERE PALREPOSITORYID='"
+ plId + "'");
}
if(UtilString.isEmpty(DBSql.getString(sql1)) && UtilString.isEmpty(DBSql.getString(sql2))){
System.out.println("发布流程无数据===================================================");
////String sql = "SELECT pl.TASKID FROM APP_ACT_COE_PAL_PUBLISH p, APP_ACT_COE_PAL_PUBLISH_LIST pl
// // WHERE pl.pid = p.id AND pl.palrepositoryid = ? ORDER BY publishdate DESC";
//审批改为发布如果发布表未存数据则自动生成发布关联表数据可使部门视图正常使用
BO publishN=new BO();
publishN.set("PUBLISTHTYPE","N");
publishN.set("PUBLISHFILENAME",model.getName());
publishN.set("PUBLISHFILEID",plId);
ProcessInstance processInstance = SDK.getProcessAPI().createProcessInstance("obj_a228b4816a7b4f58a862b9612299948c", "admin", "");
SDK.getBOAPI().create("BO_ACT_COE_PUBLISH_N",publishN,processInstance,me);
/*BO publish=new BO();
publish.set("PROCESSINSTID",processInstance.getId());
publish.set("PUBLISH","1");
SDK.getBOAPI().createDataBO("APP_ACT_COE_PAL_PUBLISH",publish,me);*/
String sql = "insert into APP_ACT_COE_PAL_PUBLISH (ID,PROCESSINSTID,PUBLISHN) values ('%s', '%s', '%s')";
String id = UUIDGener.getUUID();
int update = DBSql.update(String.format(sql, id, processInstance.getId(), '1'));
//BO app_act_coe_pal_publish = SDK.getBOAPI().query("APP_ACT_COE_PAL_PUBLISH").addQuery("BINDID=", processInstance.getId()).detail();
RowMap map = DBSql.getMap("select * from APP_ACT_COE_PAL_PUBLISH where PROCESSINSTID = '" + processInstance.getId() + "'");
/*BO publishList=new BO();
publishList.set("PID",app_act_coe_pal_publish.getString("ID"));
publishList.set("PALREPOSITORYID",plId);
SDK.getBOAPI().createDataBO("APP_ACT_COE_PAL_PUBLISH_LIST",publishList,me);*/
String app_act_coe_pal_publishsql = "insert into APP_ACT_COE_PAL_PUBLISH_LIST (ID,PID,PALREPOSITORYID) values ('%s', '%s', '%s')";
String app_act_coe_pal_publishid = UUIDGener.getUUID();
int app_act_coe_pal_publishupdate = DBSql.update(String.format(app_act_coe_pal_publishsql, app_act_coe_pal_publishid,map.getString("ID"), plId));
String repetition_TaskId = createOutputReport(model, "7d3ca852-a0bd-42e6-80b1-3dcea6f55083", "admin", "", plId);
System.err.println("======手动生成手册id======"+repetition_TaskId);
// 刷新预览加载的表
String repetition_sqlr = "UPDATE BO_EU_PAL_OUTPUTREPORT SET TASKID = '" + repetition_TaskId + "' WHERE PLID = '" + plId + "'";
String n_sql = "UPDATE BO_ACT_COE_PUBLISH_N SET TASKID = '" + repetition_TaskId + "' WHERE PUBLISHFILEID = '" + plId + "'";
DBSql.update(sqlr);
DBSql.update(n_sql);
String repetition_sql1 = "SELECT ID FROM BO_ACT_COE_PUBLISH_N WHERE PUBLISHFILEID = '" + plId + "'";
BO bo_act_coe_publish_n = SDK.getBOAPI().query("BO_ACT_COE_PUBLISH_N", true).addQuery("PUBLISHFILEID = ", plId).detail();
System.out.println("bo_act_coe_publish_nL>>>>>>>>>>>>>>>>>>"+bo_act_coe_publish_n);
createKmsByNew(bo_act_coe_publish_n,"7d3ca852-a0bd-42e6-80b1-3dcea6f55083",processInstance,"admin");
String repetition_sql2 = "SELECT ID FROM BO_ACT_COE_PUBLISH_C WHERE CHANGEDFILEIDNEW = '" + plId + "'";
if (UtilString.isNotEmpty(DBSql.getString(repetition_sql1))) {
count = DBSql.update(
"UPDATE BO_ACT_COE_PUBLISH_N SET TASKID='" + repetition_TaskId + "'WHERE PUBLISHFILEID ='" + plId + "'");
}
if (UtilString.isNotEmpty(DBSql.getString(repetition_sql2))) {
count = DBSql.update(
"UPDATE BO_ACT_COE_PUBLISH_C SET TASKID='" + repetition_TaskId + "'WHERE CHANGEDFILEIDNEW ='" + plId + "'");
}
if (count != 0) {
DBSql.update("UPDATE APP_ACT_COE_PAL_PUBLISH_LIST SET TASKID='" + repetition_TaskId + "'WHERE PALREPOSITORYID='"
+ plId + "'");
}
}
System.err.println("重新生成手册成功=====》" + count);
}
private String createOutputReport(PALRepositoryModel model, String wsId, String userId, String teamId, String uuid) {
String taskId = "";
if (model.getMethodId().contains("process.")) {
taskId = PALRepositoryQueryAPIManager.getInstance().createOutputReportPr(wsId, userId, teamId, uuid);
JSONObject object = JSONObject.parseObject(taskId);
if ("ok".equals(object.getString("result"))) {
taskId = object.getJSONObject("data").getString("taskId");
}
} else if ("data.form".equals(model.getMethodId())) {
taskId = PALRepositoryQueryAPIManager.getInstance().createOutputReportBd(wsId, userId, teamId, uuid);
JSONObject object = JSONObject.parseObject(taskId);
if ("ok".equals(object.getString("result"))) {
taskId = object.getJSONObject("data").getString("taskId");
}
} else if ("control.policy".equals(model.getMethodId())) {
taskId = PALRepositoryQueryAPIManager.getInstance().createOutputReportZd(wsId, userId, teamId, uuid);
JSONObject object = JSONObject.parseObject(taskId);
if ("ok".equals(object.getString("result"))) {
taskId = object.getJSONObject("data").getString("taskId");
}
}
return taskId;
}
/**
* 通过发布知识创建知识
*
* @param bo 发布清单表数据
* @param wsId 知识库id
* @param processExecutionContext 流程数据
* @param uid 账户合计
*/
public void createKmsByNew(BO bo, String wsId, ProcessInstance processExecutionContext,
String uid) {
{
OutputTaskModel model = new OutputTask().getTaskReportById(bo.getString("TASKID"));
wsId = model.getWsId();
String publishfileid = bo.getString("PUBLISHFILEID");
String sql_n = "select * from APP_ACT_COE_PAL_REPOSITORY where id = '" + publishfileid + "'";
RowMap map = DBSql.getMap(sql_n);
if (StringUtils.isEmpty(map.getString("EXT4"))) {
// aslp服务地址
String aslps_create = "aslp://com.actionsoft.apps.kms/CreateKnwl";
// 参数定义列表
Map params_create = new HashMap<String, Object>();
//保密级别 0: 普通 1秘密 2机密,必填
params_create.put("securityLevel", 0);
//知识名称,必填
String level = "";
if (map != null) {
String pver = map.getString("PLVER");
if (UtilString.isNotEmpty(pver)) {
if (pver.contains(".00")) {
String levels = pver;
String[] plvers = levels.split("\\.");
plvers[1] = plvers[1].replaceAll("0", "");
level = plvers[0] + "." + plvers[1];
} else {
level = pver + ".0";
}
}
}
params_create.put("knwlName", map.getString("PLNAME") + "V" + level);
//是否可以评论,必填
params_create.put("isComment", true);
//是否可以评分,必填
params_create.put("isRate", true);
//有效期:yyyy-MM-dd,非必填
params_create.put("validDate", "2099-12-31");
//只读控制1在线阅读和下载 0在线阅读,必填
params_create.put("onlineLevel", 1);
//知识创建人某些特殊场景下sid和createUser代表的用户并不一样如果此参数为null则使用sid代表的用户,非必填
params_create.put("createUser", "admin");
//知识内容,非必填
params_create.put("cardContext", "");
//sid,必填
params_create.put("sid", UserContext.fromUID(processExecutionContext.getCreateUser()).getSessionId());
AppAPI appAPI_create = SDK.getAppAPI();
//创建知识
ResponseObject ro_create = appAPI_create.callASLP(
appAPI_create.getAppContext(processExecutionContext.getAppId()),
aslps_create, params_create);
String cardId = ((LinkedHashMap) ro_create.getData()).get("cardId").toString();
String sessionId = new SSOUtil().registerClientSessionNoPassword("admin", LoginConst.DEFAULT_LANG, "localhost", LoginConst.DEVICE_PC);
//AddKnwlAC(processExecutionContext, jsonArray1, processExecutionContext.getUserContext().getSessionId(),cardId);
String update_sql = "UPDATE APP_ACT_COE_PAL_REPOSITORY SET EXT4 = '" + cardId + "' WHERE "
+ " PLCATEGORY = 'process'and PLMETHODID !='process.framework' "
+ " and PLNAME not in ('流程架构图','测试用','GMY-截图用','sx批量测试'"
+ " ,'8.2培训使用','用户练习使用','YX测试分部','yx测试人员','yx测试部','流程架构测试')"
+ " and PLPARENTID not in ('63ff93c6-2f27-4851-a396-6830c428db2e',"
+ " 'c84f497a-4de3-4404-86e8-cd5af71c3b47','94dabf55-b032-4316-a4c3-00b83763da09',"
+ " '36ac7cdd-a361-4bd3-9511-c03c1b3627a4','84e534b4-e51a-4874-9ff1-8a0206d9e0c5',"
+ " '98bd5917-7563-4b29-b775-815e91d9864c','f07da63c-3423-4c1e-ae75-b323c6a69093',"
+ " '79cb4c35-d2f7-4c43-a7db-44038b557eac','7ad79a73-a497-417a-a5ec-d4c9fd45061c',"
+ " '42c09260-c1d3-44b7-ac3d-f8280e04c294') and ID = '" + publishfileid + "'";
int update = DBSql.update(update_sql);
System.out.println("更新id为" + publishfileid + "版本为的知识对应的资产库的EXT4的影响行数为" + update);
creadteFile(processExecutionContext, "BO_ACT_COE_PUBLISH_N", UserContext.fromUID(processExecutionContext.getCreateUser()),
cardId, "PUBLISHFILEID = ",sessionId);
}
}
}
/**
* 创建附件及文件
*
* @param processExecutionContext
* @param bo_name
* @param userContext
* @param cardId
* @param fileid
*/
public void creadteFile(ProcessInstance processExecutionContext, String bo_name, UserContext userContext,
String cardId, String fileid,String sid) {
/**
* 这个主要是负责对流程手册进行相关的文件的生成
*/
String sourceAppId = processExecutionContext.getAppId();
// aslp服务地址
String aslp = "aslp://com.actionsoft.apps.kms/CreateFile";
if (StringUtils.isNotEmpty(cardId)) {
String sql_ext4 = "select * from APP_ACT_COE_PAL_REPOSITORY where EXT4 = '" + cardId + "'";
RowMap map = DBSql.getMap(sql_ext4);
System.out.println("maps======>>>>>>>" + map);
System.out.println("fileid==》》》》" + fileid);
System.out.println("id==》》》》" + map.getString("ID"));
RowMap rowMap = DBSql
.getMap("SELECT * FROM " + bo_name + " where " + fileid + " '" + map.getString("ID") + "'");
// BO bos =
// SDK.getBOAPI().query(bo_name,true).addQuery(fileid,"17e7d198-1656-4a2c-8912-a81850170be9").detail();
if (rowMap != null) {
if (StringUtils.isNotEmpty(rowMap.getString("TASKID"))) {
OutputTaskModel model = new OutputTask().getTaskReportById(rowMap.getString("TASKID"));
if (model != null) {
// System.out.println("pdel============" + model);
OutputAppProfile appProfile = OutputAppManager.getProfile(model.getProfileId());
if (appProfile == null) {
throw new AWSException("Not Find OutputAppProfile! profileId=" + model.getProfileId());
}
DCPluginProfile dcProfile = SDK.getDCAPI().getDCProfile(appProfile.getAppContext().getId(),
OutputConst.EXT_APP_DC_OUTPUT);
if (dcProfile == null)
throw new AWSException(
"Not Find DCProfile! repositoryName=" + OutputConst.EXT_APP_DC_OUTPUT);
String sql_lever = "";
if (bo_name.equals("BO_ACT_COE_PUBLISH_N")) {
sql_lever = "SELECT PLVER FROM APP_ACT_COE_PAL_REPOSITORY WHERE ID = '"
+ rowMap.getString("PUBLISHFILEID") + "'";
} else if (bo_name.equals("BO_ACT_COE_PUBLISH_C")) {
sql_lever = "SELECT PLVER FROM APP_ACT_COE_PAL_REPOSITORY WHERE ID = '"
+ rowMap.getString("CHANGEDFILEIDNEW") + "'";
}
String lever = DBSql.getString(sql_lever);
System.out.println("版本号::::::::::::" + lever);
// lever = lever.substring(0,3);
if (lever.length() == 5 && lever.substring(4).equals("0")) {
lever.substring(0, 3);
} else if (lever.length() == 1) {
lever = lever + ".0";
}
String filename = "";
if (bo_name.equals("BO_ACT_COE_PUBLISH_N")) {
filename = rowMap.getString("PUBLISHFILENAME");
} else if (bo_name.equals("BO_ACT_COE_PUBLISH_C")) {
filename = rowMap.getString("CHANGEDFILENAMENEW");
}
DCContext dcContext = new DCContext(userContext, dcProfile, appProfile.getAppContext().getId(),
model.getWsId(), rowMap.getString("TASKID"), filename + "_" + lever + ".doc");
// UtilFile file = new UtilFile(dcContext.getPath());
Map params = new HashMap<String, Object>();
//知识ID,必填
params.put("cardId", cardId);
//sid,必填
params.put("sid", sid);
params.put("dc", dcContext);
AppAPI appAPI = SDK.getAppAPI();
//创建文件
ResponseObject ro = appAPI.callASLP(appAPI.getAppContext(sourceAppId), aslp, params);
System.out.println("流程手册的存入=================" + ro);
JSONArray coontest = new JSONArray(new LinkedList<>());
JSONObject jsonObject = new JSONObject(new LinkedHashMap<>());
jsonObject.put("documentId", cardId);
jsonObject.put("content", "");//信息附件
//jsonObject.put("abstract", dcContext);//信息摘要
jsonObject.put("title", dcContext.getFileName().substring(0,dcContext.getFileName().indexOf(".")));//信息标题
coontest.add(jsonObject);
createIndexesByContent(processExecutionContext,coontest);
}
}
}
String sql_A = "SELECT PLNAME FROM APP_ACT_COE_PAL_REPOSITORY where ID = '" + map.getString("ID")
+ "' AND PLMETHODID != 'process.framework' AND PLMETHODID IN (select distinct PLMETHODID from APP_ACT_COE_PAL_REPOSITORY)";
List<RowMap> rows = DBSql.getMaps(sql_A);
for (RowMap bo : rows) {
/**
* 这个是模型中的附件获取的并插入的数据信息需要做修改
*/
// 调用App
// 参数定义列表
Map paramss = new HashMap<String, Object>();
//知识ID,必填
paramss.put("cardId", cardId);
//sid,必填
paramss.put("sid", sid);
UpfileWeb upfileWeb = new UpfileWeb(userContext);
String sql_upfile = "select * from APP_ACT_COE_PAL_UPFILE where palrepositoryid in (select ID from APP_ACT_COE_PAL_REPOSITORY where PLMETHODID != 'process.framework' AND ID= '"
+ map.getString("ID") + "'" + ") ORDER BY FILENAME ASC";
List<RowMap> maps = DBSql.getMaps(sql_upfile);
for (RowMap row : maps) {
if (!row.getString("FILENAME").contains(".xml")) {
UpfileModel upfileModel = new UpfileModel();
upfileModel.setType(row.getString("FILETYPE"));
upfileModel.setFileName(row.getString("FILENAME"));
upfileModel.setPl_uuid(row.getString("PALREPOSITORYID"));
upfileModel.setShape_uuid(row.getString("SHAPEID"));
DCContext dcContexts = upfileWeb.getDCContext(upfileModel);
paramss.put("dc", dcContexts);
AppAPI appAPIs = SDK.getAppAPI();
ResponseObject ros = appAPIs.callASLP(appAPIs.getAppContext(sourceAppId), aslp, paramss);
JSONArray coontest = new JSONArray(new LinkedList<>());
JSONObject jsonObject = new JSONObject(new LinkedHashMap<>());
jsonObject.put("documentId", cardId);
jsonObject.put("content", "");//信息附件
//jsonObject.put("abstract", dcContexts);//信息摘要
jsonObject.put("title", dcContexts.getFileName().substring(0,dcContexts.getFileName().indexOf(".")));//信息标题
coontest.add(jsonObject);
createIndexesByContent(processExecutionContext,coontest);
}
}
}
try {
PublishKnow(processExecutionContext, userContext, cardId,sid);
} catch (Exception e) {
e.printStackTrace();
}
}
}
/**
* 创建索引
* @param processExecutionContext 流程实例
* @param contents 索引内容
* @return
*/
public boolean createIndexesByContent(ProcessInstance processExecutionContext,JSONArray contents) {
// 调用App
String sourceAppId =processExecutionContext.getAppId() ;
// aslp服务地址
String aslp = "aslp://com.actionsoft.apps.addons.es/createIndexesByContent";
// 参数定义列表
Map params = new HashMap<String, Object>();
//索引内容(JSONArray格式, JSONArray中包含JSONObject, JSONObject的内容同创建单个索引),必填
params.put("contents", contents);
//索引名称(文档在哪存放),必填
params.put("index", "com.actionsoft.apps.kms_kmsdoc_card");
//类型(索引中对数据进行逻辑分区不同 type的文档可能有不同的字段但最好能够非常相似,比如存储所有产品到索引products中但是你有许多不同的产品类别这些产品共享一种相同的或非常相似的模式他们有一个标题描述产品代码和价格他们只是正好属于产品下的一些子类用type表示不同的类别),必填
params.put("type", "kmsdoc_card");
AppAPI appAPI = SDK.getAppAPI();
//入库操作创建内容索引(多个)
ResponseObject ro = appAPI.callASLP(appAPI.getAppContext(sourceAppId), aslp, params);
return ro.isOk();
}
/**
* 发布知识
*
* @param processExecutionContext
* @param userContext
* @param id
*/
public void PublishKnow(ProcessInstance processExecutionContext, UserContext userContext, String id,String sid) {
String sql = "select EXT4 from APP_ACT_COE_PAL_REPOSITORY where id in (select PLPARENTID from APP_ACT_COE_PAL_REPOSITORY where EXT4 = '"
+ id + "')";
List<RowMap> maps = DBSql.getMaps(sql);
String ids = "";
for (RowMap rowmap : maps) {
ids += rowmap.getString("EXT4") + ",";
}
String[] deptSplit_id = ids.split(",");
JSONArray jsonArray = new JSONArray();
for (String id_names : deptSplit_id) {
jsonArray.add(id_names);
}
// jsonObject.put(deptSplit_id);
id += ",";
String[] deptSplit_das = id.split(",");
JSONArray jsonArray_das = new JSONArray();
for (String das : deptSplit_das) {
jsonArray_das.add(das);
}
// jsonObject.put(deptSplit_id);
if (!jsonArray_das.isEmpty() && !jsonArray.isEmpty()) {
// 调用App
String sourceAppId = processExecutionContext.getAppId();
// aslp服务地址
String aslp = "aslp://com.actionsoft.apps.kms/PublishKnwl";
// 参数定义列表
Map params = new HashMap<String, Object>();
// 要发布到的维度ID的JSON数组字符串,必填
params.put("dimensionIDArray", jsonArray.toString());
// 要发布的知识ID的JSON数组字符串,必填
params.put("knwlIDArray", jsonArray_das.toString());
// 标签的JSON数组字符串,非必填
// sid,必填
params.put("sid", sid);
AppAPI appAPI = SDK.getAppAPI();
// 发布知识
ResponseObject ro = appAPI.callASLP(appAPI.getAppContext(sourceAppId), aslp, params);
System.out.println("知识发布============" + ro);
}
}
}