BUGFIX:generateType

This commit is contained in:
xupei
2023-11-03 13:59:16 +08:00
parent ffcbabf62e
commit 331490c447
2 changed files with 9 additions and 9 deletions

View File

@@ -20,6 +20,7 @@ public class GenerateThroughImageTextDTO {
@ApiModelProperty("text image text-image") @ApiModelProperty("text image text-image")
String generateType; String generateType;
/** 暂时没有用上 */
@ApiModelProperty("图片是update还是从library中选择") @ApiModelProperty("图片是update还是从library中选择")
String designType; String designType;

View File

@@ -68,8 +68,9 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
public GenerateCollectionVO generateThroughImageText(GenerateThroughImageTextDTO generateThroughImageTextDTO) { public GenerateCollectionVO generateThroughImageText(GenerateThroughImageTextDTO generateThroughImageTextDTO) {
// 1、获取用户信息 // 1、获取用户信息
AuthPrincipalVo userHolder = UserContext.getUserHolder(); AuthPrincipalVo userHolder = UserContext.getUserHolder();
String generateType = generateThroughImageTextDTO.getGenerateType();
Long accountId = userHolder.getId(); Long accountId = userHolder.getId();
if (!GenerateModeEnum.getGenerateModeList().contains(generateThroughImageTextDTO.getGenerateType())){ if (!GenerateModeEnum.getGenerateModeList().contains(generateType)){
throw new BusinessException("unknown.generate.type"); throw new BusinessException("unknown.generate.type");
} }
@@ -79,15 +80,15 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
generate.setLevel1Type(generateThroughImageTextDTO.getLevel1Type()); generate.setLevel1Type(generateThroughImageTextDTO.getLevel1Type());
// 当level1type是sketchboard时存数据库需要加上当前性别 // 当level1type是sketchboard时存数据库需要加上当前性别
generate.setGenerateType(generate.getLevel1Type().equals(SKETCH_BOARD.getRealName()) ? generate.setGenerateType(generate.getLevel1Type().equals(SKETCH_BOARD.getRealName()) ?
generateThroughImageTextDTO.getGenerateType() + " (" +generateThroughImageTextDTO.getGender() + ")": generateType + " (" +generateThroughImageTextDTO.getGender() + ")":
generateThroughImageTextDTO.getGenerateType()); generateType);
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()));
String text = generateThroughImageTextDTO.getText(); String text = generateThroughImageTextDTO.getText();
Long elementId = generateThroughImageTextDTO.getCollectionElementId(); Long elementId = generateThroughImageTextDTO.getCollectionElementId();
validateGeneraType(generate, text, elementId); validateGeneraType(generate, text, elementId,generateType);
// 3、将请求信息落库 // 3、将请求信息落库
// 3.1 sketch或print在t_collection_element表中的信息是否需要更新 如 level2Type // 3.1 sketch或print在t_collection_element表中的信息是否需要更新 如 level2Type
@@ -97,7 +98,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
save(generate); save(generate);
// 4、向模型发起请求 // 4、向模型发起请求
int mode = GenerateModeEnum.TEXT.getValue().equals(generateThroughImageTextDTO.getGenerateType()) ? int mode = GenerateModeEnum.TEXT.getValue().equals(generateType) ?
GenerateModeEnum.TEXT.getCode() : GenerateModeEnum.TEXT.getCode() :
GenerateModeEnum.TEXT_IMAGE.getCode(); GenerateModeEnum.TEXT_IMAGE.getCode();
String category = generateThroughImageTextDTO.getLevel1Type().equals(SKETCH_BOARD.getRealName()) ? "sketch" : String category = generateThroughImageTextDTO.getLevel1Type().equals(SKETCH_BOARD.getRealName()) ? "sketch" :
@@ -105,8 +106,6 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
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(), generateThroughImageTextDTO.getGender()); category, text, mode, generateThroughImageTextDTO.getVersion(), generateThroughImageTextDTO.getGender());
// List<String> generatedSketchUrl = Arrays.asList("testUrl1","testUrl2","testUrl3","testUrl4");
// 5、处理模型返回的数据 // 5、处理模型返回的数据
// 5.1 将相应的url保存到数据库 // 5.1 将相应的url保存到数据库
List<GenerateCollectionItemVO> generatedCollectionItems = new ArrayList<>(); List<GenerateCollectionItemVO> generatedCollectionItems = new ArrayList<>();
@@ -137,8 +136,8 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
return new GenerateCollectionVO(generate.getId(), collectionId, generatedCollectionItems); return new GenerateCollectionVO(generate.getId(), collectionId, generatedCollectionItems);
} }
private void validateGeneraType(Generate generate, String text, Long elementId) { private void validateGeneraType(Generate generate, String text, Long elementId,String generateType) {
switch (generate.getGenerateType()) { switch (generateType) {
case "text": case "text":
if (StringUtil.isNullOrEmpty(text)){ if (StringUtil.isNullOrEmpty(text)){
throw new BusinessException("please.input.the.caption"); throw new BusinessException("please.input.the.caption");