| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- package com.ydtech.modules.order.controller;
- import com.ydtech.core.page.BaseController;
- import com.ydtech.core.page.HttpResult;
- import com.ydtech.exception.SystemException;
- import com.ydtech.modules.esm.model.InsTaskImage;
- import com.ydtech.modules.esm.service.InsTaskImageService;
- import com.ydtech.modules.order.convert.InsTaskImageConvert;
- import com.ydtech.modules.order.entity.po.InsUploadFiles;
- import com.ydtech.modules.order.entity.vo.InsTaskImageVo;
- import com.ydtech.modules.order.entity.vo.InsTaskImagesVo;
- import com.ydtech.modules.order.service.InsTaskImagesService;
- import com.ydtech.modules.order.service.InsUploadFilesService;
- import com.ydtech.utils.ImageCompressionUtils;
- import com.ydtech.utils.StringUtils;
- import com.ydtech.utils.idgen.IdGenerate;
- import com.ydtech.validation.annotation.CheckObjectNotNull;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiOperation;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.*;
- import org.springframework.web.multipart.MultipartFile;
- import javax.servlet.http.HttpServletRequest;
- import javax.validation.constraints.NotBlank;
- import java.io.IOException;
- import java.util.Base64;
- import java.util.Date;
- import java.util.List;
- @Api(tags = "影像")
- @RequestMapping("/ins/taskImage")
- @RestController
- public class OrderTaskImageController extends BaseController {
- private final InsTaskImageService insTaskImageService;
- private final InsUploadFilesService insUploadFilesService;
- @Autowired
- private InsTaskImagesService insTaskImagesService;
- public OrderTaskImageController(InsTaskImageService insTaskImageService, InsUploadFilesService insUploadFilesService) {
- this.insTaskImageService = insTaskImageService;
- this.insUploadFilesService = insUploadFilesService;
- }
- @PostMapping(value = "/uploadImage")
- @ApiOperation(value = "上传影像")
- public HttpResult uploadImage(@RequestBody InsTaskImageVo insTaskImageVo) {
- InsTaskImage record = InsTaskImageConvert.INSTANCE.toInsTaskImage(insTaskImageVo);
- // 将数据存入数据库
- if (record.getTaskid() == null || record.getTaskid().equalsIgnoreCase("")) {
- throw new SystemException("任务号taskid不能为空");
- }
- if (record.getImgtype() == null || record.getImgtype().equalsIgnoreCase("")) {
- throw new SystemException("图片类型imgtype不能为空");
- }
- if (record.getImgList() == null || record.getImgList().isEmpty()) {
- throw new SystemException("图片列表imgList不能为空");
- }
- this.insTaskImageService.delete(record.getTaskid(), record.getImgtype());
- for (int i = 1; i <= record.getImgList().size(); i++) {
- String image = record.getImgList().get(i - 1);
- // 空文件不上传
- if (StringUtils.isNullOrEmpty(image)) {
- continue;
- }
- record.setId(IdGenerate.nextId());
- record.setCreator(getUserName());
- record.setCreatetime(new Date());
- record.setImage(image);
- this.insTaskImageService.insert(record);
- }
- return HttpResult.ok();
- }
- @PostMapping(value = "/uploadImages")
- @ApiOperation(value = "新上传影像")
- public HttpResult uploadImages(@RequestBody InsTaskImagesVo insTaskImagesVo, HttpServletRequest request) {
- return insTaskImagesService.uploadImages(insTaskImagesVo, getJwtUserName(request));
- }
- @GetMapping(value = "/findById")
- @ApiOperation(value = "根据任务号查询")
- public HttpResult findById(@RequestParam String taskid, String imgtype) {
- if (taskid == null || taskid.equalsIgnoreCase("")) {
- return HttpResult.ok("任务号taskid不能为空");
- }
- if (imgtype == null || imgtype.equalsIgnoreCase("")) {
- return HttpResult.ok("图片类型imgtype不能为空");
- }
- List<InsTaskImage> selectList = this.insTaskImageService.selectList(" where taskid=? and imgtype=?", new Object[]{taskid, imgtype});
- return HttpResult.ok(selectList);
- }
- @GetMapping(value = "/findByQuoteNo")
- @ApiOperation(value = "根据报价号查询")
- public HttpResult findByQuoteNo(@RequestParam @NotBlank(message = "报价号ID不能为空") String quoteNo) {
- return this.insTaskImagesService.findByQuoteNo(quoteNo);
- }
- @PostMapping("/imageCompression")
- @ApiOperation(value = "图片压缩")
- public HttpResult imageCompression(@RequestParam(value = "file") MultipartFile file) {
- try {
- // 转换后的图片
- byte[] bytes_bytes = ImageCompressionUtils.compressPicForScale(file.getBytes(), 100);
- String s = Base64.getEncoder().encodeToString(bytes_bytes);
- return HttpResult.ok("转换成功", s);
- } catch (Exception e) {
- e.printStackTrace();
- throw new SystemException("图片压缩失败");
- }
- }
- @PostMapping("/uploadFile")
- @ApiOperation(value = "文件上传")
- public HttpResult uploadFile(@CheckObjectNotNull(message = "上传文件不能为空") MultipartFile multipartFile, String type, HttpServletRequest request) throws IOException {
- InsUploadFiles insUploadFiles = insUploadFilesService.uploadFile(multipartFile, getJwtUserName(request), type);
- return HttpResult.ok(insUploadFiles);
- }
- }
|