Przeglądaj źródła

fix:修改流程定义时新增节点的执行用户角色绑定不上bug,以及修改流程定义回显示数据问题

韩帛霖 1 rok temu
rodzic
commit
026a76e5b8

+ 12 - 12
zkqy-system/src/main/java/com/zkqy/system/service/impl/BpmProcessConfigurationServiceImpl.java

@@ -121,15 +121,15 @@ public class BpmProcessConfigurationServiceImpl implements IBpmProcessConfigurat
         String addField = ",task_process_key varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT '' COMMENT '任务编码'," +
                 "task_node_key varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT '' COMMENT '任务节点编码') ENGINE=InnoDB";
         // 新建流程节点所需数据表
-        for (String tableName : list){
+        for (String tableName : list) {
             try {
                 String createTableSql = commonService.selectTableSql(tableName).get("create table");
-                createTableSql = createTableSql.replace("CREATE TABLE","CREATE TABLE IF NOT EXISTS {DBNAME}.");
-                if(!createTableSql.contains("task_process_key") && !createTableSql.contains("task_node_key")){
-                    createTableSql = createTableSql.replace(") ENGINE=InnoDB",addField);
+                createTableSql = createTableSql.replace("CREATE TABLE", "CREATE TABLE IF NOT EXISTS {DBNAME}.");
+                if (!createTableSql.contains("task_process_key") && !createTableSql.contains("task_node_key")) {
+                    createTableSql = createTableSql.replace(") ENGINE=InnoDB", addField);
                 }
                 commonService.executeSql(createTableSql);
-            }catch (Exception e){
+            } catch (Exception e) {
                 return 0;
             }
         }
@@ -159,18 +159,18 @@ public class BpmProcessConfigurationServiceImpl implements IBpmProcessConfigurat
         List<String> list = nodeVo.getTableNameList();
         list = list.stream().filter(l -> !tableNameList.contains(l)).collect(Collectors.toList());
         String addField = ",task_process_key varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT '' COMMENT '任务编码'," +
-                          "task_node_key varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT '' COMMENT '任务节点编码') ENGINE=InnoDB";
+                "task_node_key varchar(64) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT '' COMMENT '任务节点编码') ENGINE=InnoDB";
         System.err.println(list.toString());
         // 新建流程节点所需数据表
-        for (String tableName : list){
+        for (String tableName : list) {
             try {
                 String createTableSql = commonService.selectTableSql(tableName).get("create table");
-                createTableSql = createTableSql.replace("CREATE TABLE","CREATE TABLE IF NOT EXISTS {DBNAME}.");
-                if(!createTableSql.contains("task_process_key") && !createTableSql.contains("task_node_key")){
-                    createTableSql = createTableSql.replace(") ENGINE=InnoDB",addField);
+                createTableSql = createTableSql.replace("CREATE TABLE", "CREATE TABLE IF NOT EXISTS {DBNAME}.");
+                if (!createTableSql.contains("task_process_key") && !createTableSql.contains("task_node_key")) {
+                    createTableSql = createTableSql.replace(") ENGINE=InnoDB", addField);
                 }
                 commonService.executeSql(createTableSql);
-            }catch (Exception e){
+            } catch (Exception e) {
                 return 0;
             }
         }
@@ -263,7 +263,7 @@ public class BpmProcessConfigurationServiceImpl implements IBpmProcessConfigurat
         bpmProcessConfigurationList.forEach(item -> {
             if (item.getNodeKey() != null)
                 bpmNodeScriptRelevanceList.addAll(iBpmNodeScriptRelevanceService.selectBpmNodeScriptRelevanceList(new BpmNodeScriptRelevance(item.getNodeKey())));
-            if (item.getNodeRolePermission() != null)
+            if (item.getNodeRolePermission() != null && !item.getNodeRolePermission().isEmpty())
                 bpmNodeHandleUserList.addAll(iBpmNodeHandleUserService.selectBpmNodeHandleUserList(new BpmNodeHandleUser(item.getNodeRolePermission())));
         });
         NodeVo nodeVo = new NodeVo();