mitao
2024-04-30 ab4ea7b8f10c9b66aed9c2ea161a08b25c3851a7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?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="com.sinata.rest.modular.mall.dao.MallUserEvaluationMapper">
 
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.sinata.rest.modular.mall.model.MallUserEvaluation">
        <id column="id" property="id" />
        <result column="user_id" property="userId" />
        <result column="merchant_id" property="merchantId" />
        <result column="goods_id" property="goodsId" />
        <result column="goods_sku_id" property="goodsSkuId" />
        <result column="order_no" property="orderNo" />
        <result column="order_detail_no" property="orderDetailNo" />
        <result column="score" property="score" />
        <result column="detail" property="detail" />
        <result column="eva_image" property="evaImage" />
        <result column="state" property="state" />
        <result column="is_delete" property="isDelete" />
        <result column="create_time" property="createTime" />
        <result column="reply" property="reply" />
    </resultMap>
 
 
    <select id="goodsNewestEvaluation" parameterType="java.lang.Integer" resultType="com.sinata.rest.modular.mall.controller.vo.VoGoodsUserEvaluation">
        SELECT ue.*,u.avatar,u.nick_name,od.goods_num,od.grep_name
        FROM mall_user_evaluation ue
                 LEFT JOIN mem_user u ON ue.user_id = u.id
                 LEFT JOIN mall_order_detail od ON od.order_detail_no = ue.order_detail_no
        WHERE ue.goods_id = #{goodsId} AND ue.state = 0 AND ue.is_delete = 0
        ORDER BY ue.create_time DESC
        LIMIT 1
    </select>
    <!--查询评价商品列表-->
    <select id="selectEvaluationList" resultType="com.sinata.rest.modular.mall.controller.vo.VoGoodsUserEvaluation">
        SELECT ue.*,u.phone,u.nick_name,u.avatar,gs.grep_name
        FROM mall_user_evaluation ue
        LEFT JOIN mem_user u ON ue.user_id = u.id AND ue.state = 0 AND ue.is_delete = 0
        LEFT JOIN mall_goods_sku gs ON gs.id = ue.goods_sku_id
        WHERE 1=1 AND ue.state = 0
        <if test="merchantId != null">
            AND ue.merchant_id = #{merchantId}
        </if>
        <if test="goodsId != null">
            AND ue.goods_id = #{goodsId}
        </if>
        ORDER BY ue.create_time DESC
    </select>
 
    <!--查询我的评价列表-->
    <select id="selectEvaluationListForUser" resultType="com.sinata.rest.modular.mall.controller.vo.VoGoodsUserEvaluation">
        SELECT ue.*,u.phone,u.nick_name,u.avatar,g.goods_name,gk.grep_name
        FROM mall_user_evaluation ue
         LEFT JOIN mem_user u ON ue.user_id = u.id
         LEFT JOIN mall_goods g ON ue.goods_id = g.id
         LEFT JOIN mall_goods_sku gk ON gk.id = ue.goods_sku_id
        WHERE ue.user_id = #{userId} AND ue.state = 0 AND ue.is_delete = 0
        ORDER BY ue.create_time DESC
    </select>
 
</mapper>