Merge remote-tracking branch 'origin/dev/dev' into dev/dev
This commit is contained in:
@@ -2,6 +2,7 @@ package com.ai.da.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.ai.da.common.config.exception.BusinessException;
|
||||
import com.ai.da.common.constant.CommonConstant;
|
||||
import com.ai.da.common.enums.SingleOverallEnum;
|
||||
import com.ai.da.common.utils.CopyUtil;
|
||||
import com.ai.da.common.utils.DateUtil;
|
||||
@@ -23,7 +24,6 @@ import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import io.netty.util.internal.StringUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -58,31 +58,20 @@ public class LibraryModelPointServiceImpl extends ServiceImpl<LibraryModelPointM
|
||||
|
||||
@Override
|
||||
public LibraryModelPointVO saveOrEditTemplatePoint(LibraryModelPointDTO libraryModelPointDTO) {
|
||||
// Library library = libraryService.getById(libraryModelPointDTO.getLibraryId());
|
||||
// Assert.notNull(library,"library does not exist!");
|
||||
LibraryModelPointVO libraryModelPointVO = CopyUtil.copyObject(libraryModelPointDTO, LibraryModelPointVO.class);
|
||||
|
||||
// 从url中截取出的模特minio地址
|
||||
String targetPath = null;
|
||||
// 标志是否有更改过模特比例
|
||||
boolean flag = false;
|
||||
// 只有修改了模特后,才传modelPath字段
|
||||
if (!StringUtil.isNullOrEmpty(libraryModelPointDTO.getModelPath())){
|
||||
flag = true;
|
||||
String url = libraryModelPointDTO.getModelPath();
|
||||
// 找到路径的起始位置(从"://"之后查找第一个"/")
|
||||
int pathStartIndex = url.indexOf("/", url.indexOf("://") + 3);
|
||||
// 找到查询参数的起始位置("?" 的位置)
|
||||
int queryStartIndex = url.indexOf("?");
|
||||
// 截取目标部分
|
||||
targetPath = url.substring(pathStartIndex + 1, queryStartIndex);
|
||||
}
|
||||
// 不管是保存还是另存为,都需要传模特的libraryId
|
||||
Library libModel = libraryService.getById(libraryModelPointDTO.getLibraryId());
|
||||
if (Objects.isNull(libModel)){
|
||||
throw new BusinessException("model.not.found");
|
||||
}
|
||||
if (libraryModelPointDTO.getIsCovered()){
|
||||
|
||||
// 当前模特路径
|
||||
String url = libraryModelPointDTO.getModelPath();
|
||||
// 标志是否有更改过模特比例(即更换模特图)
|
||||
boolean flag = url.equals(libModel.getUrl());
|
||||
|
||||
if (libraryModelPointDTO.getIsCovered() && Objects.nonNull(libraryModelPointDTO.getTemplateId())){
|
||||
// 覆盖保存,即更新原有数据(点位数据和模特图片)
|
||||
LibraryModelPoint modelPoint = getById(libraryModelPointDTO.getTemplateId());
|
||||
if (Objects.isNull(modelPoint)) {
|
||||
@@ -94,12 +83,13 @@ public class LibraryModelPointServiceImpl extends ServiceImpl<LibraryModelPointM
|
||||
modelPoint.setId(libraryModelPointDTO.getTemplateId());
|
||||
updateById(modelPoint);
|
||||
libraryModelPointVO.setTemplateId(modelPoint.getId());
|
||||
libraryModelPointVO.setRelationId(libraryModelPointDTO.getLibraryId());
|
||||
|
||||
// 更新模特图片
|
||||
if (flag){
|
||||
libModel.setUrl(targetPath);
|
||||
libModel.setMd5(MD5Utils.encryptFile(targetPath, false));
|
||||
List<Integer> imagesWidthAndHeight = minioUtil.getImagesWidthAndHeight(targetPath);
|
||||
libModel.setUrl(url);
|
||||
libModel.setMd5(MD5Utils.encryptFile(minioUtil.getPreSignedUrl(url, CommonConstant.MINIO_IMAGE_EXPIRE_TIME), false));
|
||||
List<Integer> imagesWidthAndHeight = minioUtil.getImagesWidthAndHeight(url);
|
||||
libModel.setWidth(imagesWidthAndHeight.get(0));
|
||||
libModel.setHigh(imagesWidthAndHeight.get(1));
|
||||
libModel.setUpdateDate(DateUtil.getByTimeZone(libraryModelPointDTO.getTimeZone()));
|
||||
@@ -108,28 +98,28 @@ public class LibraryModelPointServiceImpl extends ServiceImpl<LibraryModelPointM
|
||||
}else {
|
||||
// 不覆盖,即另存为
|
||||
// 新增模特library信息
|
||||
if (flag){
|
||||
Library saveAsModel = new Library();
|
||||
saveAsModel.setAccountId(libModel.getAccountId());
|
||||
saveAsModel.setLevel1Type(libModel.getLevel1Type());
|
||||
saveAsModel.setLevel2Type(libModel.getLevel2Type());
|
||||
saveAsModel.setName(DateUtil.dateToStr(new Date(), DateUtil.YYYY_MM_DD));
|
||||
saveAsModel.setUrl(targetPath);
|
||||
saveAsModel.setMd5(MD5Utils.encryptFile(targetPath, false));
|
||||
List<Integer> imagesWidthAndHeight = minioUtil.getImagesWidthAndHeight(targetPath);
|
||||
saveAsModel.setWidth(imagesWidthAndHeight.get(0));
|
||||
saveAsModel.setHigh(imagesWidthAndHeight.get(1));
|
||||
saveAsModel.setCreateDate(DateUtil.getByTimeZone(libraryModelPointDTO.getTimeZone()));
|
||||
libraryService.save(saveAsModel);
|
||||
// 更新新的模特在library中的id,用于后面新建模特点位信息用
|
||||
libraryModelPointDTO.setLibraryId(saveAsModel.getId());
|
||||
}
|
||||
Library saveAsModel = new Library();
|
||||
saveAsModel.setAccountId(libModel.getAccountId());
|
||||
saveAsModel.setLevel1Type(libModel.getLevel1Type());
|
||||
saveAsModel.setLevel2Type(libModel.getLevel2Type());
|
||||
saveAsModel.setName(DateUtil.dateToStr(new Date(), DateUtil.YYYY_MM_DD));
|
||||
saveAsModel.setUrl(url);
|
||||
saveAsModel.setMd5(MD5Utils.encryptFile(minioUtil.getPreSignedUrl(url, CommonConstant.MINIO_IMAGE_EXPIRE_TIME), false));
|
||||
List<Integer> imagesWidthAndHeight = minioUtil.getImagesWidthAndHeight(url);
|
||||
saveAsModel.setWidth(imagesWidthAndHeight.get(0));
|
||||
saveAsModel.setHigh(imagesWidthAndHeight.get(1));
|
||||
saveAsModel.setCreateDate(DateUtil.getByTimeZone(libraryModelPointDTO.getTimeZone()));
|
||||
libraryService.save(saveAsModel);
|
||||
// 更新新的模特在library中的id,用于后面新建模特点位信息用
|
||||
libraryModelPointDTO.setLibraryId(saveAsModel.getId());
|
||||
|
||||
// 新增模特点位信息
|
||||
LibraryModelPoint libraryModelPoint = resolvePoint(libraryModelPointDTO);
|
||||
libraryModelPoint.setModelType("Library");
|
||||
libraryModelPoint.setCreateDate(DateUtil.getByTimeZone(libraryModelPointDTO.getTimeZone()));
|
||||
save(libraryModelPoint);
|
||||
libraryModelPointVO.setTemplateId(libraryModelPoint.getId());
|
||||
libraryModelPointVO.setRelationId(libraryModelPoint.getRelationId());
|
||||
}
|
||||
//编辑
|
||||
/*if (!StringUtils.isEmpty(libraryModelPointDTO.getModelSex())) {
|
||||
|
||||
@@ -24,7 +24,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.google.common.base.Function;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import okhttp3.*;
|
||||
import org.apache.commons.fileupload.FileItem;
|
||||
@@ -51,7 +50,6 @@ import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@@ -850,16 +848,29 @@ public class LibraryServiceImpl extends ServiceImpl<LibraryMapper, Library> impl
|
||||
if (Objects.isNull(sysFile)) {
|
||||
throw new BusinessException("model.not.found", ResultEnum.PROMPT.getCode());
|
||||
}
|
||||
SysFileExtra sysFileExtra = sysFileExtraMapper.selectOne(new QueryWrapper<SysFileExtra>().eq("sys_id", sysFile.getId()));
|
||||
|
||||
// 添加模特信息到library
|
||||
Library library = CopyUtil.copyObject(sysFile, Library.class);
|
||||
library.setId(null);
|
||||
library.setAccountId(accountId);
|
||||
library.setLevel3Type(sysFileExtra.getAgeGroup());
|
||||
library.setName(DateUtil.dateToStr(new Date(), DateUtil.YYYY_MM_DD));
|
||||
List<Integer> imagesWidthAndHeight = minioUtil.getImagesWidthAndHeight(sysFile.getUrl());
|
||||
library.setWidth(imagesWidthAndHeight.get(0));
|
||||
library.setHigh(imagesWidthAndHeight.get(1));
|
||||
library.setCreateDate(new Date());
|
||||
library.setUpdateDate(null);
|
||||
libraryMapper.insert(library);
|
||||
|
||||
// 添加点位信息到library
|
||||
LibraryModelPoint sysModelPoint = libraryModelPointService.getByRelationId(sysModelId, "System");
|
||||
sysModelPoint.setId(null);
|
||||
sysModelPoint.setModelType("Library");
|
||||
sysModelPoint.setRelationId(library.getId());
|
||||
sysModelPoint.setCreateDate(new Date());
|
||||
libraryModelPointService.save(sysModelPoint);
|
||||
|
||||
return library.getId();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user