RepairPayRecordMapper.xml 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  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.repair.mapper.RepairPayRecordMapper">
  4. <resultMap type="com.repair.model.pojo.RepairPayRecord" id="repairPayMap">
  5. <result property="id" column="id"/>
  6. <result property="recordId" column="record_id"/>
  7. <result property="userId" column="user_id"/>
  8. <result property="payNo" column="pay_no"/>
  9. <result property="payPrice" column="pay_price"/>
  10. <result property="isSuccess" column="is_success"/>
  11. <result property="remark" column="remark"/>
  12. </resultMap>
  13. <select id="queryPaymentData" resultType="com.repair.model.pojo.RepairPayRecord" resultMap="repairPayMap">
  14. select rpr.id,rpr.record_id,rpr.user_id,rpr.pay_no,rpr.pay_price,rpr.is_success,rpr.remark from repair_pay_record rpr
  15. inner join repair_record rr on rr.deleted = 0 and rr.record_no = #{recordNo} and rr.id = rpr.record_id
  16. where rpr.deleted = 0
  17. </select>
  18. <select id="queryExport" resultType="com.repair.model.vo.QueryExportVo">
  19. SELECT row_number() over ( ORDER BY dc.pay_time ) AS id, dc.*
  20. FROM
  21. (SELECT
  22. rpr.create_time AS pay_time,
  23. rr.record_no AS record_no,
  24. rpr.pay_no AS pay_no,
  25. ru.user_name as user_name,
  26. rpr.pay_price as pay_price,
  27. (SELECT SUM(rrr.refund_price) FROM repair_refund_record rrr WHERE rrr.record_id=rpr.record_id and
  28. rrr.is_success=2 and rrr.deleted=0) as refund_total_price
  29. FROM
  30. `repair_pay_record` rpr
  31. LEFT JOIN repair_record rr ON rr.deleted = 0
  32. AND rpr.record_id = rr.id
  33. LEFT JOIN repair_user ru on rpr.user_id=ru.id and ru.deleted=0
  34. where
  35. rpr.is_success=2 AND rpr.deleted=0
  36. ) dc
  37. <where>
  38. <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
  39. and report_time between #{startTime} and #{endTime}
  40. </if>
  41. <if test="keyWord != null and keyWord !='' ">
  42. and (dc.user_name like '%' #{keyWord} '%' or dc.record_no like '%' #{keyWord} '%')
  43. </if>
  44. </where>
  45. </select>
  46. </mapper>