ludc
2024-12-13 9d92bb1d5698690bfd06fb93c668d9ae73300426
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIManagerServiceImpl.java
@@ -1,7 +1,5 @@
package com.vci.web.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.vci.common.utility.ObjectUtility;
import com.vci.corba.common.PLException;
import com.vci.corba.common.data.UserEntityInfo;
@@ -19,36 +17,32 @@
import com.vci.starter.poi.util.ExcelUtil;
import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.pagemodel.*;
import com.vci.starter.web.pagemodel.BaseQueryObject;
import com.vci.starter.web.pagemodel.BaseResult;
import com.vci.starter.web.pagemodel.DataGrid;
import com.vci.starter.web.pagemodel.SessionInfo;
import com.vci.starter.web.util.*;
import com.vci.starter.web.redis.RedisService;
import com.vci.starter.web.util.*;
import com.vci.starter.web.util.Lcm.BeanUtil;
import com.vci.starter.web.util.Lcm.CollectionUtil;
import com.vci.starter.web.util.Lcm.Func;
import com.vci.web.service.OsBtmServiceI;
import com.vci.web.service.UIManagerServiceI;
import com.vci.web.util.*;
import com.vci.web.util.BeanUtil;
import com.vci.web.utility.UIDataFetcher;
import org.apache.commons.lang3.StringUtils;
import com.vci.web.util.Func;
import com.vci.web.util.PlatformClientUtil;
import com.vci.web.util.RightControlUtil;
import com.vci.web.util.UITools;
import com.vci.web.utility.UIDataFetcher;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.swing.tree.TreePath;
import java.io.File;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.stream.Collectors;
import java.util.regex.Pattern;
import java.util.stream.Stream;
import java.util.stream.Collectors;
/**
 * UI定义服务界面相关接口
@@ -849,7 +843,7 @@
    }
    /**
     * 根据上下文ID和区域类型,按顺序获取当前区域的tab页
     * 根据上下文ID和区域(页签)类型,按顺序获取当前区域的tab页
     */
    @Override
    public DataGrid getTabByContextIdAndType(String contextId, int areaType) throws PLException {
@@ -880,7 +874,7 @@
    }
    /**
     * 修改区域数据
     * 修改区域(页签)数据
     * @param plTabPage
     * @return
     */
@@ -897,7 +891,7 @@
    }
    /**
     * 删除区域数据
     * 删除区域(页签)数据
     * @param oids
     * @return
     */
@@ -1469,7 +1463,7 @@
                    platformClientUtil.getUIService().savePLCommandParameter(plCommandParameter);
                } catch (PLException e) {
                    e.printStackTrace();
                    throw new VciBaseException("保存按钮信息时发生异常:"+ e.getMessage());
                    throw new VciBaseException("保存按钮参数时发生异常:"+ e.getMessage());
                }
            }
        }
@@ -1766,7 +1760,7 @@
    @Override
    public boolean authorizedUI(UIAuthorDTO uiAuthorDTO) throws Exception {
        boolean res=false;
        if(uiAuthorDTO==null||CollectionUtil.isEmpty(uiAuthorDTO.getSelectTreeList())){
        if(uiAuthorDTO==null|| CollectionUtil.isEmpty(uiAuthorDTO.getSelectTreeList())){
            throw  new VciBaseException("请选择节点进行授权!");
        }
        BaseQueryObject treeQueryObject=new BaseQueryObject();
@@ -3351,11 +3345,10 @@
         */
        protected boolean checkQTIsExist(String tip, String txtQTName, String txtType) throws PLException {
            boolean res = false;
            String sql = "select count(1) count_ from PL_QTEMPLATE qt " +
                    "where qt.btmname ='" + txtType.trim() + "' " +
                    "and qt.qtname='" + txtQTName.trim() + "'";
            res = checkCountNotEqualZero(sql);
            if(!res){
                throw new PLException("500",
                        new String[]{String.format("%s %s 无效!", tip, txtQTName)});
@@ -3540,7 +3533,7 @@
         */
        private boolean checkLinkTypeInputIsOk(String txtVIName/*选择的模板*/,String txtQTName/*查询模板*/,String btmType) throws PLException {
            boolean res = false;
            if(!(this.checkBtmTypeTxtIsOk("目标对象", linkType,true))){
            if(!(this.checkLinkTypeTxtIsOk("目标对象", linkType,true))){
                res = false;
            } else if(!(this.checkPortalVITxtIsOk("选择模板", txtVIName, linkType,true))){
                res = false;
@@ -3725,7 +3718,7 @@
                return res;
            }
            // 链接类型不为空时,需要同时检查链接类型及链接类型下的查询模板是否有效
            if(Func.isBlank(linkType)){
            if(Func.isNotBlank(linkType)){
                if(!(super.checkLinkTypeTxtIsOk("链接类型", linkType,false))){
                    res = false;
                    return res;