From 6bfc02175fdd61dea7ff26a23df4e80ba7d68210 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 11 Aug 2025 13:59:08 +0800
Subject: [PATCH] feat(ai): 添加 AI 产品角色的 JSON 格式字段

---
 src/main/java/cc/mrbird/febs/ai/service/impl/AiProductRoleServiceImpl.java |    2 ++
 src/main/java/cc/mrbird/febs/ai/entity/AiProductRole.java                  |    5 +++++
 src/main/resources/templates/febs/views/modules/ai/productRole/info.html   |   11 +++++++++++
 src/main/resources/templates/febs/views/modules/ai/productRole/add.html    |   10 ++++++++++
 4 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/ai/entity/AiProductRole.java b/src/main/java/cc/mrbird/febs/ai/entity/AiProductRole.java
index 5b477b3..692437d 100644
--- a/src/main/java/cc/mrbird/febs/ai/entity/AiProductRole.java
+++ b/src/main/java/cc/mrbird/febs/ai/entity/AiProductRole.java
@@ -34,6 +34,11 @@
     private String promptTemplate;
 
     /**
+     * 返回数据格式要求
+     */
+    private String jsonTemplate;
+
+    /**
      * 小图标
      */
     private String iconImg;
diff --git a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductRoleServiceImpl.java b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductRoleServiceImpl.java
index 79ae1f2..b86ad8a 100644
--- a/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductRoleServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/ai/service/impl/AiProductRoleServiceImpl.java
@@ -56,6 +56,7 @@
         entity.setName(dto.getName());
         entity.setDescription(dto.getDescription());
         entity.setPromptTemplate(dto.getPromptTemplate());
+        entity.setJsonTemplate(dto.getJsonTemplate());
         entity.setIconImg(dto.getIconImg());
         entity.setModelId(dto.getModelId());
         entity.setLinkId(dto.getLinkId());
@@ -75,6 +76,7 @@
                             .set(AiProductRole::getName, dto.getName())
                             .set(AiProductRole::getDescription, dto.getDescription())
                             .set(AiProductRole::getPromptTemplate, dto.getPromptTemplate())
+                            .set(AiProductRole::getJsonTemplate, dto.getJsonTemplate())
                             .set(AiProductRole::getIconImg, dto.getIconImg())
                             .set(AiProductRole::getModelId, dto.getModelId())
                             .set(AiProductRole::getLinkId, dto.getLinkId())
diff --git a/src/main/resources/templates/febs/views/modules/ai/productRole/add.html b/src/main/resources/templates/febs/views/modules/ai/productRole/add.html
index ea42dac..623e6b8 100644
--- a/src/main/resources/templates/febs/views/modules/ai/productRole/add.html
+++ b/src/main/resources/templates/febs/views/modules/ai/productRole/add.html
@@ -42,6 +42,16 @@
                                         </div>
                                     </div>
                                 </div>
+
+                                <div class="layui-row layui-col-space10 layui-form-item">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label febs-form-item-require">JSON格式:</label>
+                                        <div class="layui-input-block">
+                                            <input type="text" name="jsonTemplate" lay-verify="required"
+                                                   placeholder="" autocomplete="off" class="layui-input">
+                                        </div>
+                                    </div>
+                                </div>
                                 <div class="layui-row layui-col-space10 layui-form-item">
                                     <div class="layui-col-lg6">
                                         <label class="layui-form-label febs-form-item-require">模型ID:</label>
diff --git a/src/main/resources/templates/febs/views/modules/ai/productRole/info.html b/src/main/resources/templates/febs/views/modules/ai/productRole/info.html
index a5fcb34..806d734 100644
--- a/src/main/resources/templates/febs/views/modules/ai/productRole/info.html
+++ b/src/main/resources/templates/febs/views/modules/ai/productRole/info.html
@@ -45,6 +45,16 @@
                                         </div>
                                     </div>
                                 </div>
+
+                                <div class="layui-row layui-col-space10 layui-form-item">
+                                    <div class="layui-col-lg6">
+                                        <label class="layui-form-label febs-form-item-require">JSON格式:</label>
+                                        <div class="layui-input-block">
+                                            <input type="text" name="jsonTemplate" lay-verify="required"
+                                                   placeholder="" autocomplete="off" class="layui-input">
+                                        </div>
+                                    </div>
+                                </div>
                                 <div class="layui-row layui-col-space10 layui-form-item">
                                     <div class="layui-col-lg6">
                                         <label class="layui-form-label febs-form-item-require">模型ID:</label>
@@ -176,6 +186,7 @@
                 "id": aiProductRole.id,
                 "name": aiProductRole.name,
                 "promptTemplate": aiProductRole.promptTemplate,
+                "jsonTemplate": aiProductRole.jsonTemplate,
                 "modelId": aiProductRole.modelId,
                 "linkId": aiProductRole.linkId,
             });

--
Gitblit v1.9.1