PurchaseMapper.xml 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  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.fjhx.purchase.mapper.purchase.PurchaseMapper">
  4. <select id="getPage" resultType="com.fjhx.purchase.entity.purchase.vo.PurchaseVo">
  5. select p.*,
  6. (SELECT IFNULL(SUM(IFNULL(money, 0) * IFNULL(arw.rate, 0)), 0)
  7. FROM pay_detail t1
  8. LEFT JOIN pay t2 ON t1.pay_id = t2.id
  9. JOIN bytesailing_account.account_payment ap ON ap.business_id = t2.id
  10. JOIN bytesailing_account.account_running_water arw ON arw.business_id = ap.id
  11. WHERE t2.`status` &gt;= 30
  12. AND t2.`status` &lt; 88
  13. AND t1.purchase_id = p.id) AS paySumAmount,
  14. (SELECT `code` FROM `bytesailing_sale`.contract WHERE id = p.data_resource_id) AS contractCode
  15. from purchase p
  16. ${ew.customSqlSegment}
  17. </select>
  18. <select id="paymentBill" resultType="com.fjhx.purchase.entity.purchase.dto.PurchaseDto">
  19. SELECT pu.code,
  20. pu.supply_id,
  21. bs.`name` supplyName,
  22. pu.amount,
  23. IFNULL(SUM(nd.money), 0) invoiceAmount,
  24. pu.pay_status payStatus,
  25. pu.currency,
  26. pu.id
  27. FROM purchase pu
  28. LEFT JOIN bytesailing_supply.supplier_info bs ON pu.supply_id = bs.id
  29. LEFT JOIN invoice_details nd on pu.id = nd.purchase_id
  30. ${ew.customSqlSegment}
  31. </select>
  32. <select id="arrivalAmount" resultType="com.fjhx.purchase.entity.purchase.dto.PurchaseDto">
  33. SELECT SUM(wd.receipt_quantity * pd.price) amount,
  34. pd.purchase_id id
  35. FROM bytesailing_wms.stock_wait sw
  36. JOIN bytesailing_wms.stock_wait_details wd on sw.id = wd.stock_wait_id
  37. JOIN arrival_detail ad on wd.business_details_id = ad.id
  38. JOIN purchase_detail pd on ad.purchase_detail_id = pd.id
  39. ${ew.customSqlSegment}
  40. </select>
  41. <select id="paidAmount" resultType="com.fjhx.purchase.entity.purchase.dto.PurchaseDto">
  42. SELECT
  43. sum(pd.money) amount,
  44. p.currency,
  45. pd.purchase_id id
  46. FROM
  47. pay_detail pd
  48. LEFT JOIN pay p ON pd.pay_id = p.id
  49. ${ew.customSqlSegment}
  50. </select>
  51. </mapper>