Browse Source

fix: 材料上传要人

master
buaixuexideshitongxue 1 month ago
parent
commit
7840659465
  1. 8
      src/main/java/com/biutag/supervision/controller/FileController.java
  2. 10
      src/main/java/com/biutag/supervision/pojo/vo/FileVo.java
  3. 13
      src/main/java/com/biutag/supervision/service/Report/ReportProjectService.java

8
src/main/java/com/biutag/supervision/controller/FileController.java

@ -3,10 +3,12 @@ package com.biutag.supervision.controller;
import cn.hutool.core.io.FileUtil; import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.IoUtil; import cn.hutool.core.io.IoUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.biutag.supervision.common.UserContextHolder;
import com.biutag.supervision.mapper.FileBase64Mapper; import com.biutag.supervision.mapper.FileBase64Mapper;
import com.biutag.supervision.pojo.Result; import com.biutag.supervision.pojo.Result;
import com.biutag.supervision.pojo.dto.FileBase64Dto; import com.biutag.supervision.pojo.dto.FileBase64Dto;
import com.biutag.supervision.pojo.entity.FileBase64; import com.biutag.supervision.pojo.entity.FileBase64;
import com.biutag.supervision.pojo.model.UserAuth;
import com.biutag.supervision.pojo.vo.FileVo; import com.biutag.supervision.pojo.vo.FileVo;
import com.biutag.supervision.service.FileService; import com.biutag.supervision.service.FileService;
import com.biutag.supervision.util.ImgUtils; import com.biutag.supervision.util.ImgUtils;
@ -22,6 +24,7 @@ import org.springframework.web.multipart.MultipartFile;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.time.LocalDateTime;
import java.util.Base64; import java.util.Base64;
import java.util.Objects; import java.util.Objects;
import java.util.Optional; import java.util.Optional;
@ -41,9 +44,12 @@ public class FileController {
public Result<FileVo> upload(@RequestPart("file") MultipartFile file) throws IOException { public Result<FileVo> upload(@RequestPart("file") MultipartFile file) throws IOException {
log.info("文件上传 upload------------------------------"); log.info("文件上传 upload------------------------------");
String filePath = fileService.upload(file); String filePath = fileService.upload(file);
UserAuth user = UserContextHolder.getCurrentUser();
return Result.success(new FileVo() return Result.success(new FileVo()
.setFileName(file.getOriginalFilename()) .setFileName(file.getOriginalFilename())
.setFilePath(filePath)); .setFilePath(filePath)
.setUploadUser(user.getNickName())
.setUploadTime(LocalDateTime.now()));
} }
@ResponseBody @ResponseBody

10
src/main/java/com/biutag/supervision/pojo/vo/FileVo.java

@ -1,8 +1,12 @@
package com.biutag.supervision.pojo.vo; package com.biutag.supervision.pojo.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
@Accessors(chain = true) @Accessors(chain = true)
@Setter @Setter
@ -21,4 +25,10 @@ public class FileVo {
private String base64; private String base64;
private String uploadUser;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime uploadTime;
} }

13
src/main/java/com/biutag/supervision/service/Report/ReportProjectService.java

@ -51,6 +51,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Comparator;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -264,6 +265,18 @@ public class ReportProjectService extends ServiceImpl<ReportProjectMapper, Repor
s.setReportId(queryParam.getProject().getId()); s.setReportId(queryParam.getProject().getId());
BeanUtil.copyProperties(s, file); BeanUtil.copyProperties(s, file);
file.setFiles(JSONObject.toJSONString(s.getFileData())); file.setFiles(JSONObject.toJSONString(s.getFileData()));
if (CollectionUtil.isEmpty(s.getFileData())) {
file.setCrtUser(null);
file.setCrtTime(null);
} else {
s.getFileData().stream()
.filter(fileVo -> fileVo.getUploadTime() != null)
.max(Comparator.comparing(FileVo::getUploadTime))
.ifPresent(latestFile -> {
file.setCrtUser(latestFile.getUploadUser());
file.setCrtTime(latestFile.getUploadTime());
});
}
files.add(file); files.add(file);
}); });
fileService.saveBatch(files); fileService.saveBatch(files);

Loading…
Cancel
Save