|
|
@@ -0,0 +1,119 @@
|
|
|
+<?xml version="1.0" encoding="UTF-8" ?>
|
|
|
+<!DOCTYPE mapper
|
|
|
+ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
+ "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
|
+<mapper namespace="shop.alien.mapper.LifeFeedbackMapper">
|
|
|
+
|
|
|
+ <!-- 通用结果映射 -->
|
|
|
+ <resultMap id="BaseResultMap" type="shop.alien.entity.store.LifeFeedback">
|
|
|
+ <id column="id" property="id" />
|
|
|
+ <result column="user_id" property="userId" />
|
|
|
+ <result column="feedback_source" property="feedbackSource" />
|
|
|
+ <result column="feedback_way" property="feedbackWay" />
|
|
|
+ <result column="feedback_type" property="feedbackType" />
|
|
|
+ <result column="content" property="content" />
|
|
|
+ <result column="contact_way" property="contactWay" />
|
|
|
+ <result column="feedback_time" property="feedbackTime" />
|
|
|
+ <result column="follow_up_staff" property="followUpStaff" />
|
|
|
+ <result column="handle_status" property="handleStatus" />
|
|
|
+ <result column="delete_flag" property="deleteFlag" />
|
|
|
+ <result column="created_time" property="createdTime" />
|
|
|
+ <result column="created_user_id" property="createdUserId" />
|
|
|
+ <result column="updated_time" property="updatedTime" />
|
|
|
+ <result column="updated_user_id" property="updatedUserId" />
|
|
|
+ </resultMap>
|
|
|
+
|
|
|
+ <!-- 基础字段 -->
|
|
|
+ <sql id="Base_Column_List">
|
|
|
+ id, user_id, feedback_source, feedback_way, feedback_type,
|
|
|
+ content, contact_way, feedback_time, follow_up_staff, handle_status,
|
|
|
+ delete_flag, created_time, created_user_id, updated_time, updated_user_id
|
|
|
+ </sql>
|
|
|
+
|
|
|
+ <!-- 查询用户反馈列表(带工作人员名称) -->
|
|
|
+ <select id="selectFeedbackListWithStaff" resultType="shop.alien.entity.store.vo.LifeFeedbackVo">
|
|
|
+ SELECT
|
|
|
+ f.id,
|
|
|
+ f.user_id AS userId,
|
|
|
+ f.feedback_source AS feedbackSource,
|
|
|
+ f.feedback_way AS feedbackWay,
|
|
|
+ f.feedback_type AS feedbackType,
|
|
|
+ f.content,
|
|
|
+ f.contact_way AS contactWay,
|
|
|
+ f.feedback_time AS feedbackTime,
|
|
|
+ f.follow_up_staff AS followUpStaff,
|
|
|
+ f.handle_status AS handleStatus,
|
|
|
+ s.user_name AS staffName
|
|
|
+ FROM life_feedback f
|
|
|
+ LEFT JOIN life_sys s ON f.follow_up_staff = s.id
|
|
|
+ WHERE f.delete_flag = 0
|
|
|
+ <if test="userId != null">
|
|
|
+ AND f.user_id = #{userId}
|
|
|
+ </if>
|
|
|
+ <if test="feedbackSource != null">
|
|
|
+ AND f.feedback_source = #{feedbackSource}
|
|
|
+ </if>
|
|
|
+ <if test="feedbackWay != null">
|
|
|
+ AND f.feedback_way = #{feedbackWay}
|
|
|
+ </if>
|
|
|
+ <if test="handleStatus != null">
|
|
|
+ AND f.handle_status = #{handleStatus}
|
|
|
+ </if>
|
|
|
+ ORDER BY f.feedback_time DESC
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <!-- 查询反馈详情(带工作人员名称和图片) -->
|
|
|
+ <select id="selectFeedbackDetail" resultType="shop.alien.entity.store.vo.LifeFeedbackVo">
|
|
|
+ SELECT
|
|
|
+ f.id,
|
|
|
+ f.user_id AS userId,
|
|
|
+ f.feedback_source AS feedbackSource,
|
|
|
+ f.feedback_way AS feedbackWay,
|
|
|
+ f.feedback_type AS feedbackType,
|
|
|
+ f.content,
|
|
|
+ f.contact_way AS contactWay,
|
|
|
+ f.feedback_time AS feedbackTime,
|
|
|
+ f.follow_up_staff AS followUpStaff,
|
|
|
+ f.handle_status AS handleStatus,
|
|
|
+ s.user_name AS staffName
|
|
|
+ FROM life_feedback f
|
|
|
+ LEFT JOIN life_sys s ON f.follow_up_staff = s.id
|
|
|
+ WHERE f.id = #{feedbackId} AND f.delete_flag = 0
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <!-- 统计待处理反馈数量 -->
|
|
|
+ <select id="countPendingFeedback" resultType="java.lang.Integer">
|
|
|
+ SELECT COUNT(1)
|
|
|
+ FROM life_feedback
|
|
|
+ WHERE delete_flag = 0
|
|
|
+ AND handle_status = 0
|
|
|
+ <if test="feedbackSource != null">
|
|
|
+ AND feedback_source = #{feedbackSource}
|
|
|
+ </if>
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <!-- 查询平台回复列表 -->
|
|
|
+ <select id="selectPlatformReplies" resultType="shop.alien.entity.store.vo.LifeFeedbackVo">
|
|
|
+ SELECT
|
|
|
+ f.id,
|
|
|
+ f.user_id AS userId,
|
|
|
+ f.feedback_source AS feedbackSource,
|
|
|
+ f.feedback_way AS feedbackWay,
|
|
|
+ f.feedback_type AS feedbackType,
|
|
|
+ f.content,
|
|
|
+ f.feedback_time AS feedbackTime,
|
|
|
+ f.follow_up_staff AS followUpStaff,
|
|
|
+ f.handle_status AS handleStatus,
|
|
|
+ s.user_name AS staffName
|
|
|
+ FROM life_feedback f
|
|
|
+ LEFT JOIN life_sys s ON f.follow_up_staff = s.id
|
|
|
+ WHERE f.user_id = #{userId}
|
|
|
+ AND f.feedback_source = #{feedbackSource}
|
|
|
+ AND f.feedback_way = 2
|
|
|
+ AND f.feedback_time >= #{startTime}
|
|
|
+ AND f.delete_flag = 0
|
|
|
+ ORDER BY f.feedback_time ASC
|
|
|
+ </select>
|
|
|
+
|
|
|
+</mapper>
|
|
|
+
|