From c3e734b8a5370f3d4b0102a86721a98adb8e3476 Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期三, 14 九月 2022 15:28:38 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/PlatformFileService.java |   84 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 79 insertions(+), 5 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 ce1dbc3..faa6ede 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
@@ -7,9 +7,13 @@
 import com.sandu.common.file.impl.AliOssFileServiceImpl;
 import com.sandu.common.object.BaseConditionVO;
 import com.sandu.common.service.impl.BaseServiceImpl;
+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.enums.AdministratorEnums;
@@ -19,6 +23,7 @@
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
 
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -32,6 +37,8 @@
 
     private final AliOssFileServiceImpl aliOssFileService;
     private final PlatformFileUserService platformFileUserService;
+    private final AdminService adminService;
+    private final ClientService clientService;
 
     /**
      * 鏂囦欢涓婁紶
@@ -43,7 +50,7 @@
         PermissionToCheck();
         FileUploadDto fileUploadDto = aliOssFileService.uploadFile(file);
         PlatformFile platformFile = new PlatformFile();
-        platformFile.setFileName(fileUploadDto.getFileName());
+        platformFile.setFileName(fileUploadDto.getOriginName());
         platformFile.setFileSize(fileUploadDto.getFileSize());
         platformFile.setFileUrl(fileUploadDto.getFileUrl());
         log.error("瓒呯杩涜鏂囦欢涓婁紶[ 鏂囦欢鍚�:" + fileUploadDto.getFileName() + ", 鏂囦欢澶у皬: " + fileUploadDto.getFileSize() + ", url: " + fileUploadDto.getFileUrl() + "]");
@@ -52,6 +59,7 @@
 
     /**
      * 淇敼鏂囦欢鍚嶇О
+     *
      * @param param
      * @return
      */
@@ -70,6 +78,7 @@
 
     /**
      * 鍒犻櫎鏂囦欢
+     *
      * @param param
      * @return
      */
@@ -82,17 +91,24 @@
         if (platformFiles == null && platformFiles.size() == 0) {
             throw new BusinessException("鏈壘鍒版枃浠�!");
         }
-        return removeByIds(platformFiles);
+        //鍒犻櫎鍏崇郴
+        boolean remove = platformFileUserService.remove(Wrappers.lambdaQuery(PlatformFileUser.class).in(PlatformFileUser::getFileId, param.getFileIds()));
+        if (remove) {
+            //鍒犻櫎鏂囦欢
+            return removeByIds(param.getFileIds());
+        }
+        return false;
     }
 
 
     /**
      * 骞冲彴鏂囦欢璧勬簮鍒楄〃
+     *
      * @param vo
      * @param keyword
      * @return
      */
-    public Object fileList(BaseConditionVO vo, String keyword) {
+    public List<PlatformFileListBo> fileList(BaseConditionVO vo, String keyword) {
         List<PlatformFileListBo> platformFileListBos;
         if (AdministratorEnums.ADMIN.getCode().equals(SecurityUtils.getUserDetails().getAdministratorType())) {
             PageHelper.startPage(vo.getPageNo(), vo.getPageSize());
@@ -106,11 +122,12 @@
 
     /**
      * 涓嬭浇鏂囦欢
+     *
      * @param fileId
      * @return
      */
     public String downFile(Long fileId) {
-        if(!AdministratorEnums.ADMIN.getCode().equals(SecurityUtils.getUserDetails().getAdministratorType())){
+        if (!AdministratorEnums.ADMIN.getCode().equals(SecurityUtils.getUserDetails().getAdministratorType())) {
             PlatformFileUser one = platformFileUserService.getOne(Wrappers.lambdaQuery(PlatformFileUser.class)
                     .eq(PlatformFileUser::getUserId, SecurityUtils.getUserId()).eq(PlatformFileUser::getFileId, fileId));
             if (one == null) {
@@ -122,7 +139,64 @@
     }
 
 
-//    public boolean  setPermission(){}
+    /**
+     * 璁剧疆鏂囦欢娴忚鏉冮檺
+     *
+     * @param platformFilePermissionParam
+     * @return
+     */
+    public String setPermission(PlatformFilePermissionParam platformFilePermissionParam) {
+        //鍒犻櫎鏃у叧绯�
+        platformFileUserService.remove(Wrappers.lambdaQuery(PlatformFileUser.class)
+                .eq(PlatformFileUser::getFileId, platformFilePermissionParam.getFileId()));
+
+        //娣诲姞鏂板叧绯�
+        List<PlatformFileUser> list = new ArrayList<>();
+        PlatformFileUser bean;
+        for (Long userId : platformFilePermissionParam.getUserIdList()) {
+            bean = new PlatformFileUser();
+            bean.setFileId(platformFilePermissionParam.getFileId());
+            bean.setUserId(userId);
+            list.add(bean);
+        }
+
+        if (platformFileUserService.saveBatch(list)) {
+            return "鍏崇郴瀛樺偍鎴愬姛锛�";
+        } else {
+            throw new BusinessException("鍏崇郴瀛樺偍澶辫触锛�");
+        }
+    }
+
+    /**
+     * 杩斿洖鎵�鏈夌敤鎴�
+     *
+     * @return
+     */
+    public List<AllUserInfoParam> allUserList() {
+        List<Admin> adminList = adminService.list(Wrappers.lambdaQuery(Admin.class).ne(Admin::getId, 1));
+        List<Client> clientList = clientService.list();
+
+        List<AllUserInfoParam> list = new ArrayList<>();
+        AllUserInfoParam allUserInfoParam;
+
+        for (Admin admin : adminList) {
+            allUserInfoParam = new AllUserInfoParam();
+            allUserInfoParam.setId(admin.getId());
+            allUserInfoParam.setName(admin.getUsername());
+            allUserInfoParam.setType("绠$悊鍛�");
+            list.add(allUserInfoParam);
+        }
+
+        for (Client client : clientList) {
+            allUserInfoParam = new AllUserInfoParam();
+            allUserInfoParam.setId(client.getId());
+            allUserInfoParam.setName(client.getClientName());
+            allUserInfoParam.setType("鏅�氱敤鎴�");
+            list.add(allUserInfoParam);
+        }
+
+        return list;
+    }
 
 
     /**

--
Gitblit v1.9.3