GarOrderMatchDisposalMapper.xml 3.99 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.trash.garbage.mapper.GarOrderMatchDisposalMapper">

    <resultMap id="BaseResultMap" type="com.trash.garbage.pojo.domain.GarOrderMatchDisposal">
        <id property="garId" column="gar_id" jdbcType="VARCHAR"/>
        <result property="garOrderId" column="gar_order_id" jdbcType="VARCHAR"/>
        <result property="garOrderDisposalTel" column="gar_order_disposal_tel" jdbcType="VARCHAR"/>
        <result property="garOrderDisposalName" column="gar_order_disposal_name" jdbcType="VARCHAR"/>
        <result property="garOrderDisposalCompanyId" column="gar_order_disposal_company_id" jdbcType="VARCHAR"/>
        <result property="garOrderDisposalCompanyName" column="gar_order_disposal_company_name" jdbcType="VARCHAR"/>
        <result property="garCreateTime" column="gar_create_time" jdbcType="TIMESTAMP"/>
        <result property="garUpdateTime" column="gar_update_time" jdbcType="TIMESTAMP"/>
        <result property="garCreateBy" column="gar_create_by" jdbcType="VARCHAR"/>
        <result property="garUpdateBy" column="gar_update_by" jdbcType="VARCHAR"/>
        <result property="garReason" column="gar_reason" jdbcType="VARCHAR"/>
        <result property="garOrderDisposalStatus" column="gar_order_disposal_status" jdbcType="VARCHAR"/>
    </resultMap>


    <resultMap id="DispatchDisposalVo" type="com.trash.garbage.pojo.vo.DispatchDisposalVo">
        <id property="garOrderDisposalCompanyId" column="id" jdbcType="VARCHAR"/>
        <result property="garOrderDisposalCompanyName" column="name" jdbcType="VARCHAR"/>
        <collection property="personnelInfo" ofType="com.trash.garbage.pojo.vo.DispatchDisposalVo$Personnel">
            <result property="tel" column="tel" jdbcType="VARCHAR"/>
            <result property="personName" column="construction_unit_person" jdbcType="VARCHAR"/>
            <result property="checked" column="checked"/>
        </collection>
    </resultMap>


    <sql id="Base_Column_List">
        gar_id
        ,gar_order_id,gar_order_disposal_tel,
        gar_order_disposal_name,gar_order_disposal_company_id,gar_order_disposal_company_name,
        gar_create_time,gar_update_time,gar_create_by,
        gar_update_by,gar_reason,gar_order_status
    </sql>
    <select id="queryDisposalListWithDispatchStatus" resultMap="DispatchDisposalVo">
        SELECT disposal.`name`                         AS `name`,
               disposal.`id`,
               disposal.construction_unit_person_phone AS tel,
               disposal.construction_unit_person,
               CASE
                   WHEN `temp`.gar_order_id IS NULL THEN
                       0
                   ELSE 1
                   END                                 AS checked
        FROM disposal_site disposal
                 LEFT JOIN (SELECT gar.gar_order_id, gar.gar_order_disposal_tel
                            FROM gar_order_match_disposal gar
                                     INNER JOIN gar_order `order` ON `order`.gar_order_id = gar.gar_order_id
                            WHERE `order`.gar_order_id = #{orderId}) `temp`
                           ON `temp`.gar_order_disposal_tel = disposal.construction_unit_person_phone
    </select>

    <select id="queryDisposalListWithDispatchByOrderId" resultMap="DispatchDisposalVo">
        SELECT disposal.`name`                         AS `name`,
               disposal.`id`,
               disposal.construction_unit_person_phone AS tel,
               disposal.construction_unit_person
        FROM disposal_site disposal
        inner JOIN gar_order_match_disposal gomd on gomd.gar_order_disposal_tel= disposal.construction_unit_person_phone
        where gomd. gar_order_id=#{orderId}
    </select>
    <select id="queryObjByOrderId" resultType="com.trash.garbage.pojo.domain.GarOrderMatchDisposal">
        select * from  gar_order_match_disposal where gar_order_id=#{orderId}
    </select>
</mapper>