张晓波
2023-09-19 164694c47c35d6654df69b533e8dbf8b5423efc5
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
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
<?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.thhy.materials.modules.biz.concret.mapper.TSteelNeedYearMapper">
  <resultMap id="BaseResultMap" type="com.thhy.materials.modules.biz.concret.entity.TSteelNeedYear">
    <!--
      WARNING - @mbg.generated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Wed Apr 19 13:35:52 CST 2023.
    -->
    <id column="steel_need_id" jdbcType="VARCHAR" property="steelNeedId" />
    <result column="pro_id" jdbcType="VARCHAR" property="proId" />
    <result column="years" jdbcType="VARCHAR" property="years" />
    <result column="size_id" jdbcType="VARCHAR" property="sizeId" />
    <result column="is_use" jdbcType="INTEGER" property="isUse" />
    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
    <result column="create_user" jdbcType="VARCHAR" property="createUser" />
  </resultMap>
 
  <select id="proIdAndYearAndSizeId" resultType="java.lang.String">
    select steel_need_id from  t_steel_need_year where  is_use=1 and
    pro_id=#{proId} and years=#{years} and size_id=#{sizeId}
  </select>
 
  <insert id="needYearInsert" >
    insert into t_steel_need_year
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="steelNeedId != null">
        steel_need_id,
      </if>
      <if test="proId != null">
        pro_id,
      </if>
      <if test="years != null">
        years,
      </if>
      <if test="sizeId != null">
        size_id,
      </if>
      <if test="isUse != null">
        is_use,
      </if>
      <if test="createTime != null">
        create_time,
      </if>
      <if test="createUser != null">
        create_user,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="steelNeedId != null">
        #{steelNeedId,jdbcType=VARCHAR},
      </if>
      <if test="proId != null">
        #{proId,jdbcType=VARCHAR},
      </if>
      <if test="years != null">
        #{years,jdbcType=VARCHAR},
      </if>
      <if test="sizeId != null">
        #{sizeId,jdbcType=VARCHAR},
      </if>
      <if test="isUse != null">
        #{isUse,jdbcType=INTEGER},
      </if>
      <if test="createTime != null">
        #{createTime,jdbcType=TIMESTAMP},
      </if>
      <if test="createUser != null">
        #{createUser,jdbcType=VARCHAR},
      </if>
    </trim>
  </insert>
  <insert id="needNumInsert" >
    insert into t_need_num
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="id != null">
        id,
      </if>
      <if test="steelNeedId != null">
        steel_need_id,
      </if>
      <if test="reinforcementId != null">
        reinforcement_id,
      </if>
      <if test="needNum != null">
        need_num,
      </if>
      <if test="okNum != null">
        ok_num,
      </if>
      <if test="sorts != null">
        sorts,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="id != null">
        #{id},
      </if>
      <if test="steelNeedId != null">
        #{steelNeedId,jdbcType=VARCHAR},
      </if>
      <if test="reinforcementId != null">
        #{reinforcementId,jdbcType=VARCHAR},
      </if>
      <if test="needNum != null">
        #{needNum,jdbcType=INTEGER},
      </if>
      <if test="okNum != null">
        #{okNum,jdbcType=INTEGER},
      </if>
      <if test="sorts != null">
        #{sorts,jdbcType=INTEGER},
      </if>
    </trim>
  </insert>
 
  <select id="needYearList" resultType="com.thhy.materials.modules.biz.concret.entity.TSteelNeedYear">
        select tsny.steel_need_id as steelNeedId,
        tsny.pro_id as proId,
        tsny.years as years,
        tsny.size_id as sizeId,
        tsny.is_use as isUse,
        tsny.create_time as createTime,
        sp.pro_name as proName,sd.dict_name as dictName
        from t_steel_need_year tsny
        left join  sys_project sp  on tsny.pro_id=sp.pro_id
        left join sys_dict sd on  sd.dict_id=tsny.size_id
        where tsny.is_use=1
        <if test="proId!=null and proId!='' ">
          and tsny.pro_id=#{proId}
        </if>
        <if test="years!=null and years!='' ">
          and tsny.years=#{years}
        </if>
        <if test="companyId!=null and companyId!='' ">
          and sp.company_id=#{companyId}
        </if>
        order by tsny.create_time desc
  </select>
 
  <select id="needYear" parameterType="java.lang.String" resultType="com.thhy.materials.modules.biz.concret.entity.TNeedNum">
    select
    tnn.id as id,
    tnn.steel_need_id as steelNeedId,
    tnn.reinforcement_id as reinforcementId,
    tnn.need_num as needNum,
    tnn.ok_num as okNum,
    tnn.sorts as sorts,
    sd.dict_name as reinforcementName,sd.colors from t_need_num tnn
    left join  sys_dict sd on tnn.reinforcement_id=sd.dict_id
    where  tnn.steel_need_id=#{steelNeedId} order by tnn.sorts asc
  </select>
 
  <update id="needYearDel" parameterType="java.lang.String">
    update t_steel_need_year set
    is_use=2
    where steel_need_id=#{steelNeedId}
  </update>
  <delete id="needNumDel" parameterType="java.lang.String">
    delete from t_need_num where steel_need_id=#{steelNeedId}
  </delete>
  <select id="needYearInfo" parameterType="java.lang.String" resultType="com.thhy.materials.modules.biz.concret.entity.TSteelNeedYear">
    select
     tsny.steel_need_id as steelNeedId,
        tsny.pro_id as proId,
        tsny.years as years,
        tsny.size_id as sizeId,
        tsny.is_use as isUse,
        tsny.create_time as createTime,
    sp.pro_name,sd.dict_name from t_steel_need_year tsny
    left join  sys_project sp  on tsny.pro_id=sp.pro_id
    left join sys_dict sd on  sd.dict_id=tsny.size_id
    where tsny.is_use=1 and tsny.steel_need_id=#{steelNeedId}
  </select>
  <update id="needYearUpdate" >
    update t_steel_need_year
    <set>
      <if test="proId != null">
        pro_id = #{proId,jdbcType=VARCHAR},
      </if>
      <if test="years != null">
        years = #{years,jdbcType=VARCHAR},
      </if>
      <if test="sizeId != null">
        size_id = #{sizeId,jdbcType=VARCHAR},
      </if>
      <if test="isUse != null">
        is_use = #{isUse,jdbcType=INTEGER},
      </if>
      <if test="createTime != null">
        create_time = #{createTime,jdbcType=TIMESTAMP},
      </if>
      <if test="createUser != null">
        create_user = #{createUser,jdbcType=VARCHAR},
      </if>
    </set>
    where steel_need_id = #{steelNeedId,jdbcType=VARCHAR}
  </update>
 
  <select id="proBlokList" parameterType="java.lang.String" resultType="com.thhy.materials.modules.biz.concret.entity.ProjectBlokDtos">
         SELECT
        sp.pro_id as proId,
        spb.block_num as blockNum,
        sd.dict_name as blockName
    FROM
        sys_project sp
        LEFT JOIN sys_pro_blok spb ON sp.pro_id = spb.pro_id
        left join sys_dict sd on spb.block_num=sd.dict_id
        where sp.is_use=1
        and sp.pro_id=#{proId}
  </select>
  <select id="proIdAndHas" parameterType="java.lang.String" resultType="com.thhy.materials.modules.biz.concret.entity.TNeedNum">
         SELECT
        sp.pro_id as proId,
        sph.has_steel as reinforcementId
    FROM
        sys_project sp
        LEFT JOIN sys_pro_has sph ON sp.pro_id = sph.pro_id
        where sp.is_use=1
        and sp.pro_id=#{proId}
  </select>
  <select id="needProSizePipe" resultType="java.lang.Integer">
    SELECT
    COUNT(block_num) as  block
FROM
    t_steel_produce
WHERE
    is_use = 1  and is_qualified='1'
    AND pro_id = #{proId}
    AND size_id = #{sizeId}
    AND reinforcement_id = #{reinforcementId}
    and print_time like concat('%',#{years},'%')
    GROUP BY block_num
  </select>
</mapper>