Răsfoiți Sursa

添加文件记录日志接口

pans 8 luni în urmă
părinte
comite
e2244f3647

+ 1 - 15
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/controller/FileController.java

@@ -92,7 +92,7 @@ public class FileController {
     @Operation(summary = "创建文件", description = "创建文件", tags = {"file"})
     @ResponseBody
     @RequestMapping(value = "/createFile", method = RequestMethod.POST)
-    public RestResult<Object> createFile(HttpServletRequest httpServletRequest,@Valid @RequestBody CreateFileDTO createFileDTO) {
+    public RestResult<Object> createFile(@Valid @RequestBody CreateFileDTO createFileDTO) {
 
         try {
 
@@ -152,12 +152,10 @@ public class FileController {
                 userFileService.save(userFile);
             }
 
-            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.success().getMessage(),CURRENT_MODULE,"创建文件",SUCCESS);
 
             return RestResult.success().message("文件创建成功");
         } catch (Exception e) {
             log.error(e.getMessage());
-            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.fail().getMessage(),CURRENT_MODULE,"创建文件失败",FAIL);
             return RestResult.fail().message(e.getMessage());
         }
     }
@@ -231,11 +229,9 @@ public class FileController {
                 userFileService.save(userFile);
             }
 
-            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.success().getMessage(),CURRENT_MODULE,"创建文件",SUCCESS);
             return RestResult.success().message("文件创建成功");
         } catch (Exception e) {
             log.error(e.getMessage());
-            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.fail().getMessage(),CURRENT_MODULE,"创建文件失败",FAIL);
             return RestResult.fail().message(e.getMessage());
         }
     }
@@ -257,7 +253,6 @@ public class FileController {
         boolean isDirExist = fileDealComp.isDirExist(createFoldDto.getFileName(), createFoldDto.getFilePath(), userId);
 
         if (isDirExist) {
-            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.fail().getMessage(),CURRENT_MODULE,"同名文件夹已存在",FAIL);
             return RestResult.fail().message("同名文件夹已存在");
         }
 
@@ -265,7 +260,6 @@ public class FileController {
 
         userFileService.save(userFile);
         fileDealComp.uploadESByUserFileId(userFile.getUserFileId());
-        operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.success().getMessage(),CURRENT_MODULE,"创建文件夹",SUCCESS);
         return RestResult.success();
     }
 
@@ -285,7 +279,6 @@ public class FileController {
         boolean isDirExist = fileDealComp.isDirExist(createFoldDto.getFileName(), createFoldDto.getFilePath(), userId);
 
         if (isDirExist) {
-            operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.fail().getMessage(),CURRENT_MODULE,"同名文件夹已存在",FAIL);
             return RestResult.fail().message("同名文件夹已存在");
         }
 
@@ -293,7 +286,6 @@ public class FileController {
 
         userFileService.save(userFile);
         fileDealComp.uploadESByUserFileId(userFile.getUserFileId());
-        operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.success().getMessage(),CURRENT_MODULE,"创建文件夹",SUCCESS);
         return RestResult.success();
     }
 
@@ -364,7 +356,6 @@ public class FileController {
             searchFileVOList.add(searchFileVO);
             asyncTaskComp.checkESUserFileId(searchFileVO.getUserFileId());
         }
-        operationLogUtil.getOperationLogObj(httpServletRequest,userId,RestResult.success().getMessage(),CURRENT_MODULE,"文件搜索",SUCCESS);
 
         return RestResult.success().dataList(searchFileVOList, searchFileVOList.size());
     }
@@ -435,7 +426,6 @@ public class FileController {
             searchFileVOList.add(searchFileVO);
             asyncTaskComp.checkESUserFileId(searchFileVO.getUserFileId());
         }
-        operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.success().getMessage(),CURRENT_MODULE,"文件搜索",SUCCESS);
         return RestResult.success().dataList(searchFileVOList, searchFileVOList.size());
     }
 
@@ -455,7 +445,6 @@ public class FileController {
 
         List<UserFile> userFiles = userFileService.selectUserFileByNameAndPath(renameFileDto.getFileName(), userFile.getFilePath(), userId);
         if (userFiles != null && !userFiles.isEmpty()) {
-            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.fail().getMessage(),CURRENT_MODULE,"文件重命名同名文件已存在",FAIL);
             return RestResult.fail().message("同名文件已存在");
         }
 
@@ -475,7 +464,6 @@ public class FileController {
             }
         }
         fileDealComp.uploadESByUserFileId(renameFileDto.getUserFileId());
-        operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.success().getMessage(),CURRENT_MODULE,"文件重命名",SUCCESS);
         return RestResult.success();
     }
 
@@ -496,7 +484,6 @@ public class FileController {
 
         List<UserFile> userFiles = userFileService.selectUserFileByNameAndPath(renameFileDto.getFileName(), userFile.getFilePath(), userId);
         if (userFiles != null && !userFiles.isEmpty()) {
-            operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.fail().getMessage(),CURRENT_MODULE,"文件重命名同名文件已存在",FAIL);
             return RestResult.fail().message("同名文件已存在");
         }
 
@@ -516,7 +503,6 @@ public class FileController {
             }
         }
         fileDealComp.uploadESByUserFileId(renameFileDto.getUserFileId());
-        operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.success().getMessage(),CURRENT_MODULE,"文件重命名",SUCCESS);
         return RestResult.success();
     }
 

+ 7 - 25
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/controller/FiletransferController.java

@@ -86,10 +86,7 @@ public class FiletransferController {
         if (!isCheckSuccess) {
             return RestResult.fail().message("存储空间不足");
         }
-        UploadFileVo uploadFileVo = filetransferService.uploadFileSpeed(userId,uploadFileDto);
-
-        operationLogUtil.getOperationLogObj(request,userId,RestResult.success().getMessage(),CURRENT_MODULE,"极速上传",SUCCESS);
-
+        UploadFileVo uploadFileVo = filetransferService.uploadFileSpeed(request,userId,uploadFileDto);
         return RestResult.success().data(uploadFileVo);
 
     }
@@ -106,8 +103,7 @@ public class FiletransferController {
         if (!isCheckSuccess) {
             return RestResult.fail().message("存储空间不足");
         }
-        UploadFileVo uploadFileVo = filetransferService.uploadFileSpeed(userId,uploadFileDto);
-        operationLogUtil.getOperationLogObj(request,userId,RestResult.success().getMessage(),CURRENT_MODULE,"极速上传",SUCCESS);
+        UploadFileVo uploadFileVo = filetransferService.uploadFileSpeed(request,userId,uploadFileDto);
         return RestResult.success().data(uploadFileVo);
 
     }
@@ -124,7 +120,6 @@ public class FiletransferController {
 
         UploadFileVo uploadFileVo = new UploadFileVo();
 
-        operationLogUtil.getOperationLogObj(request,userId,RestResult.success().getMessage(),CURRENT_MODULE,"上传文件",SUCCESS);
 
         return RestResult.success().data(uploadFileVo);
 
@@ -139,7 +134,7 @@ public class FiletransferController {
         filetransferService.uploadFile(request, uploadFileDto, userId);
 
         UploadFileVo uploadFileVo = new UploadFileVo();
-        operationLogUtil.getOperationLogObj(request,userId,RestResult.success().getMessage(),CURRENT_MODULE,"上传文件",SUCCESS);
+
 
         return RestResult.success().data(uploadFileVo);
 
@@ -184,7 +179,6 @@ public class FiletransferController {
         httpServletResponse.addHeader("Content-Disposition", "attachment;fileName=" + fileName);// 设置文件名
 
         filetransferService.downloadFile(httpServletResponse, downloadFileDTO);
-        operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.success().getMessage(),CURRENT_MODULE,"下载文件",SUCCESS);
 
     }
 
@@ -229,7 +223,6 @@ public class FiletransferController {
         httpServletResponse.addHeader("Content-Disposition", "attachment;fileName=" + fileName);// 设置文件名
 
         filetransferService.downloadFile(httpServletResponse, downloadFileDTO);
-        operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.success().getMessage(),CURRENT_MODULE,"下载文件",SUCCESS);
 
     }
 
@@ -260,7 +253,6 @@ public class FiletransferController {
                 batchDownloadFileDTO.getUserFileIds(), null);
         if (!authResult) {
             log.error("没有权限下载!!!");
-            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.fail().getMessage(),CURRENT_MODULE,"没有权限下载!!!",SUCCESS);
 
             return;
         }
@@ -286,8 +278,6 @@ public class FiletransferController {
         Date date = new Date();
         String fileName = String.valueOf(date.getTime());
         httpServletResponse.addHeader("Content-Disposition", "attachment;fileName=" + fileName + ".zip");// 设置文件名
-        filetransferService.downloadUserFileList(httpServletResponse, userFile.getFilePath(), fileName, userFileIds);
-        operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.success().getMessage(),CURRENT_MODULE,"批量下载文件",SUCCESS);
 
     }
 
@@ -313,7 +303,6 @@ public class FiletransferController {
                 batchDownloadFileDTO.getUserFileIds(), null);
         if (!authResult) {
             log.error("没有权限下载!!!");
-            operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.fail().getMessage(),CURRENT_MODULE,"没有权限下载!!!",FAIL);
             return;
         }
 
@@ -338,9 +327,6 @@ public class FiletransferController {
         Date date = new Date();
         String fileName = String.valueOf(date.getTime());
         httpServletResponse.addHeader("Content-Disposition", "attachment;fileName=" + fileName + ".zip");// 设置文件名
-        filetransferService.downloadUserFileList(httpServletResponse, userFile.getFilePath(), fileName, userFileIds);
-        operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.success().getMessage(),CURRENT_MODULE,"批量下载文件",SUCCESS);
-
 
     }
 
@@ -368,7 +354,6 @@ public class FiletransferController {
 
         if (!authResult) {
             log.error("没有权限预览!!!");
-            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.fail().getMessage(),CURRENT_MODULE,"没有权限预览!!!",FAIL);
             return;
         }
 
@@ -430,11 +415,11 @@ public class FiletransferController {
                     downloadFile.getOssClient().shutdown();
                 }
             }
-            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.success().getMessage(),CURRENT_MODULE,"预览文件",SUCCESS);
+            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.success().getMessage(),CURRENT_MODULE,"预览文件",SUCCESS,previewDTO.getUserFileId(),"preview");
 
         } else {
             filetransferService.previewFile(httpServletResponse, previewDTO);
-            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.success().getMessage(),CURRENT_MODULE,"预览文件",SUCCESS);
+            operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.success().getMessage(),CURRENT_MODULE,"预览文件",SUCCESS,previewDTO.getUserFileId(),"preview");
         }
 
     }
@@ -472,7 +457,6 @@ public class FiletransferController {
 
         if (!authResult) {
             log.error("没有权限预览!!!");
-            operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.fail().getMessage(),CURRENT_MODULE,"没有权限预览",FAIL);
             return;
         }
 
@@ -534,11 +518,11 @@ public class FiletransferController {
                     downloadFile.getOssClient().shutdown();
                 }
             }
-            operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.success().getMessage(),CURRENT_MODULE,"预览文件",SUCCESS);
+            operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.success().getMessage(),CURRENT_MODULE,"预览文件",SUCCESS,previewDTO.getUserFileId(),"preview");
 
         } else {
             filetransferService.previewFile(httpServletResponse, previewDTO);
-            operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.success().getMessage(),CURRENT_MODULE,"预览文件",SUCCESS);
+            operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.success().getMessage(),CURRENT_MODULE,"预览文件",SUCCESS,previewDTO.getUserFileId(),"preview");
         }
 
     }
@@ -565,7 +549,6 @@ public class FiletransferController {
         storage.setStorageSize(storageSize);
         Long totalStorageSize = storageService.getTotalStorageSize(userId);
         storage.setTotalStorageSize(totalStorageSize);
-        operationLogUtil.getOperationLogObj(httpServletRequest,StpLoginUserUtil.getLoginUser().getId(),RestResult.success().getMessage(),CURRENT_MODULE,"预览文件",SUCCESS);
         return RestResult.success().data(storage);
 
     }
