Merge remote-tracking branch 'origin/develop' into develop

This commit is contained in:
yuezhihang
2021-12-16 09:46:16 +08:00
4 changed files with 16 additions and 18 deletions
@@ -47,7 +47,7 @@ public class BusProcessModelHisServiceImpl extends ServiceImpl<BusProcessModelHi
@Override @Override
public String mergeModelFile(String pid, String taskId,String fileSuffix){ public String mergeModelFile(String pid, String taskId,String fileSuffix){
String fileSavePath = filePath +"bussEdit"+ getUUIDPath(pid,taskId); String fileSavePath = "bussEdit"+ getUUIDPath(pid,taskId);
StringBuilder builder=new StringBuilder(); StringBuilder builder=new StringBuilder();
builder.append(filePath); builder.append(filePath);
@@ -64,12 +64,12 @@ public class BusProcessModelHisServiceImpl extends ServiceImpl<BusProcessModelHi
try { try {
if(!hisList.isEmpty()){ if(!hisList.isEmpty()){
newFileName = fileSavePath+taskId + "_" + pid + "_count." + fileSuffix; newFileName = fileSavePath+taskId + "_" + pid + "_count." + fileSuffix;
String changeFile = filePath + newFileName;
for (int i = 0; i < hisList.size(); i++) { for (int i = 0; i < hisList.size(); i++) {
if(i == 0){ if(i == 0){
PoiWord.wordRedDocument(modelPath,null,newFileName,hisList.get(i).getEditFilePath()); PoiWord.wordRedDocument(filePath+hisList.get(i).getEditFilePath(),null,changeFile,modelPath);
}else { }else {
PoiWord.wordRedDocument(newFileName,null,newFileName,hisList.get(i).getEditFilePath()); PoiWord.wordRedDocument(filePath+hisList.get(i).getEditFilePath(),null,changeFile,changeFile);
} }
} }
@@ -102,7 +102,7 @@ public class BusProcessModelHisServiceImpl extends ServiceImpl<BusProcessModelHi
*/ */
public String saveProcessFile(String filePath,String pid,String taskId,String fileSuffix){ public String saveProcessFile(String filePath,String pid,String taskId,String fileSuffix){
String fileSavePath = filePath +"bussEdit"+ getUUIDPath(pid,taskId); String fileSavePath = "bussEdit"+ getUUIDPath(pid,taskId);
String newFileName = ""; String newFileName = "";
try { try {
@@ -111,15 +111,15 @@ public class BusProcessModelHisServiceImpl extends ServiceImpl<BusProcessModelHi
dir.mkdirs(); dir.mkdirs();
} }
newFileName = taskId + "_" + pid + "_node." + fileSuffix; newFileName = fileSavePath + taskId + "_" + pid + "_node." + fileSuffix;
File saveFile = new File(fileSavePath + newFileName); File saveFile = new File(filePath + newFileName);
FileUtils.write(saveFile, "","UTF-8"); FileUtils.write(saveFile, "","UTF-8");
}catch (Exception e){ }catch (Exception e){
logger.error(e.getMessage(),e); logger.error(e.getMessage(),e);
} }
return fileSavePath+newFileName; return newFileName;
} }
public static String getUUIDPath(String pid,String taskId){ public static String getUUIDPath(String pid,String taskId){
@@ -51,20 +51,18 @@ public class BLApplicantAfter implements TaskListener{
String prcName = "企标制修订流程及企业标准库流程"; String prcName = "企标制修订流程及企业标准库流程";
// 下个节点执行人处理逻辑 // 下个节点执行人处理逻辑
List<String> nextUserList = new ArrayList(); List<String> finalNextUserList = new ArrayList();
List<BusProcessModelHis> busProcessModelHisList = new ArrayList<>(); List<BusProcessModelHis> busProcessModelHisList = new ArrayList<>();
if(StringUtils.isNotBlank(object.getString("modelData"))){ if(StringUtils.isNotBlank(object.getString("modelData"))){
List<JSONObject> valueArr = JSONArray.parseArray(object.getString("modelData"),JSONObject.class); List<JSONObject> valueArr = JSONArray.parseArray(object.getString("modelData"),JSONObject.class);
Map<String, List<JSONObject>> listMap = valueArr.stream().collect( Map<String, List<JSONObject>> listMap = valueArr.stream().collect(
Collectors.groupingBy(a -> Utils.format("{0}", a.getString("userId")))); Collectors.groupingBy(a -> Utils.format("{0}", a.getString("zrUserId"))));
List<String> finalNextUserList = nextUserList;
listMap.forEach((s, jsonObjects) -> { listMap.forEach((s, jsonObjects) -> {
String json = JSONArray.toJSONString(jsonObjects); String json = JSONArray.toJSONString(jsonObjects);
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss"); SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
BusProcessModelHis modelHis = new BusProcessModelHis(); BusProcessModelHis modelHis = new BusProcessModelHis();
modelHis.setPId(delegateTask.getProcessInstanceId()); modelHis.setPId(delegateTask.getProcessInstanceId());
modelHis.setMesg(json); modelHis.setMesg(json);
modelHis.setTaskInfo(delegateTask.getName());
modelHis.setUserId(s); modelHis.setUserId(s);
modelHis.setPrcName(prcName); modelHis.setPrcName(prcName);
modelHis.setEditType("node"); modelHis.setEditType("node");
@@ -73,15 +71,14 @@ public class BLApplicantAfter implements TaskListener{
busProcessModelHisList.add(modelHis); busProcessModelHisList.add(modelHis);
finalNextUserList.add(s); finalNextUserList.add(s);
}); });
nextUserList.addAll(finalNextUserList);
// if(object.getString("qcUserId").contains(",")){ // if(object.getString("qcUserId").contains(",")){
// nextUserList = Arrays.asList(object.getString("qcUserId").split(",")); // nextUserList = Arrays.asList(object.getString("qcUserId").split(","));
// }else { // }else {
// nextUserList.add(object.getString("qcUserId")); // nextUserList.add(object.getString("qcUserId"));
// } // }
// 配置多实例 // 配置多实例
delegateTask.setVariable("qcUserList",nextUserList); delegateTask.setVariable("qcUserList",finalNextUserList);
delegateTask.addCandidateUsers(nextUserList); delegateTask.addCandidateUsers(finalNextUserList);
}else { }else {
throw new ActivitiException("1#2其他起草人参数不存在,请配置相关用户"); throw new ActivitiException("1#2其他起草人参数不存在,请配置相关用户");
} }
@@ -110,8 +107,8 @@ public class BLApplicantAfter implements TaskListener{
busProcessNew.setTaskInfo(delegateTask.getName()); busProcessNew.setTaskInfo(delegateTask.getName());
busBean.save(busProcessNew); busBean.save(busProcessNew);
if(nextUserList != null && !nextUserList.isEmpty()){ if(finalNextUserList != null && !finalNextUserList.isEmpty()){
for(String nextUser : nextUserList){ for(String nextUser : finalNextUserList){
BusProcessNew busProcessNewNext = new BusProcessNew(); BusProcessNew busProcessNewNext = new BusProcessNew();
busProcessNewNext.setMsgType("clause"); busProcessNewNext.setMsgType("clause");
busProcessNewNext.setPId(delegateTask.getProcessInstanceId()); busProcessNewNext.setPId(delegateTask.getProcessInstanceId());
@@ -50,6 +50,7 @@ public class BussLibrary2Before implements TaskListener{
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss"); SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
BusProcessModelHis modelHis = hisList.get(0); BusProcessModelHis modelHis = hisList.get(0);
modelHis.setTaskId(delegateTask.getId()); modelHis.setTaskId(delegateTask.getId());
modelHis.setTaskInfo(delegateTask.getName());
String filePath = hisService.saveBussModelFile(delegateTask.getProcessInstanceId(),delegateTask.getId()); String filePath = hisService.saveBussModelFile(delegateTask.getProcessInstanceId(),delegateTask.getId());
modelHis.setEditFilePath(filePath); modelHis.setEditFilePath(filePath);
modelHis.setUpdateTime(sdf.format(new Date())); modelHis.setUpdateTime(sdf.format(new Date()));
@@ -601,7 +601,7 @@ public class PoiWord {
public static void main(String[] args) throws Exception { public static void main(String[] args) throws Exception {
wordRedDocument("E:\\Software\\rtpro\\Foton\\File\\doc\\create_toc-1.docx",null,"E:\\Software\\rtpro\\Foton\\File\\doc\\create_toc3.docx","E:\\Software\\rtpro\\Foton\\File\\doc\\create_toc-2.docx"); wordRedDocument("E:\\Software\\rtpro\\Foton\\File\\doc\\create_toc-2.docx",null,"E:\\Software\\rtpro\\Foton\\File\\doc\\create_toc3.docx","E:\\Software\\rtpro\\Foton\\File\\doc\\create_toc-1.docx");
// writeWordBanch(); // writeWordBanch();
// writeToDocx(); // writeToDocx();
// writeTOC(); // writeTOC();