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")
String generateType;
/** 暂时没有用上 */
@ApiModelProperty("图片是update还是从library中选择")
String designType;

View File

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