ReportCompanyDataManageMapper.xml 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  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.jzg.console.mapper.ReportCompanyDataManageMapper">
  4. <select id="getReportCompanyDataManagePageListByParams"
  5. resultType="com.jzg.commons.entity.report.dto.ReportCompanyDataManageDto">
  6. SELECT
  7. b.company_id AS companyId,
  8. b.company_name AS companyName,
  9. COALESCE(ptl.partner_company_id, '') AS partnerCompanyId,
  10. COALESCE(eic.name_simple, '') AS partnerCompanyName,
  11. COUNT( DISTINCT b.id ) AS sumOrderNum,
  12. (
  13. SELECT
  14. SUM( fee.total_premium )
  15. FROM
  16. ins_orders io
  17. LEFT JOIN ins_fee_orders fee ON io.id = fee.order_no AND fee.is_delete = 0
  18. WHERE
  19. io.company_id = b.company_id AND io.is_delete = 0
  20. ) AS sumCompanyPremium,
  21. SUM( fee.total_premium ) AS sumPremium,
  22. SUM( CASE WHEN b.product_id = '0330' AND b.parent_id IS NULL THEN fee.total_premium ELSE 0 END ) AS djPremium,
  23. SUM( CASE WHEN b.product_id = '034002' AND b.parent_id IS NULL THEN fee.total_premium ELSE 0 END ) AS dszPremium,
  24. SUM( CASE WHEN b.product_id = '034001' AND b.parent_id IS NULL THEN fee.total_premium ELSE 0 END ) AS dsyPremium,
  25. SUM( CASE WHEN b.product_id = '0330034002' AND b.parent_id IS NOT NULL THEN fee.total_premium ELSE 0 END ) AS jszPremium,
  26. SUM( CASE WHEN b.product_id = '0330034001' AND b.parent_id IS NOT NULL THEN fee.total_premium ELSE 0 END ) AS jsyPremium
  27. FROM
  28. (
  29. SELECT
  30. id,
  31. agreement_id,
  32. company_id,
  33. company_name,
  34. order_status,
  35. product_id,
  36. entry_status,
  37. order_source,
  38. parent_id
  39. FROM
  40. ins_orders
  41. WHERE
  42. entry_status IN ( 1, 2 ) AND is_delete = 0
  43. UNION ALL
  44. SELECT
  45. id,
  46. agreement_id,
  47. company_id,
  48. company_name,
  49. order_status,
  50. product_id,
  51. entry_status,
  52. order_source,
  53. parent_id
  54. FROM
  55. ins_orders
  56. WHERE
  57. entry_status = 3
  58. AND audit_status = 1
  59. AND is_delete = 0
  60. ) b
  61. LEFT JOIN ptl_agreement ptl ON b.agreement_id = ptl.id AND ptl.is_delete = 0
  62. LEFT JOIN esm_ins_company eic ON eic.id = ptl.partner_company_id AND eic.is_delete = 0
  63. LEFT JOIN ins_fee_orders fee ON b.id = fee.order_no AND fee.is_delete = 0
  64. GROUP BY
  65. b.company_id,
  66. b.company_name,
  67. ptl.partner_company_id,
  68. eic.name_simple
  69. ORDER BY
  70. b.company_id,
  71. ptl.partner_company_id
  72. </select>
  73. <select id="getReportCompanyDataManageAllListByParams"
  74. resultType="com.jzg.commons.entity.report.dto.ReportCompanyDataManageDto">
  75. SELECT
  76. b.company_id AS companyId,
  77. b.company_name AS companyName,
  78. COALESCE(ptl.partner_company_id, '') AS partnerCompanyId,
  79. COALESCE(eic.name_simple, '') AS partnerCompanyName,
  80. COUNT( DISTINCT b.id ) AS sumOrderNum,
  81. (
  82. SELECT
  83. SUM( fee.total_premium )
  84. FROM
  85. ins_orders io
  86. LEFT JOIN ins_fee_orders fee ON io.id = fee.order_no AND fee.is_delete = 0
  87. WHERE
  88. io.company_id = b.company_id AND io.is_delete = 0
  89. ) AS sumCompanyPremium,
  90. SUM( fee.total_premium ) AS sumPremium,
  91. SUM( CASE WHEN b.product_id = '0330' AND b.parent_id IS NULL THEN fee.total_premium ELSE 0 END ) AS djPremium,
  92. SUM( CASE WHEN b.product_id = '034002' AND b.parent_id IS NULL THEN fee.total_premium ELSE 0 END ) AS dszPremium,
  93. SUM( CASE WHEN b.product_id = '034001' AND b.parent_id IS NULL THEN fee.total_premium ELSE 0 END ) AS dsyPremium,
  94. SUM( CASE WHEN b.product_id = '0330034002' AND b.parent_id IS NOT NULL THEN fee.total_premium ELSE 0 END ) AS jszPremium,
  95. SUM( CASE WHEN b.product_id = '0330034001' AND b.parent_id IS NOT NULL THEN fee.total_premium ELSE 0 END ) AS jsyPremium
  96. FROM
  97. (
  98. SELECT
  99. id,
  100. agreement_id,
  101. company_id,
  102. company_name,
  103. order_status,
  104. product_id,
  105. entry_status,
  106. order_source,
  107. parent_id
  108. FROM
  109. ins_orders
  110. WHERE
  111. entry_status IN ( 1, 2 ) AND is_delete = 0
  112. UNION ALL
  113. SELECT
  114. id,
  115. agreement_id,
  116. company_id,
  117. company_name,
  118. order_status,
  119. product_id,
  120. entry_status,
  121. order_source,
  122. parent_id
  123. FROM
  124. ins_orders
  125. WHERE
  126. entry_status = 3
  127. AND audit_status = 1
  128. AND is_delete = 0
  129. ) b
  130. LEFT JOIN ptl_agreement ptl ON b.agreement_id = ptl.id AND ptl.is_delete = 0
  131. LEFT JOIN esm_ins_company eic ON eic.id = ptl.partner_company_id AND eic.is_delete = 0
  132. LEFT JOIN ins_fee_orders fee ON b.id = fee.order_no AND fee.is_delete = 0
  133. GROUP BY
  134. b.company_id,
  135. b.company_name,
  136. ptl.partner_company_id,
  137. eic.name_simple
  138. ORDER BY
  139. b.company_id,
  140. ptl.partner_company_id
  141. </select>
  142. </mapper>