SampleResultFeedbackMapper.xml 2.85 KB
<?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.lframework.xingyun.sc.mappers.SampleResultFeedbackMapper">

    <resultMap id="SampleResultFeedback" type="com.lframework.xingyun.sc.entity.SampleResultFeedback">
        <id column="id" property="id"/>
        <result column="customer_id" property="customerId"/>
        <result column="customer_name" property="customerName"/>
        <result column="workshop_id" property="workshopId"/>
        <result column="workshop_name" property="workshopName"/>
        <result column="order_id" property="orderId"/>
        <result column="order_no" property="orderNo"/>
        <result column="create_by_id" property="createById"/>
        <result column="update_by_id" property="updateById"/>
        <result column="create_time" property="createTime"/>
        <result column="update_time" property="updateTime"/>
    </resultMap>

    <sql id="SampleResultFeedback_sql">
        SELECT
            tb.id,
            tb.customer_id,
            c.name as customer_name,
            tb.workshop_id,
            w.name as workshop_name,
            tb.order_id,
            o.order_no,
            tb.create_by_id,
            tb.update_by_id,
            tb.create_time,
            tb.update_time
        FROM sample_result_feedback AS tb
        LEFT JOIN base_data_customer c ON tb.customer_id = c.id
        LEFT JOIN base_data_workshop w ON tb.workshop_id = w.id
        LEFT JOIN purchase_order_info o ON tb.order_id = o.id
    </sql>

    <select id="query" resultMap="SampleResultFeedback">
        <include refid="SampleResultFeedback_sql"/>
        <where>
            <if test="vo.customerId != null and vo.customerId != ''">
             AND tb.customer_id = #{vo.customerId}
            </if>
            <if test="vo.workshopId != null and vo.workshopId != ''">
             AND tb.workshop_id = #{vo.workshopId}
            </if>
            <if test="vo.orderId != null and vo.orderId != ''">
             AND tb.order_id = #{vo.orderId}
            </if>
            <if test="vo.customerName != null and vo.customerName != ''">
                AND c.name LIKE CONCAT('%', #{vo.customerName}, '%')
            </if>
            <if test="vo.workshopName != null and vo.workshopName != ''">
                AND w.name LIKE CONCAT('%', #{vo.workshopName}, '%')
            </if>
            <if test="vo.orderNo != null and vo.orderNo != ''">
                AND o.order_no LIKE CONCAT('%', #{vo.orderNo}, '%')
            </if>
            <if test="vo.searchKey != null and vo.searchKey != ''">
                AND (
                    o.order_no LIKE CONCAT('%', #{vo.searchKey}, '%')
                    OR c.name LIKE CONCAT('%', #{vo.searchKey}, '%')
                )
            </if>
        </where>
    </select>
</mapper>