infrasys00
2021-02-20 8e76229709b0abcae466801b5154d392ac71e63f
Merge branch 'master' of http://gitlab.nhys.cdnhxx.com/root/zhihuishequ
5个文件已修改
8个文件已添加
264 ■■■■ 已修改文件
springcloud_k8s_panzhihuazhihuishequ/.idea/workspace.xml 57 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/user/CommunityUserInfoVO.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/FileUtil.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/IdCard.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/SystemManagementApi.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/excel/CustomSheetWriteHandler.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/SysUserInputDAO.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/model/dos/SysUserInputDO.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/SysUserInputService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/SysUserInputServiceImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java 55 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/SercuritFilter.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/.idea/workspace.xml
@@ -22,7 +22,12 @@
    <select />
  </component>
  <component name="ChangeListManager">
    <list default="true" id="8ba27629-3e5d-4f42-993e-d0c055bc9371" name="Default Changelist" comment="" />
    <list default="true" id="8ba27629-3e5d-4f42-993e-d0c055bc9371" name="Default Changelist" comment="">
      <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/service/user/UserService.class" beforeDir="false" afterPath="$PROJECT_DIR$/common/target/classes/com/panzhihua/common/service/user/UserService.class" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/community_backstage/src/main/java/com/panzhihua/community_backstage/api/SystemManagementApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/community_backstage/src/main/java/com/panzhihua/community_backstage/api/SystemManagementApi.java" afterDir="false" />
      <change beforePath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java" afterDir="false" />
    </list>
    <option name="SHOW_DIALOG" value="false" />
    <option name="HIGHLIGHT_CONFLICTS" value="true" />
    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
@@ -413,7 +418,7 @@
      <workItem from="1612406442748" duration="9358000" />
      <workItem from="1612486797044" duration="146000" />
      <workItem from="1612487068003" duration="7000" />
      <workItem from="1612487277561" duration="2287000" />
      <workItem from="1612487277561" duration="4832000" />
    </task>
    <servers />
  </component>
