ludc
2024-09-12 9936c2c1aeebc91b6242083826ef48d77ea03032
Merge remote-tracking branch 'origin/master'
已修改5个文件
110 ■■■■ 文件已修改
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/ISmFunctionQueryService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsActionServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-ui/src/page/login/userlogin.vue 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/ISmFunctionQueryService.java
@@ -2,6 +2,7 @@
import com.vci.common.exception.VciException;
import com.vci.corba.common.PLException;
import com.vci.dto.RoleInfoDTO;
import com.vci.dto.RoleRightDTO;
import com.vci.dto.RoleRightParamDTO;
import com.vci.frameworkcore.enumpck.ResourceControlTypeEnum;
@@ -176,4 +177,10 @@
     * @throws PLException
     */
    BaseResult saveRoleRight(List<RoleRightParamDTO> roleRightDTOS, String roleId) throws PLException;
    /**
     * 获取所授权的模块权限
     * @param roleName 搜索的角色
     * @return 角色列表
     */
    List<RoleInfoDTO> getRoleList(String roleName) throws PLException;
}
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java
@@ -12,6 +12,7 @@
import com.vci.corba.framework.data.*;
import com.vci.corba.omd.data.BusinessObject;
import com.vci.corba.portal.data.PLUILayout;
import com.vci.dto.RoleInfoDTO;
import com.vci.dto.RoleRightDTO;
import com.vci.dto.RoleRightParamDTO;
import com.vci.frameworkcore.compatibility.ISmFunctionQueryService;
@@ -531,6 +532,7 @@
                menuVO.setSort((int) funcObj.seq);
                findChildAuthFunctionVO(menuVO, isAll);
                functionVO.getChildren().add(menuVO);
                functionVO.setHasChildren(true);
            }
        }else if(type == 2){
            FuncOperationInfo[] infos = platformClientUtil.getFrameworkService().getFuncOperationByModule(functionVO.getId(), "", true);
@@ -549,6 +551,7 @@
                menuVO.setIsValid(info.isValid);
                menuVO.setHasChildren(false);
                functionVO.getChildren().add(menuVO);
                functionVO.setHasChildren(true);
            }
        }else{
            functionVO.setHasChildren(false);
@@ -580,15 +583,13 @@
    public List<String> getSysModelAuth(String roleId) throws PLException {
        RoleRightInfo[] roleRightList = platformClientUtil.getFrameworkService().getRoleRightList(roleId, WebUtil.getCurrentUserId());
        Map<String, Long> authMap = Arrays.stream(roleRightList).collect(Collectors.toMap(e -> e.funcId, e -> e.rightValue));
        Map<String, Long> authMap = Arrays.stream(roleRightList).collect(Collectors.toMap(e -> e.funcId, e -> e.rightValue,
                (existing, replacement) -> existing));
        String parentId;
        SessionInfo sessionInfo = WebUtil.getCurrentUserSessionInfoNotException();
        boolean adminOrDeveloperOrRoot = rightControlUtil.isAdminOrDeveloperOrRoot(sessionInfo.getUserId());
        if (adminOrDeveloperOrRoot) {
            //系统菜单
            parentId = SYSTEMMANAGMENTNODE;
        } else if (rightControlUtil.isThreeAdminCurUser()) {
            //三员返回管理功能模块相关的菜单
            parentId = SYSTEMMANAGMENTNODE;
        } else {
            //普通用户只返回业务功能模块相关的菜单
@@ -683,6 +684,32 @@
            throw new PLException("500", new String[]{"功能模块授权失败!"});
        }
        return BaseResult.success();
    }
    /**
     * 获取所授权的模块权限
     * @param roleName 搜索的角色
     * @return 角色列表
     */
    @Override
    public List<RoleInfoDTO> getRoleList(String roleName) throws PLException {
        RoleInfo[] roleInfos = platformClientUtil.getFrameworkService().fetchRoleInfoByUserType(WebUtil.getCurrentUserId());
        List<RoleInfoDTO> dtos = new ArrayList<>();
        for (RoleInfo roleInfo : roleInfos) {
            if(StringUtils.isBlank(roleName) || roleInfo.name.indexOf(roleName) != -1) {
                RoleInfoDTO dto = new RoleInfoDTO();
                dto.setName(roleInfo.name);
                dto.setDescription(roleInfo.description);
                dto.setId(roleInfo.id);
                dto.setGrantor(roleInfo.grantor);
                dto.setType(roleInfo.type);
                dto.setCreateTime(roleInfo.createTime);
                dto.setCreateUser(roleInfo.createUser);
                dto.setUpdateTime(roleInfo.updateTime);
                dto.setUpdateUser(roleInfo.updateUser);
                dtos.add(dto);
            }
        }
        return dtos;
    }
    private long countRightValue(List<RoleRightParamDTO> dtos){
@@ -1075,9 +1102,6 @@
        String parentId;
        if (adminOrDeveloperOrRoot) {
            //系统菜单
            parentId = SYSTEMMANAGMENTNODE;
        } else if (rightControlUtil.isThreeAdminCurUser()) {
            //三员返回管理功能模块相关的菜单
            parentId = SYSTEMMANAGMENTNODE;
        } else {
            //普通用户只返回业务功能模块相关的菜单
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/HMSysModConfigController.java
@@ -4,6 +4,7 @@
import com.vci.corba.common.PLException;
import com.vci.corba.framework.data.FuncOperationInfo;
import com.vci.corba.framework.data.OperateInfo;
import com.vci.dto.RoleInfoDTO;
import com.vci.dto.RoleRightDTO;
import com.vci.dto.RoleRightParamDTO;
import com.vci.frameworkcore.compatibility.ISmFunctionQueryService;
@@ -110,6 +111,23 @@
    }
    /**
     * 角色列表
     * @param roleName 搜索的角色
     * @return 角色列表
     */
    @GetMapping("/getRoleList")
    public BaseResult<List<RoleInfoDTO>> getRoleList(String roleName) {
        try {
            return BaseResult.dataList(functionQueryService.getRoleList(roleName));
        }catch (Exception e){
            e.printStackTrace();
            String errorMsg = "查询时出现错误,原因:"+ VciBaseUtil.getExceptionMessage(e);
            logger.error(errorMsg);
            throw new VciBaseException(errorMsg);
        }
    }
    /**
     * 保存授权的模块
     * @param roleRightDTOS 用户选择授权模块信息
     * @param roleId 角色主键
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsActionServiceImpl.java
@@ -127,6 +127,7 @@
        PLActionCls[] clses = platformClientUtil.getUIService().getPLActionClsArray();
        PLActionClsDTO treDto = new PLActionClsDTO();
        treDto.setName("Action分类");
        treDto.setId("root");
        Map<String, List<PLActionCls>> allDataMap = Arrays.stream(clses).collect(Collectors.groupingBy(pl -> pl.pid));
        for (PLActionCls cls : clses) {
@@ -134,7 +135,7 @@
                PLActionClsDTO parentDto = new PLActionClsDTO();
                parentDto.setId(cls.id);
                parentDto.setName(cls.name);
                parentDto.setPid(cls.pid);
                parentDto.setPid("root");
                parentDto.setDescription(cls.description);
                parentDto.setCreator(cls.creator);
                parentDto.setCreateTime(cls.createTime);
@@ -186,7 +187,7 @@
        Constraint[] consArray ;
        if(StringUtils.isNotBlank(dto.getPlactioncls())){
            consArray = new Constraint[7];
            consArray[6] = new Constraint("plactioncls", dto.getPlactioncls());
            consArray[6] = new Constraint("plactioncls", dto.getPlactioncls().equals("root") ? "": dto.getPlactioncls());
        }else {
            consArray = new Constraint[6];
        }
Source/plt-web/plt-web-ui/src/page/login/userlogin.vue
@@ -1,10 +1,10 @@
<template>
  <el-form class="login-form"
           status-icon
           :rules="loginRules"
           ref="loginForm"
  <el-form ref="loginForm"
           :model="loginForm"
           :rules="loginRules"
           class="login-form"
           label-width="0"
           status-icon
         >
<!--      <el-form-item prop="selectInput">-->
@@ -19,35 +19,33 @@
<!--        </el-select>-->
<!--      </el-form-item>-->
      <el-form-item prop="username">
        <el-input size="small"
                  @keyup.enter.native="handleLogin"
                  v-model="loginForm.username"
      <el-input v-model="loginForm.username"
                :placeholder="$t('login.username')"
                  auto-complete="off"
                  :placeholder="$t('login.username')">
                size="small"
                @keyup.enter.native="handleLogin">
          <i slot="prefix" class="icon-yonghu" style="color: white"/>
        </el-input>
      </el-form-item>
      <el-form-item prop="password">
        <el-input size="small"
                  @keyup.enter.native="handleLogin"
      <el-input v-model="loginForm.password"
                :placeholder="$t('login.password')"
                  :type="passwordType"
                  v-model="loginForm.password"
                  auto-complete="off"
                  :placeholder="$t('login.password')">
          <i class="el-icon-view el-input__icon" slot="suffix" @click="showPassword" style="color: white"/>
                size="small"
                @keyup.enter.native="handleLogin">
        <i slot="suffix" class="el-icon-view el-input__icon" style="color: white" @click="showPassword"/>
          <i slot="prefix" class="icon-mima" style="color: white"/>
        </el-input>
      </el-form-item>
      <el-form-item>
        <el-button type="primary"
      <el-button class="login-submit"
                   size="small"
                   @click.native.prevent="handleLogin"
                   class="login-submit">{{$t('login.submit')}}
                 type="primary"
                 @click.native.prevent="handleLogin">{{ $t('login.submit') }}
        </el-button>
      </el-form-item>
  </el-form>
@@ -147,7 +145,6 @@
      // 绑定下拉菜单动态ID
      selectchange(value) {
        this.loginForm.tenantId=value
        console.log(this.loginForm.tenantId)
      },
      showPassword() {
        this.passwordType === ""
@@ -165,6 +162,10 @@
        done();
      },
      handleLogin() {
      if (!this.loginForm.password) {
        this.$message.error('请输入密码');
        return;
      }
        this.$router.push({path: this.tagWel.value});
        this.$refs.loginForm.validate(valid => {
          if (valid) {
@@ -189,7 +190,8 @@
                  });
                  return false;
                }
              };
            }
            ;
              this.$router.push({path: this.tagWel.value});
              loading.close();
            }).catch((err) => {