Commit 513ded4f61ad24a708b02cde204ae925f99cb4b4

Authored by cherishsince
1 parent 2b3593df

【增加】增加 MidjourneyNotifyReqVO.Button 类型转换器

yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/dal/dataobject/image/AiImageDO.java
1 package cn.iocoder.yudao.module.ai.dal.dataobject.image; 1 package cn.iocoder.yudao.module.ai.dal.dataobject.image;
2 2
  3 +import cn.iocoder.yudao.framework.common.util.json.JsonUtils;
3 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; 4 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
4 import cn.iocoder.yudao.module.ai.client.vo.MidjourneyNotifyReqVO; 5 import cn.iocoder.yudao.module.ai.client.vo.MidjourneyNotifyReqVO;
5 import cn.iocoder.yudao.module.ai.dal.dataobject.model.AiChatModelDO; 6 import cn.iocoder.yudao.module.ai.dal.dataobject.model.AiChatModelDO;
@@ -9,6 +10,7 @@ import com.baomidou.mybatisplus.annotation.IdType; @@ -9,6 +10,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
9 import com.baomidou.mybatisplus.annotation.TableField; 10 import com.baomidou.mybatisplus.annotation.TableField;
10 import com.baomidou.mybatisplus.annotation.TableId; 11 import com.baomidou.mybatisplus.annotation.TableId;
11 import com.baomidou.mybatisplus.annotation.TableName; 12 import com.baomidou.mybatisplus.annotation.TableName;
  13 +import com.baomidou.mybatisplus.extension.handlers.AbstractJsonTypeHandler;
12 import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; 14 import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
13 import lombok.Data; 15 import lombok.Data;
14 import org.springframework.ai.openai.OpenAiImageOptions; 16 import org.springframework.ai.openai.OpenAiImageOptions;
@@ -108,7 +110,7 @@ public class AiImageDO extends BaseDO { @@ -108,7 +110,7 @@ public class AiImageDO extends BaseDO {
108 /** 110 /**
109 * mj buttons 按钮 111 * mj buttons 按钮
110 */ 112 */
111 - @TableField(typeHandler = JacksonTypeHandler.class) 113 + @TableField(typeHandler = ButtonTypeHandler.class)
112 private List<MidjourneyNotifyReqVO.Button> buttons; 114 private List<MidjourneyNotifyReqVO.Button> buttons;
113 115
114 /** 116 /**
@@ -121,5 +123,18 @@ public class AiImageDO extends BaseDO { @@ -121,5 +123,18 @@ public class AiImageDO extends BaseDO {
121 */ 123 */
122 private String errorMessage; 124 private String errorMessage;
123 125
  126 + public static class ButtonTypeHandler extends AbstractJsonTypeHandler<Object> {
  127 +
  128 + @Override
  129 + protected Object parse(String json) {
  130 + return JsonUtils.parseArray(json, MidjourneyNotifyReqVO.Button.class);
  131 + }
  132 +
  133 + @Override
  134 + protected String toJson(Object obj) {
  135 + return JsonUtils.toJsonString(obj);
  136 + }
  137 + }
  138 +
124 } 139 }
125 140