From e55c8b0a92eb9715edd90c31dfd4de51a47b588b Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期五, 04 十一月 2022 17:40:08 +0800
Subject: [PATCH] changes

---
 ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeFileService.java |  130 ++++++++++++++++++++++++++++++++++---------
 1 files changed, 103 insertions(+), 27 deletions(-)

diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeFileService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeFileService.java
index 607aa49..bcf3a7d 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeFileService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/IpVolumeFileService.java
@@ -1,5 +1,7 @@
 package com.sandu.ximon.admin.service;
 
+import com.alibaba.fastjson.JSON;
+import com.alipay.service.schema.util.StringUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.pagehelper.PageHelper;
@@ -13,11 +15,15 @@
 import com.sandu.ximon.admin.minio.utils.MinIoUtil;
 import com.sandu.ximon.admin.param.IpVolumeFileParam;
 import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
 import com.sandu.ximon.dao.domain.IpVolumeFile;
+import com.sandu.ximon.dao.enums.OrderByEnums;
 import com.sandu.ximon.dao.mapper.IpVolumeFileMapper;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
+
+import java.util.List;
 
 /**
  * @Author liuhaonan
@@ -35,46 +41,57 @@
 
     public boolean addFile(IpVolumeFileParam fileParam) {
         IpVolumeFile file = new IpVolumeFile();
-//        if(SecurityUtils.getClientId()!=null){
-//            file.setUserName(SecurityUtils.getUsername());
-//        }
-//
-        if (SecurityUtils.getClientId() != null) {
-            file.setUserName(SecurityUtils.getUsername());
-            file.setUserId(SecurityUtils.getClientId());
-            file.setClientId(clientService.getClientId());
-        }
+
+        file.setUserName(SecurityUtils.getUsername());
+        file.setUserId(SecurityUtils.getClientId());
+        file.setClientId(clientService.getClientId());
 
         file.setFileName(fileParam.getFileName());
         file.setFileUrl(fileParam.getFileUrl());
         file.setOriginSize(fileParam.getOriginSize());
+
+        /**
+         * 闊虫煴鏂囦欢鏂板 鏃ュ織璁板綍寮�濮�
+         */
+        String content = "闊虫煴鏂囦欢鍚嶇О锛�" + fileParam.getFileName() + "锛屾枃浠跺ぇ灏忥細" + fileParam.getOriginSize() + "锛屾枃浠惰矾寰勶細" + fileParam.getFileUrl();
+        StoreOperationRecordsUtils.storeOperationData(null, null, "闊虫煴鏂囦欢鏂板", content);
+        /**
+         * 闊虫煴鏂囦欢鏂板 鏃ュ織璁板綍缁撴潫
+         */
         return save(file);
     }
 
