PaymentMapper.xml 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  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="cn.com.ty.lift.business.contract.dao.mapper.PaymentMapper" >
  4. <resultMap id="BaseResultMap" type="cn.com.ty.lift.business.contract.dao.entity.Payment" >
  5. <id column="id" property="id" jdbcType="BIGINT" />
  6. <result column="contracts_id" property="contractsId" jdbcType="BIGINT" />
  7. <result column="type" property="type" jdbcType="INTEGER" />
  8. <result column="summary" property="summary" jdbcType="VARCHAR" />
  9. <result column="plan_money" property="planMoney" jdbcType="DECIMAL" />
  10. <result column="work_money" property="workMoney" jdbcType="DECIMAL" />
  11. <result column="plan_date" property="planDate" jdbcType="TIMESTAMP" />
  12. <result column="work_date" property="workDate" jdbcType="TIMESTAMP" />
  13. <result column="cashier_user" property="cashierUser" jdbcType="BIGINT" />
  14. <result column="is_ticket" property="isTicket" jdbcType="INTEGER" />
  15. <result column="is_collection" property="isCollection" jdbcType="INTEGER" />
  16. <result column="remarks" property="remarks" jdbcType="LONGVARCHAR" />
  17. <result column="status" property="status" jdbcType="INTEGER" />
  18. <result column="note_img_url" property="noteImgUrl" jdbcType="LONGVARCHAR" />
  19. <result column="bank_img_url" property="bankImgUrl" jdbcType="LONGVARCHAR" />
  20. <result column="create_date" property="createDate" jdbcType="TIMESTAMP" />
  21. <result column="code" property="code" jdbcType="VARCHAR" />
  22. <result column="amount_invoice" property="amountInvoice" jdbcType="DECIMAL" />
  23. <result column="billing_date" property="billingDate" jdbcType="TIMESTAMP" />
  24. <result column="periods" property="periods" jdbcType="VARCHAR" />
  25. <result column="cost_name" property="CostName" jdbcType="VARCHAR" />
  26. <result column="cost_desc" property="CostDesc" jdbcType="VARCHAR" />
  27. </resultMap>
  28. <sql id="Base_Column_List" >
  29. id, contracts_id, type, summary, plan_money, work_money, plan_date, work_date, cashier_user,
  30. is_ticket, is_collection, remarks, status, note_img_url, bank_img_url, create_date, code, amount_invoice, billing_date,
  31. periods, cost_name, cost_desc
  32. </sql>
  33. <select id="findProjectByCondition" parameterType="cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest"
  34. resultType="cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentListResponse">
  35. SELECT
  36. p.id AS projectId,
  37. c.id AS contractId,
  38. c.code AS contractCode,
  39. p.project_name AS projectName,
  40. pa.code AS paymentCode,
  41. pa.plan_money AS receivableAmount,
  42. pa.work_money AS receivedAmount,
  43. (pa.plan_money - pa.work_money) AS unCollectedAmount,
  44. pa.plan_date AS planDate,
  45. pa.cashier_user AS cashierUser
  46. FROM contracts c
  47. LEFT JOIN payment pa ON c.id = pa.contracts_id
  48. LEFT JOIN project p ON c.project_id = p.id
  49. WHERE c.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
  50. <if test="request.projectName!=null and request.projectName!=''">
  51. AND p.project_name LIKE CONCAT('%',#{request.projectName,jdbcType=VARCHAR},'%')
  52. </if>
  53. <if test="request.paymentType!=null and request.paymentType!=''">
  54. AND pa.type = #{request.paymentType,jdbcType=VARCHAR}
  55. </if>
  56. </select>
  57. <select id="findCapitalByCondition" parameterType="cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest"
  58. resultType="cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentListResponse">
  59. SELECT
  60. cr.id AS projectId,
  61. c.id AS contractId,
  62. c.code AS contractCode,
  63. cr.project_name AS projectName,
  64. pa.code AS paymentCode,
  65. pa.plan_money AS planMoney,
  66. pa.work_money AS workMoney,
  67. pa.plan_date AS planDate,
  68. pa.work_date AS workDate,
  69. pa.cashier_user AS cashierUser
  70. FROM contracts c
  71. LEFT JOIN payment pa ON c.id = pa.contracts_id
  72. LEFT JOIN capital_repair cr ON c.project_id = cr.id
  73. WHERE c.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
  74. <if test="request.projectName!=null and request.projectName!=''">
  75. AND cr.project_name LIKE CONCAT('%',#{request.projectName,jdbcType=VARCHAR},'%')
  76. </if>
  77. <if test="request.paymentType!=null and request.paymentType!=''">
  78. AND pa.type = #{request.paymentType,jdbcType=VARCHAR}
  79. </if>
  80. </select>
  81. <select id="queryProjectDetailById" parameterType="cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest"
  82. resultType="cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentDetailResponse">
  83. SELECT
  84. p.project_name AS projectName,
  85. p.address AS projectAddress,
  86. c.code AS contractCode,
  87. c.source AS contractSource,
  88. c.type AS contractType,
  89. c.lift_num AS liftNum,
  90. c.star_date AS starDate,
  91. c.end_date AS endDate,
  92. c.pay_mode AS payMode,
  93. c.moneys AS moneys,
  94. c.given_date AS givenDate,
  95. c.given_user AS givenUser,
  96. c.remarks AS remarks
  97. FROM contracts c
  98. LEFT JOIN project p ON c.project_id = p.id
  99. WHERE c.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
  100. <if test="request.id!=null and request.id!=''">
  101. AND c.id = #{request.id,jdbcType=BIGINT}
  102. </if>
  103. </select>
  104. <select id="queryCapitalDetailById" parameterType="cn.com.ty.lift.business.contract.dao.entity.model.request.PaymentRequest"
  105. resultType="cn.com.ty.lift.business.contract.dao.entity.model.response.PaymentDetailResponse">
  106. SELECT
  107. cr.project_name AS projectName,
  108. cr.project_address AS projectAddress,
  109. c.code AS contractCode,
  110. c.source AS contractSource,
  111. c.type AS contractType,
  112. c.lift_num AS liftNum,
  113. c.star_date AS starDate,
  114. c.end_date AS endDate,
  115. c.pay_mode AS payMode,
  116. c.moneys AS moneys,
  117. c.given_date AS givenDate,
  118. c.given_user AS givenUser,
  119. c.remarks AS remarks
  120. FROM contracts c
  121. LEFT JOIN capital_repair cr ON c.project_id = cr.id
  122. WHERE c.mt_company_id = #{request.mtCompanyId,jdbcType=BIGINT}
  123. <if test="request.id!=null and request.id!=''">
  124. AND c.id = #{request.id,jdbcType=BIGINT}
  125. </if>
  126. </select>
  127. </mapper>