回收站恢复模型文件重新发布知识

This commit is contained in:
Mr-wang 2023-08-17 16:32:17 +08:00
parent 2d26f508b5
commit a18d3fb305
2 changed files with 64 additions and 60 deletions

View File

@ -6,10 +6,14 @@ import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.*;
import com.actionsoft.apps.coe.pal.constant.CoEConstant;
import com.actionsoft.apps.coe.pal.system.util.StringUtil;
import com.actionsoft.bpms.commons.database.RowMap;
import com.actionsoft.bpms.commons.database.RowMapper;
import com.actionsoft.bpms.commons.mvc.dao.DaoObject;
import com.actionsoft.bpms.commons.mvc.view.ResponseObject;
import com.actionsoft.bpms.commons.pagination.SQLPagination;
import com.actionsoft.bpms.server.UserContext;
import com.actionsoft.bpms.server.conf.server.AWSServerConf;
import com.actionsoft.bpms.util.DBSql;
import com.actionsoft.bpms.util.UUIDGener;
@ -21,6 +25,9 @@ import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryRemoveInfoM
import com.actionsoft.apps.coe.pal.pal.repository.model.PALRepositoryRemoveModel;
import com.actionsoft.apps.coe.pal.pal.repository.model.impl.PALRepositoryModelImpl;
import com.actionsoft.exception.AWSDataAccessException;
import com.actionsoft.sdk.local.SDK;
import com.actionsoft.sdk.local.api.AppAPI;
import com.alibaba.fastjson.JSONArray;
import jodd.util.StringPool;
public class PALRepositoryRemoveInfo extends DaoObject<PALRepositoryRemoveInfoModel> {
@ -554,6 +561,7 @@ public class PALRepositoryRemoveInfo extends DaoObject<PALRepositoryRemoveInfoMo
PALRepository dao = new PALRepository();
for (PALRepositoryRemoveModel model : list) {
dao.insert(conn, model);
PublishKnow(CoEConstant.APP_ID,UserContext.fromUID(model.getCreateUser()),model.getExt4());
}
}
@ -618,6 +626,62 @@ public class PALRepositoryRemoveInfo extends DaoObject<PALRepositoryRemoveInfoMo
return flag;
}
/**
* 发布知识
*
* @param processExecutionContext
* @param userContext
* @param id
*/
public void PublishKnow(String sourceAppId, UserContext userContext, String id) {
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()) {
// 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", userContext.getSessionId());
AppAPI appAPI = SDK.getAppAPI();
// 发布知识
ResponseObject ro = appAPI.callASLP(appAPI.getAppContext(sourceAppId), aslp, params);
System.out.println("知识发布============" + ro);
}
}
private boolean isExistTable() {
return true;
// Connection conn = DBSql.open();

View File

@ -601,12 +601,6 @@ public class CoeProcessRecycleWeb extends ActionWeb {
}*/
dao.restoreRecycleModel(removeId);
PALRepositoryRemoveModel palRepositoryRemoveModel = PALRepositoryRemoveCache.getCache().get(removeId);
PALRepositoryModel model = PALRepositoryCache.getCache().get(palRepositoryRemoveModel.getId());
if (model.isPublish()){
PublishKnow("com.actionsoft.apps.coe.pal",_uc,model.getExt4());
}
// 操作行为日志记录
if (SDK.getAppAPI().getPropertyBooleanValue(CoEConstant.APP_ID, "IS_RECORD_OP_LOG", false)) {
CoEOpLogAPI.auditOkOp(_uc, CoEOpLogConst.MODULE_CATEGORY_RECYCLE, CoEOpLogConst.OP_RESTORE, CoEOpLogConst.INFO_RECYCLE_RESTORE);
@ -629,60 +623,6 @@ public class CoeProcessRecycleWeb extends ActionWeb {
}
/**
* 发布知识
*
* @param processExecutionContext
* @param userContext
* @param id
*/
public void PublishKnow(String sourceAppId, UserContext userContext, String id) {
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()) {
// 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", userContext.getSessionId());
AppAPI appAPI = SDK.getAppAPI();
// 发布知识
ResponseObject ro = appAPI.callASLP(appAPI.getAppContext(sourceAppId), aslp, params);
System.out.println("知识发布============" + ro);
}
}
/**
* 按照父子节点排序