Browse Source

fit: 完善问题随拍

master
wxc 7 months ago
parent
commit
b39b4f21f2
  1. 29
      src/main/java/com/biutag/supervision/controller/mobileSupervision/PhotoController.java
  2. 4
      src/main/java/com/biutag/supervision/pojo/entity/SupPhoto.java

29
src/main/java/com/biutag/supervision/controller/mobileSupervision/PhotoController.java

@ -1,17 +1,25 @@
package com.biutag.supervision.controller.mobileSupervision;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.biutag.supervision.common.UserContextHolder;
import com.biutag.supervision.pojo.Result;
import com.biutag.supervision.pojo.dto.FileBase64Dto;
import com.biutag.supervision.pojo.entity.SupPhoto;
import com.biutag.supervision.pojo.model.UserAuth;
import com.biutag.supervision.pojo.vo.PhotoGroupVo;
import com.biutag.supervision.service.FileService;
import com.biutag.supervision.service.SupPhotoService;
import com.biutag.supervision.util.ImgUtils;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import java.io.ByteArrayInputStream;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Base64;
import java.util.Comparator;
import java.util.List;
import java.util.Map;
@ -21,6 +29,7 @@ import java.util.stream.Collectors;
* @author wxc
* @date 2025/4/20
*/
@Slf4j
@RequestMapping("photo")
@RequiredArgsConstructor
@RestController
@ -28,6 +37,8 @@ public class PhotoController {
private final SupPhotoService photoService;
private final FileService fileService;
@GetMapping
public Result<List<PhotoGroupVo>> list() {
UserAuth user = UserContextHolder.getCurrentUser();
@ -43,12 +54,26 @@ public class PhotoController {
}
@PostMapping
public Result<Boolean> add(@RequestBody SupPhoto photo) {
public Result<SupPhoto> add(@RequestBody FileBase64Dto file) {
log.info("文件BASE64上传 upload------------------------------");
String base64 = file.getBase64();
if (base64.contains(",")) {
base64 = base64.substring(base64.indexOf(",") + 1);
}
byte[] decodedBytes = Base64.getDecoder().decode(base64);
ByteArrayInputStream is = new ByteArrayInputStream(decodedBytes);
String extName = FileUtil.extName(file.getOriginalFilename());
String filePath = fileService.upload(is, is.available(), StrUtil.isNotBlank(extName)? extName : "png");
SupPhoto photo = new SupPhoto();
photo.setFilePath(filePath);
photo.setCreateTime(LocalDateTime.now());
photo.setDate(LocalDate.now().toString());
UserAuth user = UserContextHolder.getCurrentUser();
photo.setCreateUsername(user.getUserName());
return Result.success(photoService.save(photo));
// 创建缩略图
photo.setThumbnailBase64(ImgUtils.createSquareThumbnailBase64(is, 100));
photoService.save(photo);
return Result.success(photo);
}
}

4
src/main/java/com/biutag/supervision/pojo/entity/SupPhoto.java

@ -35,4 +35,8 @@ public class SupPhoto {
// 创建用户
private String createUsername;
private Boolean isUse = false;
private String thumbnailBase64;
}
Loading…
Cancel
Save