kongzy
2024-07-01 47a751cb301d05276ae5d75145d57b2d090fe4e1
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
<?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.nanometer.smartlab.dao.OpeReagentCodeDao">
  <resultMap id="OpeReagentCodeMap" type="com.nanometer.smartlab.entity.OpeReagentCode">
    <id property="id" column="id"/>
    <result property="orderId" column="order_id"></result>
    <result property="applyId" column="apply_id"></result>
    <result property="startCode" column="start_code"></result>
    <result property="endCode" column="end_code"></result>
    <result property="codePrex" column="code_prex"></result>
    <result property="createTime" column="create_time"></result>
    <result property="updateTime" column="update_time"></result>
    <result property="status" column="status"></result>
    <result property="num" column="num"></result>
    <result property="reagentName" column="reagent_name"></result>
    <result property="startReagentCode" column="start_reagent_code"></result>
    <result property="endReagentCode" column="end_reagent_code"></result>
    <result property="applyCode" column="apply_code"></result>
  </resultMap>
 
 
 
  <select id="getMaxReagentCode"  resultMap="OpeReagentCodeMap">
    select rc.* from ope_reagent_code as rc
    where code_prex=#{codePrex}
    order by end_code desc
    limit 1
  </select>
 
  <select id="getReagentCode" resultMap="OpeReagentCodeMap">
    select rc.* from ope_reagent_code as rc
    where order_id=#{orderId} and apply_id=#{applyId}
  </select>
 
 
  <select id="getReagentCodeByApplyId" resultMap="OpeReagentCodeMap">
    select rc.*,oa.num,oa.apply_code,sr.name as reagent_name,lpad(start_code,6,'0') as start_reagent_code,lpad(end_code,6,'0') as end_reagent_code from ope_reagent_code as rc
    left join ope_apply oa on oa.id=rc.apply_id
    left join sys_reagent sr on sr.id=oa.reagent_id
    where  apply_id=#{applyId}
  </select>
 
  <insert id="insertReagentCode" parameterType="com.nanometer.smartlab.entity.OpeReagentCode" useGeneratedKeys = "true" keyProperty = "id">
    insert into ope_reagent_code(order_id, apply_id, start_code , end_code, code_prex, create_time, update_time)
    values (#{orderId}, #{applyId}, #{startCode}, #{endCode}, #{codePrex},now(), now())
  </insert>
 
  <insert id="batchInsertReagentCode" parameterType="com.nanometer.smartlab.entity.OpeReagentCode">
    insert into ope_reagent_code(order_id, apply_id, start_code , end_code, code_prex, create_time, update_time)
    values
    <foreach collection ="list" item="reagentCode" separator =",">
      (#{reagentCode.orderId}, #{reagentCode.applyId}, #{reagentCode.startCode}, #{reagentCode.endCode}, #{reagentCode.codePrex},now(), now())
    </foreach >
  </insert>
 
  <update id="updateStatus">
    update ope_reagent_code
    set status=#{status}
    where order_id=#{orderId} and apply_id=#{applyId}
  </update>
 
 
 
</mapper>