LocationPriorityHeaderMapper.xml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.ruoyi.ams.config.mapper.LocationPriorityHeaderMapper">
  6. <resultMap type="locationPriorityHeaderVO" id="LocationPriorityHeaderResult">
  7. <result property="id" column="id" />
  8. <result property="flowName" column="flow_name" />
  9. <result property="locationZone" column="location_zone" />
  10. <result property="locationZoneName" column="location_zone_name" />
  11. <result property="mixedFlag" column="mixed_flag" />
  12. <result property="parallelFlag" column="parallel_flag" />
  13. <result property="parallelCount" column="parallel_count" />
  14. <result property="outerFlag" column="outer_flag" />
  15. <result property="periodFlag" column="period_flag" />
  16. <result property="sameLotattFlag" column="same_lotatt_flag" />
  17. <result property="status" column="status" />
  18. <result property="userdefine1" column="userdefine1" />
  19. <result property="userdefine2" column="userdefine2" />
  20. <result property="userdefine3" column="userdefine3" />
  21. <result property="userdefine4" column="userdefine4" />
  22. <result property="userdefine5" column="userdefine5" />
  23. <result property="createBy" column="create_by" />
  24. <result property="createTime" column="create_time" />
  25. <result property="updateBy" column="update_by" />
  26. <result property="updateTime" column="update_time" />
  27. <result property="remark" column="remark" />
  28. <result property="sku" column="sku" />
  29. </resultMap>
  30. <resultMap id="LocationPriorityHeaderLocationPriorityDetailsResult" type="LocationPriorityHeaderVO" extends="LocationPriorityHeaderResult">
  31. <collection property="locationPriorityDetailsList" notNullColumn="sub_id" javaType="java.util.List" resultMap="LocationPriorityDetailsResult" />
  32. </resultMap>
  33. <resultMap type="LocationPriorityDetailsVO" id="LocationPriorityDetailsResult">
  34. <result property="id" column="sub_id" />
  35. <result property="headerId" column="sub_header_id" />
  36. <result property="lotattId" column="sub_lotatt_id" />
  37. <result property="lotattValue" column="sub_lotatt_value" />
  38. <result property="lotattName" column="sub_lotatt_name" />
  39. <result property="inputType" column="sub_input_type" />
  40. <result property="createBy" column="sub_create_by" />
  41. <result property="createTime" column="sub_create_time" />
  42. <result property="updateBy" column="sub_update_by" />
  43. <result property="updateTime" column="sub_update_time" />
  44. <result property="remark" column="sub_remark" />
  45. </resultMap>
  46. <sql id="selectLocationPriorityHeaderVo">
  47. select id, flow_name, location_zone, mixed_flag, parallel_flag, parallel_count, outer_flag, period_flag, same_lotatt_flag, status, userdefine1, userdefine2, userdefine3, userdefine4, userdefine5, create_by, create_time, update_by, update_time, remark, sku from location_priority_header
  48. </sql>
  49. <select id="selectLocationPriorityHeaderList" parameterType="LocationPriorityHeader" resultMap="LocationPriorityHeaderResult">
  50. <!-- <include refid="selectLocationPriorityHeaderVo"/> -->
  51. select h.id, h.flow_name, h.location_zone, z.zone_name location_zone_name, h.mixed_flag, h.parallel_flag, h.parallel_count, h.outer_flag, h.period_flag, h.same_lotatt_flag, h.status, h.userdefine1, h.userdefine2, h.userdefine3, h.userdefine4, h.userdefine5, h.create_by, h.create_time, h.update_by, h.update_time, h.remark, h.sku
  52. from location_priority_header h
  53. left join base_location_zone z on h.location_zone = z.zone_id
  54. <where>
  55. <if test="flowName != null and flowName != ''"> and flow_name like concat('%', #{flowName}, '%')</if>
  56. <if test="locationZone != null and locationZone != ''"> and location_zone = #{locationZone}</if>
  57. <if test="status != null "> and status = #{status}</if>
  58. <if test="sku != null and sku != ''"> and sku = #{sku}</if>
  59. </where>
  60. </select>
  61. <select id="selectLocationPriorityDetailsList" parameterType="Long" resultMap="LocationPriorityDetailsResult">
  62. select
  63. b.id as sub_id, b.header_id as sub_header_id, b.lotatt_id as sub_lotatt_id, b.lotatt_value as sub_lotatt_value, b.create_by as sub_create_by, b.create_time as sub_create_time, b.update_by as sub_update_by, b.update_time as sub_update_time, b.remark as sub_remark
  64. from location_priority_details b where header_id = #{id}
  65. </select>
  66. <select id="selectLocationPriorityHeaderById" parameterType="Long" resultMap="LocationPriorityHeaderLocationPriorityDetailsResult">
  67. select a.id, a.flow_name, a.location_zone, a.mixed_flag, a.parallel_flag, a.parallel_count, a.outer_flag, a.period_flag, a.same_lotatt_flag, a.status, a.userdefine1, a.userdefine2, a.userdefine3, a.userdefine4, a.userdefine5, a.create_by, a.create_time, a.update_by, a.update_time, a.remark, a.sku,
  68. b.id as sub_id, b.header_id as sub_header_id, b.lotatt_id as sub_lotatt_id,c.lotatt_name as sub_lotatt_name, b.lotatt_value as sub_lotatt_value, b.create_by as sub_create_by, b.create_time as sub_create_time, b.update_by as sub_update_by, b.update_time as sub_update_time, b.remark as sub_remark,
  69. c.input_type as sub_input_type
  70. from location_priority_header a
  71. left join location_priority_details b on b.header_id = a.id
  72. left join lotatt_config c on b.lotatt_id = c.lotatt_id
  73. where a.id = #{id}
  74. </select>
  75. <insert id="insertLocationPriorityHeader" parameterType="LocationPriorityHeader" useGeneratedKeys="true" keyProperty="id">
  76. insert into location_priority_header
  77. <trim prefix="(" suffix=")" suffixOverrides=",">
  78. <if test="flowName != null">flow_name,</if>
  79. <if test="locationZone != null">location_zone,</if>
  80. <if test="mixedFlag != null">mixed_flag,</if>
  81. <if test="parallelFlag != null">parallel_flag,</if>
  82. <if test="parallelCount != null">parallel_count,</if>
  83. <if test="outerFlag != null">outer_flag,</if>
  84. <if test="periodFlag != null">period_flag,</if>
  85. <if test="sameLotattFlag != null">same_lotatt_flag,</if>
  86. <if test="status != null">status,</if>
  87. <if test="userdefine1 != null">userdefine1,</if>
  88. <if test="userdefine2 != null">userdefine2,</if>
  89. <if test="userdefine3 != null">userdefine3,</if>
  90. <if test="userdefine4 != null">userdefine4,</if>
  91. <if test="userdefine5 != null">userdefine5,</if>
  92. <if test="createBy != null">create_by,</if>
  93. <if test="createTime != null">create_time,</if>
  94. <if test="updateBy != null">update_by,</if>
  95. <if test="updateTime != null">update_time,</if>
  96. <if test="remark != null">remark,</if>
  97. <if test="sku != null">sku,</if>
  98. </trim>
  99. <trim prefix="values (" suffix=")" suffixOverrides=",">
  100. <if test="flowName != null">#{flowName},</if>
  101. <if test="locationZone != null">#{locationZone},</if>
  102. <if test="mixedFlag != null">#{mixedFlag},</if>
  103. <if test="parallelFlag != null">#{parallelFlag},</if>
  104. <if test="parallelCount != null">#{parallelCount},</if>
  105. <if test="outerFlag != null">#{outerFlag},</if>
  106. <if test="periodFlag != null">#{periodFlag},</if>
  107. <if test="sameLotattFlag != null">#{sameLotattFlag},</if>
  108. <if test="status != null">#{status},</if>
  109. <if test="userdefine1 != null">#{userdefine1},</if>
  110. <if test="userdefine2 != null">#{userdefine2},</if>
  111. <if test="userdefine3 != null">#{userdefine3},</if>
  112. <if test="userdefine4 != null">#{userdefine4},</if>
  113. <if test="userdefine5 != null">#{userdefine5},</if>
  114. <if test="createBy != null">#{createBy},</if>
  115. <if test="createTime != null">#{createTime},</if>
  116. <if test="updateBy != null">#{updateBy},</if>
  117. <if test="updateTime != null">#{updateTime},</if>
  118. <if test="remark != null">#{remark},</if>
  119. <if test="sku != null">#{sku},</if>
  120. </trim>
  121. </insert>
  122. <update id="updateLocationPriorityHeader" parameterType="LocationPriorityHeader">
  123. update location_priority_header
  124. <trim prefix="SET" suffixOverrides=",">
  125. <if test="flowName != null">flow_name = #{flowName},</if>
  126. <if test="locationZone != null">location_zone = #{locationZone},</if>
  127. <if test="mixedFlag != null">mixed_flag = #{mixedFlag},</if>
  128. <if test="parallelFlag != null">parallel_flag = #{parallelFlag},</if>
  129. <if test="parallelCount != null">parallel_count = #{parallelCount},</if>
  130. <if test="outerFlag != null">outer_flag = #{outerFlag},</if>
  131. <if test="periodFlag != null">period_flag = #{periodFlag},</if>
  132. <if test="sameLotattFlag != null">same_lotatt_flag = #{sameLotattFlag},</if>
  133. <if test="status != null">status = #{status},</if>
  134. <if test="userdefine1 != null">userdefine1 = #{userdefine1},</if>
  135. <if test="userdefine2 != null">userdefine2 = #{userdefine2},</if>
  136. <if test="userdefine3 != null">userdefine3 = #{userdefine3},</if>
  137. <if test="userdefine4 != null">userdefine4 = #{userdefine4},</if>
  138. <if test="userdefine5 != null">userdefine5 = #{userdefine5},</if>
  139. <if test="createBy != null">create_by = #{createBy},</if>
  140. <if test="createTime != null">create_time = #{createTime},</if>
  141. <if test="updateBy != null">update_by = #{updateBy},</if>
  142. <if test="updateTime != null">update_time = #{updateTime},</if>
  143. <if test="remark != null">remark = #{remark},</if>
  144. <if test="sku != null">sku = #{sku},</if>
  145. </trim>
  146. where id = #{id}
  147. </update>
  148. <delete id="deleteLocationPriorityHeaderById" parameterType="Long">
  149. delete from location_priority_header where id = #{id}
  150. </delete>
  151. <delete id="deleteLocationPriorityHeaderByIds" parameterType="String">
  152. delete from location_priority_header where id in
  153. <foreach item="id" collection="array" open="(" separator="," close=")">
  154. #{id}
  155. </foreach>
  156. </delete>
  157. <delete id="deleteLocationPriorityDetailsByHeaderIds" parameterType="String">
  158. delete from location_priority_details where header_id in
  159. <foreach item="headerId" collection="array" open="(" separator="," close=")">
  160. #{headerId}
  161. </foreach>
  162. </delete>
  163. <delete id="deleteLocationPriorityDetailsByHeaderId" parameterType="Long">
  164. delete from location_priority_details where header_id = #{headerId}
  165. </delete>
  166. <insert id="batchLocationPriorityDetails">
  167. insert into location_priority_details( id, header_id, lotatt_id, lotatt_value, create_by, create_time, update_by, update_time, remark) values
  168. <foreach item="item" index="index" collection="list" separator=",">
  169. ( #{item.id}, #{item.headerId}, #{item.lotattId}, #{item.lotattValue}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime}, #{item.remark})
  170. </foreach>
  171. </insert>
  172. <select id="selectZoneIdListBySku" parameterType="string" resultType="java.lang.Long">
  173. select z.zone_id from base_location_zone z left join location_priority_header l on z.zone_id = l.location_zone
  174. where l.sku = #{sku} or l.sku is null
  175. </select>
  176. </mapper>