diff --git a/src/com/engine/organization/entity/chart/TreeSelect.java b/src/com/engine/organization/entity/chart/TreeSelect.java index fed41471..cd7099f7 100644 --- a/src/com/engine/organization/entity/chart/TreeSelect.java +++ b/src/com/engine/organization/entity/chart/TreeSelect.java @@ -31,6 +31,7 @@ public class TreeSelect { private String type; private String canceled; private List children; + private boolean disabled; private String cancelSql; diff --git a/src/com/engine/organization/service/impl/ChartServiceImpl.java b/src/com/engine/organization/service/impl/ChartServiceImpl.java index 15f23a14..3d0c6cb5 100644 --- a/src/com/engine/organization/service/impl/ChartServiceImpl.java +++ b/src/com/engine/organization/service/impl/ChartServiceImpl.java @@ -501,7 +501,7 @@ public class ChartServiceImpl extends Service implements ChartService { expandedKeys = companyTree.getChildren().stream().filter(item -> CollectionUtils.isNotEmpty(item.getChildren())).map(TreeSelect::getKey).collect(Collectors.toList()); expandedKeys.add(companyTree.getKey()); } - + disableTreeItem(Collections.singletonList(companyTree),TreeSelect.DEPARTMENT); Map result = new HashMap<>(3); result.put("selectTree", companyTree); result.put("expandedKeys", expandedKeys); @@ -509,6 +509,23 @@ public class ChartServiceImpl extends Service implements ChartService { return result; } + /** + * 树节点是否禁用 + * + * @param companyTreeList TreeSelect组件数据集合 + */ + private void disableTreeItem(List companyTreeList, String enableTreeType) { + if (CollectionUtils.isNotEmpty(companyTreeList)) { + for (TreeSelect treeSelect : companyTreeList) { + treeSelect.setDisabled(!enableTreeType.equals(treeSelect.getType())); + List children = treeSelect.getChildren(); + if (CollectionUtils.isNotEmpty(children)) { + disableTreeItem(children, enableTreeType); + } + } + } + } + private void trueDimension(RecordSetTrans recordSetTrans,String versionId,String currentUser,String currentDate){ RecordSet rs = new RecordSet(); rs.execute("delete from jcl_chart_subcompany where versionid = "+versionId);