-    public boolean deleteFile(Long fileId) {
-        IpVolumeFile byId = getById(fileId);
-        String bucketName;
-        if (SecurityUtils.getClientId() == null) {
-            bucketName = MinIoConstant.ADMIN_BROADCAST_FILE.getBucketName();
-        } else {
-            bucketName = MinIoConstant.BROADCAST_FILE.getBucketName() + SecurityUtils.getUserId();
-        }
-        if (byId == null) {
-            throw new BusinessException("鎵句笉鍒板搴旀枃浠�");
-        }
-        boolean b = minIoUtil.deleteFile(bucketName, byId.getFileName());
+    public boolean deleteFile(List<Long> fileIds) {
+        fileIds.forEach(fileId -> {
+            IpVolumeFile byId = getById(fileId);
+            String bucketName;
+            if (SecurityUtils.getClientId() == null) {
+                bucketName = MinIoConstant.ADMIN_BROADCAST_FILE.getBucketName();
+            } else {
+                bucketName = MinIoConstant.BROADCAST_FILE.getBucketName() + SecurityUtils.getUserId();
+            }
+            if (byId == null) {
+                throw new BusinessException("鎵句笉鍒板搴旀枃浠�");
+            }
+            boolean b = minIoUtil.deleteFile(bucketName, byId.getFileName());
 //        if (!b) {
 //            throw new BusinessException("鏈嶅姟鍣ㄥ垹闄ゅけ璐�");
 //        }
+            /**
+             * 闊虫煴鏂囦欢鍒犻櫎 鏃ュ織璁板綍寮�濮�
+             */
+            String content = "鍒犻櫎鏂囦欢id:" + fileId + "闊虫煴鏂囦欢鍚嶇О锛�" + byId.getFileName() + "锛屾枃浠跺ぇ灏忥細" + byId.getOriginSize() + "锛屾枃浠惰矾寰勶細" + byId.getFileUrl();
+            StoreOperationRecordsUtils.storeOperationData(null, null, "闊虫煴鏂囦欢鍒犻櫎", content);
+            /**
+             * 闊虫煴鏂囦欢鍒犻櫎 鏃ュ織璁板綍缁撴潫
+             */
 
-
-        return removeById(fileId);
+        });
+        return removeByIds(fileIds);
     }
 
-    public LambdaQueryWrapper<IpVolumeFile> listFile(BaseConditionVO baseConditionVO, String keyword) {
-        PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+    public List<IpVolumeFile> ipVolumeFileList(BaseConditionVO baseConditionVO, String keyword, Integer order, Integer seq) {
         LambdaQueryWrapper<IpVolumeFile> wrapper = Wrappers.lambdaQuery(IpVolumeFile.class);
-
         //涓嶆槸瓒呯
         if (SecurityUtils.getClientId() != null) {
             wrapper = wrapper.eq(IpVolumeFile::getClientId, SecurityUtils.getUserId())
@@ -86,7 +103,56 @@
         if (keyword != null && !keyword.isEmpty()) {
             wrapper.like(IpVolumeFile::getFileName, keyword);
         }
-        return wrapper;
+
+        //鎺掑簭瀛楁
+        String orderByResult = "id";
+        //姝e簭銆佸�掑彊
+        String orderBySeq = OrderByEnums.ASC.getCode();
+        if (order != null) {
+            switch (order) {
+                case 1:
+                    orderByResult = OrderByEnums.IP_VOLUME_FILE_CREATE_TIME.getCode();
+                    break;
+                default:
+            }
+        }
+        if (seq != null) {
+            switch (seq) {
+                case 1:
+                    orderBySeq = OrderByEnums.ASC.getCode();
+                    break;
+                case 2:
+                    orderBySeq = OrderByEnums.DESC.getCode();
+                    break;
+                default:
+                    break;
+            }
+        }
+        //鎺掑簭鏂瑰紡
+        String orderBy = orderByResult + " " + orderBySeq;
+
+        if (baseConditionVO != null) {
+            PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize(), orderBy);
+        }
+        List<IpVolumeFile> list = list(wrapper);
+
+        return list;
+    }
+
+    public List<IpVolumeFile> listFiles(String keyword) {
+        LambdaQueryWrapper<IpVolumeFile> wrapper = Wrappers.lambdaQuery(IpVolumeFile.class);
+
+        //涓嶆槸瓒呯
+        if (SecurityUtils.getClientId() != null) {
+            wrapper = wrapper.eq(IpVolumeFile::getClientId, SecurityUtils.getUserId())
+                    .or(file -> {
+                        file.eq(IpVolumeFile::getUserId, SecurityUtils.getUserId());
+                    });
+        }
+        if (keyword != null && !StringUtil.isEmpty(keyword)) {
+            wrapper.like(IpVolumeFile::getFileName, keyword);
+        }
+        return list(wrapper);
     }
 
 
@@ -128,6 +194,16 @@
         fileUploadDto.setFileSize(file.getSize());
         fileUploadDto.setFileName(file.getOriginalFilename());
         fileUploadDto.setFileType(file.getContentType());
+
+        /**
+         * 闊虫煴鏂囦欢涓婁紶 鏃ュ織璁板綍寮�濮�
+         */
+        String content = "鏂囦欢鍐呭:" + JSON.toJSONString(fileUploadDto);
+        StoreOperationRecordsUtils.storeOperationData(null, null, "闊虫煴鏂囦欢涓婁紶", content);
+        /**
+         * 闊虫煴鏂囦欢涓婁紶 鏃ュ織璁板綍缁撴潫
+         */
+
         return fileUploadDto;
     }
 

--
Gitblit v1.9.3