BUGFIX: generate mode字段传递不准确导致生成结果与图片没有关联

This commit is contained in:
2025-05-09 17:03:42 +08:00
parent db55c5597f
commit c19e9094d1

View File

@@ -111,8 +111,9 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
public void generateThroughImageText(GenerateThroughImageTextDTO generateThroughImageTextDTO) { public void generateThroughImageText(GenerateThroughImageTextDTO generateThroughImageTextDTO) {
// 1、获取用户信息 // 1、获取用户信息
Long accountId = generateThroughImageTextDTO.getUserId(); Long accountId = generateThroughImageTextDTO.getUserId();
String generateType = generateThroughImageTextDTO.getGenerateType();
GenerateModeEnum modeEnum = getMode(generateThroughImageTextDTO);
String generateType = modeEnum.getValue();
// 2、判断必须入参是否为非空(在prepare阶段已校验) // 2、判断必须入参是否为非空(在prepare阶段已校验)
Generate generate = new Generate(); Generate generate = new Generate();
generate.setAccountId(accountId); generate.setAccountId(accountId);
@@ -141,9 +142,7 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
CollectionElement collectionElement = collectionElementService.editLevel2Type(elementId, generateThroughImageTextDTO.getLevel2Type(), generateThroughImageTextDTO.getDesignType()); CollectionElement collectionElement = collectionElementService.editLevel2Type(elementId, generateThroughImageTextDTO.getLevel2Type(), generateThroughImageTextDTO.getDesignType());
// 3、向模型发起请求 // 3、向模型发起请求
String mode = GenerateModeEnum.TEXT.getValue().equals(generateType) ? String mode = modeEnum.getType();
GenerateModeEnum.TEXT.getType() :
GenerateModeEnum.TEXT_IMAGE.getType();
String category = generateThroughImageTextDTO.getLevel1Type().equals(SKETCH_BOARD.getRealName()) ? "sketch" : String category = generateThroughImageTextDTO.getLevel1Type().equals(SKETCH_BOARD.getRealName()) ? "sketch" :
generateThroughImageTextDTO.getLevel1Type().equals(PRINT_BOARD.getRealName()) ? "print" : "moodboard"; generateThroughImageTextDTO.getLevel1Type().equals(PRINT_BOARD.getRealName()) ? "print" : "moodboard";
String path = CommonConstant.GENERATE_PATH; String path = CommonConstant.GENERATE_PATH;
@@ -188,7 +187,6 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
jsonString = JSON.toJSONString(generateToPythonDTO, SerializerFeature.WriteMapNullValue); jsonString = JSON.toJSONString(generateToPythonDTO, SerializerFeature.WriteMapNullValue);
} }
Boolean requestResult = pythonService.generateSketchOrPrint(jsonString, port, path); Boolean requestResult = pythonService.generateSketchOrPrint(jsonString, port, path);
// 4、将请求信息落库,将本次generate的请求信息添加到t_generate表中 // 4、将请求信息落库,将本次generate的请求信息添加到t_generate表中
@@ -207,6 +205,21 @@ public class GenerateServiceImpl extends ServiceImpl<GenerateMapper, Generate> i
} }
public GenerateModeEnum getMode(GenerateThroughImageTextDTO generateThroughImageTextDTO){
if (!StringUtil.isNullOrEmpty(generateThroughImageTextDTO.getText())){
if (Objects.nonNull(generateThroughImageTextDTO.getCollectionElementId())){
return GenerateModeEnum.TEXT_IMAGE;
}else {
return GenerateModeEnum.TEXT;
}
}else {
if (Objects.nonNull(generateThroughImageTextDTO.getCollectionElementId())){
return GenerateModeEnum.IMAGE;
}
}
return GenerateModeEnum.TEXT;
}
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void processGenerateResult(String taskId, String url, String category) { public void processGenerateResult(String taskId, String url, String category) {