Parcourir la source

Merge branch 'mzq-sjjq-220929' into 'develop'

Mzq sjjq 220929

See merge request xj-aks/dcuc/auth-back!4
马志强 il y a 2 ans
Parent
commit
8bb56b655b

+ 48 - 55
src/main/java/com/dragoninfo/dcuc/authweb/restcontroller/auth/DataAuthController.java

@@ -12,8 +12,8 @@ import com.dragoninfo.dcuc.auth.auth.vo.DataAuthAcceptVo;
 import com.dragoninfo.dcuc.auth.auth.vo.DataAuthTreeReactVo;
 import com.dragoninfo.dcuc.auth.sub.dto.LabelSearchDTO;
 import com.dragoninfo.dcuc.auth.sub.facade.IUserCenterApiFacade;
-import com.dragoninfo.dcuc.authweb.restcontroller.auth.vo.data.*;
 import com.dragoninfo.dcuc.auth.sub.vo.LabelTreeVO;
+import com.dragoninfo.dcuc.authweb.restcontroller.auth.vo.data.*;
 import com.dragoninfo.dcuc.authweb.util.VersionUtils;
 import com.dragoninfo.duceap.core.response.Result;
 import com.dragonsoft.duceap.base.entity.search.SearchDTO;
@@ -35,13 +35,11 @@ import java.util.stream.Collectors;
  * @date 2021/4/6
  */
 @Slf4j
-@Api(tags ="数据授权API")
+@Api(tags = "数据授权API")
 @RestController
