SampleResultTrackingMapper.xml 5 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.SampleResultTrackingMapper">

    <resultMap id="SampleResultTracking" type="com.lframework.xingyun.sc.entity.SampleResultTracking">
        <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_code" property="workshopCode"/>
        <result column="workshop_name" property="workshopName"/>
        <result column="order_id" property="orderId"/>
        <result column="order_code" property="orderCode"/>
        <result column="surface" property="surface"/>
        <result column="performance" property="performance"/>
        <result column="tolerance" property="tolerance"/>
        <result column="banding_pattern" property="bandingPattern"/>
        <result column="packaging" property="packaging"/>
        <result column="weight" property="weight"/>
        <result column="other" property="other"/>
        <result column="sample_success" property="sampleSuccess"/>
        <result column="bulk_order" property="bulkOrder"/>
        <result column="sample_failure" property="sampleFailure"/>
        <result column="continue_sample" property="continueSample"/>
        <result column="stop_sample" property="stopSample"/>
        <result column="customer_reviews_file_id" property="customerReviewsFileId"/>
        <result column="customer_reviews_file_name" property="customerReviewsFileName"/>
        <result column="status" property="status"/>
        <result column="office_supervisor_opinion" property="officeSupervisorOpinion"/>
        <result column="quality_supervisor_opinion" property="qualitySupervisorOpinion"/>
        <result column="quality_manager_opinion" property="qualityManagerOpinion"/>
        <result column="operations_department_supervisor_opinion" property="operationsDepartmentSupervisorOpinion"/>
        <result column="marketing_deputy_director_opinion" property="marketingDeputyDirectorOpinion"/>
        <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="SampleResultTracking_sql">
        SELECT
            tb.id,
            tb.customer_id,
            cu.name AS customer_name,
            tb.workshop_id,
            ws.code AS workshop_code,
            ws.name AS workshop_name,
            tb.order_id,
            poi.order_no AS order_code,
            tb.surface,
            tb.performance,
            tb.tolerance,
            tb.banding_pattern,
            tb.packaging,
            tb.weight,
            tb.other,
            tb.sample_success,
            tb.bulk_order,
            tb.sample_failure,
            tb.continue_sample,
            tb.stop_sample,
            tb.customer_reviews_file_id,
            tb.customer_reviews_file_name,
            tb.status,
            tb.office_supervisor_opinion,
            tb.quality_supervisor_opinion,
            tb.quality_manager_opinion,
            tb.operations_department_supervisor_opinion,
            tb.marketing_deputy_director_opinion,
            tb.create_by_id,
            tb.update_by_id,
            tb.create_time,
            tb.update_time,
        FROM sample_result_tracking AS tb
        left join base_data_customer as cu on cu.id = tb.customer_id
        left join base_data_workshop as ws on ws.id = tb.workshop_id
        left join purchase_order_info as poi on poi.id = tb.order_id
    </sql>

    <select id="query" resultMap="SampleResultTracking">
        <include refid="SampleResultTracking_sql"/>
        <where>
            <if test="vo.customerName != null and vo.customerName != ''">
                AND cu.name LIKE CONCAT('%', #{vo.customerName},'%')
            </if>
            <if test="vo.workshopId != null and vo.workshopId != ''">
                AND tb.workshop_id = #{vo.workshopId}
            </if>
            <if test="vo.orderCode != null and vo.orderCode != ''">
                AND poi.order_no LIKE CONCAT('%', #{vo.orderCode},'%')
            </if>
            <if test="vo.status != null and vo.status != ''">
                AND tb.status = #{vo.status}
            </if>
            <if test="vo.searchKey != null and vo.searchKey != ''">
                AND (cu.name LIKE CONCAT('%', #{vo.searchKey},'%')
                OR poi.order_no LIKE CONCAT('%', #{vo.searchKey},'%'))
            </if>
        </where>
    </select>

    <select id="findById" resultType="com.lframework.xingyun.sc.entity.SampleResultTracking">
        <include refid="SampleResultTracking_sql"/>
        <where>
            <if test="id != null and id != ''">
                AND tb.id = #{id}
            </if>
        </where>
    </select>
</mapper>