Pārlūkot izejas kodu

新增需求反馈菜单

tsurumure 3 nedēļas atpakaļ
vecāks
revīzija
4e6eafbb9f

+ 1 - 0
db/sys_user_role_menu.sql

@@ -47,6 +47,7 @@ INSERT INTO sys_user_role_menu(id, parent_id, menu_name, menu_name_en, type, pat
     (20, -1, '素材管理', 'Material', 1, '/material', '', '{}', 'MessageBox', '20', 13),
     (21, 20, '素材中心', 'Material Center', 1, '/material/materialList', '/src/views/material/materialList.vue', '{}', null, '20.1', 13),
     (22, 20, '素材用户', 'Material User', 1, '/material/materialUserList', '/src/views/material/materialUserList.vue', '{}', null, '20.4', 12),
+    (23, 20, '素材需求反馈', 'Material Feedback', 1, '/material/materialFeedbackList', '/src/views/material/materialFeedbackList.vue', '{}', null, '20.4', 11),
 #     (21, 20, '素材列表', 'Material List', 1, '/material/materialList', '/src/views/material/materialList.vue', '{}', null, '20.1', 13),
 #     (21, 20, '沙雕素材', 'Material Sa Diao', 1, '/material/materialList?lora_id=1', '/src/views/material/materialList.vue', '{}', null, '20.1', 13),
 #     (22, 20, '简笔画素材', 'Material Simple', 1, '/material/materialList?lora_id=2', '/src/views/material/materialList.vue', '{}', null, '20.1', 13),

+ 8 - 0
src/main/java/com/backendsys/modules/material/entity/MaterialFeedback.java

@@ -28,13 +28,21 @@ public class MaterialFeedback {
     private Long feedback_id;
 
     private Long user_id;
+    @TableField(exist = false)
+    private String phone;
 
     @NotNull(message="素材风格ID不能为空", groups = { Create.class, Update.class })
     private Long lora_id;
 
+    @TableField(exist = false)
+    private String lora_name;
+
     @NotNull(message="素材分类ID不能为空", groups = { Create.class, Update.class })
     private Long category_id;
 
+    @TableField(exist = false)
+    private String category_name;
+
     @Size(max = 500, message = "需求说明长度不超过 {max} 个字符", groups = { Create.class, Update.class })
     @NotEmpty(message="需求说明不能为空", groups = { Create.class, Update.class })
     private String content;

+ 23 - 13
src/main/resources/mapper/ai/material/MaterialFeedbackDao.xml

@@ -3,23 +3,29 @@
 <mapper namespace="com.backendsys.modules.material.dao.MaterialFeedbackDao">
 
     <sql id="includeMaterialFeedback">
-        id,
-        id feedback_id,
-        user_id,
-        lora_id,
-        category_id,
-        content,
-        COALESCE(image_url, '') image_url,
-        create_time,
-        update_time
+        amf.id,
+        amf.id feedback_id,
+        amf.user_id,
+        u.phone,
+        amf.lora_id,
+        aml.lora_name,
+        amf.category_id,
+        amc.category_name,
+        amf.content,
+        COALESCE(amf.image_url, '') image_url,
+        amf.create_time,
+        amf.update_time
     </sql>
     <!-- COALESCE(content_type, '') content_type, -->
     <resultMap id="resultMapMaterialFeedback" type="com.backendsys.modules.material.entity.MaterialFeedback">
         <id property="id" column="id" jdbcType="BIGINT" />
         <result property="feedback_id" column="id" javaType="java.lang.Long" />
         <result property="user_id" column="user_id" javaType="java.lang.Long" />
+        <result property="phone" column="phone" />
         <result property="lora_id" column="lora_id" javaType="java.lang.Long" />
+        <result property="lora_name" column="lora_name" />
         <result property="category_id" column="category_id" javaType="java.lang.Long" />
+        <result property="category_name" column="category_name" />
         <result property="content" column="content" />
         <result property="image_url" column="image_url" />
         <result property="create_time" column="create_time"
@@ -31,18 +37,22 @@
     <select id="selectMaterialFeedbackList" resultMap="resultMapMaterialFeedback">
         SELECT
             <include refid="includeMaterialFeedback" />
-        FROM ai_material_feedback
+        FROM ai_material_feedback amf
+        LEFT JOIN ai_material_category amc ON amf.category_id = amc.id
+        LEFT JOIN ai_material_lora aml ON amf.lora_id = aml.id
+        LEFT JOIN sys_user u ON amf.user_id = u.id
         <where>
             <if test="user_id != null and user_id != ''">
-                AND user_id = #{user_id}
+                AND amf.user_id = #{user_id}
             </if>
             <if test="lora_id != null and lora_id != ''">
-                AND lora_id = #{lora_id}
+                AND amf.lora_id = #{lora_id}
             </if>
             <if test="category_id != null and category_id != ''">
-                AND category_id = #{category_id}
+                AND amf.category_id = #{category_id}
             </if>
         </where>
+        ORDER BY amf.create_time DESC
     </select>