-@RequestMapping("authsvr/"+ VersionUtils.VERSION_UID +"/dataauth")
+@RequestMapping("authsvr/" + VersionUtils.VERSION_UID + "/dataauth")
 public class DataAuthController {
 
-    public static final String idJoin = "|";
-
     @Autowired
     IDataAuthFacade dataAuthFacade;
 
@@ -52,11 +50,10 @@ public class DataAuthController {
     IDataResourceFacade dataResourceFacade;
 
 
-
     @ApiOperation(value = "获取属性列表,树形结构:警种1-业务域N")
     @ApiImplicitParam(name = "name", value = "查询条件")
     @GetMapping(value = "businessTreeList", produces = "application/json;charset=UTF-8")
-    public Result<List<LabelTreeVO>> businessTreeList(){
+    public Result<List<LabelTreeVO>> businessTreeList() {
         LabelSearchDTO labelSearchDTO = new LabelSearchDTO();
         labelSearchDTO.setShowAll(false);
         List<LabelTreeVO> labelTreeList = userCenterApiFacade.labelTreeList(labelSearchDTO);
@@ -65,33 +62,23 @@ public class DataAuthController {
 
 
     @ApiOperation(value = "获取所有数据资源,返回树结构")
-    @ApiImplicitParam(name = "attrType",value = "数据属性类型 TABLE:表 COLUMN:列")
+    @ApiImplicitParam(name = "attrType", value = "数据属性类型 TABLE:表 COLUMN:列")
     @GetMapping(value = "allDataTree", produces = "application/json;charset=UTF-8")
-    public Result<List<DataResourceClassifyVo>> getAllDataResource(@RequestParam(value = "attrType", required = false) String attrType){
+    public Result<List<DataResourceClassifyVo>> getAllDataResource(@RequestParam(value = "attrType", required = false) String attrType) {
         log.info("allDataTree >> attrType:{}", attrType);
         List<DataResourceClassifyVo> dataResourceTree = dataResourceFacade.getAllDataResourceTree(attrType);
         return Result.success(dataResourceTree);
     }
 
     @ApiOperation(value = "获取数据资源,返回树结构")
-    @ApiImplicitParam(name = "typeCode",value = "typeCode类型(数据分级:DATA_CLASSIFY;数据资源分类:DATA_RESOURCE_CLASSIFY;数据安全级别:DATA_SECURITY_LEVEL;字段分类:COLUMN_CLASSIFY)")
+    @ApiImplicitParam(name = "typeCode", value = "typeCode类型(数据分级:DATA_CLASSIFY;数据资源分类:DATA_RESOURCE_CLASSIFY;数据安全级别:DATA_SECURITY_LEVEL;字段分类:COLUMN_CLASSIFY)")
     @GetMapping(value = "getDataResourceTree")
-    public Result<DataResourceClassifyVo> getDataResource(@RequestParam("typeCode") String typeCode){
+    public Result<DataResourceClassifyVo> getDataResource(@RequestParam("typeCode") String typeCode) {
         log.info("dataTree >> typeCode:{}", typeCode);
         DataResourceClassifyVo dataResourceTree = dataResourceFacade.getDataResourceTree(typeCode);
         return Result.success(dataResourceTree);
     }
 
-    @ApiOperation(value = "人员数据授权接口")
-    @PostMapping(value = "userDataAuth", produces = "application/json;charset=UTF-8")
-    public Result<Boolean> userDataAuth(@RequestBody UserDataAuthAcceptVo vo){
-        List<DataAuthAcceptVo> authVoList = vo.getAuthVoList();
-        log.info("userDataAuth >> userDataAuthAcceptVo:{}",JSON.toJSONString(vo));
-        SubDataAuthDTO subDataAuthDTO = convertToSubAuthDTO(vo.getIdcard(), SubDataAuthTypeEnum.SUB_DATA_AUTH_USER.getValue(), vo.getAuthType(), authVoList);
-        dataAuthFacade.subDataAuthAdd(subDataAuthDTO);
-        return Result.success(true);
-    }
-
     @ApiOperation(value = "数据资源树联动勾选接口")
     @PostMapping("tree-react")
     public Result<List<DataClassifyVo>> treeReact(@RequestBody DataAuthTreeReactVo treeReactVo) {
@@ -100,12 +87,21 @@ public class DataAuthController {
         return Result.success(vos);
     }
 
+    @ApiOperation(value = "人员数据授权接口")
+    @PostMapping(value = "userDataAuth", produces = "application/json;charset=UTF-8")
+    public Result<Boolean> userDataAuth(@RequestBody UserDataAuthAcceptVo vo) {
+        List<DataAuthAcceptVo> authVoList = vo.getAuthVoList();
+        log.info("userDataAuth >> userDataAuthAcceptVo:{}", JSON.toJSONString(vo));
+        SubDataAuthDTO subDataAuthDTO = convertToSubAuthDTO(vo.getIdcard(), SubDataAuthTypeEnum.SUB_DATA_AUTH_USER.getValue(), vo.getAuthType(), authVoList);
+        dataAuthFacade.subDataAuthAdd(subDataAuthDTO);
+        return Result.success(true);
+    }
 
     @ApiOperation(value = "机构数据授权接口")
     @PostMapping(value = "orgDataAuth", produces = "application/json;charset=UTF-8")
-    public Result<Boolean> orgDataAuth(@RequestBody OrgDataAuthAcceptVo vo){
+    public Result<Boolean> orgDataAuth(@RequestBody OrgDataAuthAcceptVo vo) {
         List<DataAuthAcceptVo> authVoList = vo.getAuthVoList();
-        log.info("orgDataAuth>>orgDataAuthAcceptVo:{}",JSON.toJSONString(vo));
+        log.info("orgDataAuth>>orgDataAuthAcceptVo:{}", JSON.toJSONString(vo));
         SubDataAuthDTO subDataAuthDTO = convertToSubAuthDTO(vo.getOrgCode(), SubDataAuthTypeEnum.SUB_DATA_AUTH_ORG.getValue(), vo.getAuthType(), authVoList);
         dataAuthFacade.subDataAuthAdd(subDataAuthDTO);
         return Result.success(true);
@@ -114,9 +110,9 @@ public class DataAuthController {
 
     @ApiOperation(value = "业务域标签数据授权接口")
     @PostMapping(value = "labelDataAuth", produces = "application/json;charset=UTF-8")
-    public Result<Boolean> labelDataAuth(@RequestBody LabelDataAuthAcceptVo vo){
+    public Result<Boolean> labelDataAuth(@RequestBody LabelDataAuthAcceptVo vo) {
         List<DataAuthAcceptVo> authVoList = vo.getAuthVoList();
-        log.info("labelDataAuth >> labelDataAuthAcceptVo:{}",JSON.toJSONString(vo));
+        log.info("labelDataAuth >> labelDataAuthAcceptVo:{}", JSON.toJSONString(vo));
         SubDataAuthDTO subDataAuthDTO = convertToSubAuthDTO(vo.getBusinessCode(), SubDataAuthTypeEnum.SUB_DATA_AUTH_BUSINESS.getValue(), vo.getAuthType(), authVoList);
         dataAuthFacade.subDataAuthAdd(subDataAuthDTO);
         return Result.success(true);
@@ -128,7 +124,7 @@ public class DataAuthController {
         List<SubDataAuthQueryDTO> dtos = new ArrayList<>();
         for (SubDataAuthQueryVo vo : queryVoList) {
             SubDataAuthQueryDTO dto = new SubDataAuthQueryDTO();
-            BeanUtils.copyProperties(vo,dto);
+            BeanUtils.copyProperties(vo, dto);
         }
         List<DataClassifyDTO> classifyDTOS = dataAuthFacade.subDataAuthList(dtos);
         List<DataClassifyVo> vos = convertToVos(classifyDTOS);
@@ -136,11 +132,11 @@ public class DataAuthController {
     }
 
     @ApiOperation(value = "查询单个主体数据权限")
-    @PostMapping(value = "getSubDataAuth" , produces = "application/json;charset=UTF-8")
-    public Result<List<DataClassifyVo>> getSubDataAuth(@RequestBody SubDataAuthQueryVo queryVo){
-        log.info("getSubDataAuth >> vo:{}",JSON.toJSONString(queryVo));
+    @PostMapping(value = "getSubDataAuth", produces = "application/json;charset=UTF-8")
+    public Result<List<DataClassifyVo>> getSubDataAuth(@RequestBody SubDataAuthQueryVo queryVo) {
+        log.info("getSubDataAuth >> vo:{}", JSON.toJSONString(queryVo));
         SubDataAuthQueryDTO queryDTO = new SubDataAuthQueryDTO();
-        BeanUtils.copyProperties(queryVo,queryDTO);
+        BeanUtils.copyProperties(queryVo, queryDTO);
         List<DataClassifyDTO> dtos = dataAuthFacade.getSubDataAuth(queryDTO);
         List<DataClassifyVo> vos = convertToVos(dtos);
         return Result.success(vos);
@@ -149,12 +145,12 @@ public class DataAuthController {
 
     @ApiOperation(value = "人员视角数据权限查询-根据人员id查询")
     @ApiImplicitParams(value = {
-            @ApiImplicitParam(name = "userId",value = "人员id"),
-            @ApiImplicitParam(name = "authType",value = "数据属性授权类型 TABLE:表授权 COLUMN:列授权")
+            @ApiImplicitParam(name = "userId", value = "人员id"),
+            @ApiImplicitParam(name = "authType", value = "数据属性授权类型 TABLE:表授权 COLUMN:列授权")
     })
-    @GetMapping(value = "dataAuthInfoByUserId" , produces = "application/json;charset=UTF-8")
+    @GetMapping(value = "dataAuthInfoByUserId", produces = "application/json;charset=UTF-8")
     public Result<List<DataClassifyVo>> userDataAuthInfoById(@RequestParam("userId") String userId,
-                                   @RequestParam(value = "authType", required = false) String authType){
+                                                             @RequestParam(value = "authType", required = false) String authType) {
         log.info("dataAuthInfoByUserId >> userId:{},authType:{}", userId, authType);
         List<DataClassifyDTO> dtos = dataAuthFacade.userDataAuthInfoByUserId(userId, authType);
         List<DataClassifyVo> vos = convertToVos(dtos);
@@ -163,12 +159,12 @@ public class DataAuthController {
 
     @ApiOperation(value = "人员视角数据权限查询-根据人员身份证号查询")
     @ApiImplicitParams(value = {
-            @ApiImplicitParam(name = "idcard",value = "身份证号"),
-            @ApiImplicitParam(name = "authType",value = "数据属性授权类型 TABLE:表授权 COLUMN:列授权")
+            @ApiImplicitParam(name = "idcard", value = "身份证号"),
+            @ApiImplicitParam(name = "authType", value = "数据属性授权类型 TABLE:表授权 COLUMN:列授权")
     })
-    @GetMapping(value = "dataAuthInfoByIdcard" , produces = "application/json;charset=UTF-8")
+    @GetMapping(value = "dataAuthInfoByIdcard", produces = "application/json;charset=UTF-8")
     public Result<List<DataClassifyVo>> userDataAuthInfoByIdcard(@RequestParam("idcard") String idcard,
-                                   @RequestParam(value = "authType",required = false) String authType){
+                                                                 @RequestParam(value = "authType", required = false) String authType) {
         List<DataClassifyDTO> dtos = dataAuthFacade.userDataAuthInfoByIdcard(idcard, authType);
         List<DataClassifyVo> vos = convertToVos(dtos);
         return Result.success(vos);
@@ -176,11 +172,11 @@ public class DataAuthController {
 
     @ApiOperation(value = "人员视角-有权限的数据资源查询(树结构)-根据身份证号查询")
     @ApiImplicitParams(value = {
-            @ApiImplicitParam(name = "idcard",value = "身份证号"),
-            @ApiImplicitParam(name = "authType",value = "数据属性授权类型 TABLE:表授权 COLUMN:列授权")
+            @ApiImplicitParam(name = "idcard", value = "身份证号"),
+            @ApiImplicitParam(name = "authType", value = "数据属性授权类型 TABLE:表授权 COLUMN:列授权")
     })
-    @GetMapping(value = "userDataTreeByIdcard" , produces = "application/json;charset=UTF-8")
-    public Result<List<DataResourceClassifyVo>> userDataAuthTreeByIdcard(@RequestParam("idcard") String idcard, @RequestParam(value = "authType",required = false) String authType){
+    @GetMapping(value = "userDataTreeByIdcard", produces = "application/json;charset=UTF-8")
+    public Result<List<DataResourceClassifyVo>> userDataAuthTreeByIdcard(@RequestParam("idcard") String idcard, @RequestParam(value = "authType", required = false) String authType) {
         List<DataResourceDTO> dtos = dataAuthFacade.userDataTreeByIdcard(idcard, authType);
         //树节点dto转vo多层次拷贝,使用JSONString序列化
         //字段key值要能对应上
@@ -192,22 +188,22 @@ public class DataAuthController {
 
     @ApiOperation(value = "分级分类清单数据")
     @PostMapping(value = "dataDetailList")
-    public Result dataDetailList(SearchDTO searchDTO){
+    public Result dataDetailList(SearchDTO searchDTO) {
         BusResultVO busResultVO = dataAuthFacade.dataDetailList(searchDTO);
-        return Result.success((long) busResultVO.getResultData().getTotalCount(),busResultVO.getResultData().getDataList());
+        return Result.success((long) busResultVO.getResultData().getTotalCount(), busResultVO.getResultData().getDataList());
     }
 
     private List<DataClassifyVo> convertToVos(List<DataClassifyDTO> classifyDTOS) {
         return classifyDTOS.stream().map(item -> {
             DataClassifyVo vo = new DataClassifyVo();
-            BeanUtils.copyProperties(item, vo,"tickedDatas");
+            BeanUtils.copyProperties(item, vo, "tickedDatas");
             List<SubDataDTO> tickedDatas = item.getTickedDatas();
             List<SubDataVo> dataVoList = tickedDatas.stream()
-                    .map(dto->{
+                    .map(dto -> {
                         //拼接dataId给前端使用,保证dataId是唯一值
-                        dto.setDataId(dto.getClassifyCode()+ idJoin + dto.getDataId());
+                        dto.setDataId(dto.getDataId());
                         SubDataVo subDataVo = new SubDataVo();
-                        BeanUtils.copyProperties(dto,subDataVo);
+                        BeanUtils.copyProperties(dto, subDataVo);
                         return subDataVo;
                     }).collect(Collectors.toList());
             vo.setTickedDatas(dataVoList);
@@ -215,16 +211,13 @@ public class DataAuthController {
         }).collect(Collectors.toList());
     }
 
-    private SubDataAuthDTO convertToSubAuthDTO(String subId, String subType, String authType,List<DataAuthAcceptVo> authVoList) {
-        SubDataAuthDTO subDataAuthDTO = new SubDataAuthDTO(subId,subType,authType);
+    private SubDataAuthDTO convertToSubAuthDTO(String subId, String subType, String authType, List<DataAuthAcceptVo> authVoList) {
+        SubDataAuthDTO subDataAuthDTO = new SubDataAuthDTO(subId, subType, authType);
         List<SubDataDTO> dataDTOList = new ArrayList<>();
         for (DataAuthAcceptVo vo : authVoList) {
             SubDataDTO subDataDTO = new SubDataDTO();
-            String dataId = vo.getDataId();
-            //除去分级分类标签的code
-            int index = dataId.indexOf(idJoin);
-            //从dataId截取拼接各种参数
-            subDataDTO.setDataId(dataId);
+            subDataDTO.setDataId(vo.getDataId());
+            subDataDTO.setDataCode(vo.getDataCode());
             subDataDTO.setClassifyCode(vo.getClassifyCode());
             dataDTOList.add(subDataDTO);
         }

+ 1 - 4
src/main/java/com/dragoninfo/dcuc/authweb/restcontroller/auth/vo/data/SubDataVo.java

@@ -15,10 +15,7 @@ public class SubDataVo {
     @ApiModelProperty(value = "数据资源唯一标识")
     private String dataId;
 
-    @ApiModelProperty(value = "数据类型")
-    private String dataType;
-
-    @ApiModelProperty(value = "数据资源code集合")
+    @ApiModelProperty(value = "数据资源code")
     private String dataCode;
 
     @ApiModelProperty(value = "数据对应的分级分类标签code")

+ 10 - 1
src/main/java/com/dragoninfo/dcuc/authweb/restcontroller/sub/SubSyncController.java

@@ -150,5 +150,14 @@ public class SubSyncController {
         }
     }
 
-
+    @ApiOperation(value = "表和列资源同步")
+    @GetMapping(value = "tableColumnSync")
+    public Result tableColumnSync() {
+        ResponseStatus response = dataResourceFacade.syncTableAndColumn();
+        if (ResponseStatus.SUCCESS_CODE.equals(response.getStatusCode())) {
+            return Result.success();
+        } else {
+            return Result.failMessage(response.getMessage());
+        }
+    }
 }

+ 3 - 3
src/main/resources/application-base.yml

@@ -35,7 +35,7 @@ management:
 duceap:
   swagger:
     enabled: true
-    package-path: com.dragoninfo.dcuc.authweb.restcontroller.audit.v2
+    package-path: com.dragoninfo.dcuc.authweb.restcontroller.auth
   license:
     #配置用来指定license对接的后端项目地址(格式:ip:port/context,如http://10.10.10.10:8080/ctx),
     #默认使用HttpServletRequest.getLocalAddr()方法获取ip地址,
@@ -62,10 +62,10 @@ duceap:
       #单点登录服务接口地址
       SSOValidateUrl:  http://192.168.6.128:9995/didsserver/serviceValidate
       #跳转前端地址
-      SSOServiceUrl: http://10.11.0.168:8871/dcucauth/login
+      SSOServiceUrl: http://10.11.1.25:8871/dcucauth/login
       #单点登录服务接口地址
       webServiceUrl: http://192.168.6.128:9995/didsserver/webservices/
-      noFilterUrl: services,hessian,commons,install.action,.xml,/install,/widgets-src/,/authorizationPage.html,/importAuthorizationFile.html,/license/LicenseManagerServlet,/authorizationFile/,/api/,/js/,/png/,/rest/,/dataresourcesrv/
+      noFilterUrl: services,hessian,commons,install.action,.xml,/install,/widgets-src/,/authorizationPage.html,/importAuthorizationFile.html,/license/LicenseManagerServlet,/authorizationFile/,/api/,/js/,/png/,/rest/,/dataresourcesrv/,/swagger-ui.html,/v2/
 hystrix:
   command:
     default: