mirror of
https://gitee.com/lab1024/smart-admin.git
synced 2025-10-08 21:26:40 +08:00
update FileService
This commit is contained in:
parent
0549798445
commit
7ec8278db5
@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import net.lab1024.smartadmin.service.module.business.category.constant.CategoryTypeEnum;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
|
@ -1,16 +1,17 @@
|
||||
package net.lab1024.smartadmin.service.module.support.file;
|
||||
|
||||
import net.lab1024.smartadmin.service.common.swagger.SwaggerTagConst;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import net.lab1024.smartadmin.service.common.controller.SupportBaseController;
|
||||
import net.lab1024.smartadmin.service.common.domain.PageResultDTO;
|
||||
import net.lab1024.smartadmin.service.common.domain.ResponseDTO;
|
||||
import net.lab1024.smartadmin.service.common.controller.SupportBaseController;
|
||||
import net.lab1024.smartadmin.service.common.swagger.SwaggerTagConst;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.FileFolderTypeEnum;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.dto.*;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.dto.FileQueryForm;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.dto.FileUrlUploadForm;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.vo.FileUploadVO;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.vo.FileVO;
|
||||
import net.lab1024.smartadmin.service.module.support.file.service.FileService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import net.lab1024.smartadmin.service.module.support.repeatsubmit.annoation.RepeatSubmit;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
@ -19,8 +20,6 @@ import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.validation.Valid;
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Description: 文件服务
|
||||
@ -36,7 +35,7 @@ public class FileController extends SupportBaseController {
|
||||
@ApiOperation(value = "文件上传 by listen", notes = FileFolderTypeEnum.INFO)
|
||||
@PostMapping("/file/upload/{folder}")
|
||||
public ResponseDTO<FileUploadVO> upload(MultipartFile file, @PathVariable Integer folder) {
|
||||
return fileService.fileUpload(file, folder, 0L, null);
|
||||
return fileService.fileUpload(file, folder, null, null);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "文件上传,通过url上传 by listen", notes = FileFolderTypeEnum.INFO)
|
||||
@ -51,42 +50,23 @@ public class FileController extends SupportBaseController {
|
||||
return fileService.getFileUrl(fileKey);
|
||||
}
|
||||
|
||||
@ApiOperation("批量获取文件url:根据fileKey by listen")
|
||||
@PostMapping("/file/url/query")
|
||||
public ResponseDTO<List<FileUrlResultDTO>> getBatchFileUrl(@RequestBody @Valid FileUrlQueryForm queryForm) {
|
||||
return fileService.getBatchFileUrl(queryForm);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "系统文件查询 by listen")
|
||||
@ApiOperation(value = "文件分页查询 by listen")
|
||||
@PostMapping("/file/query")
|
||||
@RepeatSubmit(3000)
|
||||
public ResponseDTO<PageResultDTO<FileVO>> queryListByPage(@RequestBody @Valid FileQueryForm queryForm) {
|
||||
return fileService.queryListByPage(queryForm);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "下载文件流(根据fileId) by listen")
|
||||
@GetMapping("/file/downLoad/{id}")
|
||||
public ResponseEntity<Object> downLoadById(@PathVariable Long id, HttpServletRequest request) throws IOException {
|
||||
String ua = request.getHeader("User-Agent");
|
||||
return fileService.downLoadById(id, ua);
|
||||
}
|
||||
|
||||
@ApiOperation(value = "下载文件流(根据fileKey) by listen")
|
||||
@GetMapping("/file/downLoad")
|
||||
public ResponseEntity<Object> downLoad(String fileKey, HttpServletRequest request) {
|
||||
public ResponseEntity<Object> downLoad(@RequestParam String fileKey, HttpServletRequest request) {
|
||||
String ua = request.getHeader("User-Agent");
|
||||
return fileService.downloadByFileKey(fileKey, ua);
|
||||
}
|
||||
|
||||
@RepeatSubmit(1000)
|
||||
@ApiOperation("删除文件(根据fileKey) by listen")
|
||||
@GetMapping("/file/delete")
|
||||
public ResponseDTO<String> deleteByFileKey(@RequestParam String fileKey) {
|
||||
return fileService.deleteByFileKey(fileKey);
|
||||
}
|
||||
|
||||
@ApiOperation("根据文件服务和key 查询文件元数据 by listen")
|
||||
@GetMapping("/file/query/metadata")
|
||||
public ResponseDTO<FileMetadataDTO> queryFileMetadata(@RequestParam String fileKey) {
|
||||
return fileService.queryFileMetadata(fileKey);
|
||||
}
|
||||
}
|
||||
|
@ -19,15 +19,9 @@ import java.util.List;
|
||||
@Component
|
||||
public interface FileDao extends BaseMapper<FileEntity> {
|
||||
|
||||
/**
|
||||
* 文件key批量查询
|
||||
* @param fileKeyList
|
||||
* @return
|
||||
*/
|
||||
List<FileVO> listByFileKeyList(@Param("fileKeyList") List<String> fileKeyList);
|
||||
|
||||
/**
|
||||
* 文件key单个查询
|
||||
*
|
||||
* @param fileKey
|
||||
* @return
|
||||
*/
|
||||
@ -35,6 +29,7 @@ public interface FileDao extends BaseMapper<FileEntity> {
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*
|
||||
* @param page
|
||||
* @param query
|
||||
* @return
|
||||
|
@ -1,49 +0,0 @@
|
||||
package net.lab1024.smartadmin.service.module.support.file.domain.dto;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.sql.Date;
|
||||
|
||||
/**
|
||||
* [ ]
|
||||
*
|
||||
* @author 罗伊
|
||||
* @date 2020/8/25 11:57
|
||||
*/
|
||||
@Data
|
||||
public class FileDTO {
|
||||
|
||||
@ApiModelProperty("主键")
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty("相关业务id")
|
||||
private String moduleId;
|
||||
|
||||
@ApiModelProperty("相关业务类型")
|
||||
private String moduleType;
|
||||
|
||||
@ApiModelProperty("文件名称")
|
||||
private String fileName;
|
||||
|
||||
@ApiModelProperty("文件大小")
|
||||
private String fileSize;
|
||||
|
||||
@ApiModelProperty("文件类型")
|
||||
private String fileType;
|
||||
|
||||
@ApiModelProperty("文件路径")
|
||||
private String filePath;
|
||||
|
||||
@ApiModelProperty("上传人")
|
||||
private Long createUser;
|
||||
|
||||
@ApiModelProperty("updateTime")
|
||||
private Date updateTime;
|
||||
|
||||
@ApiModelProperty("创建时间")
|
||||
private Date createTime;
|
||||
|
||||
@ApiModelProperty("文件展示url(可用于下载,注:七牛云下载url要拼接 ?attname=文件名.jpg)")
|
||||
private String fileUrl;
|
||||
}
|
@ -1,10 +1,12 @@
|
||||
package net.lab1024.smartadmin.service.module.support.file.domain.dto;
|
||||
|
||||
import net.lab1024.smartadmin.service.common.domain.PageParamForm;
|
||||
import net.lab1024.smartadmin.service.common.swagger.ApiModelPropertyEnum;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.FileFolderTypeEnum;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import net.lab1024.smartadmin.service.common.domain.PageParamForm;
|
||||
import net.lab1024.smartadmin.service.common.swagger.ApiModelPropertyEnum;
|
||||
import net.lab1024.smartadmin.service.common.validator.enumeration.CheckEnum;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.FileFolderTypeEnum;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
/**
|
||||
* @Description: 文件信息查询dto
|
||||
@ -16,10 +18,11 @@ import lombok.Data;
|
||||
public class FileQueryForm extends PageParamForm {
|
||||
|
||||
@ApiModelProperty(value = "文件名称")
|
||||
@Length(max = 50, message = "文件名称搜索最多50字符")
|
||||
private String fileName;
|
||||
|
||||
@ApiModelProperty(value = "业务类型")
|
||||
@ApiModelPropertyEnum(FileFolderTypeEnum.class)
|
||||
@ApiModelPropertyEnum(value = FileFolderTypeEnum.class, desc = "业务类型")
|
||||
@CheckEnum(value = FileFolderTypeEnum.class, message = "业务类型错误")
|
||||
private Integer folderType;
|
||||
|
||||
}
|
||||
|
@ -1,25 +0,0 @@
|
||||
package net.lab1024.smartadmin.service.module.support.file.domain.dto;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 文件 url 查询DTO
|
||||
*
|
||||
* @author 胡克
|
||||
* @date 2020/5/12 14:51
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class FileUrlQueryForm {
|
||||
|
||||
@ApiModelProperty("file key")
|
||||
@NotEmpty(message = "file key not empty")
|
||||
private List<String> fileKeyList;
|
||||
}
|
@ -1,21 +0,0 @@
|
||||
package net.lab1024.smartadmin.service.module.support.file.domain.dto;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 文件 url 查询DTO
|
||||
*
|
||||
* @author 胡克
|
||||
* @date 2020/5/12 14:51
|
||||
*/
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
public class FileUrlResultDTO {
|
||||
|
||||
private String fileKey;
|
||||
|
||||
private String fileUrl;
|
||||
}
|
@ -1,14 +1,12 @@
|
||||
package net.lab1024.smartadmin.service.module.support.file.domain.dto;
|
||||
|
||||
import net.lab1024.smartadmin.service.common.swagger.ApiModelPropertyEnum;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.FileFolderTypeEnum;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import net.lab1024.smartadmin.service.common.swagger.ApiModelPropertyEnum;
|
||||
import net.lab1024.smartadmin.service.common.validator.enumeration.CheckEnum;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.FileFolderTypeEnum;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* url上传文件 DTO 类
|
||||
@ -17,21 +15,20 @@ import javax.validation.constraints.NotNull;
|
||||
* @date 2020年3月16日 10:14:54
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class FileUrlUploadForm {
|
||||
|
||||
@ApiModelPropertyEnum(FileFolderTypeEnum.class)
|
||||
@ApiModelPropertyEnum(value = FileFolderTypeEnum.class, desc = "业务类型")
|
||||
@CheckEnum(value = FileFolderTypeEnum.class, required = true, message = "业务类型错误")
|
||||
private Integer folder;
|
||||
|
||||
@ApiModelProperty("文件url")
|
||||
@NotBlank(message = "文件url不能为空")
|
||||
private String fileUrl;
|
||||
|
||||
@NotNull(message = "userId不能为空")
|
||||
@ApiModelProperty("用户id|可选")
|
||||
private Long userId;
|
||||
|
||||
@NotBlank(message = "上传姓名不能为空")
|
||||
@ApiModelProperty("用户姓名|可选")
|
||||
private String userName;
|
||||
|
||||
}
|
||||
|
@ -1,21 +0,0 @@
|
||||
package net.lab1024.smartadmin.service.module.support.file.domain.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 文件简单VO
|
||||
*
|
||||
* @author 善逸
|
||||
* @date 2019/10/23 11:15
|
||||
*/
|
||||
@Data
|
||||
public class FileSimpleVO {
|
||||
|
||||
@ApiModelProperty("文件Key")
|
||||
private String fileKey;
|
||||
|
||||
@ApiModelProperty("文件Url")
|
||||
private String fileUrl;
|
||||
|
||||
}
|
@ -17,7 +17,6 @@ public class FileVO {
|
||||
@ApiModelProperty("主键")
|
||||
private Long id;
|
||||
|
||||
|
||||
@ApiModelProperty("存储文件夹类型")
|
||||
@ApiModelPropertyEnum(FileFolderTypeEnum.class)
|
||||
private Integer folderType;
|
||||
|
@ -5,21 +5,24 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.google.common.collect.Lists;
|
||||
import net.lab1024.smartadmin.service.common.code.SystemErrorCode;
|
||||
import net.lab1024.smartadmin.service.common.code.UserErrorCode;
|
||||
import net.lab1024.smartadmin.service.common.constant.StringConst;
|
||||
import net.lab1024.smartadmin.service.common.constant.RedisKeyConst;
|
||||
import net.lab1024.smartadmin.service.common.constant.StringConst;
|
||||
import net.lab1024.smartadmin.service.common.domain.PageResultDTO;
|
||||
import net.lab1024.smartadmin.service.common.domain.ResponseDTO;
|
||||
import net.lab1024.smartadmin.service.common.util.SmartBaseEnumUtil;
|
||||
import net.lab1024.smartadmin.service.common.util.SmartBeanUtil;
|
||||
import net.lab1024.smartadmin.service.common.util.SmartPageUtil;
|
||||
import net.lab1024.smartadmin.service.common.util.SmartStringUtil;
|
||||
import net.lab1024.smartadmin.service.module.support.file.FileDao;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.FileEntity;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.FileFolderTypeEnum;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.dto.*;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.dto.FileDownloadDTO;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.dto.FileMetadataDTO;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.dto.FileQueryForm;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.dto.FileUrlUploadForm;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.vo.FileUploadVO;
|
||||
import net.lab1024.smartadmin.service.module.support.file.domain.vo.FileVO;
|
||||
import net.lab1024.smartadmin.service.third.SmartRedisService;
|
||||
import net.lab1024.smartadmin.service.common.util.SmartBaseEnumUtil;
|
||||
import net.lab1024.smartadmin.service.common.util.SmartBeanUtil;
|
||||
import net.lab1024.smartadmin.service.common.util.SmartPageUtil;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@ -35,7 +38,6 @@ import javax.annotation.Resource;
|
||||
import java.io.IOException;
|
||||
import java.net.URL;
|
||||
import java.net.URLConnection;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@ -115,30 +117,30 @@ public class FileService {
|
||||
}
|
||||
// 获取文件服务
|
||||
ResponseDTO<FileUploadVO> response = fileStorageService.fileUpload(file, folderTypeEnum.getFolder());
|
||||
|
||||
if (response.getOk()) {
|
||||
// 上传成功 保存记录数据库
|
||||
FileUploadVO uploadVO = response.getData();
|
||||
|
||||
FileEntity fileEntity = new FileEntity();
|
||||
fileEntity.setFolderType(folderTypeEnum.getValue());
|
||||
fileEntity.setFileName(originalFilename);
|
||||
fileEntity.setFileSize(file.getSize());
|
||||
fileEntity.setFileKey(uploadVO.getFileKey());
|
||||
fileEntity.setFileType(uploadVO.getFileType());
|
||||
fileEntity.setCreatorId(userId);
|
||||
fileEntity.setCreatorName(userName);
|
||||
fileDao.insert(fileEntity);
|
||||
uploadVO.setFileId(fileEntity.getId());
|
||||
//添加缓存
|
||||
String redisKey = RedisKeyConst.Support.FILE_URL + uploadVO.getFileKey();
|
||||
redisService.set(redisKey, uploadVO.getFileUrl(), fileStorageService.cacheExpireSecond());
|
||||
|
||||
String fileRedisKey = RedisKeyConst.Support.FILE_VO + uploadVO.getFileKey();
|
||||
FileVO fileVO = SmartBeanUtil.copy(fileEntity, FileVO.class);
|
||||
redisService.set(fileRedisKey, fileVO, fileStorageService.cacheExpireSecond());
|
||||
return response;
|
||||
}
|
||||
|
||||
// 上传成功 保存记录数据库
|
||||
FileUploadVO uploadVO = response.getData();
|
||||
|
||||
FileEntity fileEntity = new FileEntity();
|
||||
fileEntity.setFolderType(folderTypeEnum.getValue());
|
||||
fileEntity.setFileName(originalFilename);
|
||||
fileEntity.setFileSize(file.getSize());
|
||||
fileEntity.setFileKey(uploadVO.getFileKey());
|
||||
fileEntity.setFileType(uploadVO.getFileType());
|
||||
fileEntity.setCreatorId(userId);
|
||||
fileEntity.setCreatorName(userName);
|
||||
fileDao.insert(fileEntity);
|
||||
uploadVO.setFileId(fileEntity.getId());
|
||||
// 添加缓存
|
||||
String redisKey = RedisKeyConst.Support.FILE_URL + uploadVO.getFileKey();
|
||||
redisService.set(redisKey, uploadVO.getFileUrl(), fileStorageService.cacheExpireSecond());
|
||||
|
||||
String fileRedisKey = RedisKeyConst.Support.FILE_VO + uploadVO.getFileKey();
|
||||
FileVO fileVO = SmartBeanUtil.copy(fileEntity, FileVO.class);
|
||||
redisService.set(fileRedisKey, fileVO, fileStorageService.cacheExpireSecond());
|
||||
return response;
|
||||
}
|
||||
|
||||
@ -197,28 +199,6 @@ public class FileService {
|
||||
return fileUrl;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 批量获取文件url
|
||||
* 支持单个 key 逗号分隔的形式
|
||||
*
|
||||
* @param queryDTO
|
||||
* @return
|
||||
*/
|
||||
public ResponseDTO<List<FileUrlResultDTO>> getBatchFileUrl(FileUrlQueryForm queryDTO) {
|
||||
// 获取文件服务
|
||||
List<String> fileKeyList = queryDTO.getFileKeyList();
|
||||
List<FileUrlResultDTO> resultDTOList = fileKeyList.stream().map(fileKey -> {
|
||||
// 处理逗号分隔的字符串
|
||||
List<String> stringList = Arrays.asList(fileKey.split(StringConst.SEPARATOR));
|
||||
stringList = stringList.stream().map(e -> fileStorageService.getFileUrl(e).getData()).collect(Collectors.toList());
|
||||
String result = StringUtils.join(stringList, StringConst.SEPARATOR_CHAR);
|
||||
return new FileUrlResultDTO(fileKey, result);
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
return ResponseDTO.ok(resultDTOList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询文件列表
|
||||
*
|
||||
@ -226,7 +206,7 @@ public class FileService {
|
||||
* @return
|
||||
*/
|
||||
public ResponseDTO<PageResultDTO<FileVO>> queryListByPage(FileQueryForm queryDTO) {
|
||||
Page page = SmartPageUtil.convert2PageQuery(queryDTO);
|
||||
Page<?> page = SmartPageUtil.convert2PageQuery(queryDTO);
|
||||
List<FileVO> fileList = fileDao.queryListByPage(page, queryDTO);
|
||||
if (CollectionUtils.isNotEmpty(fileList)) {
|
||||
fileList.forEach(e -> {
|
||||
@ -267,26 +247,7 @@ public class FileService {
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据id 下载文件
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
public ResponseEntity<Object> downLoadById(Long id, String userAgent) throws IOException {
|
||||
FileEntity entity = fileDao.selectById(id);
|
||||
if (null == entity) {
|
||||
HttpHeaders heads = new HttpHeaders();
|
||||
heads.add(HttpHeaders.CONTENT_TYPE, "text/html;charset=UTF-8");
|
||||
return new ResponseEntity<>("文件不存在", heads, HttpStatus.OK);
|
||||
}
|
||||
|
||||
// 根据文件服务类 获取对应文件服务 查询 url
|
||||
ResponseEntity<Object> responseEntity = this.downloadByFileKey(entity.getFileKey(), userAgent);
|
||||
return responseEntity;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据文件服务和key 删除
|
||||
* 根据文件key 删除
|
||||
*
|
||||
* @param fileKey
|
||||
* @return
|
||||
@ -304,30 +265,4 @@ public class FileService {
|
||||
// 根据文件服务类 获取对应文件服务 删除文件
|
||||
return fileStorageService.delete(fileKey);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据文件服务和key 查询文件元数据
|
||||
*
|
||||
* @param fileKey
|
||||
* @return
|
||||
*/
|
||||
public ResponseDTO<FileMetadataDTO> queryFileMetadata(String fileKey) {
|
||||
if (StringUtils.isBlank(fileKey)) {
|
||||
return ResponseDTO.error(UserErrorCode.DATA_NOT_EXIST);
|
||||
}
|
||||
// 查询数据库文件记录
|
||||
FileEntity fileEntity = new FileEntity();
|
||||
fileEntity.setFileKey(fileKey);
|
||||
fileEntity = fileDao.selectOne(new QueryWrapper<>(fileEntity));
|
||||
if (null == fileEntity) {
|
||||
return ResponseDTO.error(UserErrorCode.DATA_NOT_EXIST);
|
||||
}
|
||||
|
||||
// 返回 meta
|
||||
FileMetadataDTO metadataDTO = new FileMetadataDTO();
|
||||
metadataDTO.setFileSize(fileEntity.getFileSize());
|
||||
metadataDTO.setFileName(fileEntity.getFileName());
|
||||
metadataDTO.setFileFormat(fileEntity.getFileType());
|
||||
return ResponseDTO.ok(metadataDTO);
|
||||
}
|
||||
}
|
||||
|
@ -3,7 +3,6 @@ package net.lab1024.smartadmin.service.module.support.idgenerator.service;
|
||||
import com.google.common.collect.Interner;
|
||||
import com.google.common.collect.Interners;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import net.lab1024.smartadmin.service.common.exception.BusinessException;
|
||||
import net.lab1024.smartadmin.service.common.util.SmartRandomUtil;
|
||||
import net.lab1024.smartadmin.service.module.support.idgenerator.IdGeneratorDao;
|
||||
import net.lab1024.smartadmin.service.module.support.idgenerator.IdGeneratorRecordDao;
|
||||
@ -61,9 +60,8 @@ public class IdGeneratorService {
|
||||
public String generate(IdGeneratorEnum idGeneratorEnum) {
|
||||
int generatorId = idGeneratorEnum.getValue();
|
||||
IdGeneratorEntity idGeneratorEntity = this.idGeneratorMap.get(generatorId);
|
||||
if (null == idGeneratorEntity) {
|
||||
throw new BusinessException("IdGenerator生产业务不存在 " + idGeneratorEnum.getDesc());
|
||||
}
|
||||
Assert.notNull(idGeneratorEntity, "IdGenerator不存在 " + idGeneratorEntity.getRuleType());
|
||||
|
||||
// 校验生成规则
|
||||
IdGeneratorRuleTypeEnum ruleTypeEnum = this.getIdGeneratorRuleTypeEnum(idGeneratorEntity.getRuleType());
|
||||
Assert.notNull(ruleTypeEnum, "IdGenerator rule type 不存在 " + idGeneratorEntity.getRuleType());
|
||||
|
@ -18,13 +18,6 @@
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<select id="listByFileKeyList" resultType="net.lab1024.smartadmin.service.module.support.file.domain.vo.FileVO">
|
||||
SELECT * FROM t_file where file_key in
|
||||
<foreach collection="fileKeyList" item="item" open="(" close=")" index="index" separator=",">
|
||||
#{item}
|
||||
</foreach>
|
||||
</select>
|
||||
|
||||
<select id="getByFileKey" resultType="net.lab1024.smartadmin.service.module.support.file.domain.vo.FileVO">
|
||||
SELECT * FROM t_file where file_key = #{fileKey}
|
||||
</select>
|
||||
|
Loading…
Reference in New Issue
Block a user