Commit f6956eeb authored by 梁光意's avatar 梁光意

开发获取用户权限code的接口

parent 13f17930
package com.syc.slm.slmbi.config;
import lombok.Getter;
import lombok.Setter;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
/**
* @author: guangyi-liang
* @date: 2021/5/7
*/
@Configuration
@Getter
@Setter
public class DataCenterConfig {
@Value("${dc_client.host}")
private String host;
@Value("${dc_client.interfaces.permissionCodeUrl}")
private String permissionCodeUrl;
}
...@@ -2,7 +2,9 @@ package com.syc.slm.slmbi.controller; ...@@ -2,7 +2,9 @@ package com.syc.slm.slmbi.controller;
import com.syc.slm.common.core.util.R; import com.syc.slm.common.core.util.R;
import com.syc.slm.slmbi.entity.CurrentUser; import com.syc.slm.slmbi.entity.CurrentUser;
import com.syc.slm.slmbi.service.PermissionService;
import com.syc.slm.slmbi.service.UserService; import com.syc.slm.slmbi.service.UserService;
import com.syc.slm.slmbi.vo.PermissionCodeVo;
import com.syc.slm.slmbi.vo.UserTreeVo; import com.syc.slm.slmbi.vo.UserTreeVo;
import com.syc.slm.slmbi.vo.UserVo; import com.syc.slm.slmbi.vo.UserVo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -30,6 +32,9 @@ public class UserController extends BaseRestController{ ...@@ -30,6 +32,9 @@ public class UserController extends BaseRestController{
@Autowired @Autowired
private UserService userService; private UserService userService;
@Autowired
private PermissionService permissionService;
@GetMapping @GetMapping
@ApiOperation("用户查询,左边树调用部门树不要传入部门名称,然后右边用户的搜索在页面匹配就好了,一开始会返回所有部门的用户回去") @ApiOperation("用户查询,左边树调用部门树不要传入部门名称,然后右边用户的搜索在页面匹配就好了,一开始会返回所有部门的用户回去")
@ApiImplicitParams({@ApiImplicitParam(name = "appId", value = "租户id", required = true,dataTypeClass = String.class)}) @ApiImplicitParams({@ApiImplicitParam(name = "appId", value = "租户id", required = true,dataTypeClass = String.class)})
...@@ -40,4 +45,14 @@ public class UserController extends BaseRestController{ ...@@ -40,4 +45,14 @@ public class UserController extends BaseRestController{
}); });
} }
@GetMapping("/permission/code")
@ApiOperation("查询用户的所有权限编码code")
@ApiImplicitParams({@ApiImplicitParam(name = "appId", value = "租户id", required = true,dataTypeClass = String.class)})
public R<List<PermissionCodeVo>> listPermissionCode(HttpServletRequest request,@PathVariable String appId) {
return call(() -> {
CurrentUser currentUser = getCurrentUser(request);
return permissionService.findAllPermissionCode(appId,currentUser.getToken());
});
}
} }
package com.syc.slm.slmbi.service;
import com.syc.slm.slmbi.vo.PermissionCodeVo;
import java.util.List;
/**
* @author: guangyi-liang
* @date: 2021/5/7
*/
public interface PermissionService {
/**
* 查询某位用户拥有所有权限code集合
* @param appId 租户ID
* @param token 登录系统的用户token
* @return 权限的编码集合
*/
List<PermissionCodeVo> findAllPermissionCode(String appId,String token);
}
package com.syc.slm.slmbi.service.impl;
import com.google.common.collect.Maps;
import com.google.gson.reflect.TypeToken;
import com.syc.slm.common.core.constant.SlmConstants;
import com.syc.slm.common.core.util.R;
import com.syc.slm.common.core.util.RestTemplateUtils;
import com.syc.slm.slmbi.config.DataCenterConfig;
import com.syc.slm.slmbi.service.PermissionService;
import com.syc.slm.slmbi.vo.PermissionCodeVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
* @author: guangyi-liang
* @date: 2021/5/7
*/
@Service
public class PermissionServiceImpl implements PermissionService {
@Autowired
private DataCenterConfig centerConfig;
@Override
public List<PermissionCodeVo> findAllPermissionCode(String appId, String token) {
Map<String, String> uriVariables = Maps.newHashMap();
uriVariables.put("appId",appId);
R<List<PermissionCodeVo>> result = RestTemplateUtils.get(centerConfig.getHost()+centerConfig.getPermissionCodeUrl(), new TypeToken<R<List<PermissionCodeVo>>>() {}.getType(), uriVariables);
return result.detach();
}
}
package com.syc.slm.slmbi.vo;
import lombok.Getter;
import lombok.Setter;
/**
* @author: guangyi-liang
* @date: 2021/5/7
* 权限code的表示
*/
@Getter
@Setter
public class PermissionCodeVo {
/**
* 功能权限的code
*/
private String code;
/**
* 该权限是否存在
*/
private boolean exist;
}
...@@ -65,3 +65,4 @@ dc_client: ...@@ -65,3 +65,4 @@ dc_client:
variableStatus : /{appId}/variables/{deviceId}/{variableCode}/status variableStatus : /{appId}/variables/{deviceId}/{variableCode}/status
variableHistoryStatus : /{appId}/variables/{deviceId}/{variableCode}/history-status?startTime={startTime}&endTime={endTime} variableHistoryStatus : /{appId}/variables/{deviceId}/{variableCode}/history-status?startTime={startTime}&endTime={endTime}
historyCurve : /{appId}/variables/history-curve?deviceId={deviceId}&endTime={endTime}&startTime={startTime}&variableCode={variableCode}&variableId={variableId}&format={format} historyCurve : /{appId}/variables/history-curve?deviceId={deviceId}&endTime={endTime}&startTime={startTime}&variableCode={variableCode}&variableId={variableId}&format={format}
permissionCodeUrl : /{appId}/bi/permission/code
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment