Skip to content

Commit

Permalink
Merge pull request #60 from jamebal/share
Browse files Browse the repository at this point in the history
perf: 分享界面显示文件夹大小
  • Loading branch information
jamebal committed May 25, 2024
2 parents 428cedd + 35f9584 commit 3e0cfb7
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,14 @@ public ResponseResult<ShareDO> getShare(@RequestParam String shareId) {
return ResultUtil.success(shareService.getShare(shareId));
}

@Operation(summary = "获取分享信息")
@GetMapping("/get/share/by/fileId")
@Permission("cloud:file:list")
@LogOperatingFun
public ResponseResult<ShareDO> getShareByFileId(@RequestParam String fileId) {
return ResultUtil.success(shareService.getShareByFileId(fileId));
}

@Operation(summary = "取消分享")
@DeleteMapping("/share/cancel")
@Permission("cloud:file:delete")
Expand Down Expand Up @@ -114,10 +122,10 @@ public ResponseResult<Object> validShareCode(@RequestBody Map<String, String> bo
@Operation(summary = "访问分享链接")
@GetMapping("/public/access-share")
@LogOperatingFun(logType = LogOperation.Type.BROWSE)
public ResponseResult<Object> accessShare(HttpServletRequest request, @RequestParam String share, Integer pageIndex, Integer pageSize) {
public ResponseResult<Object> accessShare(HttpServletRequest request, @RequestParam String share, Integer pageIndex, Integer pageSize, Boolean showFolderSize) {
ShareDO shareDO = shareService.getShare(share);
shareService.validShare(request.getHeader(Constants.SHARE_TOKEN), shareDO);
return shareService.accessShare(shareDO, pageIndex, pageSize);
return shareService.accessShare(shareDO, pageIndex, pageSize, showFolderSize);
}

@Operation(summary = "获取分享者信息")
Expand All @@ -130,10 +138,10 @@ public ResponseResult<SharerDTO> getSharer(@RequestParam String shareId) {
@Operation(summary = "访问分享链接里的目录")
@GetMapping("public/access-share/open")
@LogOperatingFun(logType = LogOperation.Type.BROWSE)
public ResponseResult<Object> accessShareOpenDir(HttpServletRequest request, @RequestParam String share, @RequestParam String fileId, Integer pageIndex, Integer pageSize) {
public ResponseResult<Object> accessShareOpenDir(HttpServletRequest request, @RequestParam String share, @RequestParam String fileId, Integer pageIndex, Integer pageSize, Boolean showFolderSize) {
ShareDO shareDO = shareService.getShare(share);
shareService.validShare(request.getHeader(Constants.SHARE_TOKEN), shareDO);
return shareService.accessShareOpenDir(shareDO, fileId, pageIndex, pageSize);
return shareService.accessShareOpenDir(shareDO, fileId, pageIndex, pageSize, showFolderSize);
}

@Operation(summary = "打包下载")
Expand Down
13 changes: 11 additions & 2 deletions src/main/java/com/jmal/clouddisk/service/IShareService.java
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,10 @@ public interface IShareService {
* @param shareDO ShareDO
* @param pageIndex pageIndex
* @param pageSize pageSize
* @param showFolderSize 是否显示文件夹大小
* @return 文件列表
*/
ResponseResult<Object> accessShare(ShareDO shareDO, Integer pageIndex, Integer pageSize);
ResponseResult<Object> accessShare(ShareDO shareDO, Integer pageIndex, Integer pageSize, Boolean showFolderSize);

/**
* 获取分享信息
Expand All @@ -39,15 +40,23 @@ public interface IShareService {
*/
ShareDO getShare(String share);

/**
* 获取分享信息
* @param fileId 文件id
* @return ShareDO
*/
ShareDO getShareByFileId(String fileId);

/**
* 打开目录
* @param share ShareDO
* @param fileId fileId
* @param pageIndex pageIndex
* @param pageSize pageSize
* @param showFolderSize 是否显示文件夹大小
* @return ResponseResult
*/
ResponseResult<Object> accessShareOpenDir(ShareDO share, String fileId, Integer pageIndex, Integer pageSize);
ResponseResult<Object> accessShareOpenDir(ShareDO share, String fileId, Integer pageIndex, Integer pageSize, Boolean showFolderSize);

/**
* 获取分享列表
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,7 @@ public void validShare(String shareToken, ShareDO shareDO) {
}

@Override
public ResponseResult<Object> accessShare(ShareDO shareDO, Integer pageIndex, Integer pageSize) {
public ResponseResult<Object> accessShare(ShareDO shareDO, Integer pageIndex, Integer pageSize, Boolean showFolderSize) {
UploadApiParamDTO uploadApiParamDTO = new UploadApiParamDTO();
uploadApiParamDTO.setPageIndex(pageIndex);
uploadApiParamDTO.setPageSize(pageSize);
Expand All @@ -288,6 +288,7 @@ public ResponseResult<Object> accessShare(ShareDO shareDO, Integer pageIndex, In
String username = userService.getUserNameById(shareDO.getUserId());
uploadApiParamDTO.setUsername(username);
uploadApiParamDTO.setCurrentDirectory("/");
uploadApiParamDTO.setShowFolderSize(showFolderSize);
return fileService.searchFileAndOpenDir(uploadApiParamDTO, shareDO.getFileId(), null);
}

Expand Down Expand Up @@ -331,6 +332,11 @@ public ShareDO getShare(String shareId) {
return mongoTemplate.findById(shareId, ShareDO.class, COLLECTION_NAME);
}

@Override
public ShareDO getShareByFileId(String fileId) {
return findByFileId(fileId);
}

/**
* 检查是否过期
* @param shareDO 分享信息
Expand All @@ -349,7 +355,7 @@ private boolean checkWhetherExpired(ShareDO shareDO) {
}

@Override
public ResponseResult<Object> accessShareOpenDir(ShareDO shareDO, String fileId, Integer pageIndex, Integer pageSize) {
public ResponseResult<Object> accessShareOpenDir(ShareDO shareDO, String fileId, Integer pageIndex, Integer pageSize, Boolean showFolderSize) {
UploadApiParamDTO uploadApiParamDTO = new UploadApiParamDTO();
uploadApiParamDTO.setUserId(shareDO.getUserId());
uploadApiParamDTO.setPageIndex(pageIndex);
Expand All @@ -365,6 +371,7 @@ public ResponseResult<Object> accessShareOpenDir(ShareDO shareDO, String fileId,
String username = userService.getUserNameById(shareDO.getUserId());
uploadApiParamDTO.setUsername(username);
}
uploadApiParamDTO.setShowFolderSize(showFolderSize);
return fileService.searchFileAndOpenDir(uploadApiParamDTO, fileId, null);
}

Expand Down

0 comments on commit 3e0cfb7

Please sign in to comment.