From d20202956f68bd5a7ea98d70f1ff11fe99cf9e5c Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期五, 16 九月 2022 10:43:48 +0800
Subject: [PATCH] fix
---
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PlatformFileService.java | 62 ++++++++++++++++++++++++++----
1 files changed, 53 insertions(+), 9 deletions(-)
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PlatformFileService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PlatformFileService.java
index faa6ede..74da103 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PlatformFileService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PlatformFileService.java
@@ -1,5 +1,6 @@
package com.sandu.ximon.admin.service;
+import cn.hutool.core.lang.Snowflake;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.pagehelper.PageHelper;
import com.sandu.common.execption.BusinessException;
@@ -7,15 +8,13 @@
import com.sandu.common.file.impl.AliOssFileServiceImpl;
import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.service.impl.BaseServiceImpl;
+import com.sandu.common.util.SpringContextHolder;
import com.sandu.ximon.admin.param.AllUserInfoParam;
import com.sandu.ximon.admin.param.EditFileParam;
import com.sandu.ximon.admin.param.PlatformFilePermissionParam;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.dao.bo.PlatformFileListBo;
-import com.sandu.ximon.dao.domain.Admin;
-import com.sandu.ximon.dao.domain.Client;
-import com.sandu.ximon.dao.domain.PlatformFile;
-import com.sandu.ximon.dao.domain.PlatformFileUser;
+import com.sandu.ximon.dao.domain.*;
import com.sandu.ximon.dao.enums.AdministratorEnums;
import com.sandu.ximon.dao.mapper.PlatformFileMapper;
import lombok.AllArgsConstructor;
@@ -25,6 +24,7 @@
import java.util.ArrayList;
import java.util.List;
+import java.util.stream.Collectors;
/**
* @author LiuHaoNan
@@ -39,6 +39,7 @@
private final PlatformFileUserService platformFileUserService;
private final AdminService adminService;
private final ClientService clientService;
+ private final Snowflake snowflake;
/**
* 鏂囦欢涓婁紶
@@ -50,6 +51,7 @@
PermissionToCheck();
FileUploadDto fileUploadDto = aliOssFileService.uploadFile(file);
PlatformFile platformFile = new PlatformFile();
+ platformFile.setFileId(snowflake.nextId());
platformFile.setFileName(fileUploadDto.getOriginName());
platformFile.setFileSize(fileUploadDto.getFileSize());
platformFile.setFileUrl(fileUploadDto.getFileUrl());
@@ -112,10 +114,18 @@
List<PlatformFileListBo> platformFileListBos;
if (AdministratorEnums.ADMIN.getCode().equals(SecurityUtils.getUserDetails().getAdministratorType())) {
PageHelper.startPage(vo.getPageNo(), vo.getPageSize());
- platformFileListBos = baseMapper.fileLiet(keyword, null);
+ platformFileListBos = baseMapper.fileList(keyword, null);
} else {
+ List<PlatformFileUser> platformFileUsers = SpringContextHolder.getBean(PlatformFileUserService.class)
+ .list(Wrappers.lambdaQuery(PlatformFileUser.class).eq(PlatformFileUser::getUserId, SecurityUtils.getUserId()));
+ List<Long> fileIdList = platformFileUsers.stream().map(PlatformFileUser::getFileId).collect(Collectors.toList());
+
+ if(fileIdList.size() == 0){
+ fileIdList.add(-1L);
+ }
PageHelper.startPage(vo.getPageNo(), vo.getPageSize());
- platformFileListBos = baseMapper.fileLiet(keyword, SecurityUtils.getUserId());
+ platformFileListBos = baseMapper.fileList(keyword, fileIdList);
+
}
return platformFileListBos;
}
@@ -146,6 +156,7 @@
* @return
*/
public String setPermission(PlatformFilePermissionParam platformFilePermissionParam) {
+ PermissionToCheck();
//鍒犻櫎鏃у叧绯�
platformFileUserService.remove(Wrappers.lambdaQuery(PlatformFileUser.class)
.eq(PlatformFileUser::getFileId, platformFilePermissionParam.getFileId()));
@@ -173,7 +184,8 @@
* @return
*/
public List<AllUserInfoParam> allUserList() {
- List<Admin> adminList = adminService.list(Wrappers.lambdaQuery(Admin.class).ne(Admin::getId, 1));
+ PermissionToCheck();
+ List<Admin> adminList = adminService.list(Wrappers.lambdaQuery(Admin.class).ne(Admin::getId, SecurityUtils.getUserId()));
List<Client> clientList = clientService.list();
List<AllUserInfoParam> list = new ArrayList<>();
@@ -199,13 +211,45 @@
}
+ public List<AllUserInfoParam> permissionInfo(Long fileId) {
+ PermissionToCheck();
+ List<PlatformFileUser> list = platformFileUserService.list(Wrappers.lambdaQuery(PlatformFileUser.class).eq(PlatformFileUser::getFileId, fileId));
+ List<Long> userIds = list.stream().map(PlatformFileUser::getUserId).collect(Collectors.toList());
+ List<Admin> admins = adminService.list(Wrappers.lambdaQuery(Admin.class).in(Admin::getId, userIds));
+ List<Client> clients = clientService.list(Wrappers.lambdaQuery(Client.class).in(Client::getId, userIds));
+
+
+ List<AllUserInfoParam> infoList = new ArrayList<>();
+ AllUserInfoParam allUserInfoParam;
+
+ for (Admin admin : admins) {
+ allUserInfoParam = new AllUserInfoParam();
+ allUserInfoParam.setId(admin.getId());
+ allUserInfoParam.setName(admin.getUsername());
+ allUserInfoParam.setType("绠$悊鍛�");
+ infoList.add(allUserInfoParam);
+ }
+
+ for (Client client : clients) {
+ allUserInfoParam = new AllUserInfoParam();
+ allUserInfoParam.setId(client.getId());
+ allUserInfoParam.setName(client.getClientName());
+ allUserInfoParam.setType("鏅�氱敤鎴�");
+ infoList.add(allUserInfoParam);
+ }
+
+ return infoList;
+ }
+
+
/**
- * 鏉冮檺鏍¢獙
+ * 鏉冮檺瓒呯鏍¢獙
*/
private void PermissionToCheck() {
if (!AdministratorEnums.ADMIN.getCode().equals(SecurityUtils.getUserDetails().getAdministratorType())) {
- //瓒呯
+ //闈炶秴绠�
throw new BusinessException("闈炶秴绠′笉鑳芥搷浣�");
}
}
+
}
--
Gitblit v1.9.3