Эх сурвалжийг харах

Merge branch 'develop' into lvzr

lvzhangrun 3 жил өмнө
parent
commit
922ddfcdf6
15 өөрчлөгдсөн 237 нэмэгдсэн , 39 устгасан
  1. 26 0
      dcuc-auth-api/src/main/java/com/dragoninfo/dcuc/auth/auth/facade/IRoleFacade.java
  2. 0 4
      dcuc-auth-model/src/main/java/com/dragoninfo/dcuc/auth/auth/entity/AuthMenuInfo.java
  3. 15 6
      dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/audit/service/log/DataAuthLogHandler.java
  4. 13 8
      dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/audit/service/log/LogInfoFillService.java
  5. 15 0
      dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/auth/facade/RoleFacade.java
  6. 26 1
      dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/auth/service/IRoleService.java
  7. 37 2
      dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/auth/service/impl/AppFunInfoService.java
  8. 10 4
      dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/auth/service/impl/DataAuthServiceImpl.java
  9. 35 6
      dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/auth/service/impl/RoleService.java
  10. 9 0
      dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/sub/business/ILabelBusiness.java
  11. 36 3
      dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/sub/business/impl/LabelBusiness.java
  12. 7 0
      dcuc-auth-service/src/main/resources/config/mysql/V4_3_0011__sub_auth_init_info.sql
  13. 2 4
      dcuc-auth-service/src/main/resources/config/mysql/V4_3_0020__User_Model_Fix.sql
  14. 6 0
      dcuc-auth-service/src/main/resources/config/sql/V4_3_0011__sub_auth_init.sql
  15. 0 1
      dcuc-auth-service/src/main/resources/config/sql/V4_3_0020__User_Model_Fix.sql

+ 26 - 0
dcuc-auth-api/src/main/java/com/dragoninfo/dcuc/auth/auth/facade/IRoleFacade.java

@@ -219,4 +219,30 @@ public interface IRoleFacade {
     @RequestMapping(value = "appListByIdcard")
      List<Map<String, String>> appListByIdcard(@RequestParam("idcard") String idcard);
 
+    /**
+     * 根据idcard,appCode获取用户权限列表
+     * @param idcard
+     * @param appCode
+     * @return
+     */
+    @GetMapping("getAuthByIdcardAndAppCode")
+    List<String> getAuthByIdcardAndAppCode(@RequestParam("idcard") String idcard,@RequestParam("appCode") String appCode);
+
+    /**
+     * 根据idcard,appCode获取用户拥有的应用角色列表
+     * @param appCode
+     * @param idcard
+     * @return
+     */
+    @GetMapping("getRolesByAppCodeAndIdcard")
+    ResponseDTO getRolesByAppCodeAndIdcard(@RequestParam("appCode") String appCode,@RequestParam("idcard") String idcard);
+
+    /**
+     * 根据idcard,appCode获取用户拥有的应用权限列表
+     * @param idcard
+     * @param appCode
+     * @return
+     */
+    @GetMapping("getAppAuthByIdcardAndAppCode")
+    List<Map<String, String>> getAppAuthByIdcardAndAppCode(@RequestParam("idcard") String idcard,@RequestParam("appCode") String appCode);
 }

+ 0 - 4
dcuc-auth-model/src/main/java/com/dragoninfo/dcuc/auth/auth/entity/AuthMenuInfo.java

@@ -86,8 +86,4 @@ public class AuthMenuInfo {
     /** 是否隐藏0:否 1:是 */
     @Column(name = "IS_HIDE")
     private String isHide ;
-
-    /** 菜单资源类型:1菜单,0按钮权限 */
-    @Column(name = "RESOURCE_TYPE")
-    private String resourceType ;
 }

+ 15 - 6
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/audit/service/log/DataAuthLogHandler.java

