inspect-server/src/main/resources/mapper/InsSampleMapper.xml
@@ -25,11 +25,25 @@
    </resultMap>
    <select id="findInsSampleAndOrder" resultType="com.yuanchu.mom.vo.InsOrderPlanVO">
        select * from(select * from(
        select * from(
        select * from(
        SELECT
        a.*,ios.ins_state,ios.verify_tell,verify_user,ios.id
        orderStateId,ios.create_time,ios.sort,sort_time,version,ios.num-1 num1
        a.*,
        ios.ins_state,
        ios.verify_tell,
        verify_user,
        ios.id orderStateId,
        ios.create_time,
        (SELECT ins_time FROM ins_order_state WHERE ins_order_id = a.id AND laboratory = a.son_laboratory and
        ins_order_state.ins_sample_id=a.sampleId ORDER BY ins_time DESC LIMIT 1) AS ins_time ,
        iou.submit_time ,
        ios.sort,
        sort_time,
        version,
        ios.num-1 num1
        FROM
        ins_order_state ios
        LEFT JOIN
        (
        SELECT
        io.id,
@@ -37,11 +51,12 @@
        io.type,
        io.appointed,
        io.send_time,
        group_concat(distinct isa.sample,' ') sample,
        isa.id sampleId,
        isa.sample sample,
        isa.sample_code sampleCode,
        userName,
        checkName,
        ip.son_laboratory,
        io.ins_time,
        io.laboratory
        FROM
        ins_order io
@@ -53,7 +68,7 @@
        and u.state=0
        GROUP BY ins_sample_id
        ORDER BY ins_sample_id
        ) isu ON isu.ins_sample_id = io.id
        ) isu ON isu.ins_sample_id = isa.id
        LEFT JOIN (
        SELECT ins_sample_id,uu.name checkName
        FROM ins_sample_user u LEFT JOIN user uu ON u.user_id = uu.id
@@ -61,7 +76,7 @@
        and u.state=1
        GROUP BY ins_sample_id
        ORDER BY ins_sample_id
        )isu2 ON isu2.ins_sample_id = io.id
        )isu2 ON isu2.ins_sample_id = isa.id
        LEFT JOIN ins_product ip ON ip.ins_sample_id = isa.id
        WHERE io.state = 1 and send_time is not null
        <if test="userName !=null and userName!=''">
@@ -73,7 +88,8 @@
        ip.son_laboratory,
        io.id
        ) a
        LEFT JOIN ins_order_state ios ON ios.ins_order_id = a.id AND ios.laboratory = a.son_laboratory
        ON ios.ins_order_id = a.id AND ios.laboratory = a.son_laboratory and ios.ins_sample_id=a.sampleId
        LEFT JOIN ins_order_user iou ON ios.id = iou.ins_order_state_id and ios.num=iou.num
        ORDER BY
        ios.sort,
        sort_time desc,
@@ -94,8 +110,10 @@
    <select id="inspectionOrderDetailsTaskSwitching" resultType="com.yuanchu.mom.vo.InsOrderPlanTaskSwitchVo">
        select * from(
        SELECT
        a.*,ios.ins_state,ios.verify_tell,isu2.order_user_id,<!--(ios.verify_user = #{userId})--> verify_user
        a.*,ios.ins_state,ios.verify_tell,isu2.order_user_id,verify_user
        FROM
        ins_order_state ios
        LEFT JOIN
        (
        SELECT
        io.id,
@@ -103,7 +121,9 @@
        io.type,
        io.appointed,
        io.send_time,
        group_concat(distinct isa.sample,' ') sampleType,
        isa.id sampleId,
        isa.sample sampleType,
        isa.sample_code sampleCode,
        isu.user_id,
        user.name userName,
        ip.son_laboratory,
@@ -112,7 +132,7 @@
        FROM
        ins_order io
        LEFT JOIN ins_sample isa ON isa.ins_order_id = io.id
        LEFT JOIN ( <!--SELECT * FROM ins_sample_user GROUP BY ins_sample_id, user_id -->
        LEFT JOIN (
        SELECT *
        FROM ins_sample_user u
        WHERE son_laboratory=#{sonLaboratory} and (ins_sample_id, id) IN (
@@ -122,12 +142,11 @@
        GROUP BY ins_sample_id
        )
        ORDER BY ins_sample_id, id
        ) isu ON isu.ins_sample_id = io.id
        ) isu ON isu.ins_sample_id = isa.id
        LEFT JOIN ins_product ip ON ip.ins_sample_id = isa.id
        LEFT JOIN user ON isu.user_id = user.id
        WHERE
        io.state = 1
        -- # AND io.ins_state != 5
        and send_time is not null
        <if test="userId !=null and userId!=''">
            and (isu.user_id = #{userId} OR isu.user_id is NULL )
@@ -137,21 +156,21 @@
        ip.son_laboratory,
        io.id
        ) a
        LEFT JOIN ins_order_state ios ON ios.ins_order_id = a.id AND ios.laboratory = a.son_laboratory
        left join (SELECT td.user_id order_user_id, td.ins_sample_id FROM ins_sample_user td,(SELECT max(id) id FROM
          ON ios.ins_order_id = a.id AND ios.laboratory = a.son_laboratory and a.sampleId=ios.ins_sample_id
        left join
        (SELECT td.user_id order_user_id, td.ins_sample_id FROM ins_sample_user td,(SELECT max(id) id FROM
        ins_sample_user where son_laboratory=#{sonLaboratory} GROUP BY ins_sample_id) md where td.id = md.id
        <if test="userId !=null and userId!=''">
            and user_id = #{userId} OR user_id is NULL
        </if>
        OR user_id is NULL
        ) isu2 on
        isu2.ins_sample_id = a.id
        isu2.ins_sample_id = a.sampleId
        where ins_state is not null
        <if test="laboratory != null and laboratory != ''">
            and a.laboratory=#{laboratory}
        </if>
        ORDER BY
        <!--a.user_id DESC,-->
        a.type DESC,
        a.id
        ) b
@@ -202,7 +221,7 @@
               ip.method_s
        from ins_sample isa
                 left join ins_product ip on isa.id = ip.ins_sample_id
        where isa.ins_order_id = #{id}
        where isa.id = #{id}
          and state = 1
          and isa.id in (select id1
                         from (select is2.id id1, ip.id
@@ -253,7 +272,7 @@
               `last_value`,
               ip.ins_result    ip_ins_result,
               state,
               ins_sample_id,
               ios.ins_sample_id,
               ip.create_user   ip_create_user,
               ip.update_user   ip_update_user,
               ip.create_time   ip_create_time,
@@ -263,6 +282,8 @@
               ipr.com_value,
               ipr.equip_value,
               ipr.equip_name,
               ipr.before_check,
               ipr.after_check,
               ipr2.frequency,
               ipr2.often,
               ipr2.port,
@@ -277,11 +298,11 @@
               ip.temperature,
               ip.humidity
        from ins_sample isa
                 left join ins_order_state ios on isa.ins_order_id = ios.ins_order_id
                 left join ins_order_state ios on isa.id = ios.ins_sample_id
                 left join ins_product ip on isa.id = ip.ins_sample_id
                 left join ins_product_result ipr on ip.id = ipr.ins_product_id
                 left join ins_product_result_2 ipr2 on ip.id = ipr2.ins_product_id
        where isa.ins_order_id = #{id}
        where isa.id = #{sampleId}
          and state = 1
          and ip.son_laboratory = #{laboratory}
          and ios.laboratory = #{laboratory}
@@ -321,7 +342,7 @@
               `last_value`,
               ip.ins_result    ip_ins_result,
               state,
               ins_sample_id,
               ios.ins_sample_id,
               ip.create_user   ip_create_user,
               ip.update_user   ip_update_user,
               ip.create_time   ip_create_time,
@@ -331,6 +352,8 @@
               ipr.com_value,
               ipr.equip_value,
               ipr.equip_name,
               ipr.before_check,
               ipr.after_check,
               ipr2.frequency,
               ipr2.often,
               ipr2.port,
@@ -345,14 +368,15 @@
               ip.temperature,
               ip.humidity
        from ins_sample isa
                 left join ins_order_state ios on isa.ins_order_id = ios.ins_order_id
                 left join ins_order_state ios on isa.id = ios.ins_sample_id
                 left join ins_product ip on isa.id = ip.ins_sample_id
                 left join ins_product_result ipr on ip.id = ipr.ins_product_id
                 left join ins_product_result_2 ipr2 on ip.id = ipr2.ins_product_id
        where isa.ins_order_id = #{id}
        where isa.id = #{sampleId}
          and state = 1
          and ip.son_laboratory = #{laboratory}
          and ios.laboratory = #{laboratory}
          and (ipr2.num is null or ipr.num is null)
    </select>
    <select id="getSampleEn" resultType="java.lang.String">
        select name_en
@@ -403,6 +427,8 @@
               ipr.ins_value,
               ipr.com_value,
               ipr.equip_value,
               ipr.before_check,
               ipr.after_check,
               ipr2.frequency,
               ipr2.often,
               ipr2.port,
@@ -475,6 +501,8 @@
               ipr.ins_value,
               ipr.com_value,
               ipr.equip_value,
               ipr.before_check,
               ipr.after_check,
               ipr2.frequency,
               ipr2.often,
               ipr2.port,
@@ -518,10 +546,13 @@
        ip.sample ip_sample,
        ip.model ip_model,
        ip.state,
        io.issue_time,
        u.name issueName,
        ins_sample_id
        from ins_sample isa
        left join ins_product ip on isa.id = ip.ins_sample_id
        left join ins_order io on io.id = ins_order_id
        left join user u on io.issue_user = u.id
        where ip.state = 1
        and ins_order_id in
        <foreach collection="ids" open="(" close=")" item="id" separator=",">
@@ -566,7 +597,7 @@
               `last_value`,
               ip.ins_result    ip_ins_result,
               state,
               ins_sample_id,
               ios.ins_sample_id,
               ip.create_user   ip_create_user,
               ip.update_user   ip_update_user,
               ip.create_time   ip_create_time,
@@ -576,6 +607,8 @@
               ipr.com_value,
               ipr.equip_value,
               ipr.equip_name,
               ipr.before_check,
               ipr.after_check,
               ipr2.frequency,
               ipr2.often,
               ipr2.port,
@@ -589,17 +622,17 @@
               ip.dic
        from ins_product ip
                 left join ins_sample isa on ip.ins_sample_id = isa.id
                 left join ins_order_state ios on ios.ins_order_id = isa.ins_order_id
                 left join ins_order_state ios on ios.ins_sample_id = isa.id
                 left join ins_product_result ipr on ip.id = ipr.ins_product_id
                 left join ins_product_result_2 ipr2 on ip.id = ipr2.ins_product_id
        where ins_sample_id = #{id}
        where ios.ins_sample_id = #{id}
          and state = 1
          and ip.son_laboratory = #{laboratory}
          and ip.standard_method_list_id is not null
          and ios.laboratory = #{laboratory}
          and (ipr2.num = ios.num or ipr2.num is null)
          and (ipr.num = ios.num or ipr.num is null)
        order by ipr.id, ipr2.id
        order by ip.id, ipr.id, ipr2.id
    </select>
    <select id="getIns2Product1" resultMap="product">
        select ip.id            ip_id,
@@ -632,7 +665,7 @@
               `last_value`,
               ip.ins_result    ip_ins_result,
               state,
               ins_sample_id,
               ios.ins_sample_id,
               ip.create_user   ip_create_user,
               ip.update_user   ip_update_user,
               ip.create_time   ip_create_time,
@@ -642,6 +675,8 @@
               ipr.com_value,
               ipr.equip_value,
               ipr.equip_name,
               ipr.before_check,
               ipr.after_check,
               ipr2.frequency,
               ipr2.often,
               ipr2.port,
@@ -655,15 +690,15 @@
               ip.dic
        from ins_product ip
                 left join ins_sample isa on ip.ins_sample_id = isa.id
                 left join ins_order_state ios on ios.ins_order_id = isa.ins_order_id
                 left join ins_order_state ios on ios.ins_sample_id = isa.id
                 left join ins_product_result ipr on ip.id = ipr.ins_product_id
                 left join ins_product_result_2 ipr2 on ip.id = ipr2.ins_product_id
        where ins_sample_id = #{id}
        where ios.ins_sample_id = #{id}
          and state = 1
          and ip.son_laboratory = #{laboratory}
          and ip.standard_method_list_id is not null
          and ios.laboratory = #{laboratory}
        order by ipr.id, ipr2.id
        order by ip.id, ipr.id, ipr2.id
    </select>
    <select id="get2InsProduct1" resultMap="product">
        select ip.id            ip_id,
@@ -696,7 +731,7 @@
               `last_value`,
               ip.ins_result    ip_ins_result,
               state,
               ins_sample_id,
               ios.ins_sample_id,
               ip.create_user   ip_create_user,
               ip.update_user   ip_update_user,
               ip.create_time   ip_create_time,
@@ -706,6 +741,8 @@
               ipr.com_value,
               ipr.equip_value,
               ipr.equip_name,
               ipr.before_check,
               ipr.after_check,
               ipr2.frequency,
               ipr2.often,
               ipr2.port,
@@ -719,16 +756,16 @@
               ip.dic
        from ins_product ip
                 left join ins_sample isa on ip.ins_sample_id = isa.id
                 left join ins_order_state ios on ios.ins_order_id = isa.ins_order_id
                 left join ins_order_state ios on ios.ins_sample_id = isa.id
                 left join ins_product_result ipr on ip.id = ipr.ins_product_id
                 left join ins_product_result_2 ipr2 on ip.id = ipr2.ins_product_id
        where ins_sample_id = #{id}
        where ios.ins_sample_id = #{id}
          and state = 1
          and ip.son_laboratory = #{laboratory}
          and ip.standard_method_list_id is not null
          and ios.laboratory = #{laboratory}
          and (ipr2.num = #{num} or ipr.num = #{num})
        order by ipr.id, ipr2.id
        order by ip.id, ipr.id, ipr2.id
    </select>
    <select id="getReportModel" resultType="java.util.Map">
@@ -827,6 +864,8 @@
        <result property="insState" column="ins_state" jdbcType="INTEGER"/>
        <result property="joinNum" column="join_num" jdbcType="INTEGER"/>
        <result property="remark" column="remark" jdbcType="VARCHAR"/>
        <result property="issueTime" column="issue_time"/>
        <result property="issueName" column="issueName"/>
        <result property="createUser" column="create_user" jdbcType="INTEGER"/>
        <result property="updateUser" column="update_user" jdbcType="INTEGER"/>
        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
@@ -840,6 +879,8 @@
        <result property="insValue" column="ins_value" jdbcType="VARCHAR"/>
        <result property="comValue" column="com_value" jdbcType="VARCHAR"/>
        <result property="equipValue" column="equip_value" jdbcType="VARCHAR"/>
        <result property="beforeCheck" column="before_check" jdbcType="VARCHAR"/>
        <result property="afterCheck" column="after_check" jdbcType="VARCHAR"/>
        <result property="equipName" column="equip_name" jdbcType="VARBINARY"/>
    </resultMap>
    <resultMap id="insProductResult2" type="com.yuanchu.mom.pojo.InsProductResult2">
@@ -905,7 +946,8 @@
          and ip.id is not null
    </select>
    <select id="selectInsSample" resultType="com.yuanchu.mom.pojo.InsSample">
        select isa.*,entrust_code
        select isa.*,
        case when entrust_code is null then out_entrust_code else entrust_code end as entrust_code
        from ins_sample isa
        left join ins_order io on isa.ins_order_id = io.id
        where ins_order_id in
@@ -913,4 +955,12 @@
            #{id}
        </foreach>
    </select>
    <select id="selectSample" resultType="com.yuanchu.mom.pojo.InsSample">
        select distinct isa.*
        from ins_sample isa
                 left join ins_product ip on isa.id = ip.ins_sample_id
        where son_laboratory = '电路试验'
          and state = 1
          and ins_order_id = #{insOrderId}
    </select>
</mapper>