@@ -587,7 +570,6 @@ public class FiletransferController {
         storage.setStorageSize(storageSize);
         Long totalStorageSize = storageService.getTotalStorageSize(userId);
         storage.setTotalStorageSize(totalStorageSize);
-        operationLogUtil.getOperationLogObj(httpServletRequest,commonUserId,RestResult.success().getMessage(),CURRENT_MODULE,"预览文件",SUCCESS);
 
         return RestResult.success().data(storage);
 

+ 5 - 0
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/domain/OperationLogBean.java

@@ -80,6 +80,11 @@ public class OperationLogBean {
     private Integer platform;
 
     private String requestURI;
+
     private String requestMethod;
 
+    private String userFileId;
+
+    private String type;
+
 }

+ 1 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/service/IFiletransferService.java

@@ -12,7 +12,7 @@ import java.util.List;
 
 public interface IFiletransferService {
 
-    UploadFileVo uploadFileSpeed(String userId,UploadFileDTO uploadFileDTO);
+    UploadFileVo uploadFileSpeed(HttpServletRequest request,String userId,UploadFileDTO uploadFileDTO);
 
     void uploadFile(HttpServletRequest request, UploadFileDTO UploadFileDto, String userId);
 

+ 16 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/service/impl/FiletransferService.java

@@ -5,6 +5,7 @@ import com.alibaba.fastjson2.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.qiwenshare.common.result.RestResult;
 import com.qiwenshare.common.util.DateUtil;
 import com.qiwenshare.common.util.MimeUtils;
 import com.qiwenshare.ufop.constant.StorageTypeEnum;
@@ -27,6 +28,7 @@ import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+import vip.xiaonuo.auth.core.util.StpLoginUserUtil;
 import vip.xiaonuo.disk.component.FileDealComp;
 import vip.xiaonuo.disk.domain.*;
 import vip.xiaonuo.disk.dto.file.DownloadFileDTO;
@@ -35,6 +37,7 @@ import vip.xiaonuo.disk.dto.file.UploadFileDTO;
 import vip.xiaonuo.disk.io.QiwenFile;
 import vip.xiaonuo.disk.mapper.*;
 import vip.xiaonuo.disk.service.IFiletransferService;
+import vip.xiaonuo.disk.util.OperationLogUtil;
 import vip.xiaonuo.disk.vo.file.UploadFileVo;
 
 import javax.annotation.Resource;
@@ -80,10 +83,19 @@ public class FiletransferService implements IFiletransferService {
 
     @Resource
     PictureFileMapper pictureFileMapper;
+
+    @Resource
+    OperationLogUtil operationLogUtil;
+
+    public static final String SUCCESS = "操作成功";
+
+    public static final String CURRENT_MODULE = "文件传输接口";
+
+    public static final String FAIL = "操作失败";
     public static Executor exec = Executors.newFixedThreadPool(20);
 
     @Override
-    public UploadFileVo uploadFileSpeed(String userId,UploadFileDTO uploadFileDTO) {
+    public UploadFileVo uploadFileSpeed(HttpServletRequest request,String userId,UploadFileDTO uploadFileDTO) {
         UploadFileVo uploadFileVo = new UploadFileVo();
         Map<String, Object> param = new HashMap<>();
         param.put("identifier", uploadFileDTO.getIdentifier());
@@ -119,6 +131,7 @@ public class FiletransferService implements IFiletransferService {
             }
 
             uploadFileVo.setSkipUpload(true);
+            operationLogUtil.getOperationLogObj(request, StpLoginUserUtil.getLoginUser().getId(), RestResult.success().getMessage(),CURRENT_MODULE,"上传文件",SUCCESS,userFile.getUserFileId(),"upload");
         } else {
             uploadFileVo.setSkipUpload(false);
 
@@ -144,6 +157,8 @@ public class FiletransferService implements IFiletransferService {
             }
 
         }
+
+
         return uploadFileVo;
     }
 

+ 3 - 1
snowy-plugin/snowy-plugin-disk/snowy-plugin-disk-func/src/main/java/vip/xiaonuo/disk/util/OperationLogUtil.java

@@ -25,7 +25,7 @@ public class OperationLogUtil {
      * @param detail    详细信息
      * @return 操作日志参数
      */
-    public  void getOperationLogObj(HttpServletRequest request, String userId, String isSuccess, String source, String operation, String detail) {
+    public  void getOperationLogObj(HttpServletRequest request, String userId, String isSuccess, String source, String operation, String detail,String userFileId,String type) {
         //用户需要登录才能进行的操作,需要记录操作日志
         OperationLogBean operationLogBean = new OperationLogBean();
         operationLogBean.setUserId(userId);
@@ -38,6 +38,8 @@ public class OperationLogUtil {
         operationLogBean.setPlatform(PlatformEnum.PAN.getCode());
         operationLogBean.setRequestURI(request.getRequestURI());
         operationLogBean.setRequestMethod(request.getMethod());
+        operationLogBean.setUserFileId(userFileId);
+        operationLogBean.setType(type);
         iOperationLogService.insertOperationLog(operationLogBean);
     }