XiaoRuby
2023-09-24 20956b0f05f81ca47cf6c3e8f9b3b426e9cfd035
inspect-server/src/main/resources/mapper/InspectUnacceptedMapper.xml
@@ -1,8 +1,6 @@
<?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.yuanchu.mom.mapper.InspectUnacceptedMapper">
    <!--不合格管理-->
    <select id="selectInsList" resultType="java.util.Map">
        SELECT ru.id,
@@ -15,7 +13,7 @@
        fi.project_name,
        fi.specifications_model,
        fi.unit,
        fi.quantity,
        number quantity,
        DATE_FORMAT(fi.inspectionDate, '%Y-%m-%d') inspectionDate,
        DATE_FORMAT(fi.processingDate, '%Y-%m-%d') processingDate
        FROM mom_ocean.inspect_unaccepted ru, mom_ocean.`user` u, (
@@ -53,23 +51,23 @@
    <!--原材料不合格品-->
    <select id="selectUnqualifiedRawMaterials" resultType="map">
        SELECT i.id,
               DATE_FORMAT(r.form_time, '%Y-%m-%d') dateArrival,
               i.`reason`,
               r.`code`,
               r.`name`,
               r.`specifications`,
               r.`unit`,
               r.`number`,
               DATE_FORMAT(r.`create_time`,'%Y-%m-%d') inspectionDate,
               r.`user_name`,
               DATE_FORMAT(r.`ins_time`,'%Y-%m-%d') processingDate,
               r.`supplier`,
               i.`deal_state`,
               i.`deal_reasult`
        DATE_FORMAT(r.form_time, '%Y-%m-%d') dateArrival,
        i.`reason`,
        r.`code`,
        r.`name`,
        r.`specifications`,
        r.`unit`,
        i.number,
        DATE_FORMAT(r.`create_time`,'%Y-%m-%d') inspectionDate,
        r.`user_name`,
        DATE_FORMAT(r.`ins_time`,'%Y-%m-%d') processingDate,
        r.`supplier`,
        i.`deal_state`,
        i.`deal_reasult`
        FROM mom_ocean.inspect_unaccepted i
                 LEFT JOIN mom_ocean.raw_inspect r ON i.`raw_inspect_id` = r.`id`
        LEFT JOIN mom_ocean.raw_inspect r ON i.`raw_inspect_id` = r.`id`
        WHERE i.`state` = 1
          AND i.`type` = 0
        AND i.`type` = 0
        <if test="formTime != null and formTime != ''">
            AND r.form_time = #{formTime}
        </if>
@@ -87,48 +85,52 @@
    <!--不合格处置-->
    <select id="selectDisposal" resultType="map">
        SELECT i.`id`, s.`type`, s.name productName, s.`specifications`, s.number, i.`tell` description,
        SELECT i.`id`, s.`type`, s.name productName, s.`specifications`, i.number, i.`tell` description,
        i.`tell` opinions, s.user_name, DATE_FORMAT(i.`create_time`, '%Y-%m-%d') `date`, i.`deal_state`, i.way, i.faulty_materials, i.opinion_tell
        FROM mom_ocean.inspect_unaccepted i
        LEFT JOIN
        (
            -- 原材料
            SELECT 0 AS `type`, r.`name`, r.`specifications`, r.`number`, r.`id`, r.`user_name`
            FROM mom_ocean.raw_inspect r
            WHERE r.state = 1
            <if test="specificationModel != null and specificationModel != ''">AND r.`specifications` LIKE CONCAT('%',
                #{specificationModel}, '%')
            </if>
            <if test="
            productName != null and productName != ''">AND r.`name` LIKE CONCAT('%', #{productName}, '%')
            </if>
            UNION ALL
            -- 半成品
            SELECT 1 AS `type`, f.`project_name` `name`, f.`specifications_model` specifications, f.`quantity` `number`, f.`id`, u.name user_name
            FROM mom_ocean.finished_inspect f, mom_ocean.`user` u
            WHERE f.`state` = 1
              AND u.id = f.user_id
            <if test="specificationModel != null and specificationModel != ''">
                AND f.`specifications_model` LIKE CONCAT('%', #{specificationModel}, '%')
            </if>
            <if test="productName != null and productName != ''">
                AND f.`project_name` LIKE CONCAT('%', #{productName}, '%')
            </if>
            UNION ALL
            -- 在制品
            SELECT 2 AS `type`, p.`material` `name`, p.`specifications_model` specifications, p.`quantity` `number`, p.`id`, u.name user_name
            FROM mom_ocean.process_inspect p, mom_ocean.`user` u
            WHERE p.state = 1
                AND u.id = p.user_id
            <if test="specificationModel != null and specificationModel != ''">
                AND p.`specifications_model` LIKE CONCAT('%', #{specificationModel}, '%')
            </if>
            <if test="productName != null and productName != ''">
                AND p.`material` LIKE CONCAT('%', #{productName}, '%')
            </if>
         )AS s ON s.`id` = i.`raw_inspect_id` AND s.`type` = i.type
        -- 原材料
        SELECT 0 AS `type`, r.`name`, r.`specifications`, r.`number`, r.`id`, r.`user_name`
        FROM mom_ocean.raw_inspect r
        WHERE r.state = 1
        <if test="specificationModel != null and specificationModel != ''">
            AND r.`specifications` LIKE CONCAT('%',
            #{specificationModel}, '%')
        </if>
        <if test="
            productName != null and productName != ''">
            AND r.`name` LIKE CONCAT('%', #{productName}, '%')
        </if>
        UNION ALL
        -- 成品
        SELECT 1 AS `type`, f.`project_name` `name`, f.`specifications_model` specifications, f.`quantity` `number`,
        f.`id`, u.name user_name
        FROM mom_ocean.finished_inspect f, mom_ocean.`user` u
        WHERE f.`state` = 1
        AND u.id = f.user_id
        <if test="specificationModel != null and specificationModel != ''">
            AND f.`specifications_model` LIKE CONCAT('%', #{specificationModel}, '%')
        </if>
        <if test="productName != null and productName != ''">
            AND f.`project_name` LIKE CONCAT('%', #{productName}, '%')
        </if>
        UNION ALL
        -- 半成品
        SELECT 2 AS `type`, p.`material` `name`, p.`specifications_model` specifications, p.`quantity` `number`, p.`id`,
        u.name user_name
        FROM mom_ocean.process_inspect p, mom_ocean.`user` u
        WHERE p.state = 1
        AND u.id = p.user_id
        <if test="specificationModel != null and specificationModel != ''">
            AND p.`specifications_model` LIKE CONCAT('%', #{specificationModel}, '%')
        </if>
        <if test="productName != null and productName != ''">
            AND p.`material` LIKE CONCAT('%', #{productName}, '%')
        </if>
        )AS s ON s.`id` = i.`raw_inspect_id` AND s.`type` = i.type
        WHERE i.`state` = 1
          AND i.`deal_reasult` = 0
        AND i.`deal_reasult` = 0
        <if test="state != null">
            AND i.`deal_state` = #{state}
        </if>