xiejun
2024-09-06 1615c6851b507867f9090f8cafcb1a32d1dad6bc
表单表格功能添加
已修改9个文件
已添加3个文件
500 ■■■■■ 文件已修改
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/PRMItemDTO.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/RoleRightDTO.java 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/UIAuthorDTO.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/model/PRMItemDO.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/model/RoleRightDO.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/PRMItemVO.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/UIManagerController.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/UIManagerServiceI.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsPortalVIServiceImpl.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIManagerServiceImpl.java 133 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/tt.xml 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/resources/application-dev.yml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/PRMItemDTO.java
@@ -141,6 +141,11 @@
     * æžšä¸¾å€¼
     */
    private List<String> itemValueList = null;
    /***
     * æžšä¸¾å€¼é›†åˆ
     */
    private List<KeyValue> itemKeyValueList=new ArrayList<>();
    /**
     *一级参照
     */
@@ -695,6 +700,14 @@
//    }
    public List<KeyValue> getItemKeyValueList() {
        return itemKeyValueList;
    }
    public void setItemKeyValueList(List<KeyValue> itemKeyValueList) {
        this.itemKeyValueList = itemKeyValueList;
    }
    @Override
    public String toString() {
        return "PRMItemDTO{" +
@@ -729,6 +742,7 @@
                ", itemScript='" + itemScript + '\'' +
                ", itemTips='" + itemTips + '\'' +
                ", itemValueList=" + itemValueList +
                ", itemKeyValueList=" + itemKeyValueList +
                ", itemListTable='" + itemListTable + '\'' +
                ", itemListTxt='" + itemListTxt + '\'' +
                ", itemListVal='" + itemListVal + '\'' +
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/RoleRightDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,123 @@
package com.vci.dto;
import java.io.Serializable;
import java.util.Date;
/**
 * UI权限
 * @author xiej
 * @date 2024-09-05
 */
public class RoleRightDTO implements Serializable {
    private static final long serialVersionUID = 2956142041726150499L;
    /**
     * ID
     */
    private String id = "";
    /**
     *角色ID
     */
    private String roleId = "";
    /**
     * æ¨¡å—ID
     */
    private String funcId = "";
    /**
     * æƒé™å€¼
     */
    private long rightValue = -1;
    /**
     * æƒé™ç±»åž‹ï¼Œè¶…级管理员给管理员授权为1,管理员给普通用户授权为2
     */
    private short rightType = -1;
    /**新增数据创建者,修改者,创建时间,修改时间,授权者***/
    private String createUser = "";
    private Date createTime = new Date();
    private String licensor = "";
    private String modifyUser = "";
    private Date modifyTime = new Date();
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getRoleId() {
        return roleId;
    }
    public void setRoleId(String roleId) {
        this.roleId = roleId;
    }
    public String getFuncId() {
        return funcId;
    }
    public void setFuncId(String funcId) {
        this.funcId = funcId;
    }
    public long getRightValue() {
        return rightValue;
    }
    public void setRightValue(long rightValue) {
        this.rightValue = rightValue;
    }
    public short getRightType() {
        return rightType;
    }
    public void setRightType(short rightType) {
        this.rightType = rightType;
    }
    public String getCreateUser() {
        return createUser;
    }
    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public String getLicensor() {
        return licensor;
    }
    public void setLicensor(String licensor) {
        this.licensor = licensor;
    }
    public String getModifyUser() {
        return modifyUser;
    }
    public void setModifyUser(String modifyUser) {
        this.modifyUser = modifyUser;
    }
    public Date getModifyTime() {
        return modifyTime;
    }
    public void setModifyTime(Date modifyTime) {
        this.modifyTime = modifyTime;
    }
}
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/UIAuthorDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,73 @@
package com.vci.dto;
import com.vci.starter.web.pagemodel.Tree;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
 * æŽˆæƒå¯¹è±¡
 * @author xiej
 * @date 2024-09-05
 */
public class UIAuthorDTO implements Serializable {
    private static final long serialVersionUID = -1996329568646378902L;
    /**
     *角色ID
     */
    private String roleId;
    /**
     *业务类型
     */
    private String type;
    /**
     *上下文
     */
    private String context;
    /**
     * æŽˆæƒçš„节点
     */
    List<Tree> selectTreeList;
    public String getRoleId() {
        return roleId;
    }
    public void setRoleId(String roleId) {
        this.roleId = roleId;
    }
    public String getType() {
        return type;
    }
    public void setType(String type) {
        this.type = type;
    }
    public String getContext() {
        return context;
    }
    public void setContext(String context) {
        this.context = context;
    }
    public List<Tree> getSelectTreeList() {
        return selectTreeList;
    }
    public void setSelectTreeList(List<Tree> selectTreeList) {
        this.selectTreeList = selectTreeList;
    }
    @Override
    public String toString() {
        return "UIAuthorDTO{" +
                "roleId='" + roleId + '\'' +
                ", type='" + type + '\'' +
                ", context='" + context + '\'' +
                ", selectTreeList=" + selectTreeList +
                '}';
    }
}
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/model/PRMItemDO.java
@@ -127,7 +127,10 @@
     * æžšä¸¾å€¼
     */
    private List<String> itemValueList = null;
    /***
     * æžšä¸¾å€¼é›†åˆ
     */
    private List<KeyValue> itemKeyValueList=new ArrayList<>();
    /**
     *一级参照
     */
@@ -664,6 +667,15 @@
    public void setItemDateFormat(String itemDateFormat) {
        this.itemDateFormat = itemDateFormat;
    }
    public List<KeyValue> getItemKeyValueList() {
        return itemKeyValueList;
    }
    public void setItemKeyValueList(List<KeyValue> itemKeyValueList) {
        this.itemKeyValueList = itemKeyValueList;
    }
    @Override
    public String toString() {
        return "PRMItemDO{" +
@@ -693,6 +705,7 @@
                ", itemScript='" + itemScript + '\'' +
                ", itemTips='" + itemTips + '\'' +
                ", itemValueList=" + itemValueList +
                ", itemKeyValueList=" + itemKeyValueList +
                ", itemListTable='" + itemListTable + '\'' +
                ", itemListTxt='" + itemListTxt + '\'' +
                ", itemListVal='" + itemListVal + '\'' +
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/model/RoleRightDO.java
@@ -8,9 +8,9 @@
import java.util.Date;
/**
 * çŠ¶æ€æ± 
 * @author weidy
 * @date 2022-2-15
 * UI权限
 * @author xiej
 * @date 2024-09-05
 */
@VciBtmType(name = "UIAuthor",text = "UI权限",tableName = "PLROLERIGHT",lifeCycle = FrameWorkLcStatusConstant.EMTYPE_LIFE_CYCLE)
@Transient
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/PRMItemVO.java
@@ -144,7 +144,10 @@
     * æžšä¸¾å€¼
     */
    private List<String> itemValueList = null;
    /***
     * æžšä¸¾å€¼é›†åˆ
     */
    private List<KeyValue> itemKeyValueList=new ArrayList<>();
    /**
     *一级参照
@@ -633,6 +636,14 @@
        this.itemSearchFieldList = itemSearchFieldList;
    }
    public List<KeyValue> getItemKeyValueList() {
        return itemKeyValueList;
    }
    public void setItemKeyValueList(List<KeyValue> itemKeyValueList) {
        this.itemKeyValueList = itemKeyValueList;
    }
    @Override
    public String toString() {
        return "PRMItemVO{" +
@@ -667,6 +678,7 @@
                ", itemScript='" + itemScript + '\'' +
                ", itemTips='" + itemTips + '\'' +
                ", itemValueList=" + itemValueList +
                ", itemKeyValueList=" + itemKeyValueList +
                ", itemListTable='" + itemListTable + '\'' +
                ", itemListTxt='" + itemListTxt + '\'' +
                ", itemListVal='" + itemListVal + '\'' +
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/UIManagerController.java
@@ -3,6 +3,8 @@
import com.vci.corba.common.PLException;
import com.vci.corba.portal.data.PLUILayout;
import com.vci.dto.OsBtmTypeDTO;
import com.vci.dto.RoleRightDTO;
import com.vci.dto.UIAuthorDTO;
import com.vci.pagemodel.PLUILayoutCloneVO;
import com.vci.starter.web.annotation.log.VciBusinessLog;
import com.vci.starter.web.pagemodel.BaseQueryObject;
@@ -169,4 +171,20 @@
        }
    }
    /***
     * @param selectTreeList å‹¾é€‰çš„需要保存的数据对象
     * @return
     */
    @PostMapping( "/authorizedUI")
    @VciBusinessLog(operateName = "UI授权")
    public BaseResult authorizedUI(UIAuthorDTO uiAuthorDTO){
        try {
            return uiManagerService.authorizedUI(uiAuthorDTO)?BaseResult.success("授权成功!"):BaseResult.fail("授权失败!");
        }catch (Throwable e) {
            e.printStackTrace();
            String exceptionMessage = "UI授权出现错误,原因:" + VciBaseUtil.getExceptionMessage(e);
            logger.error(exceptionMessage);
            return BaseResult.fail(exceptionMessage);
        }
    }
}
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/UIManagerServiceI.java
@@ -2,6 +2,8 @@
import com.vci.corba.common.PLException;
import com.vci.corba.portal.data.PLUILayout;
import com.vci.dto.RoleRightDTO;
import com.vci.dto.UIAuthorDTO;
import com.vci.pagemodel.PLUILayoutCloneVO;
import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.pagemodel.BaseQueryObject;
@@ -70,4 +72,12 @@
     * @throws VciBaseException
     */
     List<Tree> getUIAuthor(BaseQueryObject baseQueryObject)throws Exception;
    /***
     * UI授权
     * @param uiAuthorDTO
     * @return
     * @throws Exception
     */
    public boolean authorizedUI(UIAuthorDTO uiAuthorDTO)throws Exception;
}
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsPortalVIServiceImpl.java
@@ -988,6 +988,15 @@
        prmItemDO.setItemHttpPathField(prmItemDTO.getItemHttpPathField());
        if(viType==PortalVIType.Table.getIntVal()) {//如果是表格
            initTableConfigDTOO2DOData(prmItemDO,prmItemDTO);
        }else{
            List<String> itemValueList=new ArrayList<>();
            List<KeyValue> keyValueList=prmItemDTO.getItemKeyValueList();
            Optional.ofNullable(keyValueList).orElseGet(()->new ArrayList<>()).stream().forEach(keyValue -> {
              String value=  keyValue.getValue()+"{"+keyValue.getKey()+"}";
                itemValueList.add(value);
            });
            prmItemDO.setItemValueList(itemValueList);
        }
        return prmItemDO;
    }
