107 lines
4.4 KiB
Java
107 lines
4.4 KiB
Java
package com.ai.da.controller;
|
|
|
|
import com.ai.da.common.config.exception.BusinessException;
|
|
import com.ai.da.common.response.Response;
|
|
import com.ai.da.common.utils.MD5Utils;
|
|
import com.ai.da.model.dto.*;
|
|
import com.ai.da.model.vo.*;
|
|
import com.ai.da.service.CollectionElementService;
|
|
import com.ai.da.service.PanToneService;
|
|
import com.ai.da.service.SysFileService;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import io.swagger.annotations.ApiParam;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.util.StringUtils;
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.validation.Valid;
|
|
import java.util.List;
|
|
|
|
|
|
@Api(tags = "collection模块")
|
|
@Slf4j
|
|
@RestController
|
|
@RequestMapping("/api/element")
|
|
public class ElementController {
|
|
|
|
@Resource
|
|
private CollectionElementService collectionElementService;
|
|
@Resource
|
|
private PanToneService panToneService;
|
|
@Resource
|
|
private SysFileService sysFileService;
|
|
|
|
@ApiOperation(value = "初始化系统文件")
|
|
@PostMapping("/initDefaultSysFile")
|
|
public Response<Boolean> initDefaultSysFile(@RequestParam("validate") String validateUse) {
|
|
if (validateUse.equals("da_fl_mm_dad88888")) {
|
|
//防止被调用
|
|
sysFileService.initDefaultSysFile();
|
|
}
|
|
return Response.success();
|
|
}
|
|
|
|
@ApiOperation(value = "element文件上传")
|
|
@PostMapping("/upload")
|
|
public Response<CollectionElementVO> upload(@RequestParam("file") MultipartFile file,
|
|
@ApiParam("一级类型 Moodboard Printboard Sketchboard MarketingSketch Colorboard")
|
|
@RequestParam(value = "level1Type") String level1Type,
|
|
@ApiParam("本地时区,比如 'Asia/Tokyo' 东京时间 , 'Asia/Shanghai' 北京时间 由js本地获取")
|
|
@RequestParam(value = "timeZone") String timeZone) {
|
|
if (null == file || StringUtils.isEmpty(file.getOriginalFilename())) {
|
|
throw new BusinessException("file.cannot.be.empty");
|
|
}
|
|
return Response.success(collectionElementService.upload(
|
|
new CollectionElementUploadDTO(file, level1Type, timeZone, MD5Utils.encryptFile(file))));
|
|
}
|
|
|
|
@ApiOperation(value = "element文件删除")
|
|
@PostMapping("/delete")
|
|
public Response<Boolean> delete(@Valid @RequestBody CollectionDeleteFileDTO deleteFileDTO) {
|
|
collectionElementService.delete(deleteFileDTO.getId());
|
|
return Response.success();
|
|
}
|
|
|
|
@ApiOperation(value = "生成印花")
|
|
@PostMapping("/generatePrint")
|
|
public Response<CollectionGeneratePrintVO> generatePrint(@Valid @RequestBody CollectionGeneratePrintDTO generatePrintDTO) {
|
|
return Response.success(collectionElementService.generatePrint(generatePrintDTO));
|
|
}
|
|
|
|
@ApiOperation(value = "保存印花")
|
|
@PostMapping("/savePrint")
|
|
public Response<Boolean> savePrint(@Valid @RequestBody CollectionSavePrintDTO savePrintDTO) {
|
|
return Response.success(collectionElementService.savePrint(savePrintDTO));
|
|
}
|
|
|
|
@ApiOperation(value = "通过tcx值获取潘通信息")
|
|
@GetMapping("/getRgbByTcx")
|
|
public Response<PantoneVO> getRgbByHsv(@ApiParam("tcx") @RequestParam("tcx") String tcx) {
|
|
return Response.success(panToneService.getByTCX(tcx));
|
|
}
|
|
|
|
@ApiOperation(value = "通过hsv值获取潘通信息")
|
|
@GetMapping("/getRgbByHsv")
|
|
public Response<PantoneVO> getRgbByHsv(@RequestParam("h") Integer h,
|
|
@RequestParam("s") Integer s, @RequestParam("v") Integer v) {
|
|
return Response.success(panToneService.getByHSV(h, s, v));
|
|
}
|
|
|
|
@ApiOperation(value = "通过hsv值数组批量获取潘通信息")
|
|
@PostMapping("/getRgbByHsvBatch")
|
|
public Response<List<PantoneVO>> getRgbByHsvBatch(@RequestBody @Valid List<GetRgbByHsvBatchDTO> rgbByHsvBatch) {
|
|
return Response.success(panToneService.getRgbByHsvBatch(rgbByHsvBatch));
|
|
}
|
|
|
|
@ApiOperation(value = "刷新历史数据")
|
|
@PostMapping("/refreshHistoryData")
|
|
public Response<Boolean> refreshHistoryData() {
|
|
collectionElementService.refreshHistoryData();
|
|
return Response.success();
|
|
}
|
|
|
|
}
|