zss
2023-09-05 2f50c3b23a14aa649e58c63d62862b6e0eada7ac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
<?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">
    <!--根据原材料检验单id删除原材料不合格品-->
    <update id="updaRawIns">
        update mom_ocean.inspect_unaccepted
        set state=0
        where raw_inspect_id = #{id}
          and type = 0
    </update>
    <!--根据原材料检验单id批量删除原材料不合格品-->
    <update id="delAllRawIns">
        update mom_ocean.inspect_unaccepted
        set state=0
        where raw_inspect_id in (${ids})
          and type = 0
    </update>
 
    <select id="selectUnRawInspectsList" resultType="java.util.Map">
        select ru.id,
        DATE_FORMAT(form_time, '%Y-%m-%d') '来料日期',
        reason,
        code,
        name,
        specifications,
        unit,
        number,
        DATE_FORMAT(ri.create_time, '%Y-%m-%d') '报检日期',
        user_name,
        DATE_FORMAT(ins_time, '%Y-%m-%d') '检验日期',
        deal_state,
        deal_reasult,
        DATE_FORMAT(deal_time, '%Y-%m-%d') '处理日期'
        from mom_ocean.raw_inspect ri inner join mom_ocean.inspect_unaccepted ru on ri.id = ru.raw_inspect_id
        <where>
            <if test="dealState!=null and dealState!=''">
                and deal_state=#{dealState}
            </if>
            <if test="formTime!=null and formTime!=''">
                and form_time=#{formTime}
            </if>
            and ru.state=1
        </where>
        order by ru.id desc
    </select>
    <select id="selectInsList" resultType="java.util.Map">
        SELECT ru.id,
        DATE_FORMAT(fi.create_time, '%Y-%m-%d') dateArrival,
        reason,
        material_code,
        project_name,
        u.`name`,
        specifications_model,
        unit,
        quantity,
        DATE_FORMAT(fi.create_time, '%Y-%m-%d') inspectionDate,
        u.name,
        deal_state,
        deal_reasult,
        DATE_FORMAT(deal_time, '%Y-%m-%d') processingDate
        FROM (inspect_unaccepted ru,
        `user` u)
        LEFT JOIN finished_inspect fi ON fi.`id` = ru.`raw_inspect_id`
        where fi.id = ru.raw_inspect_id
        AND ru.type = 1
        AND ru.state=1
        AND fi.`user_id` = u.`id`
        <if test="dealState!=null and dealState!=''">
            and deal_state=#{dealState}
        </if>
        <if test="formTime!=null and formTime!=''">
            and fi.create_time=#{formTime}
        </if>
        order by ru.id desc
    </select>
 
    <select id="selectUnqualifiedRawMaterials" resultType="map">
        SELECT i.id,
               DATE_FORMAT(r.create_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`
        FROM inspect_unaccepted i
                 LEFT JOIN raw_inspect r ON i.`raw_inspect_id` = r.`id`
        WHERE i.`state` = 1
          AND i.`type` = 0
        <if test="formTime != null and formTime != ''">
            AND r.create_time = #{formTime}
        </if>
        <if test="productName != null and productName != ''">
            AND r.name LIKE CONCAT('%', #{productName}, '%')
        </if>
        <if test="supplier != null and supplier != ''">
            AND r.supplier LIKE CONCAT('%', #{supplier}, '%')
        </if>
        <if test="processingStatus != null">
            AND i.deal_state = #{processingStatus}
        </if>
        ORDER BY i.`id` DESC
    </select>
 
    <select id="selectDisposal" resultType="map">
        SELECT i.`id`, s.`type`, s.name productName, s.`specifications`, s.number, i.`tell` description,
               o.`tell` opinions, s.user_name, DATE_FORMAT(i.`create_time`, '%Y-%m-%d') `date`, i.`deal_state`
        FROM (inspect_unaccepted i,
             (
            SELECT 2 AS `type`, r.`name`, r.`specifications`, r.`number`, r.`id`, r.`user_name`, 0 AS classify
            FROM 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 f.`type`, f.`project_name` `name`, f.`specifications_model` specifications, f.`quantity` number, f.`id`, u.name user_name, 1 AS classify
            FROM finished_inspect f, `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>
        ) AS s)
                 LEFT JOIN opinion o ON i.`id` = o.`raw_unaccepted_id`
        WHERE i.`state` = 1
            AND i.`type` = s.`classify`
            AND s.`id` = i.`raw_inspect_id`
        <if test="state != null">
            AND i.`deal_state` = #{state}
        </if>
        <if test="productCategories != null">
            AND s.`type` = #{productCategories}
        </if>
    </select>
</mapper>