SpareStoreMapper.xml 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.platform.dao.mapper.store.SpareStoreMapper">
  4. <sql id="Base_Column_List">
  5. sparestore.id,
  6. sparestore.spare_id,
  7. sparestore.store_id,
  8. sparestore.batch_id,
  9. sparestore.batch_user_id,
  10. sparestore.num,
  11. sparestore.qr_code,
  12. sparestore.init_num,
  13. sparestore.init_price,
  14. sparestore.price,
  15. sparestore.init_purchase_price,
  16. sparestore.sort,
  17. sparestore.del_flag,
  18. sparestore.remark,
  19. sparestore.created_user_id,
  20. sparestore.created_user_name,
  21. sparestore.update_user_id,
  22. sparestore.update_user_name,
  23. sparestore.created_time,
  24. sparestore.update_time
  25. </sql>
  26. <sql id="Ref_Column_List">
  27. sparestore.spare_id,
  28. sparestore.store_id,
  29. sparestore.batch_id,
  30. sparestore.batch_user_id,
  31. sparestore.qr_code,
  32. sparestore.num,
  33. sparestore.init_num,
  34. sparestore.init_price,
  35. sparestore.price,
  36. sparestore.init_purchase_price,
  37. sparestore.sort,
  38. sparestore.del_flag,
  39. sparestore.remark,
  40. </sql>
  41. <sql id="List_Condition">
  42. <if test="id != null and id != ''">
  43. and sparestore.id = #{id}
  44. </if>
  45. <if test="spareId != null and spareId != ''">
  46. and sparestore.spare_id = #{spareId}
  47. </if>
  48. <if test="storeId != null and storeId != ''">
  49. and sparestore.store_id = #{storeId}
  50. </if>
  51. <if test="num != null">
  52. and sparestore.num > #{num}
  53. </if>
  54. <if test="sort != null">
  55. and sparestore.sort = #{sort}
  56. </if>
  57. <if test="delFlag != null">
  58. and sparestore.del_flag = #{delFlag}
  59. </if>
  60. <if test="remark != null and remark != ''">
  61. and sparestore.remark = #{remark}
  62. </if>
  63. <if test="createdUserId != null and createdUserId != ''">
  64. and sparestore.created_user_id = #{createdUserId}
  65. </if>
  66. <if test="createdUserName != null and createdUserName != ''">
  67. and sparestore.created_user_name = #{createdUserName}
  68. </if>
  69. <if test="updateUserId != null and updateUserId != ''">
  70. and sparestore.update_user_id = #{updateUserId}
  71. </if>
  72. <if test="updateUserName != null and updateUserName != ''">
  73. and sparestore.update_user_name = #{updateUserName}
  74. </if>
  75. <if test="createdTimeStart != null">
  76. and sparestore.created_time <![CDATA[>=]]>; #{createdTimeStart}
  77. </if>
  78. <if test="createdTimeEnd != null">
  79. and sparestore.created_time <![CDATA[<=]]> #{createdTimeEnd}
  80. </if>
  81. <if test="createdTime != null">
  82. and sparestore.created_time = #{createdTime}
  83. </if>
  84. <if test="updateTimeStart != null">
  85. and sparestore.update_time <![CDATA[>=]]>; #{updateTimeStart}
  86. </if>
  87. <if test="updateTimeEnd != null">
  88. and sparestore.update_time <![CDATA[<=]]> #{updateTimeEnd}
  89. </if>
  90. <if test="updateTime != null">
  91. and sparestore.update_time = #{updateTime}
  92. </if>
  93. </sql>
  94. <select id="selectCurrentStock" resultType="java.lang.Integer">
  95. SELECT SUM(num) FROM t_spare_store
  96. <where>
  97. spare_id = #{id}
  98. </where>
  99. </select>
  100. <select id="selectTotalStock" parameterType="com.platform.dao.dto.store.SpareStoreDTO"
  101. resultType="com.platform.dao.vo.query.store.SpareStoreVO">
  102. SELECT
  103. info.id AS spareId,
  104. info.NO,
  105. info.NAME,
  106. info.unit,
  107. info.init_no AS initNo,
  108. info.ggxh,
  109. info.initial_value as price,
  110. FIRST.totalStock
  111. FROM
  112. t_spare_part_info info
  113. LEFT JOIN
  114. (
  115. SELECT
  116. sparestore.spare_id,
  117. SUM( num ) AS totalStock
  118. FROM
  119. t_spare_store sparestore
  120. <where>
  121. <if test="storeIdList != null and storeIdList.size > 0">
  122. store_id in
  123. <foreach item="item" index="index" collection="storeIdList" open="(" close=")" separator=",">
  124. #{item}
  125. </foreach>
  126. </if>
  127. <if test="typeId != null and typeId != ''">
  128. and info.type_id = #{typeId}
  129. </if>
  130. </where>
  131. GROUP BY
  132. sparestore.spare_id
  133. )
  134. FIRST ON info.id = FIRST.spare_id
  135. </select>
  136. <select id="selectList" parameterType="com.platform.dao.dto.store.SpareStoreDTO"
  137. resultType="com.platform.dao.vo.query.store.SpareStoreVO">
  138. select sparestore.*, convert((sparestore.price * sparestore.num), decimal(10,2)) as totalPrice,
  139. store.name storeName,
  140. spareinfo.name spareName, spareinfo.no, spareinfo.ggxh, spareinfo.init_no,
  141. spareinfo.unit, spareinfo.image
  142. from t_spare_store as sparestore
  143. left join t_store store on store.id = sparestore.store_id
  144. left join t_spare_part_info spareinfo on spareinfo.id = sparestore.spare_id
  145. left join t_spare_type spareType on spareType.id = spareinfo.type_id
  146. <where>
  147. <include refid="List_Condition"/>
  148. <if test="keyword != null and keyword != ''">
  149. and (
  150. spareinfo.name like concat('%',#{keyword},'%')
  151. or spareinfo.no like concat('%',#{keyword},'%')
  152. )
  153. </if>
  154. <if test="typeId != null and typeId != ''">
  155. and spareinfo.type_id = #{typeId}
  156. </if>
  157. <if test="parentTypeId != null and parentTypeId != ''">
  158. and spareinfo.parent_type_id = #{parentTypeId}
  159. </if>
  160. <if test="middleTypeId != null and middleTypeId != ''">
  161. and spareinfo.middle_type_id = #{middleTypeId}
  162. </if>
  163. <if test="childTypeId != null and childTypeId != ''">
  164. and spareinfo.child_type_id = #{childTypeId}
  165. </if>
  166. <if test="ggxh != null and ggxh != ''">
  167. and spareinfo.ggxh = #{ggxh}
  168. </if>
  169. <if test="initNo != null and initNo != ''">
  170. and spareinfo.init_no = #{initNo}
  171. </if>
  172. <if test="typeNameLike != null and typeNameLike != ''">
  173. and spareType.name like concat('%',#{typeNameLike},'%')
  174. </if>
  175. <if test="useCompany != null and useCompany != ''">
  176. and store.use_company = #{useCompany}
  177. </if>
  178. <if test="useProject != null and useProject != ''">
  179. and store.use_project = #{useProject}
  180. </if>
  181. <if test="userId != null and userId != ''">
  182. and store.user_id = #{userId}
  183. </if>
  184. </where>
  185. </select>
  186. <select id="selectDetail" parameterType="com.platform.dao.dto.store.SpareStoreDTO"
  187. resultType="com.platform.dao.vo.query.store.SpareStoreVO">
  188. select sparestore.*, store.name storeName, spareinfo.name spareName, spareinfo.no, spareinfo.ggxh, spareinfo.unit, spareinfo.image
  189. from t_spare_store as sparestore
  190. left join t_store store on store.id = sparestore.store_id
  191. left join t_spare_part_info spareinfo on spareinfo.id = sparestore.spare_id
  192. where sparestore.id = #{id}
  193. </select>
  194. <update id="updateBatch" parameterType="java.util.List">
  195. <foreach collection="list" item="item" index="index" open="" close="" separator=";">
  196. update t_spare_store
  197. <set>
  198. num=#{item.num},
  199. init_num=#{item.initNum},
  200. price=#{item.price},
  201. init_price=#{item.initPrice},
  202. init_purchase_price=#{item.initPurchasePrice}
  203. </set>
  204. where id = #{item.id}
  205. </foreach>
  206. </update>
  207. <update id="updateSpareIdsBatch" parameterType="java.util.List">
  208. <foreach collection="list" item="item" index="index" open="" close="" separator=";">
  209. update t_spare_store
  210. <set>
  211. spare_id=#{item.spareId}
  212. </set>
  213. where id = #{item.id}
  214. </foreach>
  215. </update>
  216. </mapper>