@@ -1052,8 +1061,20 @@
        prmItemVO.setItemIsHttpSave(prmItemDO.getItemIsHttpSave());
        prmItemVO.setItemHttpVolumnPath(prmItemDO.getItemHttpVolumnPath());
        prmItemVO.setItemHttpPathField(prmItemDO.getItemHttpPathField());
        if(viType==PortalVIType.Table.getIntVal()) {//如果是表格
            initTableConfigDOO2VOData(prmItemVO,prmItemDO);
        }else{
          List<String> enumList=  prmItemDO.getItemValueList();
          List<KeyValue>itemKeyValueList=new ArrayList<>();
            Optional.ofNullable(enumList).orElseGet(()->new ArrayList<>()).stream().forEach(enumValue->{
             List<String> keyValueList=  VciBaseUtil.str2List(VciBaseUtil.removeComma(enumValue,"}"),"\\{");
                KeyValue keyValue=new KeyValue();
                keyValue.setKey(keyValueList.get(1));
                keyValue.setValue(keyValueList.get(0));
                itemKeyValueList.add(keyValue);
            });
            prmItemVO.setItemKeyValueList(itemKeyValueList);
        }
        return prmItemVO;
    }
@@ -1120,6 +1141,17 @@
        prmItemDTO.setItemHttpPathField(prmItemDO.getItemHttpPathField());
        if(viType==PortalVIType.Table.getIntVal()) {//如果是表格
            initTableConfigDOO2VOData(prmItemDTO,prmItemDO);
        }else{
            List<String> enumList=  prmItemDO.getItemValueList();
            List<KeyValue>itemKeyValueList=new ArrayList<>();
            Optional.ofNullable(enumList).orElseGet(()->new ArrayList<>()).stream().forEach(enumValue->{
                List<String> keyValueList=  VciBaseUtil.str2List(VciBaseUtil.removeComma(enumValue,"}"),"\\{");
                KeyValue keyValue=new KeyValue();
                keyValue.setKey(keyValueList.get(1));
                keyValue.setValue(keyValueList.get(0));
                itemKeyValueList.add(keyValue);
            });
            prmItemDTO.setItemKeyValueList(itemKeyValueList);
        }
        return prmItemDTO;
    }
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIManagerServiceImpl.java
@@ -8,15 +8,14 @@
import com.vci.corba.omd.btm.BizType;
import com.vci.corba.portal.PortalService;
import com.vci.corba.portal.data.*;
import com.vci.dto.RoleRightDTO;
import com.vci.dto.UIAuthorDTO;
import com.vci.frameworkcore.compatibility.SmRoleQueryServiceI;
import com.vci.pagemodel.OsBtmTypeVO;
import com.vci.pagemodel.PLUILayoutCloneVO;
import com.vci.pagemodel.RoleRightVO;
import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.pagemodel.BaseQueryObject;
import com.vci.starter.web.pagemodel.DataGrid;
import com.vci.starter.web.pagemodel.SessionInfo;
import com.vci.starter.web.pagemodel.Tree;
import com.vci.starter.web.pagemodel.*;
import com.vci.starter.web.util.VciBaseUtil;
import com.vci.starter.web.util.VciDateUtil;
import com.vci.starter.web.util.WebThreadLocalUtil;
@@ -111,16 +110,31 @@
    /**
     * ton通过业务类型和名称查询
     * @param btemName
     * @param code
     * @param context
     * @return
     * @throws PLException
     */
    public List<PLUILayout> getUIContextDataByBtName(String btemName,String code) throws PLException {
    public List<PLUILayout> getUIContextDataByBtName(String btemName,String context) throws PLException {
        VciBaseUtil.alertNotNull(btemName,"业务类型");
        List<PLUILayout> pluiLayoutList=new ArrayList<>();
        PLUILayout[]  pluiLayouts=   platformClientUtil.getUIService().getPLUILayoutEntityByTypeAndCode(btemName,code);
        if(pluiLayouts!=null&&pluiLayouts.length>0){
            pluiLayoutList= Stream.of(pluiLayouts).collect(Collectors.toList());
        List<String> contextList= VciBaseUtil.str2List(context);
        if(StringUtils.isNotBlank(context)){
            contextList=VciBaseUtil.str2List(context);
        }else{
            contextList.add("");
        }
        contextList.stream().forEach(code->{
            PLUILayout[]  pluiLayouts= new PLUILayout[0];
            try {
                pluiLayouts = platformClientUtil.getUIService().getPLUILayoutEntityByTypeAndCode(btemName,code);
            } catch (PLException e) {
                e.printStackTrace();
            }
            if(pluiLayouts!=null&&pluiLayouts.length>0) {
                pluiLayoutList.addAll(Arrays.stream(pluiLayouts).collect(Collectors.toList()));
            }
        });
        return pluiLayoutList;
    }
@@ -319,17 +333,93 @@
            bizTypeTree.setParentId(rootNode.getOid());
            bizTypeTree.setParentName(rootNode.getText());
            bizTypeTree.setShowCheckbox(true);
            bizTypeTree.setParentBtmName(bizTypes[i].name);
            childList.add(bizTypeTree);
            List<PLUILayout>contextList=getUIContextDataByBtName(bizTypes[i].name,context);
            List<Tree> btmChildList=new ArrayList<>();
            btmChildList.add(bizTypeTree);
            setChildNode(btmChildList,contextList,roleRightVOMap,showCheckBox);
            if(roleRightVOMap.containsKey(bizTypes[i].oid)){
                List<PLUILayout>contextList=getUIContextDataByBtName(bizTypes[i].name,context);
                List<Tree> btmChildList=new ArrayList<>();
                btmChildList.add(bizTypeTree);
                setChildNode(btmChildList,contextList,roleRightVOMap,showCheckBox);
            }
        }
        rootNode.setChildren(childList);
        treeList.add(rootNode);
        return treeList;
    }
    @Override
    public boolean authorizedUI(UIAuthorDTO uiAuthorDTO) throws Exception {
        boolean res=false;
        if(uiAuthorDTO==null||CollectionUtil.isEmpty(uiAuthorDTO.getSelectTreeList())){
            throw  new VciBaseException("请选择节点进行授权!");
        }
        BaseQueryObject treeQueryObject=new BaseQueryObject();
        Map<String,String> conditionMap = new HashMap<>();
        conditionMap.put("roleId",uiAuthorDTO.getRoleId());
        conditionMap.put("type",uiAuthorDTO.getType());
        conditionMap.put("context",uiAuthorDTO.getContext());
        conditionMap.put("showCheckBox","true");
        treeQueryObject.setConditionMap(conditionMap);
        List<Tree> treeList=this.getUIAuthor(treeQueryObject);
        HashMap<String,Tree> allTreeMap=new HashMap<>();
        if(!CollectionUtil.isEmpty(treeList)){
            convertTreeDOO2Map(treeList,allTreeMap);
            List<RoleRightDTO> roleRightDTOList=new ArrayList<>();
            List<Tree>  selectTreeList= uiAuthorDTO.getSelectTreeList();
            getRoleRightDTOS(uiAuthorDTO.getRoleId(),selectTreeList,allTreeMap,roleRightDTOList);
        }
        return res;
    }
    private void getRoleRightDTOS(String roleOid,List<Tree>  selectTreeList,HashMap<String,Tree> allTreeMap,  List<RoleRightDTO> roleRightDTOList){
        selectTreeList.stream().forEach(tree -> {
            RoleRightDTO roleRightDTO=new RoleRightDTO();
            String id=ObjectUtility.getNewObjectID36();
            Object data=  tree.getData();
            if (data instanceof BizType) {//业务类型
                BizType bizType=(BizType)data;
                roleRightDTO.setId(id);//主键
                roleRightDTO.setCreateUser(null);//创建者
                roleRightDTO.setCreateTime(null);//创建时间
                roleRightDTO.setModifyUser(null);//修改者
                roleRightDTO.setModifyTime(null);//修改时间
                roleRightDTO.setRoleId(roleOid);//角色ID
                roleRightDTO.setRightValue(1);// æƒé™å€¼
                roleRightDTO.setRightType((short) -1);//权限类型 æƒé™ç±»åž‹ï¼Œè¶…级管理员给管理员授权为1,管理员给普通用户授权为2
                roleRightDTO.setFuncId(null);
                roleRightDTO.setLicensor(null);
            }else  if (data instanceof PLUILayout){//UI
            }else if (data instanceof PLTabPage) {//UI上下文
            }else if (data instanceof PLPageDefination) {//
            }else if (data instanceof PLTabButton) {//按钮
            }
        });
    }
    /**
     *
     * @param treeList æ ‘节点
     * @param allTreeMap,所有的节点
     */
    private void convertTreeDOO2Map(List<Tree> treeList,Map<String,Tree> allTreeMap){
        Optional.ofNullable(treeList).orElseGet(()->new ArrayList<Tree>()).stream().forEach(tree -> {
            List<Tree> childTreeList= tree.getChildren();
            allTreeMap.put(tree.getOid(),tree);
            if(!CollectionUtil.isEmpty(childTreeList)){
                convertTreeDOO2Map(childTreeList,allTreeMap);
            }
        });
    }
    private void setChildNode(List<Tree> parentTree, List<PLUILayout>contextList,Map<String,RoleRightVO> roleRightVOMap,boolean isShowCheckBox){
        Optional.ofNullable(parentTree).orElseGet(()->new ArrayList<Tree>()).stream().forEach(pTree -> {
            Object funcObj=  pTree.getData();
@@ -340,6 +430,7 @@
                    contextList.stream().forEach(context->{
                        Tree childTree=new Tree(context.plOId,context.plName+"("+context.plCode+")",context);
                        childTree.setParentName(pTree.getText());
                        childTree.setParentBtmName(pTree.getParentBtmName());
                        childTree.setParentId(pTree.getOid());
                        childTree.setLevel(pTree.getLevel()+1);
                        childTree.setShowCheckbox(isShowCheckBox);
@@ -364,6 +455,7 @@
                        Tree childTree=new Tree(plTabPage.plOId,plTabPage.plName,plTabPage);
                        childTree.setParentName(pTree.getText());
                        childTree.setParentId(pTree.getOid());
                        childTree.setParentBtmName(pTree.getParentBtmName());
                        childTree.setLevel(pTree.getLevel()+1);
                        childTree.setShowCheckbox(isShowCheckBox);
                        chiledTreeList.add(childTree);
@@ -385,6 +477,7 @@
                            Tree childTree=new Tree(plPageDefination.plOId,plPageDefination.name,plPageDefination);
                            childTree.setParentName(pTree.getText());
                            childTree.setParentId(pTree.getOid());
                            childTree.setParentBtmName(pTree.getParentBtmName());
                            childTree.setLevel(pTree.getLevel()+1);
                            childTree.setShowCheckbox(isShowCheckBox);
                            chiledTreeList.add(childTree);
@@ -409,6 +502,7 @@
                            Tree childTree=new Tree(plTabButton.plOId,plTabButton.plLabel,plTabButton);
                            childTree.setParentName(pTree.getText());
                            childTree.setParentId(pTree.getOid());
                            childTree.setParentBtmName(pTree.getParentBtmName());
                            childTree.setLevel(pTree.getLevel()+1);
                            childTree.setShowCheckbox(isShowCheckBox);
                            childTree.setLeaf(true);
@@ -424,9 +518,18 @@
                }
            }else if (funcObj instanceof PLTabButton) {//按钮
                String id = ((PLTabButton) funcObj).plTableOId;
                PLTabButton plTabButton= (PLTabButton) funcObj;
                String id =plTabButton.plTableOId;
                if(roleRightVOMap.containsKey(id)){
                    pTree.setChecked(true);
                    RoleRightVO roleRightVO = roleRightVOMap.get(id);
                    Long rightValue =  roleRightVO.getRightValue();
                    int nodeValue = plTabButton.plSeq;
                    if (nodeValue >= 0 && nodeValue <= 63) {
                        long preValue = (rightValue >> nodeValue) & 1;
                        if (preValue == 1) {
                            pTree.setChecked(true);
                        }
                    }
                }else{
                    pTree.setChecked(false);
                }
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/tt.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?>
<JD_DATASET>
    <JD_SHOWCOLS>3</JD_SHOWCOLS>
    <JD_FORMQTNAME></JD_FORMQTNAME>
    <JD_ITEM>
        <JD_field></JD_field>
        <JD_or></JD_or>
        <JD_eq></JD_eq>
        <JD_trim></JD_trim>
        <JD_dbl>0</JD_dbl>
        <JD_cut></JD_cut>
        <JD_inObj>assignedpartform</JD_inObj>
        <JD_addFilter>test附加查询条件</JD_addFilter>
        <JD_outType></JD_outType>
        <JD_pageSize>10</JD_pageSize>
        <JD_imgWH>60,</JD_imgWH>
        <JD_outFields>workcontextoid.productnumber,isexpire,partoid.name</JD_outFields>
        <JD_keyFields></JD_keyFields>
        <JD_bat></JD_bat>
        <JD_txf></JD_txf>
        <JD_name></JD_name>
        <JD_type></JD_type>
        <JD_value></JD_value>
        <JD_showExpression></JD_showExpression>
        <JD_dateFormat></JD_dateFormat>
        <JD_cols></JD_cols>
        <JD_rows></JD_rows>
        <JD_style></JD_style>
        <JD_script></JD_script>
        <JD_tips></JD_tips>
        <JD_valuelist></JD_valuelist>
        <JD_listTable></JD_listTable>
        <JD_listTxt></JD_listTxt>
        <JD_listVal></JD_listVal>
        <JD_isEditable></JD_isEditable>
        <JD_EditableProgram></JD_EditableProgram>
        <JD_qtName></JD_qtName>
        <JD_isRequired></JD_isRequired>
        <JD_seniorQueryCols></JD_seniorQueryCols>
        <JD_seniorQueryColsCounts></JD_seniorQueryColsCounts>
        <JD_hrefFields></JD_hrefFields>
        <JD_hrefConf></JD_hrefConf>
        <JD_queryRefFields></JD_queryRefFields>
        <JD_customClass></JD_customClass>
        <JD_ctrlDisplyCol></JD_ctrlDisplyCol>
        <JD_ctrlDisplyCondition></JD_ctrlDisplyCondition>
        <JD_isHttpSave></JD_isHttpSave>
        <JD_httpVolumnPath></JD_httpVolumnPath>
        <JD_httpPathField></JD_httpPathField>
        <JD_editCondition></JD_editCondition>
        <JD_isNavigatorExpand>true</JD_isNavigatorExpand>
        <JD_isShowFolder>true</JD_isShowFolder>
        <JD_parentFolderName>father</JD_parentFolderName>
        <JD_filterColWidth>250</JD_filterColWidth>
        <JD_QuerySql></JD_QuerySql>
        <JD_right></JD_right>
    </JD_ITEM>
</JD_DATASET>
Source/plt-web/plt-web-parent/plt-web/src/main/resources/application-dev.yml
@@ -6,7 +6,7 @@
  private-token-key: vciweb20210212
###tomcat相关的配置
server:
  port: 12000
  port: 12005
  servlet:
    context-path: /web
  tomcat:
@@ -42,7 +42,7 @@
    host: localhost  # ip地址
    database: 2  # redis数据库  0-15
    port: 6379  # ç«¯å£å·
    password: 123456 # æ— å¯†ç ä¸å¡«
    password: foobared # æ— å¯†ç ä¸å¡«
    timeout: 30000s   # è¿žæŽ¥è¶…æ—¶æ—¶é—´ ï¼ˆé»˜è®¤1天)
    lettuce:
      shutdown-timeout: 100ms # å…³é—­è¶…æ—¶æ—¶é—´ é»˜è®¤ 100ms