diff --git a/src/main/java/com/hxgk/lowcode/mapper/CustomerFormViewMapper.java b/src/main/java/com/hxgk/lowcode/mapper/CustomerFormViewMapper.java index a0a5c75..c5d3bfd 100644 --- a/src/main/java/com/hxgk/lowcode/mapper/CustomerFormViewMapper.java +++ b/src/main/java/com/hxgk/lowcode/mapper/CustomerFormViewMapper.java @@ -10,4 +10,6 @@ public interface CustomerFormViewMapper { ArrayList getCustomerFormViewListByTablekey(ArrayList tablekeyList); + + ArrayList getCustomerFormViewListByGroupid(String groupid); } diff --git a/src/main/java/com/hxgk/lowcode/model/entity/CustomerFormView.java b/src/main/java/com/hxgk/lowcode/model/entity/CustomerFormView.java index 42f2905..d800b1c 100644 --- a/src/main/java/com/hxgk/lowcode/model/entity/CustomerFormView.java +++ b/src/main/java/com/hxgk/lowcode/model/entity/CustomerFormView.java @@ -16,7 +16,7 @@ public class CustomerFormView { private String editTime; private String tableStructure; private String dict; - private Integer cfid; + private String cfid; private String name; private String permit; private Integer classify; @@ -24,6 +24,15 @@ public class CustomerFormView { private String flowkey; private String postpermit; private String powerstr; + private String signCode; + + public String getSignCode() { + return signCode; + } + + public void setSignCode(String signCode) { + this.signCode = signCode; + } public String getId() { return id; @@ -113,11 +122,11 @@ public class CustomerFormView { this.dict = dict; } - public Integer getCfid() { + public String getCfid() { return cfid; } - public void setCfid(Integer cfid) { + public void setCfid(String cfid) { this.cfid = cfid; } diff --git a/src/main/java/com/hxgk/lowcode/model/entity/Tree.java b/src/main/java/com/hxgk/lowcode/model/entity/Tree.java index d9a30ff..421a899 100644 --- a/src/main/java/com/hxgk/lowcode/model/entity/Tree.java +++ b/src/main/java/com/hxgk/lowcode/model/entity/Tree.java @@ -14,8 +14,16 @@ public class Tree { private List children; private String value; private HashMap treeAttrs; + private Boolean disabled; + public Boolean getDisabled() { + return disabled; + } + + public void setDisabled(Boolean disabled) { + this.disabled = disabled; + } public String getId() { return id; diff --git a/src/main/java/com/hxgk/lowcode/service/impl/CustomerFormServiceImpl.java b/src/main/java/com/hxgk/lowcode/service/impl/CustomerFormServiceImpl.java index 354f0bf..4f1f5cd 100644 --- a/src/main/java/com/hxgk/lowcode/service/impl/CustomerFormServiceImpl.java +++ b/src/main/java/com/hxgk/lowcode/service/impl/CustomerFormServiceImpl.java @@ -42,6 +42,7 @@ public class CustomerFormServiceImpl implements CustomerFormService { //根据用户权限查询表单列表 public Tree getCustomerFormList(String key, String token) { + //查询出所有表单 ArrayList customerFormList = customerFormMapper.getCustomerFormList(); @@ -62,7 +63,7 @@ public class CustomerFormServiceImpl implements CustomerFormService { tree.setLabel("请选择表单"); tree.setValue("rootvalue"); //筛选出所有表单中,当前用户有权限的表单 - for(CustomerForm c:customerFormList){ + for(CustomerForm c:customerFormList){// //把权限相关字段字符串处理为数组 @@ -147,6 +148,7 @@ public class CustomerFormServiceImpl implements CustomerFormService { } } } + //根据权限过滤完成customerFormList1 ArrayList tablekeyList = new ArrayList<>(); for(CustomerForm item:customerFormList1){ tablekeyList.add(item.getTablename()); @@ -154,37 +156,101 @@ public class CustomerFormServiceImpl implements CustomerFormService { ArrayList customerFormViewArrayList = customerFormViewMapper.getCustomerFormViewListByTablekey(tablekeyList); ArrayList treeArrayList1 = new ArrayList<>(); for(CustomerFormView item:customerFormViewArrayList){ + Tree tree1 = new Tree(); - tree1.setId(item.getId()); - tree1.setParentId(tree.getId()); - tree1.setLabel(item.getName()); - tree1.setValue(item.getId()); - HashMap treeAttrs = new HashMap<>(); - treeAttrs.put("version",item.getVersion().toString()); - tree1.setTreeAttrs(treeAttrs); - ArrayList treeArrayList = new ArrayList<>(); - if(!StringUtils.isBlank(item.getTableStructure())){ - - String tableStructure = item.getTableStructure(); - tableStructure = tableStructure.replace("{",""); - tableStructure = tableStructure.replace("}",""); - tableStructure = tableStructure.replace("\"",""); - String[] tableStructureArr = StringUtils.splitByWholeSeparator(tableStructure, ","); - - for(String item1:tableStructureArr){ - String l = StringUtils.splitByWholeSeparator(item1, ":")[1]; - Tree tree2 = new Tree(); - tree2.setLabel(l); - tree2.setParentId(tree1.getId()); - tree2.setId(tree1.getId()+":zibiaoid-"+l); - tree2.setValue(tree2.getId()); - treeArrayList.add(tree2); + if(item.getClassify()==3){//app + + + tree1.setId(item.getCfid()); + tree1.setParentId(tree.getId()); + tree1.setLabel("App-"+item.getName()); + tree1.setValue(item.getCfid()); + tree1.setDisabled(true); + + ArrayList appForms = customerFormViewMapper.getCustomerFormViewListByGroupid(item.getSignCode()); + if(appForms.size()>0){ + ArrayList treeArrayListx = new ArrayList<>(); + for(CustomerFormView itemx:appForms){ + Tree tree2 = new Tree(); + + tree2.setId(itemx.getCfid()); + tree2.setParentId(tree1.getId()); + tree2.setLabel("Form-"+itemx.getName()); + tree2.setValue(itemx.getCfid()); + HashMap treeAttrs = new HashMap<>(); + treeAttrs.put("version",itemx.getVersion().toString()); + tree2.setTreeAttrs(treeAttrs); + ArrayList treeArrayList = new ArrayList<>(); + if(!StringUtils.isBlank(itemx.getTableStructure())){ + + String tableStructure = itemx.getTableStructure(); + tableStructure = tableStructure.replace("{",""); + tableStructure = tableStructure.replace("}",""); + tableStructure = tableStructure.replace("\"",""); + String[] tableStructureArr = StringUtils.splitByWholeSeparator(tableStructure, ","); + + for(String item1:tableStructureArr){ + String l = StringUtils.splitByWholeSeparator(item1, ":")[1]; + Tree tree3 = new Tree(); + tree3.setLabel("子表-"+l); + tree3.setParentId(tree2.getId()); + tree3.setId(tree2.getId()+":zibiaoid-"+l); + tree3.setValue(tree3.getId()); + treeArrayList.add(tree3); + } + + + } + tree2.setChildren(treeArrayList); + + + treeArrayListx.add(tree2); + + + } + + + HashMap treeAttrs = new HashMap<>(); + treeAttrs.put("version",item.getVersion().toString()); + tree1.setChildren(treeArrayListx); + tree1.setTreeAttrs(treeAttrs); + } + treeArrayList1.add(tree1); + }else{ + tree1.setId(item.getCfid()); + tree1.setParentId(tree.getId()); + tree1.setLabel("Form-"+item.getName()); + tree1.setValue(item.getCfid()); + HashMap treeAttrs = new HashMap<>(); + treeAttrs.put("version",item.getVersion().toString()); + tree1.setTreeAttrs(treeAttrs); + ArrayList treeArrayList = new ArrayList<>(); + if(!StringUtils.isBlank(item.getTableStructure())){ + + String tableStructure = item.getTableStructure(); + tableStructure = tableStructure.replace("{",""); + tableStructure = tableStructure.replace("}",""); + tableStructure = tableStructure.replace("\"",""); + String[] tableStructureArr = StringUtils.splitByWholeSeparator(tableStructure, ","); + + for(String item1:tableStructureArr){ + String l = StringUtils.splitByWholeSeparator(item1, ":")[1]; + Tree tree2 = new Tree(); + tree2.setLabel("子表-"+l); + tree2.setParentId(tree1.getId()); + tree2.setId(tree1.getId()+":zibiaoid-"+l); + tree2.setValue(tree2.getId()); + treeArrayList.add(tree2); + } + } + tree1.setChildren(treeArrayList); + treeArrayList1.add(tree1); } - tree1.setChildren(treeArrayList); - treeArrayList1.add(tree1); + + } tree.setChildren(treeArrayList1); return tree; diff --git a/src/main/resources/mapper/CustomerFormMapper.xml b/src/main/resources/mapper/CustomerFormMapper.xml index fc76674..7f9c94c 100644 --- a/src/main/resources/mapper/CustomerFormMapper.xml +++ b/src/main/resources/mapper/CustomerFormMapper.xml @@ -7,7 +7,7 @@ diff --git a/src/main/resources/mapper/CustomerFormvViewMapper.xml b/src/main/resources/mapper/CustomerFormvViewMapper.xml index b6a237f..143708e 100644 --- a/src/main/resources/mapper/CustomerFormvViewMapper.xml +++ b/src/main/resources/mapper/CustomerFormvViewMapper.xml @@ -8,7 +8,7 @@ + + \ No newline at end of file