@@ -473,54 +478,54 @@
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state x="549" y="167" key="FileChooserDialogImpl/0.0.1536.824@0.0.1536.824" timestamp="1612426172959" />
    <state width="1031" height="507" key="GridCell.Tab.0.bottom" timestamp="1612424826236">
    <state width="1031" height="634" key="GridCell.Tab.0.bottom" timestamp="1612511424856">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.0.bottom/0.0.1536.824@0.0.1536.824" timestamp="1612424826236" />
    <state width="1031" height="507" key="GridCell.Tab.0.center" timestamp="1612424826236">
    <state width="1031" height="634" key="GridCell.Tab.0.bottom/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" />
    <state width="1031" height="634" key="GridCell.Tab.0.center" timestamp="1612511424856">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.0.center/0.0.1536.824@0.0.1536.824" timestamp="1612424826236" />
    <state width="1031" height="507" key="GridCell.Tab.0.left" timestamp="1612424826236">
    <state width="1031" height="634" key="GridCell.Tab.0.center/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" />
    <state width="1031" height="634" key="GridCell.Tab.0.left" timestamp="1612511424855">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.0.left/0.0.1536.824@0.0.1536.824" timestamp="1612424826236" />
    <state width="1031" height="507" key="GridCell.Tab.0.right" timestamp="1612424826236">
    <state width="1031" height="634" key="GridCell.Tab.0.left/0.0.1536.824@0.0.1536.824" timestamp="1612511424855" />
    <state width="1031" height="634" key="GridCell.Tab.0.right" timestamp="1612511424856">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.0.right/0.0.1536.824@0.0.1536.824" timestamp="1612424826236" />
    <state width="1031" height="507" key="GridCell.Tab.1.bottom" timestamp="1612424826236">
    <state width="1031" height="634" key="GridCell.Tab.0.right/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" />
    <state width="1031" height="634" key="GridCell.Tab.1.bottom" timestamp="1612511424856">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.1.bottom/0.0.1536.824@0.0.1536.824" timestamp="1612424826236" />
    <state width="1031" height="507" key="GridCell.Tab.1.center" timestamp="1612424826236">
    <state width="1031" height="634" key="GridCell.Tab.1.bottom/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" />
    <state width="1031" height="634" key="GridCell.Tab.1.center" timestamp="1612511424856">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.1.center/0.0.1536.824@0.0.1536.824" timestamp="1612424826236" />
    <state width="1031" height="507" key="GridCell.Tab.1.left" timestamp="1612424826236">
    <state width="1031" height="634" key="GridCell.Tab.1.center/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" />
    <state width="1031" height="634" key="GridCell.Tab.1.left" timestamp="1612511424856">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.1.left/0.0.1536.824@0.0.1536.824" timestamp="1612424826236" />
    <state width="1031" height="507" key="GridCell.Tab.1.right" timestamp="1612424826236">
    <state width="1031" height="634" key="GridCell.Tab.1.left/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" />
    <state width="1031" height="634" key="GridCell.Tab.1.right" timestamp="1612511424856">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.1.right/0.0.1536.824@0.0.1536.824" timestamp="1612424826236" />
    <state width="1031" height="507" key="GridCell.Tab.2.bottom" timestamp="1612424826237">
    <state width="1031" height="634" key="GridCell.Tab.1.right/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" />
    <state width="1031" height="634" key="GridCell.Tab.2.bottom" timestamp="1612511424856">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.2.bottom/0.0.1536.824@0.0.1536.824" timestamp="1612424826237" />
    <state width="1031" height="507" key="GridCell.Tab.2.center" timestamp="1612424826237">
    <state width="1031" height="634" key="GridCell.Tab.2.bottom/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" />
    <state width="1031" height="634" key="GridCell.Tab.2.center" timestamp="1612511424856">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.2.center/0.0.1536.824@0.0.1536.824" timestamp="1612424826237" />
    <state width="1031" height="507" key="GridCell.Tab.2.left" timestamp="1612424826237">
    <state width="1031" height="634" key="GridCell.Tab.2.center/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" />
    <state width="1031" height="634" key="GridCell.Tab.2.left" timestamp="1612511424856">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.2.left/0.0.1536.824@0.0.1536.824" timestamp="1612424826237" />
    <state width="1031" height="507" key="GridCell.Tab.2.right" timestamp="1612424826237">
    <state width="1031" height="634" key="GridCell.Tab.2.left/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" />
    <state width="1031" height="634" key="GridCell.Tab.2.right" timestamp="1612511424856">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
    <state width="1031" height="507" key="GridCell.Tab.2.right/0.0.1536.824@0.0.1536.824" timestamp="1612424826237" />
    <state width="1031" height="634" key="GridCell.Tab.2.right/0.0.1536.824@0.0.1536.824" timestamp="1612511424856" />
    <state x="299" y="67" key="Maven.ArtifactSearchDialog" timestamp="1610611848124">
      <screen x="0" y="0" width="1536" height="824" />
    </state>
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/user/CommunityUserInfoVO.java
New file
@@ -0,0 +1,11 @@
package com.panzhihua.common.model.vos.user;/**
* @program: springcloud_k8s_panzhihuazhihuishequ
*
* @description: 社区人员详情
*
* @author: huang.hongfa weixin hhf9596 qq 959656820
*
* @create: 2021-02-18 09:43
**/
public class CommunityUserInfoVO {
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/FileUtil.java
New file
@@ -0,0 +1,36 @@
package com.alibaba.easyexcel.test.util;
import java.io.File;
import java.io.InputStream;
public class TestFileUtil {
    public static InputStream getResourcesFileInputStream(String fileName) {
        return Thread.currentThread().getContextClassLoader().getResourceAsStream("" + fileName);
    }
    public static String getPath() {
        return TestFileUtil.class.getResource("/").getPath();
    }
    public static File createNewFile(String pathName) {
        File file = new File(getPath() + pathName);
        if (file.exists()) {
            file.delete();
        } else {
            if (!file.getParentFile().exists()) {
                file.getParentFile().mkdirs();
            }
        }
        return file;
    }
    public static File readFile(String pathName) {
        return new File(getPath() + pathName);
    }
    public static File readUserHomeFile(String pathName) {
        return new File(System.getProperty("user.home") + File.separator + pathName);
    }
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/IdCard.java
New file
@@ -0,0 +1,11 @@
package com.panzhihua.common.utlis;/**
* @program: springcloud_k8s_panzhihuazhihuishequ
*
* @description: 年龄
*
* @author: huang.hongfa weixin hhf9596 qq 959656820
*
* @create: 2021-02-06 17:27
**/
public class IdCard {
}
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/SystemManagementApi.java
@@ -118,10 +118,11 @@
        return userService.deleteRoleBackstage(roleVO);
    }
    @ApiOperation(value = "运营平台权限配置列表",response = SysMenuVO.class)
    @ApiOperation(value = "社区平台权限配置表",response = SysMenuVO.class)
    @GetMapping("listmenu")
    public R listMenuBackstage(){
        Long communityId = this.getCommunityId();
//        Long communityId = this.getCommunityId(); todo 所有平台都用一套死菜单 所以参数固定
        Long communityId = 2l;
        return userService.listMenuBackstage(communityId);
    }
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/excel/CustomSheetWriteHandler.java
New file
@@ -0,0 +1,39 @@
package com.alibaba.easyexcel.test.demo.write;
import org.apache.poi.ss.usermodel.DataValidation;
import org.apache.poi.ss.usermodel.DataValidationConstraint;
import org.apache.poi.ss.usermodel.DataValidationHelper;
import org.apache.poi.ss.util.CellRangeAddressList;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.alibaba.excel.write.handler.SheetWriteHandler;
import com.alibaba.excel.write.metadata.holder.WriteSheetHolder;
import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder;
/**
 * 自定义拦截器.对第一列第一行和第二行的数据新增下拉框,显示 测试1 测试2
 *
 * @author Jiaju Zhuang
 */
public class CustomSheetWriteHandler implements SheetWriteHandler {
    private static final Logger LOGGER = LoggerFactory.getLogger(CustomSheetWriteHandler.class);
    @Override
    public void beforeSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {
    }
    @Override
    public void afterSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {
        LOGGER.info("第{}个Sheet写入成功。", writeSheetHolder.getSheetNo());
        // 区间设置 第一列第一行和第二行的数据。由于第一行是头,所以第一、二行的数据实际上是第二三行
        CellRangeAddressList cellRangeAddressList = new CellRangeAddressList(1, 2, 0, 0);
        DataValidationHelper helper = writeSheetHolder.getSheet().getDataValidationHelper();
        DataValidationConstraint constraint = helper.createExplicitListConstraint(new String[] {"测试1", "测试2"});
        DataValidation dataValidation = helper.createValidation(constraint, cellRangeAddressList);
        writeSheetHolder.getSheet().addValidationData(dataValidation);
    }
}
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/SysUserInputDAO.java
New file
@@ -0,0 +1,11 @@
package com.panzhihua.service_user.dao;/**
* @program: springcloud_k8s_panzhihuazhihuishequ
*
* @description: 居民导入
*
* @author: huang.hongfa weixin hhf9596 qq 959656820
*
* @create: 2021-02-05 17:40
**/
public interface SysUserInputDAO {
}
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/model/dos/SysUserInputDO.java
New file
@@ -0,0 +1,11 @@
package com.panzhihua.service_user.model.dos;/**
* @program: springcloud_k8s_panzhihuazhihuishequ
*
* @description: 居民导入数据
*
* @author: huang.hongfa weixin hhf9596 qq 959656820
*
* @create: 2021-02-05 17:37
**/
public class SysUserInputDO {
}
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/SysUserInputService.java
New file
@@ -0,0 +1,11 @@
package com.panzhihua.service_user.service;/**
* @program: springcloud_k8s_panzhihuazhihuishequ
*
* @description: 居民导入
*
* @author: huang.hongfa weixin hhf9596 qq 959656820
*
* @create: 2021-02-05 17:42
**/
public interface SysUserInputService {
}
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/SysUserInputServiceImpl.java
New file
@@ -0,0 +1,11 @@
package com.panzhihua.service_user.service.impl;/**
* @program: springcloud_k8s_panzhihuazhihuishequ
*
* @description: 居民导入
*
* @author: huang.hongfa weixin hhf9596 qq 959656820
*
* @create: 2021-02-05 17:42
**/
public class SysUserInputServiceImpl {
}
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
@@ -743,33 +743,36 @@
        Long roleId = menuRoleVO.getRoleId();
        Integer isAll = menuRoleVO.getIsAll();
        Long communityId = menuRoleVO.getCommunityId();
        if (isAll.intValue()==1) {
            List<SysMenuDO> sysMenuDOS = sysMenuDAO.selectList(new QueryWrapper<SysMenuDO>().lambda().eq(SysMenuDO::getCommunityId, 2l).eq(SysMenuDO::getParentId,0).orderByAsc(SysMenuDO::getOrderNum));
            Long menuIdParent = sysMenuDOS.get(1).getMenuId();
            List<SysMenuDO> sysMenuDOSErJi = sysMenuDAO.selectList(new QueryWrapper<SysMenuDO>().lambda().eq(SysMenuDO::getParentId, menuIdParent));
            if (!ObjectUtils.isEmpty(sysMenuDOS)) {
                sysMenuDOS.forEach(sysMenuDO -> {
                    sysMenuDO.setCommunityId(communityId);
                    sysMenuDO.setMenuId(null);
                    sysMenuDAO.insert(sysMenuDO);
                });
//                完成一级目录创建
                List<SysMenuDO> sysMenuDOS1 = sysMenuDAO.selectList(new QueryWrapper<SysMenuDO>().lambda().eq(SysMenuDO::getCommunityId, communityId).orderByAsc(SysMenuDO::getOrderNum));
                sysMenuDOS1.forEach(sysMenuDO -> {
                    Integer orderNum = sysMenuDO.getOrderNum();
                    if (orderNum.intValue()>0) {
                        sysMenuDOSErJi.forEach(sysMenuDO1 -> {
                            sysMenuDO1.setParentId(sysMenuDO.getMenuId());
                            sysMenuDO1.setCommunityId(communityId);
                            sysMenuDO1.setMenuId(null);
                            sysMenuDAO.insert(sysMenuDO1);
                        });
                    }
                });
            }
        }
//        if (isAll.intValue()==1) {
//            List<SysMenuDO> sysMenuDOS = sysMenuDAO.selectList(new QueryWrapper<SysMenuDO>().lambda().eq(SysMenuDO::getCommunityId, 2l).eq(SysMenuDO::getParentId,0).orderByAsc(SysMenuDO::getOrderNum));
//            Long menuIdParent = sysMenuDOS.get(1).getMenuId();
//            List<SysMenuDO> sysMenuDOSErJi = sysMenuDAO.selectList(new QueryWrapper<SysMenuDO>().lambda().eq(SysMenuDO::getParentId, menuIdParent));
//            if (!ObjectUtils.isEmpty(sysMenuDOS)) {
//                sysMenuDOS.forEach(sysMenuDO -> {
//                    sysMenuDO.setCommunityId(communityId);
//                    sysMenuDO.setMenuId(null);
//                    sysMenuDAO.insert(sysMenuDO);
//                });
////                完成一级目录创建
//                List<SysMenuDO> sysMenuDOS1 = sysMenuDAO.selectList(new QueryWrapper<SysMenuDO>().lambda().eq(SysMenuDO::getCommunityId, communityId).orderByAsc(SysMenuDO::getOrderNum));
//                sysMenuDOS1.forEach(sysMenuDO -> {
//                    Integer orderNum = sysMenuDO.getOrderNum();
//                    if (orderNum.intValue()>0) {
//                        sysMenuDOSErJi.forEach(sysMenuDO1 -> {
//                            sysMenuDO1.setParentId(sysMenuDO.getMenuId());
//                            sysMenuDO1.setCommunityId(communityId);
//                            sysMenuDO1.setMenuId(null);
//                            sysMenuDAO.insert(sysMenuDO1);
//                        });
//                    }
//                });
//            }
//        }
//        菜单写死不重新生成菜单 todo 所有注释上面自动生成新菜单功能
//        获取所有权限id
        List<SysMenuDO> menuDOList = sysMenuDAO.selectList(new QueryWrapper<SysMenuDO>().lambda().eq(SysMenuDO::getCommunityId, communityId).orderByAsc(SysMenuDO::getOrderNum));
        List<SysMenuDO> menuDOList = sysMenuDAO.selectList(new QueryWrapper<SysMenuDO>().lambda().eq(SysMenuDO::getCommunityId, 2l).orderByAsc(SysMenuDO::getOrderNum));
        menuIds=menuDOList.stream().map(sysMenuDO -> sysMenuDO.getMenuId()).collect(Collectors.toList());
        for(int i=0;i<menuIds.size();i++){
            SysRoleMenuDO sysRoleMenuDO=new SysRoleMenuDO();
springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java
@@ -73,10 +73,11 @@
        boolean ico = requestURI.contains(".ico");
        boolean docs = requestURI.contains("-docs");
        boolean error = requestURI.contains("error");
        boolean useragreement = requestURI.contains("useragreement");
        boolean refreshToken = requestURI.contains("refreshToken");
        boolean logout = requestURI.contains("logout");
        SafeboxRequestWrapper safeboxRequestWrapper = new SafeboxRequestWrapper(request);
        if (login||doc||css||js||ui||swagger||ico||docs||error||refreshToken) {
        if (login||doc||css||js||ui||swagger||ico||docs||error||refreshToken||useragreement) {
            //什么也不做
        } else {
            // 获取请求头中JWT的Token
springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/SercuritFilter.java
@@ -74,7 +74,8 @@
        boolean docs = !requestUrl.contains("docs");
        boolean login = !requestUrl.contains("login");
        boolean refreshToken = !requestUrl.contains("refreshToken");
        if (contains&&docs&&login&&refreshToken) {
        boolean useragreement = !requestUrl.contains("useragreement");
        if (contains&&docs&&login&&refreshToken&&useragreement) {
            configAttributes.add(new SecurityConfig(SecurityConstants.ROLE_APPLETS));
        }
        return configAttributes;