|
@@ -8,7 +8,6 @@ import cn.kdan.pdf.tech.core.pojo.vo.*;
|
|
|
import cn.kdan.pdf.tech.core.service.DirectoryService;
|
|
|
import cn.kdan.pdf.tech.core.service.VppCompanyService;
|
|
|
import cn.kdan.pdf.tech.core.service.VppRTeamMemberRoleService;
|
|
|
-import cn.kdan.pdf.tech.core.service.VppTeamService;
|
|
|
import com.alibaba.excel.EasyExcel;
|
|
|
import com.alibaba.excel.util.MapUtils;
|
|
|
import com.alibaba.excel.util.StringUtils;
|
|
@@ -16,7 +15,6 @@ import com.alibaba.fastjson.JSON;
|
|
|
import com.github.pagehelper.PageInfo;
|
|
|
import constant.CommonConstant;
|
|
|
import enums.ValidStatusEnum;
|
|
|
-import org.bouncycastle.util.Strings;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import pojo.ResultMap;
|
|
|
import utils.CommonUtils;
|
|
@@ -46,14 +44,14 @@ public class VppRTeamMemberRoleController {
|
|
|
/**
|
|
|
* 超管分页获取所在公司团队的管理员信息
|
|
|
*
|
|
|
- * @param page 页码
|
|
|
- * @param pageSize 最大条数
|
|
|
- * @param teamId 团队id
|
|
|
- * @param role 角色 0超管 1团队管理员
|
|
|
+ * @param page 页码
|
|
|
+ * @param pageSize 最大条数
|
|
|
+ * @param teamId 团队id
|
|
|
+ * @param role 角色 0超管 1团队管理员
|
|
|
* @param queryString 名字或者邮箱
|
|
|
* @return ResultMap
|
|
|
*/
|
|
|
- @PreCheckRole(roles = {RoleEnum.TEAM_ADMIN,RoleEnum.SUPER_ADMIN})
|
|
|
+ @PreCheckRole(roles = {RoleEnum.TEAM_ADMIN, RoleEnum.SUPER_ADMIN})
|
|
|
@GetMapping("/pageForAdmin")
|
|
|
public ResultMap<PageInfo<VppTeamAdminVO>> pageForAdmin(@RequestParam(required = false, defaultValue = "1") Integer page,
|
|
|
@RequestParam(required = false, defaultValue = "10") Integer pageSize,
|
|
@@ -74,13 +72,22 @@ public class VppRTeamMemberRoleController {
|
|
|
return new ResultMap<>(CommonConstant.SUCCESS, CommonConstant.RESULT_SUCCESS, vppRTeamMemberRoleService.pageForMember(page, pageSize, teamId, status, productCode, queryString, null));
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 目录用户查询
|
|
|
+ * @param page 页码
|
|
|
+ * @param pageSize 每页最大数量
|
|
|
+ * @param directoryId 目录id
|
|
|
+ * @param status 0是删除用户 1是有效访问用户 3是吊销用户
|
|
|
+ * @param queryString 用户名或者邮箱
|
|
|
+ * @return PageInfo<VppTeamMemberVO>
|
|
|
+ */
|
|
|
@GetMapping("/pageForSSOMember")
|
|
|
public ResultMap<PageInfo<VppTeamMemberVO>> pageForSSOMember(@RequestParam(required = false, defaultValue = "1") Integer page,
|
|
|
@RequestParam(required = false, defaultValue = "10") Integer pageSize,
|
|
|
@RequestParam(required = false) String directoryId,
|
|
|
@RequestParam(required = false) String status,
|
|
|
@RequestParam(required = false) String queryString) {
|
|
|
- if (StringUtils.isEmpty(directoryId)){
|
|
|
+ if (StringUtils.isEmpty(directoryId)) {
|
|
|
String teamId = directoryService.getById(directoryId).getTeamId();
|
|
|
return new ResultMap<>(CommonConstant.SUCCESS, CommonConstant.RESULT_SUCCESS, vppRTeamMemberRoleService.pageForMember(page, pageSize, teamId, status, null, queryString, SyncUserEnum.SSO.value()));
|
|
|
}
|
|
@@ -89,7 +96,7 @@ public class VppRTeamMemberRoleController {
|
|
|
|
|
|
|
|
|
@GetMapping("/download")
|
|
|
- public void downloadFailedUsingJson(HttpServletResponse response,
|
|
|
+ public void download(HttpServletResponse response,
|
|
|
@RequestParam(required = false) String productCode,
|
|
|
@RequestParam(required = false) String teamId,
|
|
|
@RequestParam(required = false) String status,
|
|
@@ -100,7 +107,7 @@ public class VppRTeamMemberRoleController {
|
|
|
response.setCharacterEncoding("utf-8");
|
|
|
// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系
|
|
|
VppCompany company = vppCompanyService.getUserCompany();
|
|
|
- String fileName = URLEncoder.encode(company.getName()+ " " + CommonUtils.getDateTime("yyyyMMdd") +" Member", "UTF-8").replaceAll("\\+", "%20");
|
|
|
+ String fileName = URLEncoder.encode(company.getName() + " " + CommonUtils.getDateTime("yyyyMMdd") + " Member", "UTF-8").replaceAll("\\+", "%20");
|
|
|
response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
|
|
|
// 这里需要设置不关闭流
|
|
|
EasyExcel.write(response.getOutputStream(), VppTeamMemberVO.class)
|
|
@@ -122,6 +129,12 @@ public class VppRTeamMemberRoleController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 导出sso用户
|
|
|
+ * @param directoryId 目录id
|
|
|
+ * @param status 用户状态
|
|
|
+ * @param queryString 用户名或者邮箱
|
|
|
+ */
|
|
|
@GetMapping("/downloadSSOMember")
|
|
|
public void downloadSSOMember(HttpServletResponse response,
|
|
|
@RequestParam(required = false) String directoryId,
|
|
@@ -133,24 +146,24 @@ public class VppRTeamMemberRoleController {
|
|
|
response.setCharacterEncoding("utf-8");
|
|
|
// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系
|
|
|
VppCompany company = vppCompanyService.getUserCompany();
|
|
|
- String fileName = URLEncoder.encode(company.getName()+ " " + CommonUtils.getDateTime("yyyyMMdd") +" Member Directory", "UTF-8").replaceAll("\\+", "%20");
|
|
|
+ String fileName = URLEncoder.encode(company.getName() + " " + CommonUtils.getDateTime("yyyyMMdd") + " Member Directory", "UTF-8").replaceAll("\\+", "%20");
|
|
|
response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
|
|
|
// 这里需要设置不关闭流
|
|
|
EasyExcel.write(response.getOutputStream(), SSOMemberVO.class)
|
|
|
.autoCloseStream(Boolean.FALSE)
|
|
|
.sheet("模板")
|
|
|
.doWrite(() -> {
|
|
|
- List<VppTeamMemberVO> list ;
|
|
|
- if (StringUtils.isEmpty(directoryId)){
|
|
|
+ List<VppTeamMemberVO> list;
|
|
|
+ if (StringUtils.isEmpty(directoryId)) {
|
|
|
String teamId = directoryService.getById(directoryId).getTeamId();
|
|
|
list = vppRTeamMemberRoleService.listForMember(teamId, status, null, queryString, SyncUserEnum.SSO.value());
|
|
|
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
list = vppRTeamMemberRoleService.listForMember(null, status, null, queryString, SyncUserEnum.SSO.value());
|
|
|
}
|
|
|
List<SSOMemberVO> ssoMemberVOList = new ArrayList<>();
|
|
|
list.forEach(item -> {
|
|
|
- if (!StringUtils.isEmpty(item.getEmail())){
|
|
|
+ if (!StringUtils.isEmpty(item.getEmail())) {
|
|
|
SSOMemberVO ssoMemberVO = new SSOMemberVO();
|
|
|
ssoMemberVO.setEmail(item.getEmail());
|
|
|
ssoMemberVO.setFullName(item.getFullName());
|
|
@@ -173,16 +186,20 @@ public class VppRTeamMemberRoleController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 下载删除的SSO成员
|
|
|
+ * @param queryString 邮箱或者用户名
|
|
|
+ */
|
|
|
@GetMapping("/downloadUnValidSSOMember")
|
|
|
public void downloadUnVaildSSOMember(HttpServletResponse response,
|
|
|
- @RequestParam(required = false) String queryString) throws IOException {
|
|
|
+ @RequestParam(required = false) String queryString) throws IOException {
|
|
|
// 这里注意 有同学反应使用swagger 会导致各种问题,请直接用浏览器或者用postman
|
|
|
try {
|
|
|
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
|
|
|
response.setCharacterEncoding("utf-8");
|
|
|
// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系
|
|
|
VppCompany company = vppCompanyService.getUserCompany();
|
|
|
- String fileName = URLEncoder.encode(company.getName()+ " " + CommonUtils.getDateTime("yyyyMMdd") +" Member Deleted", "UTF-8").replaceAll("\\+", "%20");
|
|
|
+ String fileName = URLEncoder.encode(company.getName() + " " + CommonUtils.getDateTime("yyyyMMdd") + " Member Deleted", "UTF-8").replaceAll("\\+", "%20");
|
|
|
response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
|
|
|
// 这里需要设置不关闭流
|
|
|
EasyExcel.write(response.getOutputStream(), SSODeletedMemberVO.class)
|
|
@@ -192,7 +209,7 @@ public class VppRTeamMemberRoleController {
|
|
|
List<VppTeamMemberVO> list = vppRTeamMemberRoleService.listForMember(null, ValidStatusEnum.INVALID.value(), null, queryString, SyncUserEnum.SSO.value());
|
|
|
List<SSODeletedMemberVO> ssoMemberVOList = new ArrayList<>();
|
|
|
list.forEach(item -> {
|
|
|
- if (!StringUtils.isEmpty(item.getEmail())){
|
|
|
+ if (!StringUtils.isEmpty(item.getEmail())) {
|
|
|
SSODeletedMemberVO vo = new SSODeletedMemberVO();
|
|
|
vo.setEmail(item.getEmail());
|
|
|
vo.setFullName(item.getFullName());
|
|
@@ -219,7 +236,7 @@ public class VppRTeamMemberRoleController {
|
|
|
* @param teamId 团队id
|
|
|
* @return List
|
|
|
*/
|
|
|
- @PreCheckRole(roles = {RoleEnum.TEAM_ADMIN,RoleEnum.SUPER_ADMIN})
|
|
|
+ @PreCheckRole(roles = {RoleEnum.TEAM_ADMIN, RoleEnum.SUPER_ADMIN})
|
|
|
@GetMapping("/listByTeamId")
|
|
|
public ResultMap<List<VppTeamAdminVO>> listByTeamId(@RequestParam String teamId) {
|
|
|
return new ResultMap<>(CommonConstant.SUCCESS, CommonConstant.RESULT_SUCCESS, vppRTeamMemberRoleService.listByTeamId(teamId));
|
|
@@ -227,9 +244,10 @@ public class VppRTeamMemberRoleController {
|
|
|
|
|
|
/**
|
|
|
* 获取当前登录用户的公司所有用户,除超管
|
|
|
+ *
|
|
|
* @return List
|
|
|
*/
|
|
|
- @PreCheckRole(roles = {RoleEnum.TEAM_ADMIN,RoleEnum.SUPER_ADMIN})
|
|
|
+ @PreCheckRole(roles = {RoleEnum.TEAM_ADMIN, RoleEnum.SUPER_ADMIN})
|
|
|
@GetMapping("/getComponyMenber")
|
|
|
public ResultMap<List<VppTeamMenberVO>> getComponyMenber() {
|
|
|
return new ResultMap<>(CommonConstant.SUCCESS, CommonConstant.RESULT_SUCCESS, vppCompanyService.getComponyMenber());
|
|
@@ -237,6 +255,7 @@ public class VppRTeamMemberRoleController {
|
|
|
|
|
|
/**
|
|
|
* 修改团队成员时查询用户所在团队id
|
|
|
+ *
|
|
|
* @param memberId
|
|
|
* @return
|
|
|
*/
|
|
@@ -253,44 +272,48 @@ public class VppRTeamMemberRoleController {
|
|
|
|
|
|
/**
|
|
|
* 删除ms用户
|
|
|
+ *
|
|
|
* @param memberId 用户id
|
|
|
* @return Boolean
|
|
|
*/
|
|
|
@PostMapping("/removeSSOMember")
|
|
|
- public ResultMap<Boolean> removeSSOMember(@RequestParam String memberId){
|
|
|
+ public ResultMap<Boolean> removeSSOMember(@RequestParam String memberId) {
|
|
|
vppRTeamMemberRoleService.removeSSOMembers(memberId);
|
|
|
return new ResultMap<>(CommonConstant.SUCCESS, CommonConstant.RESULT_SUCCESS, Boolean.TRUE);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 还原ms用户
|
|
|
+ *
|
|
|
* @param memberId 用户id
|
|
|
* @return Boolean
|
|
|
*/
|
|
|
@PostMapping("/reductionSSOMember")
|
|
|
- public ResultMap<Boolean> reductionSSOMember(@RequestParam String memberId){
|
|
|
+ public ResultMap<Boolean> reductionSSOMember(@RequestParam String memberId) {
|
|
|
vppRTeamMemberRoleService.reductionSSOMember(memberId);
|
|
|
return new ResultMap<>(CommonConstant.SUCCESS, CommonConstant.RESULT_SUCCESS, Boolean.TRUE);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 吊销ms用户
|
|
|
+ *
|
|
|
* @param memberId 用户id
|
|
|
* @return Boolean
|
|
|
*/
|
|
|
@PostMapping("/revokeSSOMember")
|
|
|
- public ResultMap<Boolean> revokeSSOMember(@RequestParam String memberId){
|
|
|
+ public ResultMap<Boolean> revokeSSOMember(@RequestParam String memberId) {
|
|
|
vppRTeamMemberRoleService.revokeSSOMember(memberId);
|
|
|
return new ResultMap<>(CommonConstant.SUCCESS, CommonConstant.RESULT_SUCCESS, Boolean.TRUE);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 取消吊销用户
|
|
|
+ *
|
|
|
* @param memberId 用户id
|
|
|
* @return Boolean
|
|
|
*/
|
|
|
@PostMapping("/accessSSOMember")
|
|
|
- public ResultMap<Boolean> accessSSOMember(@RequestParam String memberId){
|
|
|
+ public ResultMap<Boolean> accessSSOMember(@RequestParam String memberId) {
|
|
|
vppRTeamMemberRoleService.accessSSOMember(memberId);
|
|
|
return new ResultMap<>(CommonConstant.SUCCESS, CommonConstant.RESULT_SUCCESS, Boolean.TRUE);
|
|
|
}
|