Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
@@ -42,6 +42,11 @@ public class GenerateDetail {
|
|||||||
*/
|
*/
|
||||||
private Long libraryId;
|
private Long libraryId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 图片的md5
|
||||||
|
*/
|
||||||
|
private String md5;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建时间
|
* 创建时间
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -30,6 +30,9 @@ public class GenerateThroughImageTextDTO {
|
|||||||
@ApiModelProperty("Outwear Dress Blouse Skirt Trousers")
|
@ApiModelProperty("Outwear Dress Blouse Skirt Trousers")
|
||||||
String level2Type;
|
String level2Type;
|
||||||
|
|
||||||
|
@ApiModelProperty("性别")
|
||||||
|
String gender;
|
||||||
|
|
||||||
@ApiModelProperty("选择的模型名")
|
@ApiModelProperty("选择的模型名")
|
||||||
String version;
|
String version;
|
||||||
|
|
||||||
|
|||||||
@@ -2013,7 +2013,7 @@ public class PythonService {
|
|||||||
throw new BusinessException("system error!");
|
throw new BusinessException("system error!");
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<String> generateSketchOrPrint(Long userId, String url, String category, String text, int mode, String modelName) {
|
public List<String> generateSketchOrPrint(Long userId, String url, String category, String text, int mode, String modelName, String gender) {
|
||||||
//限流校验
|
//限流校验
|
||||||
AccessLimitUtils.validate("generateSketchOrPrint", 5);
|
AccessLimitUtils.validate("generateSketchOrPrint", 5);
|
||||||
OkHttpClient client = new OkHttpClient().newBuilder()
|
OkHttpClient client = new OkHttpClient().newBuilder()
|
||||||
@@ -2030,6 +2030,7 @@ public class PythonService {
|
|||||||
content.put("mode", mode);
|
content.put("mode", mode);
|
||||||
content.put("str", text);
|
content.put("str", text);
|
||||||
content.put("version", modelName);
|
content.put("version", modelName);
|
||||||
|
content.put("gender", gender);
|
||||||
RequestBody body = RequestBody.create(mediaType, JSON.toJSONString(content, SerializerFeature.WriteMapNullValue));
|
RequestBody body = RequestBody.create(mediaType, JSON.toJSONString(content, SerializerFeature.WriteMapNullValue));
|
||||||
Request request = new Request.Builder()
|
Request request = new Request.Builder()
|
||||||
// .url(accessPythonIp + ":2828/aida/diffusion")
|
// .url(accessPythonIp + ":2828/aida/diffusion")
|
||||||
|
|||||||
@@ -861,6 +861,7 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public DesignItemDetailVO detail(Long designPythonOutfitId, Long designItemId) {
|
public DesignItemDetailVO detail(Long designPythonOutfitId, Long designItemId) {
|
||||||
|
// 1、校验
|
||||||
DesignItem designItem = designItemService.getById(designItemId);
|
DesignItem designItem = designItemService.getById(designItemId);
|
||||||
if (Objects.isNull(designItem)) {
|
if (Objects.isNull(designItem)) {
|
||||||
throw new BusinessException("designItem.not.found");
|
throw new BusinessException("designItem.not.found");
|
||||||
@@ -884,6 +885,7 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
|||||||
flag = Boolean.TRUE;
|
flag = Boolean.TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 2、组装返回参数
|
||||||
DesignItemDetailVO response = new DesignItemDetailVO();
|
DesignItemDetailVO response = new DesignItemDetailVO();
|
||||||
response.setSingleOverall(design.getSingleOverall());
|
response.setSingleOverall(design.getSingleOverall());
|
||||||
response.setSwitchCategory(design.getSwitchCategory());
|
response.setSwitchCategory(design.getSwitchCategory());
|
||||||
@@ -1023,7 +1025,7 @@ public class DesignServiceImpl extends ServiceImpl<DesignMapper, Design> impleme
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
private DesignItemDetailVO editResponseColor(List<DesignItemDetail> designItemDetails, DesignItemDetailVO designItemDetailVO) {
|
private DesignItemDetailVO editResponseColor(List<DesignItemDetail> designItemDetails, DesignItemDetailVO designItemDetailVO) {
|
||||||
// 使用designItemDetailId做映射
|
// 使用designItemDetailId rgb(String)做映射
|
||||||
HashMap<Long, String> designItemDetailIdColor = new HashMap<>();
|
HashMap<Long, String> designItemDetailIdColor = new HashMap<>();
|
||||||
designItemDetails.forEach(designItemDetail -> {
|
designItemDetails.forEach(designItemDetail -> {
|
||||||
if (!StringUtil.isNullOrEmpty(designItemDetail.getColor())) {
|
if (!StringUtil.isNullOrEmpty(designItemDetail.getColor())) {
|
||||||
|
|||||||
@@ -23,13 +23,14 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import io.minio.errors.MinioException;
|
import io.minio.errors.MinioException;
|
||||||
import io.netty.util.internal.StringUtil;
|
import io.netty.util.internal.StringUtil;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
import static com.ai.da.common.enums.CollectionLevel1TypeEnum.*;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> implements GenerateService {
|
public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> implements GenerateService {
|
||||||
|
|
||||||
@@ -73,10 +74,13 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
|
|||||||
// 2、判断必须入参是否为非空
|
// 2、判断必须入参是否为非空
|
||||||
Generate generate = new Generate();
|
Generate generate = new Generate();
|
||||||
generate.setAccountId(accountId);
|
generate.setAccountId(accountId);
|
||||||
generate.setGenerateType(generateThroughImageTextDTO.getGenerateType());
|
generate.setLevel1Type(generateThroughImageTextDTO.getLevel1Type());
|
||||||
|
generate.setGenerateType(generate.getLevel1Type().equals(SKETCH_BOARD.getRealName()) ?
|
||||||
|
generateThroughImageTextDTO.getGender() + "_" + generateThroughImageTextDTO.getGenerateType() :
|
||||||
|
generateThroughImageTextDTO.getGenerateType());
|
||||||
generate.setModelName(StringUtil.isNullOrEmpty(generateThroughImageTextDTO.getVersion()) ? ModelNameEnum.MODEL_0.getCode() : generateThroughImageTextDTO.getVersion());
|
generate.setModelName(StringUtil.isNullOrEmpty(generateThroughImageTextDTO.getVersion()) ? ModelNameEnum.MODEL_0.getCode() : generateThroughImageTextDTO.getVersion());
|
||||||
generate.setCreateDate(DateUtil.getByTimeZone(generateThroughImageTextDTO.getTimeZone()));
|
generate.setCreateDate(DateUtil.getByTimeZone(generateThroughImageTextDTO.getTimeZone()));
|
||||||
generate.setLevel1Type(generateThroughImageTextDTO.getLevel1Type());
|
|
||||||
|
|
||||||
String text = generateThroughImageTextDTO.getText();
|
String text = generateThroughImageTextDTO.getText();
|
||||||
Long elementId = generateThroughImageTextDTO.getCollectionElementId();
|
Long elementId = generateThroughImageTextDTO.getCollectionElementId();
|
||||||
@@ -91,10 +95,10 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
|
|||||||
|
|
||||||
// 4、向模型发起请求
|
// 4、向模型发起请求
|
||||||
int mode = GenerateModeEnum.TEXT.getValue().equals(generate.getGenerateType()) ? GenerateModeEnum.TEXT.getCode() : GenerateModeEnum.TEXT_IMAGE.getCode();
|
int mode = GenerateModeEnum.TEXT.getValue().equals(generate.getGenerateType()) ? GenerateModeEnum.TEXT.getCode() : GenerateModeEnum.TEXT_IMAGE.getCode();
|
||||||
String category = generateThroughImageTextDTO.getLevel1Type().equals(CollectionLevel1TypeEnum.SKETCH_BOARD.getRealName()) ? "sketch" :
|
String category = generateThroughImageTextDTO.getLevel1Type().equals(SKETCH_BOARD.getRealName()) ? "sketch" :
|
||||||
generateThroughImageTextDTO.getLevel1Type().equals(CollectionLevel1TypeEnum.PRINT_BOARD.getRealName()) ? "print" : "moodboard";
|
generateThroughImageTextDTO.getLevel1Type().equals(PRINT_BOARD.getRealName()) ? "print" : "moodboard";
|
||||||
List<String> generatedSketchUrl = pythonService.generateSketchOrPrint(accountId, Objects.isNull(elementId) ? null : collectionElement.getUrl(),
|
List<String> generatedSketchUrl = pythonService.generateSketchOrPrint(accountId, Objects.isNull(elementId) ? null : collectionElement.getUrl(),
|
||||||
category, text, mode, generateThroughImageTextDTO.getVersion());
|
category, text, mode, generateThroughImageTextDTO.getVersion(), generateThroughImageTextDTO.getGender());
|
||||||
|
|
||||||
// List<String> generatedSketchUrl = Arrays.asList("testUrl1","testUrl2","testUrl3","testUrl4");
|
// List<String> generatedSketchUrl = Arrays.asList("testUrl1","testUrl2","testUrl3","testUrl4");
|
||||||
|
|
||||||
@@ -106,6 +110,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
|
|||||||
generateDetail.setUrl(item);
|
generateDetail.setUrl(item);
|
||||||
generateDetail.setGenerateId(generate.getId());
|
generateDetail.setGenerateId(generate.getId());
|
||||||
generateDetail.setCreateDate(DateUtil.getByTimeZone(generateThroughImageTextDTO.getTimeZone()));
|
generateDetail.setCreateDate(DateUtil.getByTimeZone(generateThroughImageTextDTO.getTimeZone()));
|
||||||
|
generateDetail.setMd5(MD5Utils.encryptFile(minioUtil.getPresignedUrl(item, 24 * 60), Boolean.FALSE));
|
||||||
generateDetailMapper.insert(generateDetail);
|
generateDetailMapper.insert(generateDetail);
|
||||||
|
|
||||||
GenerateCollectionItemVO generateCollectionItemVO = new GenerateCollectionItemVO();
|
GenerateCollectionItemVO generateCollectionItemVO = new GenerateCollectionItemVO();
|
||||||
@@ -142,7 +147,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
|
|||||||
public GenerateLikeVO generateLike(GenerateLikeDTO generateLikeDTO) {
|
public GenerateLikeVO generateLike(GenerateLikeDTO generateLikeDTO) {
|
||||||
// 1、判断参数是否正确
|
// 1、判断参数是否正确
|
||||||
// 1.1 必须参数是否非空
|
// 1.1 必须参数是否非空
|
||||||
if (CollectionLevel1TypeEnum.SKETCH_BOARD.getRealName().equals(generateLikeDTO.getLevel1Type())) {
|
if (SKETCH_BOARD.getRealName().equals(generateLikeDTO.getLevel1Type())) {
|
||||||
Assert.isTrue(!StringUtil.isNullOrEmpty(generateLikeDTO.getLevel2Type()), "level2Type cannot be empty");
|
Assert.isTrue(!StringUtil.isNullOrEmpty(generateLikeDTO.getLevel2Type()), "level2Type cannot be empty");
|
||||||
}
|
}
|
||||||
// 1.2 判断参数是否真实有效
|
// 1.2 判断参数是否真实有效
|
||||||
|
|||||||
Reference in New Issue
Block a user