|
|
|
@ -1,17 +1,25 @@ |
|
|
|
package com.biutag.supervision.controller.mobileSupervision; |
|
|
|
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.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|
|
|
import com.biutag.supervision.common.UserContextHolder; |
|
|
|
import com.biutag.supervision.common.UserContextHolder; |
|
|
|
import com.biutag.supervision.pojo.Result; |
|
|
|
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.entity.SupPhoto; |
|
|
|
import com.biutag.supervision.pojo.model.UserAuth; |
|
|
|
import com.biutag.supervision.pojo.model.UserAuth; |
|
|
|
import com.biutag.supervision.pojo.vo.PhotoGroupVo; |
|
|
|
import com.biutag.supervision.pojo.vo.PhotoGroupVo; |
|
|
|
|
|
|
|
import com.biutag.supervision.service.FileService; |
|
|
|
import com.biutag.supervision.service.SupPhotoService; |
|
|
|
import com.biutag.supervision.service.SupPhotoService; |
|
|
|
|
|
|
|
import com.biutag.supervision.util.ImgUtils; |
|
|
|
import lombok.RequiredArgsConstructor; |
|
|
|
import lombok.RequiredArgsConstructor; |
|
|
|
|
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
|
import org.springframework.web.bind.annotation.*; |
|
|
|
import org.springframework.web.bind.annotation.*; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import java.io.ByteArrayInputStream; |
|
|
|
import java.time.LocalDate; |
|
|
|
import java.time.LocalDate; |
|
|
|
import java.time.LocalDateTime; |
|
|
|
import java.time.LocalDateTime; |
|
|
|
|
|
|
|
import java.util.Base64; |
|
|
|
import java.util.Comparator; |
|
|
|
import java.util.Comparator; |
|
|
|
import java.util.List; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
import java.util.Map; |
|
|
|
@ -21,6 +29,7 @@ import java.util.stream.Collectors; |
|
|
|
* @author wxc |
|
|
|
* @author wxc |
|
|
|
* @date 2025/4/20 |
|
|
|
* @date 2025/4/20 |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
|
|
|
|
@Slf4j |
|
|
|
@RequestMapping("photo") |
|
|
|
@RequestMapping("photo") |
|
|
|
@RequiredArgsConstructor |
|
|
|
@RequiredArgsConstructor |
|
|
|
@RestController |
|
|
|
@RestController |
|
|
|
@ -28,6 +37,8 @@ public class PhotoController { |
|
|
|
|
|
|
|
|
|
|
|
private final SupPhotoService photoService; |
|
|
|
private final SupPhotoService photoService; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private final FileService fileService; |
|
|
|
|
|
|
|
|
|
|
|
@GetMapping |
|
|
|
@GetMapping |
|
|
|
public Result<List<PhotoGroupVo>> list() { |
|
|
|
public Result<List<PhotoGroupVo>> list() { |
|
|
|
UserAuth user = UserContextHolder.getCurrentUser(); |
|
|
|
UserAuth user = UserContextHolder.getCurrentUser(); |
|
|
|
@ -43,12 +54,26 @@ public class PhotoController { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@PostMapping |
|
|
|
@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.setCreateTime(LocalDateTime.now()); |
|
|
|
photo.setDate(LocalDate.now().toString()); |
|
|
|
photo.setDate(LocalDate.now().toString()); |
|
|
|
UserAuth user = UserContextHolder.getCurrentUser(); |
|
|
|
UserAuth user = UserContextHolder.getCurrentUser(); |
|
|
|
photo.setCreateUsername(user.getUserName()); |
|
|
|
photo.setCreateUsername(user.getUserName()); |
|
|
|
return Result.success(photoService.save(photo)); |
|
|
|
// 创建缩略图
|
|
|
|
|
|
|
|
photo.setThumbnailBase64(ImgUtils.createSquareThumbnailBase64(is, 100)); |
|
|
|
|
|
|
|
photoService.save(photo); |
|
|
|
|
|
|
|
return Result.success(photo); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|