SaleOrderMapper.xml 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282
  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.zkqy.business.mapper.SaleOrderMapper">
  6. <resultMap type="com.zkqy.business.domain.SaleOrder" id="SaleOrderResult">
  7. <result property="id" column="id" />
  8. <result property="saleNo" column="sale_no" />
  9. <result property="saleCustomNo" column="sale_custom_no" />
  10. <result property="saleDate" column="sale_date" />
  11. <result property="saleEstimatedTime" column="sale_estimated_time" />
  12. <result property="saleLeadTime" column="sale_lead_time" />
  13. <result property="saleProductsNo" column="sale_products_no" />
  14. <result property="saleAmounts" column="sale_amounts" />
  15. <result property="saleAmountInWords" column="sale_amount_in_words" />
  16. <result property="salePayType" column="sale_pay_type" />
  17. <result property="saleOrderEstimatedTime" column="sale_order_estimated_time" />
  18. <result property="saleOrderTechnologyNo" column="sale_order_technology_no" />
  19. <result property="salesman" column="salesman" />
  20. <result property="saleLeader" column="sale_leader" />
  21. <result property="finance" column="finance" />
  22. <result property="production" column="production" />
  23. <result property="saleApprover" column="sale_approver" />
  24. <result property="status" column="status" />
  25. <result property="orderType" column="order_type" />
  26. <result property="remark" column="remark" />
  27. <result property="createById" column="create_by_id" />
  28. <result property="createBy" column="create_by" />
  29. <result property="createTime" column="create_time" />
  30. <result property="updateById" column="update_by_id" />
  31. <result property="updateBy" column="update_by" />
  32. <result property="updateTime" column="update_time" />
  33. <result property="delFlag" column="del_flag" />
  34. <result property="taskProcessKey" column="task_process_key" />
  35. <result property="taskNodeKey" column="task_node_key" />
  36. <result property="processKey" column="process_key" />
  37. <result property="earnestMoney" column="earnest_money" />
  38. <result property="deliveryDate" column="delivery_date" />
  39. </resultMap>
  40. <sql id="selectSaleOrderVo">
  41. select id, sale_no, sale_custom_no, sale_date, sale_estimated_time, sale_lead_time, sale_products_no, sale_amounts, sale_amount_in_words, sale_pay_type, sale_order_estimated_time, sale_order_technology_no, salesman, sale_leader, finance, production, sale_approver, status, order_type, remark, create_by_id, create_by, create_time, update_by_id, update_by, update_time, del_flag, task_process_key, task_node_key, process_key, earnest_money, delivery_date from {DBNAME}.sale_order
  42. </sql>
  43. <select id="selectSaleOrderList" parameterType="com.zkqy.business.domain.SaleOrder" resultMap="SaleOrderResult">
  44. <include refid="selectSaleOrderVo"/>
  45. where del_flag = '0'
  46. <if test="saleNo != null and saleNo != ''"> and sale_no = #{saleNo}</if>
  47. <if test="saleCustomNo != null and saleCustomNo != ''"> and sale_custom_no = #{saleCustomNo}</if>
  48. <if test="saleDate != null and saleDate != ''"> and sale_date = #{saleDate}</if>
  49. <if test="saleEstimatedTime != null "> and sale_estimated_time = #{saleEstimatedTime}</if>
  50. <if test="saleLeadTime != null and saleLeadTime != ''"> and sale_lead_time = #{saleLeadTime}</if>
  51. <if test="saleProductsNo != null and saleProductsNo != ''"> and sale_products_no = #{saleProductsNo}</if>
  52. <if test="saleAmounts != null "> and sale_amounts = #{saleAmounts}</if>
  53. <if test="saleAmountInWords != null and saleAmountInWords != ''"> and sale_amount_in_words = #{saleAmountInWords}</if>
  54. <if test="salePayType != null and salePayType != ''"> and sale_pay_type = #{salePayType}</if>
  55. <if test="saleOrderEstimatedTime != null and saleOrderEstimatedTime != ''"> and sale_order_estimated_time = #{saleOrderEstimatedTime}</if>
  56. <if test="saleOrderTechnologyNo != null and saleOrderTechnologyNo != ''"> and sale_order_technology_no = #{saleOrderTechnologyNo}</if>
  57. <if test="salesman != null and salesman != ''"> and salesman = #{salesman}</if>
  58. <if test="saleLeader != null and saleLeader != ''"> and sale_leader = #{saleLeader}</if>
  59. <if test="finance != null and finance != ''"> and finance = #{finance}</if>
  60. <if test="production != null and production != ''"> and production = #{production}</if>
  61. <if test="saleApprover != null and saleApprover != ''"> and sale_approver = #{saleApprover}</if>
  62. <if test="status != null and status != ''"> and status = #{status}</if>
  63. <if test="orderType != null and orderType != ''"> and order_type = #{orderType}</if>
  64. <if test="createById != null "> and create_by_id = #{createById}</if>
  65. <if test="updateById != null "> and update_by_id = #{updateById}</if>
  66. <if test="taskProcessKey != null and taskProcessKey != ''"> and task_process_key = #{taskProcessKey}</if>
  67. <if test="taskNodeKey != null and taskNodeKey != ''"> and task_node_key = #{taskNodeKey}</if>
  68. <if test="processKey != null and processKey != ''"> and process_key = #{processKey}</if>
  69. <if test="earnestMoney != null and earnestMoney != ''"> and earnest_money = #{earnestMoney}</if>
  70. <if test="deliveryDate != null and deliveryDate != ''"> and delivery_date = #{deliveryDate}</if>
  71. </select>
  72. <select id="selectSaleOrderById" parameterType="Long" resultMap="SaleOrderResult">
  73. <include refid="selectSaleOrderVo"/>
  74. where id = #{id}
  75. </select>
  76. <insert id="insertSaleOrder" parameterType="com.zkqy.business.domain.SaleOrder" useGeneratedKeys="true" keyProperty="id">
  77. insert into sale_order
  78. <trim prefix="(" suffix=")" suffixOverrides=",">
  79. <if test="saleNo != null">sale_no,</if>
  80. <if test="saleCustomNo != null">sale_custom_no,</if>
  81. <if test="saleDate != null">sale_date,</if>
  82. <if test="saleEstimatedTime != null">sale_estimated_time,</if>
  83. <if test="saleLeadTime != null">sale_lead_time,</if>
  84. <if test="saleProductsNo != null">sale_products_no,</if>
  85. <if test="saleAmounts != null">sale_amounts,</if>
  86. <if test="saleAmountInWords != null">sale_amount_in_words,</if>
  87. <if test="salePayType != null">sale_pay_type,</if>
  88. <if test="saleOrderEstimatedTime != null">sale_order_estimated_time,</if>
  89. <if test="saleOrderTechnologyNo != null">sale_order_technology_no,</if>
  90. <if test="salesman != null">salesman,</if>
  91. <if test="saleLeader != null">sale_leader,</if>
  92. <if test="finance != null">finance,</if>
  93. <if test="production != null">production,</if>
  94. <if test="saleApprover != null">sale_approver,</if>
  95. <if test="status != null">status,</if>
  96. <if test="orderType != null">order_type,</if>
  97. <if test="remark != null">remark,</if>
  98. <if test="createById != null">create_by_id,</if>
  99. <if test="createBy != null">create_by,</if>
  100. <if test="createTime != null">create_time,</if>
  101. <if test="updateById != null">update_by_id,</if>
  102. <if test="updateBy != null">update_by,</if>
  103. <if test="updateTime != null">update_time,</if>
  104. <if test="delFlag != null">del_flag,</if>
  105. <if test="taskProcessKey != null">task_process_key,</if>
  106. <if test="taskNodeKey != null">task_node_key,</if>
  107. <if test="processKey != null">process_key,</if>
  108. <if test="earnestMoney != null">earnest_money,</if>
  109. <if test="deliveryDate != null">delivery_date,</if>
  110. </trim>
  111. <trim prefix="values (" suffix=")" suffixOverrides=",">
  112. <if test="saleNo != null">#{saleNo},</if>
  113. <if test="saleCustomNo != null">#{saleCustomNo},</if>
  114. <if test="saleDate != null">#{saleDate},</if>
  115. <if test="saleEstimatedTime != null">#{saleEstimatedTime},</if>
  116. <if test="saleLeadTime != null">#{saleLeadTime},</if>
  117. <if test="saleProductsNo != null">#{saleProductsNo},</if>
  118. <if test="saleAmounts != null">#{saleAmounts},</if>
  119. <if test="saleAmountInWords != null">#{saleAmountInWords},</if>
  120. <if test="salePayType != null">#{salePayType},</if>
  121. <if test="saleOrderEstimatedTime != null">#{saleOrderEstimatedTime},</if>
  122. <if test="saleOrderTechnologyNo != null">#{saleOrderTechnologyNo},</if>
  123. <if test="salesman != null">#{salesman},</if>
  124. <if test="saleLeader != null">#{saleLeader},</if>
  125. <if test="finance != null">#{finance},</if>
  126. <if test="production != null">#{production},</if>
  127. <if test="saleApprover != null">#{saleApprover},</if>
  128. <if test="status != null">#{status},</if>
  129. <if test="orderType != null">#{orderType},</if>
  130. <if test="remark != null">#{remark},</if>
  131. <if test="createById != null">#{createById},</if>
  132. <if test="createBy != null">#{createBy},</if>
  133. <if test="createTime != null">#{createTime},</if>
  134. <if test="updateById != null">#{updateById},</if>
  135. <if test="updateBy != null">#{updateBy},</if>
  136. <if test="updateTime != null">#{updateTime},</if>
  137. <if test="delFlag != null">#{delFlag},</if>
  138. <if test="taskProcessKey != null">#{taskProcessKey},</if>
  139. <if test="taskNodeKey != null">#{taskNodeKey},</if>
  140. <if test="processKey != null">#{processKey},</if>
  141. <if test="earnestMoney != null">#{earnestMoney},</if>
  142. <if test="deliveryDate != null">#{deliveryDate},</if>
  143. </trim>
  144. </insert>
  145. <update id="updateSaleOrder" parameterType="com.zkqy.business.domain.SaleOrder">
  146. update {DBNAME}.sale_order
  147. <trim prefix="SET" suffixOverrides=",">
  148. <if test="saleNo != null">sale_no = #{saleNo},</if>
  149. <if test="saleCustomNo != null">sale_custom_no = #{saleCustomNo},</if>
  150. <if test="saleDate != null">sale_date = #{saleDate},</if>
  151. <if test="saleEstimatedTime != null">sale_estimated_time = #{saleEstimatedTime},</if>
  152. <if test="saleLeadTime != null">sale_lead_time = #{saleLeadTime},</if>
  153. <if test="saleProductsNo != null">sale_products_no = #{saleProductsNo},</if>
  154. <if test="saleAmounts != null">sale_amounts = #{saleAmounts},</if>
  155. <if test="saleAmountInWords != null">sale_amount_in_words = #{saleAmountInWords},</if>
  156. <if test="salePayType != null">sale_pay_type = #{salePayType},</if>
  157. <if test="saleOrderEstimatedTime != null">sale_order_estimated_time = #{saleOrderEstimatedTime},</if>
  158. <if test="saleOrderTechnologyNo != null">sale_order_technology_no = #{saleOrderTechnologyNo},</if>
  159. <if test="salesman != null">salesman = #{salesman},</if>
  160. <if test="saleLeader != null">sale_leader = #{saleLeader},</if>
  161. <if test="finance != null">finance = #{finance},</if>
  162. <if test="production != null">production = #{production},</if>
  163. <if test="saleApprover != null">sale_approver = #{saleApprover},</if>
  164. <if test="status != null">status = #{status},</if>
  165. <if test="orderType != null">order_type = #{orderType},</if>
  166. <if test="remark != null">remark = #{remark},</if>
  167. <if test="createById != null">create_by_id = #{createById},</if>
  168. <if test="createBy != null">create_by = #{createBy},</if>
  169. <if test="createTime != null">create_time = #{createTime},</if>
  170. <if test="updateById != null">update_by_id = #{updateById},</if>
  171. <if test="updateBy != null">update_by = #{updateBy},</if>
  172. <if test="updateTime != null">update_time = #{updateTime},</if>
  173. <if test="delFlag != null">del_flag = #{delFlag},</if>
  174. <if test="taskProcessKey != null">task_process_key = #{taskProcessKey},</if>
  175. <if test="taskNodeKey != null">task_node_key = #{taskNodeKey},</if>
  176. <if test="processKey != null">process_key = #{processKey},</if>
  177. <if test="earnestMoney != null">earnest_money = #{earnestMoney},</if>
  178. <if test="deliveryDate != null">delivery_date = #{deliveryDate},</if>
  179. </trim>
  180. where id = #{id}
  181. </update>
  182. <delete id="deleteSaleOrderById" parameterType="Long">
  183. delete from sale_order where id = #{id}
  184. </delete>
  185. <update id="deleteSaleOrderByIds" parameterType="String">
  186. update {DBNAME}.sale_order set del_flag = '2' where id in
  187. <foreach item="id" collection="list" open="(" separator="," close=")">
  188. #{id}
  189. </foreach>
  190. </update>
  191. <select id="selectSaleOrderBySaleNo" parameterType="String" resultMap="SaleOrderResult">
  192. <include refid="selectSaleOrderVo"/>
  193. where sale_no = #{saleNo} and del_flag = '0'
  194. </select>
  195. <update id="batchUpdateSaleOrder" parameterType="com.zkqy.business.domain.vo.SaleOrderVO">
  196. update {DBNAME}.sale_order
  197. <trim prefix="SET" suffixOverrides=",">
  198. <if test="salesman != null">salesman = #{salesman},</if>
  199. <if test="saleLeader != null">sale_leader = #{saleLeader},</if>
  200. <if test="finance != null">finance = #{finance},</if>
  201. <if test="production != null">production = #{production},</if>
  202. <if test="saleApprover != null">sale_approver = #{saleApprover},</if>
  203. <if test="status != null">status = #{status},</if>
  204. <if test="orderType != null">order_type = #{orderType},</if>
  205. </trim>
  206. where id in
  207. <foreach item="id" collection="idList" open="(" separator="," close=")">
  208. #{id}
  209. </foreach>
  210. </update>
  211. <update id="updateSaleOrderBatch">
  212. <foreach collection="list" item="item" index="index" open="" close="" separator=";">
  213. update {DBNAME}.sale_order
  214. <set>
  215. lot_number=#{item.lotNumber}
  216. </set>
  217. where sale_no =#{item.saleNo}
  218. </foreach>
  219. </update>
  220. <update id="updateSaleOrderBySaleNo">
  221. update {DBNAME}.sale_order
  222. <trim prefix="SET" suffixOverrides=",">
  223. <if test="lotNumber != null">lot_number = #{lotNumber},</if>
  224. </trim>
  225. where sale_no = #{saleNo}
  226. </update>
  227. <select id="selectCustomerIdBySaleNo" resultType="long">
  228. SELECT
  229. c.id
  230. FROM
  231. {DBNAME}.sale_order so
  232. LEFT JOIN {DBNAME}.customer c ON so.sale_custom_no = c.custom_no
  233. WHERE
  234. so.sale_no = #{saleNo}
  235. AND so.del_flag = '0'
  236. AND c.del_flag = '0'
  237. </select>
  238. <select id="saleOrderList" resultType="com.zkqy.business.domain.vo.SaleOrderVO">
  239. SELECT
  240. so.id,
  241. so.sale_no,
  242. so.sale_date,
  243. c.custom_name,
  244. so.sale_order_estimated_time,
  245. so.sale_lead_time,
  246. so.sale_amount_in_words,
  247. so.sale_pay_type,
  248. so.salesman,
  249. so.sale_leader,
  250. so.finance,
  251. so.production,
  252. so.sale_approver,
  253. so.status,
  254. so.order_type
  255. FROM
  256. {DBNAME}.sale_order so left join {DBNAME}.customer c on so.sale_custom_no = c.custom_no
  257. where so.del_flag = '0' and c.del_flag = '0'
  258. <if test="queryParam != null and queryParam != ''">
  259. AND CONCAT(
  260. IFNULL( sale_order.sale_no, '' ),
  261. IFNULL( customer.custom_name, '' ),
  262. IFNULL( sale_order.sale_lead_time, '' ))
  263. LIKE concat('%', #{queryParam}, '%')
  264. </if>
  265. <if test="createById != null "> and so.create_by_id = #{createById}</if>
  266. <if test="orderType != null"> and so.order_type = #{orderType}</if>
  267. order by so.id desc
  268. </select>
  269. </mapper>