SettlementDocumentaryFeesMapper.xml 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  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.ydtech.modules.fnc.dao.SettlementDocumentaryFeesMapper">
  4. <!-- 通用查询映射结果 -->
  5. <resultMap id="BaseResultMap" type="com.ydtech.modules.fnc.entity.SettlementDocumentaryFeesEntity">
  6. <id column="id" property="id" />
  7. <result column="total_orders" property="totalOrders"/>
  8. <result column="time_frame" property="timeFrame"/>
  9. <result column="total_amount" property="totalAmount"/>
  10. <result column="create_time" property="createTime"/>
  11. <result column="settlement_time" property="settlementTime"/>
  12. <result column="end_time" property="endTime"/>
  13. <result column="settlement_amount" property="settlementAmount"/>
  14. <result column="unsettled_amount" property="unsettledAmount"/>
  15. <result column="company_id" property="companyId"/>
  16. <result column="year" property="year"/>
  17. <result column="month" property="month"/>
  18. <result column="day" property="day"/>
  19. <result column="agree_ment_id" property="agreeMentId"/>
  20. <result column="invoice_id" property="invoiceId"/>
  21. <result column="is_not_car" property="isNotCar"/>
  22. <result column="partner_companies_id" property="partnerCompaniesId"/>
  23. <result column="invoicing_method" property="invoicingMethod"/>
  24. <result column="tax_points" property="taxPoints"/>
  25. <result column="expend_amount" property="expendAmount"/>
  26. <result column="parent_id" property="parentId"/>
  27. <result column="handling_fees_status" property="handlingFeesStatus"/>
  28. <result column="agreement_type" property="agreementType"/>
  29. </resultMap>
  30. <select id="querySettle" resultType="com.ydtech.modules.fnc.entity.SettlementDocumentaryFeesEntity">
  31. select
  32. a.id as "id",
  33. a.total_orders as "totalOrders",
  34. a.time_frame as "timeFrame",
  35. a.total_amount as "totalAmount",
  36. a.create_time as "createTime",
  37. a.start_time as "startTime",
  38. a.end_time as "endTime",
  39. a.settlement_amount as "settlementAmount",
  40. a.agree_ment_id as "agreeMentId",
  41. a.partner_companies_id as "partnerCompaniesId",
  42. a.invoicing_method as "invoicingMethod",
  43. a.tax_points as "taxPoints",
  44. a.expend_amount as "expendAmount",
  45. a.parent_id as "parentId",
  46. a.handling_fees_status as "handlingFeesStatus",
  47. a.agreement_type as "agreementType",
  48. a.settlement_time as "settlementTime",
  49. a.unsettled_amount as "unsettledAmount"
  50. from settlement_documentary_fees a
  51. <where>
  52. 1=1
  53. <if test="partnerCompaniesId !=null and partnerCompaniesId !=''">
  54. and a.partner_companies_id =#{partnerCompaniesId}
  55. </if>
  56. <if test="handlingFeesStatus !=null and handlingFeesStatus !=''">
  57. and a.handling_fees_status =#{handlingFeesStatus}
  58. </if>
  59. <if test="isNotCar !=null and isNotCar !=''">
  60. and a.is_not_car =#{isNotCar}
  61. </if>
  62. <if test="agreementType !=null and agreementType !=''">
  63. and a.agreement_type =#{agreementType}
  64. </if>
  65. </where>
  66. </select>
  67. <select id="getOtherSettldetail" resultType="java.util.HashMap">
  68. SELECT
  69. a.id as "id",
  70. a.create_time AS "invoicTime",
  71. a.invoice_id AS "invoicId",
  72. a.tax_points AS "taxPoints",
  73. a.settlement_amount - COALESCE(b.settlementAmount, 0) AS "invoicCommissionFeevalue",
  74. a.agreement_type as "agreementType",
  75. a.invoicing_method AS "invoicingMethod"
  76. FROM
  77. settlement_documentary_fees a
  78. left join (
  79. select a.parent_id as "parentId" ,sum(a.settlement_amount) as "settlementAmount" from
  80. settlement_documentary_fees a
  81. where a.settlement_status ='2' and a.parent_id is not null
  82. GROUP BY a.parent_id
  83. ) b on a.id=b.parentId
  84. <where>
  85. 1=1
  86. and a.settlement_status ='1'
  87. and a.settlement_amount - COALESCE(b.settlementAmount, 0) &lt;&gt; 0
  88. <if test="partnerCompaniesId !=null and partnerCompaniesId !=''">
  89. and a.partner_companies_id =#{partnerCompaniesId}
  90. </if>
  91. <if test="handlingFeesStatus !=null and handlingFeesStatus !=''">
  92. and a.handling_fees_status =#{handlingFeesStatus}
  93. </if>
  94. <if test="isNotCar !=null and isNotCar !=''">
  95. and a.is_not_car =#{isNotCar}
  96. </if>
  97. <if test="invoiceIds !=null and invoiceIds !='' and invoiceIds.length>0">
  98. and a.id IN
  99. <foreach item="item" index="index" collection="invoiceIds" open="(" separator="," close=")">
  100. #{item}
  101. </foreach>
  102. </if>
  103. </where>
  104. </select>
  105. <update id="batchByInvoice" parameterType="java.util.HashMap">
  106. update settlement_documentary_fees
  107. <set>
  108. settlement_status = '2',
  109. settlement_time = NOW(),
  110. <if test="settlementAmount !=null and settlementAmount !=''">
  111. settlement_amount =#{settlementAmount}
  112. </if>
  113. </set>
  114. <where>
  115. <if test="ids !=null and ids!='' and ids.length>0">
  116. id in
  117. <foreach collection="ids" item="item" open="(" separator="," close=")">
  118. #{item}
  119. </foreach>
  120. </if>
  121. </where>
  122. </update>
  123. <select id="getInvoicIds" resultType="java.util.HashMap">
  124. SELECT
  125. a.id as "id",
  126. a.partner_companies_id AS "partnerCompaniesId"
  127. FROM settlement_documentary_fees a
  128. <where>
  129. a.settlement_status = '1'
  130. <if test="isNotCar !=null and isNotCar !=''">
  131. and a.is_not_car =#{isNotCar}
  132. </if>
  133. <if test="handlingFeesStatus !=null and handlingFeesStatus !=''">
  134. a.handling_fees_status=#{handlingFeesStatus}
  135. </if>
  136. </where>
  137. </select>
  138. </mapper>