<?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="org.springblade.sing.goods.mapper.GoodsRecordMapper">

    <!-- 通用查询映射结果 -->
    <resultMap id="goodsRecordResultMap" type="org.springblade.sing.goods.vo.GoodsRecordVO">
        <result column="id" property="id"/>
        <result column="create_user" property="createUser"/>
        <result column="create_dept" property="createDept"/>
        <result column="create_time" property="createTime"/>
        <result column="update_user" property="updateUser"/>
        <result column="update_time" property="updateTime"/>
        <result column="status" property="status"/>
        <result column="is_deleted" property="isDeleted"/>
        <result column="user_id" property="userId"/>
        <result column="point_goods_id" property="pointGoodsId"/>
        <result column="prize_goods_id" property="prizeGoodsId"/>
        <result column="address_id" property="addressId"/>
        <result column="goods_type" property="goodsType"/>
        <result column="goods_status" property="goodsStatus"/>
        <result column="tracking_number" property="trackingNumber"/>
        <result column="tracking_name" property="trackingName"/>
        <result column="userName" property="userName"/>
        <result column="helpGoodsName" property="helpGoodsName"/>
    </resultMap>


    <select id="selectGoodsRecordPage" resultMap="goodsRecordResultMap">
        select gr.*,u.nick_name userName,hg.name helpGoodsName from sing_goods_record gr
        left join sing_login_user u on gr.user_id = u.id
        left join sing_help_goods hg on gr.help_goods_id = hg.id
        where gr.is_deleted = 0
        <if test="goodsRecord.userName != null">
            and u.nick_name like concat('%',#{goodsRecord.userName},'%')
        </if>
        <if test="goodsRecord.helpGoodsName != null">
            and hg.name like concat('%',#{goodsRecord.helpGoodsName},'%')
        </if>
        <if test="goodsRecord.beginTime != null and goodsRecord.lastTime != null">
            and gr.create_time between #{goodsRecord.beginTime} and #{goodsRecord.lastTime}
        </if>
        order by gr.create_time DESC
    </select>


</mapper>
