machineNumberMapper.xml 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC
  4. "-//mybatis.org//DTD Mapper 3.0//EN"
  5. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  6. <!-- 命名,每一个映射对象不一样
  7. namespace:必须与对应的接口全类名一致
  8. -->
  9. <mapper namespace="com.iamberry.wechat.service.mapper.MachineNumberMapper">
  10. <!-- 添加日志记录-->
  11. <insert id="addNumberLogs" parameterType="MachineNumberLogs">
  12. INSERT INTO tb_iamberry_user_machine_number_logs
  13. (logs_batch,logs_number,logs_remark,logs_create_time)
  14. VALUES
  15. (#{logsBatch},#{logsNumber},#{logsRemark},NOW())
  16. </insert>
  17. <!-- 添加机器编号,二维码-->
  18. <insert id="addMachineNumber" parameterType="MachineNumber">
  19. INSERT INTO tb_iamberry_user_machine_number
  20. (number_qrcode,number_barcode,number_batch,number_status,number_create_time)
  21. VALUES
  22. (#{numberQrcode},#{numberBarcode},#{numberBatch},1,NOW())
  23. </insert>
  24. <sql id="numberLogs">
  25. nl.logs_id logsId,
  26. nl.logs_batch logsBatch,
  27. nl.logs_number logsNumber,
  28. nl.logs_remark logsRemark,
  29. nl.logs_create_time logsCreateTime
  30. </sql>
  31. <!-- 统计批次及已完成条数-->
  32. <select id="listNumberLogs" parameterType="Page" resultType="MachineNumberLogs">
  33. SELECT
  34. <include refid="numberLogs"/>,count(mn.number_batch) as qrCodeNumber,count(mn.number_batch) as completedNumber
  35. FROM
  36. tb_iamberry_user_machine_number_logs nl
  37. LEFT JOIN tb_iamberry_user_machine_number mn ON nl.logs_batch = mn.number_batch
  38. <where>
  39. <if test="params.logsBatch!=null and params.logsBatch!='' ">
  40. AND number_batch = #{params.logsBatch}
  41. </if>
  42. <if test="params.beginDate!=null and params.beginDate!=''">
  43. <![CDATA[ AND DATE(number_create_time) >= #{params.beginDate} ]]>
  44. </if>
  45. <if test="params.endDate!=null and params.endDate!=''">
  46. <![CDATA[ AND DATE(number_create_time) <= #{params.endDate} ]]>
  47. </if>
  48. </where>
  49. group by nl.logs_batch
  50. Order By nl.logs_create_time Desc
  51. LIMIT #{pageNo}, #{pageSize}
  52. </select>
  53. <!-- 统计批次及已完成条数总条数-->
  54. <select id="listNumberLogsCount" parameterType="Page" resultType="Integer">
  55. SELECT COUNT(*) from (
  56. SELECT
  57. <include refid="numberLogs"/>,count(mn.number_batch) as qrCodeNumber
  58. FROM
  59. tb_iamberry_user_machine_number_logs nl
  60. LEFT JOIN tb_iamberry_user_machine_number mn ON nl.logs_batch = mn.number_batch
  61. <where>
  62. <if test="params.logsBatch!=null and params.logsBatch!='' ">
  63. AND number_batch = #{params.logsBatch}
  64. </if>
  65. <if test="params.beginDate!=null and params.beginDate!=''">
  66. <![CDATA[ AND DATE(logs_create_time) >= #{params.beginDate} ]]>
  67. </if>
  68. <if test="params.endDate!=null and params.endDate!=''">
  69. <![CDATA[ AND DATE(logs_create_time) <= #{params.endDate} ]]>
  70. </if>
  71. </where>
  72. group by nl.logs_batch) as counts
  73. </select>
  74. <!--查询生产批次二维码列表-->
  75. <select id="listNumberQrCode" parameterType="Page" resultType="MachineNumber">
  76. select * from tb_iamberry_user_machine_number
  77. <where>
  78. <if test="params.logsBatch!=null and params.logsBatch!='' ">
  79. AND number_batch = #{params.logsBatch}
  80. </if>
  81. </where>
  82. <if test="pageNo!=null and pageSize!=null and pageSize > 0 ">
  83. LIMIT #{pageNo}, #{pageSize}
  84. </if>
  85. </select>
  86. <!--查询生产批次二维码列表总数-->
  87. <select id="listNumberQrCodeCount" parameterType="Page" resultType="Integer">
  88. select
  89. count(*)
  90. from
  91. tb_iamberry_user_machine_number
  92. <where>
  93. <if test="params.logsBatch!=null and params.logsBatch!='' ">
  94. number_batch = #{params.logsBatch}
  95. </if>
  96. </where>
  97. </select>
  98. <!-- 根据条件查询机器编号集合,可分页 -->
  99. <select id="listMachineNumber" parameterType="MachineNumber" resultType="MachineNumber">
  100. select
  101. *
  102. from
  103. tb_iamberry_user_machine_number
  104. <where>
  105. <if test="numberId != null and numberId != '' ">
  106. number_id = #{numberId}
  107. </if>
  108. <if test="numberOpenId != null and numberOpenId != '' ">
  109. and number_open_id = #{numberOpenId}
  110. </if>
  111. <if test="numberBarcode != null and numberBarcode != '' ">
  112. and number_barcode = #{numberBarcode}
  113. </if>
  114. </where>
  115. <if test="page!=null and page.pageSize>0 ">
  116. LIMIT ${page.recordBegin},${page.pageSize}
  117. </if>
  118. </select>
  119. <!-- 修改机器编号信息 -->
  120. <update id="updateMachineNumber" parameterType="MachineNumber">
  121. update
  122. tb_iamberry_user_machine_number
  123. <set>
  124. <if test="numberOpenId != null">
  125. number_open_id = #{numberOpenId},
  126. </if>
  127. <if test="numberSalesTime != null">
  128. number_sales_time = #{numberSalesTime},
  129. </if>
  130. <if test="numberSubTime != null">
  131. number_sub_time = #{numberSubTime},
  132. </if>
  133. </set>
  134. <where>
  135. number_barcode = #{numberBarcode}
  136. </where>
  137. </update>
  138. <!-- 查询赠品信息列表 -->
  139. <select id="listUserGift" parameterType="MachineGift" resultType="MachineGift">
  140. select
  141. *
  142. from
  143. tb_iamberry_user_machine_gift
  144. where
  145. gift_status = 1
  146. and
  147. gift_type = #{giftType}
  148. </select>
  149. <!--修改状态为已完成-->
  150. <update id="updateIsprInt" parameterType="String">
  151. UPDATE tb_iamberry_user_machine_number SET number_is_print = 2 WHERE number_id = #{numberId}
  152. </update>
  153. <select id="selectQrcodeLogsByBatch" parameterType="String" resultType="Integer" >
  154. SELECT COUNT(*) FROM tb_iamberry_user_machine_number_logs where logs_batch = #{logsBatch}
  155. </select>
  156. <select id="qrcodProgressUpdate" resultType="MachineNumberLogs">
  157. SELECT
  158. nl.logs_batch logsBatch,nl.logs_number logsNumber,count(mn.number_batch) as qrCodeNumber,count(mn.number_batch) as completedNumber
  159. FROM
  160. tb_iamberry_user_machine_number_logs nl
  161. LEFT JOIN tb_iamberry_user_machine_number mn ON nl.logs_batch = mn.number_batch
  162. <where>
  163. number_batch in
  164. <foreach collection="array" item="item" index="index" open="(" separator="," close=")">
  165. #{item}
  166. </foreach>
  167. </where>
  168. group by nl.logs_batch
  169. </select>
  170. <!-- 添加机器编号,二维码及用户信息-->
  171. <insert id="addMachineNumberAndUser" parameterType="MachineNumber">
  172. INSERT INTO tb_iamberry_user_machine_number
  173. (number_open_id,number_qrcode,number_barcode,number_batch,number_sales_time,number_status,number_create_time,number_sub_time)
  174. VALUES
  175. (#{numberOpenId},#{numberQrcode},#{numberBarcode},#{numberBatch},#{numberSalesTime},1,NOW(),#{numberSubTime})
  176. </insert>
  177. <insert id="addMachineNumberList" parameterType="ArrayList">
  178. <selectKey resultType="int" keyProperty="numberId" order="AFTER">
  179. SELECT
  180. LAST_INSERT_ID()
  181. </selectKey>
  182. INSERT INTO tb_iamberry_user_machine_number
  183. (
  184. number_open_id,number_qrcode,number_barcode,number_batch,number_sales_time,
  185. number_status,number_create_time,number_sub_time
  186. )
  187. VALUES
  188. <foreach collection="list" item="item" index="index" separator="," >
  189. (
  190. #{item.numberOpenId},#{item.numberQrcode},#{item.numberBarcode},#{item.numberBatch},
  191. #{item.numberSalesTime},#{item.numberStatus},NOW(),NOW()
  192. )
  193. </foreach>
  194. </insert>
  195. </mapper>