@@ -21,6 +21,7 @@ import com.dragoninfo.dcuc.auth.sub.vo.LabelVO;
 import com.dragoninfo.dcuc.org.entity.OrgInfo;
 import com.dragoninfo.dcuc.org.facade.IOrgInfoFacade;
 import com.dragonsoft.duceap.base.entity.security.SecurityUser;
+import com.dragonsoft.duceap.base.utils.UserContextUtils;
 import com.dragonsoft.duceap.commons.util.collections.CollectionUtils;
 import com.dragonsoft.duceap.core.context.ContextUtils;
 import com.google.common.collect.Lists;
@@ -77,13 +78,13 @@ public class DataAuthLogHandler {
     }
 
 
-    public void sendDataAuthLog(AuthResultEnum state, String subId, String subType, List<SubDataDTO> addList, String realIp) {
+    public void sendDataAuthLog(AuthResultEnum state, String subId, String subType, List<SubDataDTO> addList, String realIp, String appToken, String userToken) {
         logger.info("DataAuthLogHandler sendDataAuthLog client ip :{}", realIp);
         //主体
         AuthorizeSubjectDto authorizeSubjectDto = new AuthorizeSubjectDto();
         //业务域数据授权
         if (subType.equals(SubDataAuthTypeEnum.SUB_DATA_AUTH_BUSINESS.getValue())) {
-            LabelVO details = labelBusiness.details(subId);
+            LabelVO details = labelBusiness.details(subId, appToken, userToken);
             authorizeSubjectDto.setSubjectId(details.getCode());
             authorizeSubjectDto.setSubjectName(details.getName());
         }
@@ -112,7 +113,7 @@ public class DataAuthLogHandler {
         }).collect(Collectors.toList());
 
 
-        SecurityUser securityUser = (SecurityUser) ContextUtils.getUserInfo();
+        SecurityUser securityUser = UserContextUtils.getCurrentUser();
         AuthorizeHandlerDto handler = getHandler(securityUser);
 
         AuthorizeLogDto saveAuthorizeLogDto = new AuthorizeLogDto();
@@ -127,14 +128,14 @@ public class DataAuthLogHandler {
         logSendService.sendAuthorizeLog(saveAuthorizeLogDto);
     }
 
-    public void sendDataDelAuthLog(AuthResultEnum state, List<DataAuth> delList, String realIp) {
+    public void sendDataDelAuthLog(AuthResultEnum state, List<DataAuth> delList, String realIp, String appToken, String userToken) {
         logger.info("DataAuthLogHandler sendDataAuthLog client ip :{}", realIp);
         //主体
         AuthorizeSubjectDto authorizeSubjectDto = new AuthorizeSubjectDto();
         if (!CollectionUtils.isEmpty(delList)) {
             DataAuth dataAuth = delList.get(0);
             if (dataAuth.getSubType().equals(SubDataAuthTypeEnum.SUB_DATA_AUTH_BUSINESS.getValue())) {
-                LabelVO details = labelBusiness.details(dataAuth.getSubId());
+                LabelVO details = labelBusiness.details(dataAuth.getSubId(), appToken, userToken);
                 authorizeSubjectDto.setSubjectId(details.getCode());
                 authorizeSubjectDto.setSubjectName(details.getName());
             }
@@ -164,7 +165,7 @@ public class DataAuthLogHandler {
         }).collect(Collectors.toList());
 
 
-        SecurityUser securityUser = (SecurityUser) ContextUtils.getUserInfo();
+        SecurityUser securityUser = UserContextUtils.getCurrentUser();
         AuthorizeHandlerDto handler = getHandler(securityUser);
 
         AuthorizeLogDto saveAuthorizeLogDto = new AuthorizeLogDto();
@@ -178,6 +179,14 @@ public class DataAuthLogHandler {
         logSendService.sendAuthorizeLog(saveAuthorizeLogDto);
     }
 
+    /**
+     * 数据鉴权日志
+     * @param state
+     * @param dataItemsCheckDto
+     * @param ip
+     * @param appToken
+     * @param userToken
+     */
     public void sendAuthenticationLog(AuthResultEnum state, DataItemsCheckDto dataItemsCheckDto, String ip, String appToken, String userToken) {
         AuthUserInfo userInfo = authUserInfoService.findByIdcard(dataItemsCheckDto.getIdcard());
         ApplyInfo app = applyInfoFacade.getAppByCode(dataItemsCheckDto.getCurrentAppCode());

+ 13 - 8
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/audit/service/log/LogInfoFillService.java

@@ -3,7 +3,6 @@ package com.dragoninfo.dcuc.auth.audit.service.log;
 import com.dragoninfo.dcuc.auth.audit.enums.AuthResultEnum;
 import com.dragoninfo.dcuc.auth.auth.dto.DataItemsCheckDto;
 import com.dragoninfo.dcuc.auth.auth.dto.RoleApiDto;
-import com.dragoninfo.dcuc.auth.auth.dto.RoleAuthDto;
 import com.dragoninfo.dcuc.auth.auth.dto.StaffAssignDTO;
 import com.dragoninfo.dcuc.auth.auth.dto.data.SubDataDTO;
 import com.dragoninfo.dcuc.auth.auth.entity.DataAuth;
@@ -17,7 +16,6 @@ import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
-import java.util.Set;
 
 /**
  * @Author: qiuyu
@@ -155,26 +153,33 @@ public class LogInfoFillService {
 
     /**
      * 发送数据授权日志
-     *  @param state
+     * @param state
      * @param subId
      * @param subType
      * @param addList
      * @param realIp
+     * @param appToken
+     * @param userToken
      */
     @Async
-    public void sendDataAuthLog(AuthResultEnum state, String subId, String subType, List<SubDataDTO> addList, String realIp) {
-        dataAuthLogHandler.sendDataAuthLog(state, subId, subType, addList, realIp);
+    public void sendDataAuthLog(AuthResultEnum state, String subId, String subType,
+                                List<SubDataDTO> addList, String realIp,
+                                String appToken, String userToken) {
+        dataAuthLogHandler.sendDataAuthLog(state, subId, subType, addList, realIp, appToken, userToken);
     }
 
     /**
      * 发送数据销权日志
-     *  @param state
+     * @param state
      * @param delList
      * @param realIp
+     * @param appToken
+     * @param userToken
      */
     @Async
-    public void sendDataDelAuthLog(AuthResultEnum state, List<DataAuth> delList, String realIp) {
-        dataAuthLogHandler.sendDataDelAuthLog(state, delList, realIp);
+    public void sendDataDelAuthLog(AuthResultEnum state, List<DataAuth> delList,
+                                   String realIp, String appToken, String userToken) {
+        dataAuthLogHandler.sendDataDelAuthLog(state, delList, realIp, appToken, userToken);
     }
 
     /**

+ 15 - 0
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/auth/facade/RoleFacade.java

@@ -165,4 +165,19 @@ public class RoleFacade implements IRoleFacade {
         return roleService.appListByIdcard(idcard);
     }
 
+    @Override
+    public List<String> getAuthByIdcardAndAppCode(String idcard, String appCode) {
+        return roleService.getAuthByIdcardAndAppCode(idcard, appCode);
+    }
+
+    @Override
+    public ResponseDTO getRolesByAppCodeAndIdcard(String appCode, String idcard) {
+        return roleService.getRolesByAppCodeAndIdcard(appCode, idcard);
+    }
+
+    @Override
+    public List<Map<String, String>> getAppAuthByIdcardAndAppCode(String idcard, String appCode) {
+        return roleService.getAppAuthByIdcardAndAppCode(idcard, appCode);
+    }
+
 }

+ 26 - 1
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/auth/service/IRoleService.java

@@ -8,7 +8,9 @@ import java.util.List;
 import java.util.Map;
 
 /**
- * Created by huanghy on 2018/7/9.
+ *
+ * @author huanghy
+ * @date 2018/7/9
  */
 public interface IRoleService {
 
@@ -73,4 +75,27 @@ public interface IRoleService {
     List<Map<String, String>> appListByIdcard(String idcard);
 
 
+    /**
+     * 根据idcard,appCode获取用户权限列表
+     * @param idcard
+     * @param appCode
+     * @return
+     */
+    List<String> getAuthByIdcardAndAppCode(String idcard, String appCode);
+
+    /**
+     * 根据idcard,appCode获取用户拥有的应用角色列表
+     * @param appCode
+     * @param idcard
+     * @return
+     */
+    ResponseDTO getRolesByAppCodeAndIdcard(String appCode, String idcard);
+
+    /**
+     * 根据idcard,appCode获取用户拥有的应用权限列表
+     * @param idcard
+     * @param appCode
+     * @return
+     */
+    List<Map<String, String>> getAppAuthByIdcardAndAppCode(String idcard, String appCode);
 }

+ 37 - 2
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/auth/service/impl/AppFunInfoService.java

@@ -509,8 +509,43 @@ public class AppFunInfoService implements IAppFunInfoService {
         if (appFunInfo == null) {
             return ResponseDTO.fail("功能资源不存在", (Object) null);
         }
-        ApplyInfo applyInfo = applyInfoFacade.applyDetail(appFunInfo.getAppId());
-        return delByAppIdAndfunCode(appFunInfo.getCode(), applyInfo.getApplyCode());
+        List<AppFunInfo> funInfos = getByAppId(appFunInfo.getAppId());
+        Set<String> delIds = getDelIds(appFunInfo, funInfos);
+        if(!delIds.isEmpty()) {
+            appFunInfoBPO.batchDelete(delIds.toArray(new String[0]));
+        }
+        return ResponseStatus.success("删除成功");
+    }
+
+    private Set<String> getDelIds(AppFunInfo delMenu, List<AppFunInfo> allMenus) {
+        Set<String> delIds = new HashSet<>();
+        Set<String> upCodes = new HashSet<>();
+        Set<String> tempCodes = new HashSet<>();
+        upCodes.add(delMenu.getCode());
+        //找到所有子节点id
+        Map<String, List<AppFunInfo>> collect = allMenus.stream()
+                .filter(e->StringUtils.isNotBlank(e.getParentId()))
+                .collect(Collectors.groupingBy(AppFunInfo::getParentId));
+        while (upCodes.size()>0) {
+            for (String upCode : upCodes) {
+                List<AppFunInfo> child = collect.get(upCode);
+                if(CollectionUtils.isNotEmpty(child)) {
+                    Set<String> childSet = child.stream()
+                            .map(AppFunInfo::getCode)
+                            .collect(Collectors.toSet());
+                    tempCodes.addAll(childSet);
+                    Set<String> childIds = child.stream()
+                            .map(AppFunInfo::getId)
+                            .collect(Collectors.toSet());
+                    delIds.addAll(childIds);
+                }
+            }
+            upCodes.clear();
+            upCodes.addAll(tempCodes);
+            tempCodes.clear();
+        }
+        delIds.add(delMenu.getId());
+        return delIds;
     }
 
     @Override

+ 10 - 4
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/auth/service/impl/DataAuthServiceImpl.java

@@ -243,6 +243,9 @@ public class DataAuthServiceImpl implements IDataAuthService {
         if(CollectionUtils.isEmpty(addList)) {
             return ;
         }
+        HttpServletRequest request = RequestUtils.getRequest();
+        String userToken = request.getHeader(Constants.USER_TOKEN);
+        String appToken  = request.getHeader(Constants.APP_TOKEN);
         try {
             for (SubDataDTO dto : addList) {
                 DataAuth dataAuth = new DataAuth();
@@ -259,10 +262,10 @@ public class DataAuthServiceImpl implements IDataAuthService {
                 dataAuth.setDeleted(YesNotEnum.NO.getValue());
                 dataAuthBPO.save(dataAuth);
             }
-            logInfoFillService.sendDataAuthLog(AuthResultEnum.SUC, subId, subType, addList, IpUtils.getRealIpAdrress(RequestUtils.getRequest()));
+            logInfoFillService.sendDataAuthLog(AuthResultEnum.SUC, subId, subType, addList, IpUtils.getRealIpAdrress(request), appToken, userToken);
         } catch (Exception e) {
             log.error("数据授权保存失败", e);
-            logInfoFillService.sendDataAuthLog(AuthResultEnum.FAIL, subId, subType, addList, IpUtils.getRealIpAdrress(RequestUtils.getRequest()));
+            logInfoFillService.sendDataAuthLog(AuthResultEnum.FAIL, subId, subType, addList, IpUtils.getRealIpAdrress(request), appToken, userToken);
         }
     }
 
@@ -270,6 +273,9 @@ public class DataAuthServiceImpl implements IDataAuthService {
         if(CollectionUtils.isEmpty(delList)) {
             return ;
         }
+        HttpServletRequest request = RequestUtils.getRequest();
+        String userToken = request.getHeader(Constants.USER_TOKEN);
+        String appToken  = request.getHeader(Constants.APP_TOKEN);
         try {
             for (DataAuth dataAuth : delList) {
                 dataAuth.setDeleteUser(userId);
@@ -277,10 +283,10 @@ public class DataAuthServiceImpl implements IDataAuthService {
                 dataAuth.setDeleted(BooleanEnum.TRUE.getValue());
                 dataAuthBPO.update(dataAuth);
             }
-            logInfoFillService.sendDataDelAuthLog(AuthResultEnum.SUC,delList, IpUtils.getRealIpAdrress(RequestUtils.getRequest()));
+            logInfoFillService.sendDataDelAuthLog(AuthResultEnum.SUC,delList, IpUtils.getRealIpAdrress(request), appToken, userToken);
         } catch (Exception e) {
             log.error("数据授权删除失败", e);
-            logInfoFillService.sendDataDelAuthLog(AuthResultEnum.FAIL,delList, IpUtils.getRealIpAdrress(RequestUtils.getRequest()));
+            logInfoFillService.sendDataDelAuthLog(AuthResultEnum.FAIL,delList, IpUtils.getRealIpAdrress(request), appToken, userToken);
         }
     }
 

+ 35 - 6
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/auth/service/impl/RoleService.java

@@ -15,10 +15,12 @@ import com.dragoninfo.dcuc.auth.auth.enumresources.AuthStatusEnum;
 import com.dragoninfo.dcuc.auth.auth.service.*;
 import com.dragoninfo.dcuc.auth.auth.vo.RoleAppFunVO;
 import com.dragoninfo.dcuc.auth.sub.dto.AuthUserDTO;
-import com.dragoninfo.dcuc.auth.sub.facade.IAuthUserInfoFacade;
+import com.dragoninfo.dcuc.auth.sub.entity.AuthUserInfo;
+import com.dragoninfo.dcuc.auth.sub.service.IAuthUserInfoService;
 import com.dragoninfo.dcuc.auth.util.AesEncoder;
 import com.dragoninfo.dcuc.common.Constants;
 import com.dragonsoft.duceap.base.entity.http.ResponseDTO;
+import com.dragonsoft.duceap.base.entity.http.ResponseStatus;
 import com.dragonsoft.duceap.base.enums.BooleanEnum;
 import com.dragonsoft.duceap.base.exception.ApplicationException;
 import com.dragonsoft.duceap.commons.util.collections.CollectionUtils;
@@ -60,7 +62,7 @@ public class RoleService implements IRoleService {
     @Autowired
     private IApplyInfoFacade applyInfoFacade;
     @Autowired
-    private IAuthUserInfoFacade userFacade;
+    private IAuthUserInfoService authUserInfoService;
 
     @Autowired
     private LogInfoFillService logInfoFillService;
@@ -400,7 +402,7 @@ public class RoleService implements IRoleService {
         //当身份证不为空
         if (StringUtils.isNotEmpty(idcard)) {
 
-            AuthUserDTO userInfo = userFacade.findByIdcard(idcard);
+            AuthUserInfo userInfo = authUserInfoService.findByIdcard(idcard);
             //根据身份证找不到人返回异常
             if (userInfo == null) {
                 throw new ApplicationException("找不到对应身份证的人");
@@ -476,7 +478,7 @@ public class RoleService implements IRoleService {
         }
         String userId = "";
         if (StringUtils.isNotEmpty(dto.getIdcard())) {
-            AuthUserDTO userInfo = userFacade.findByIdcard(idcard);
+            AuthUserInfo userInfo = authUserInfoService.findByIdcard(idcard);
             //根据身份证找不到人返回异常
             if (userInfo == null) {
                 throw new ApplicationException("找不到对应身份证的人");
@@ -582,7 +584,7 @@ public class RoleService implements IRoleService {
      */
     public List<Map<String, String>> appListByIdcard(String idcard) {
         //1.获取个人信息
-        AuthUserDTO userInfo = userFacade.findByIdcard(idcard);
+        AuthUserInfo userInfo = authUserInfoService.findByIdcard(idcard);
         Map<String, Object> map = new HashMap<>();
         map.put("staffId", userInfo.getId());
         List<StaffAssignAuthInfo> staffAssignAuthInfoList = staffAssignAuthInfoService.andsearch(StaffAssignAuthInfo.class, map);
@@ -607,6 +609,33 @@ public class RoleService implements IRoleService {
         return results;
     }
 
+    @Override
+    public List<String> getAuthByIdcardAndAppCode(String idcard, String appCode) {
+        AuthUserInfo userInfo = authUserInfoService.findByIdcard(idcard);
+        if(null == userInfo) {
+            return new ArrayList<>();
+        }
+        return getAuthsByUserIdAndAppCode(userInfo.getId(), appCode);
+    }
+
+    @Override
+    public ResponseDTO getRolesByAppCodeAndIdcard(String appCode, String idcard) {
+        AuthUserInfo userInfo = authUserInfoService.findByIdcard(idcard);
+        if(null == userInfo) {
+            return ResponseDTO.fail(ResponseStatus.FAIL_CODE,"人员不存在", null);
+        }
+        return getRolesByAppCodeAndUserId(appCode, userInfo.getId());
+    }
+
+    @Override
+    public List<Map<String, String>> getAppAuthByIdcardAndAppCode(String idcard, String appCode) {
+        AuthUserInfo userInfo = authUserInfoService.findByIdcard(idcard);
+        if(null == userInfo) {
+            return new ArrayList<>();
+        }
+        return getAppAuthByUserIdAndAppCode(userInfo.getId(), appCode);
+    }
+
 
     /**
      * 根据人查询角色
@@ -617,7 +646,7 @@ public class RoleService implements IRoleService {
     public List<Map<String, String>> getUserRole(String idcard) {
         //1.获取个人信息
 
-        AuthUserDTO userInfo = userFacade.findByIdcard(idcard);
+        AuthUserInfo userInfo = authUserInfoService.findByIdcard(idcard);
         //根据身份证找不到人返回异常
         if (userInfo == null) {
             throw new ApplicationException("找不到对应身份证的人");

+ 9 - 0
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/sub/business/ILabelBusiness.java

@@ -32,4 +32,13 @@ public interface ILabelBusiness {
      * @return
      */
     LabelVO details(String id);
+
+    /**
+     * 异步调用获取不到request上下文时可使用这个方法
+     * @param id
+     * @param appToken
+     * @param userToken
+     * @return
+     */
+    LabelVO details(String id, String appToken, String userToken);
 }

+ 36 - 3
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/sub/business/impl/LabelBusiness.java

@@ -93,6 +93,17 @@ public class LabelBusiness implements ILabelBusiness {
     public LabelVO details(String id) {
         List<Header> heads = getHeads();
         String url = Joiner.on("").join(authConfig.getUserCenterUrl(), UserApiConstance.LABEL_DETAIL_API);
+        return getLabelVO(id, heads, url);
+    }
+
+    @Override
+    public LabelVO details(String id, String appToken, String userToken) {
+        List<Header> heads = getHeads(appToken, userToken);
+        String url = Joiner.on("").join(authConfig.getUserCenterUrl(), UserApiConstance.LABEL_DETAIL_API);
+        return getLabelVO(id, heads, url);
+    }
+
+    private LabelVO getLabelVO(String id, List<Header> heads, String url) {
         url = url.replace("{id}", id);
         String result = HttpUtil.get(url, null, heads);
         if (StringUtils.isBlank(result)) {
@@ -100,12 +111,34 @@ public class LabelBusiness implements ILabelBusiness {
             return new LabelVO();
         }
         UserCenterResultDTO resultDTO = JSON.parseObject(result, UserCenterResultDTO.class);
-        if(!ResponseStatus.SUCCESS_CODE.equals(resultDTO.getStatusCode())) {
+        if (!ResponseStatus.SUCCESS_CODE.equals(resultDTO.getStatusCode())) {
             log.info("labelBusiness findAll failed:{}", resultDTO.getMessage());
             return new LabelVO();
         }
         Object obj = resultDTO.getResult();
-        return JSON.parseObject(JSON.toJSONString(obj), new TypeReference<LabelVO>() {});
+        return JSON.parseObject(JSON.toJSONString(obj), new TypeReference<LabelVO>() {
+        });
+    }
+
+    private List<Header> getHeads(String appToken, String userToken) {
+        List<Header> headers = new ArrayList<>();
+        String idcard = UserContextUtils.getCurrentUser().getIdcard();
+        BasicHeader appCodeHeader = new BasicHeader("appCode", authConfig.getAppCode());
+        BasicHeader idcardHeader = new BasicHeader("idcard", idcard);
+        headers.add(appCodeHeader);
+        headers.add(idcardHeader);
+
+        log.info("getHeaders >>> request userToken:{},appToken:{}", userToken, appToken);
+        if (StrUtil.isNotBlank(userToken)) {
+            Header userTokenHead = new BasicHeader(Constants.USER_TOKEN, userToken);
+            headers.add(userTokenHead);
+        }
+
+        if (StrUtil.isNotBlank(appToken)) {
+            Header appTokeHead = new BasicHeader(Constants.APP_TOKEN, appToken);
+            headers.add(appTokeHead);
+        }
+        return headers;
     }
 
     private ApiSearchReq getLabelTreeSearchParam(LabelSearchDTO labelSearchDTO) {
@@ -149,8 +182,8 @@ public class LabelBusiness implements ILabelBusiness {
         String idcard = UserContextUtils.getCurrentUser().getIdcard();
         BasicHeader appCodeHeader = new BasicHeader("appCode", authConfig.getAppCode());
         BasicHeader idcardHeader = new BasicHeader("idcard", idcard);
-        HttpServletRequest request = RequestUtils.getRequest();
 
+        HttpServletRequest request = RequestUtils.getRequest();
         String userToken = request.getHeader(Constants.USER_TOKEN);
         String appToken  = request.getHeader(Constants.APP_TOKEN);
         log.info("getHeaders >>> request userToken:{},appToken:{}", userToken, appToken);

+ 7 - 0
dcuc-auth-service/src/main/resources/config/mysql/V4_3_0011__sub_auth_init_info.sql

@@ -131,6 +131,13 @@ CREATE TABLE T_AUTH_USER_INFO(
     PRIMARY KEY (ID)
 )ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT = '主客体-人员表 ';
 
+INSERT INTO `t_auth_user_info` VALUES (
+'402881cb4era66f4014b0ghd0b875485', '000000000000000001',
+'ADMIN', '', '10', '', '120000000000',
+'天津市公安厅', '10', NULL, NULL, '', '',
+'', '0', NULL, NULL, NULL, NULL, NULL, NULL, NULL);
+
+
 ALTER TABLE T_AUTH_USER_INFO ADD INDEX IDX_T_AUTH_USER_INFO_IDCARD(IDCARD);
 
 INSERT INTO `t_auth_attr_info` VALUES ('37f1ff7bbc7811ebabb7005056bd458f', NULL, 'SUB', 'ORG', '机构相关属性', '', '0', '2021-5-24 18:13:35', NULL, NULL, NULL, NULL, NULL, NULL);

+ 2 - 4
dcuc-auth-service/src/main/resources/config/mysql/V4_3_0020__User_Model_Fix.sql

@@ -19,8 +19,7 @@ CREATE TABLE T_AUTH_MENU_INFO(
     MODIFIER VARCHAR(32)    COMMENT '修改人' ,
     REMARK VARCHAR(32)    COMMENT '备注' ,
     IS_SYSTEM VARCHAR(5)    COMMENT '是否是系统菜单' ,
-    IS_HIDE VARCHAR(5)    COMMENT '是否隐藏0:否 1:是' ,
-    RESOURCE_TYPE VARCHAR(5)    COMMENT '菜单资源类型:1菜单,0按钮权限' ,
+    IS_HIDE VARCHAR(5)    COMMENT '是否隐藏0:否 1:是',
     PRIMARY KEY (ID)
 ) COMMENT = '权限菜单表 ';
 
@@ -121,8 +120,7 @@ INSERT INTO T_AUTH_MENU_INFO (
 		NULL,
 		REMARK,
 		IS_SYSTEM,
-		IS_HIDE,
-		RESOURCE_TYPE
+		IS_HIDE
 	FROM
 		t_menu_info
 	WHERE

+ 6 - 0
dcuc-auth-service/src/main/resources/config/sql/V4_3_0011__sub_auth_init.sql

@@ -243,6 +243,12 @@ COMMENT ON COLUMN T_AUTH_USER_INFO.AUXILIARY_TYPE IS '辅警类型 10:合同
 
 CREATE INDEX IDX_T_AUTH_USER_INFO_IDCARD ON T_AUTH_USER_INFO(IDCARD);
 
+INSERT INTO T_AUTH_USER_INFO VALUES (
+'402881cb4era66f4014b0ghd0b875485', '000000000000000001',
+'ADMIN', '', '10', '', '120000000000',
+'天津市公安厅', '10', NULL, NULL, '', '',
+'', '0', NULL, NULL, NULL, NULL, NULL, NULL, NULL);
+
 
 INSERT INTO T_AUTH_ATTR_INFO VALUES ('37f1ff7bbc7811ebabb7005056bd458f', NULL, 'SUB', 'ORG', '机构相关属性', '', '0', '2021-5-24 18:13:35', NULL, NULL, NULL, NULL, NULL, NULL);
 INSERT INTO T_AUTH_ATTR_INFO VALUES ('41157d22bc7811ebabb7005056bd458f', NULL, 'SUB', 'USER', '用户相关属性', '', '0', '2021-5-24 18:13:35', NULL, NULL, NULL, NULL, NULL, NULL);

+ 0 - 1
dcuc-auth-service/src/main/resources/config/sql/V4_3_0020__User_Model_Fix.sql

@@ -15,7 +15,6 @@ CREATE TABLE T_AUTH_MENU_INFO(
     REMARK NVARCHAR2(32),
     IS_SYSTEM VARCHAR2(5),
     IS_HIDE VARCHAR2(5),
-    RESOURCE_TYPE VARCHAR2(5),
     PRIMARY KEY (ID)
 );