|
@@ -1,5 +1,6 @@
|
|
|
package com.dragoninfo.dcuc.authweb.restcontroller.api.authservice.v1.controller;
|
|
|
|
|
|
+import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
import com.auth0.jwt.JWT;
|
|
|
import com.auth0.jwt.interfaces.DecodedJWT;
|
|
@@ -12,12 +13,15 @@ import com.dragoninfo.dcuc.auth.auth.facade.IBimBusinessFacade;
|
|
|
import com.dragoninfo.dcuc.auth.auth.facade.IServiceAuthFlowFacade;
|
|
|
import com.dragoninfo.dcuc.auth.auth.facade.IServiceAuthResultFacade;
|
|
|
import com.dragoninfo.dcuc.auth.auth.facade.IStaffAssignAuthInfoFacade;
|
|
|
+import com.dragoninfo.dcuc.auth.auth.vo.ApiAppAuthVo;
|
|
|
import com.dragoninfo.dcuc.auth.power.facade.IAppFunInfoFacade;
|
|
|
import com.dragoninfo.dcuc.auth.sub.dto.AuthUserDTO;
|
|
|
import com.dragoninfo.dcuc.auth.sub.facade.IAuthUserInfoFacade;
|
|
|
+import com.dragoninfo.dcuc.auth.sub.vo.AuthUserVo;
|
|
|
import com.dragoninfo.dcuc.authweb.restcontroller.api.authservice.v1.vo.AppAuthRespVO;
|
|
|
import com.dragoninfo.dcuc.authweb.restcontroller.api.authservice.v1.vo.ServiceAuthResultVo;
|
|
|
import com.dragoninfo.dcuc.authweb.restcontroller.api.controller.vo.AppFunApiVo;
|
|
|
+import com.dragoninfo.dcuc.authweb.util.HeadTokenUtils;
|
|
|
import com.dragoninfo.dcuc.authweb.util.VersionUtils;
|
|
|
import com.dragoninfo.dcuc.common.Constants;
|
|
|
import com.dragoninfo.dcuc.common.entity.ApiResult;
|
|
@@ -26,6 +30,7 @@ import com.dragoninfo.dcuc.common.utils.SearchableUtil;
|
|
|
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.commons.util.ip.IpUtils;
|
|
|
import com.dragonsoft.duceap.core.search.Searchable;
|
|
|
import com.dragonsoft.duceap.core.search.enums.SearchOperator;
|
|
|
import io.swagger.annotations.Api;
|
|
@@ -80,7 +85,10 @@ public class AuthServiceController {
|
|
|
@GetMapping(value = "apps/authentication")
|
|
|
@ApiOperation(value = "应用级鉴权")
|
|
|
@ApiImplicitParams({@ApiImplicitParam(name = "appsAuthenticationReq", value = "应用级鉴权VO")})
|
|
|
- public ApiResult appsAuthentication(@RequestHeader(Constants.DCUC_USER_TOKEN) String userToken) {
|
|
|
+ public ApiResult appsAuthentication(HttpServletRequest request) {
|
|
|
+
|
|
|
+ String userToken = request.getHeader(Constants.DCUC_USER_TOKEN);
|
|
|
+ String appToken = request.getHeader(Constants.DCUC_APP_TOKEN);
|
|
|
|
|
|
if (StrUtil.isBlank(userToken)) {
|
|
|
return ApiResult.setFailMessage("请传入用户令牌");
|
|
@@ -112,8 +120,16 @@ public class AuthServiceController {
|
|
|
|
|
|
bimBusinessFacade.cacheUserToken(idcard, userToken, expAt);
|
|
|
|
|
|
- String userId = userInfo.getId();
|
|
|
- List<AppDataSensitiveLevelDTO> appList = staffAssignAuthInfoFacade.getAppLitByUserId(userId);
|
|
|
+ AuthUserVo userVo = new AuthUserVo();
|
|
|
+ BeanUtil.copyProperties(userInfo, userVo);
|
|
|
+ ApiAppAuthVo authVo = ApiAppAuthVo.builder()
|
|
|
+ .requestAppCode(HeadTokenUtils.getAppCode(request))
|
|
|
+ .userInfo(userVo)
|
|
|
+ .appToken(appToken)
|
|
|
+ .userToken(userToken)
|
|
|
+ .terminalIp(IpUtils.getIp())
|
|
|
+ .build();
|
|
|
+ List<AppDataSensitiveLevelDTO> appList = staffAssignAuthInfoFacade.apiAppAuth(authVo);
|
|
|
|
|
|
List<AppAuthRespVO> respVOList = appList.stream().map(AppAuthRespVO::parseDto)
|
|
|
.collect(Collectors.toList());
|