| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- <mapper namespace="com.ydtech.modules.esm.dao.EsmPolicyInformationMapper">
- <resultMap id="BaseResultMap" type="com.ydtech.modules.esm.model.EsmPolicyInformation">
- <result property="id" column="id" jdbcType="BIGINT"/>
- <result property="contractMainNo" column="contract_main_no" jdbcType="VARCHAR"/>
- <result property="contractNo1" column="contract_no1" jdbcType="VARCHAR"/>
- <result property="contractNo2" column="contract_no2" jdbcType="VARCHAR"/>
- <result property="premiums1" column="premiums1" jdbcType="DECIMAL"/>
- <result property="premiums2" column="premiums2" jdbcType="DECIMAL"/>
- <result property="annualTaxDue" column="annual_tax_due" jdbcType="DECIMAL"/>
- <result property="sumTaxDefault" column="sum_tax_default" jdbcType="DECIMAL"/>
- <result property="sumTax" column="sum_tax" jdbcType="DECIMAL"/>
- </resultMap>
- <resultMap id="CalculationTableMap" type="com.ydtech.modules.esm.model.CalculationTableDto">
- <result property="insurance" column="insurance" jdbcType="VARCHAR"/>
- <result property="premium" column="premium" jdbcType="VARCHAR"/>
- <result property="number" column="number" jdbcType="VARCHAR"/>
- <result property="premiums1Sum" column="premiums1_sum" jdbcType="VARCHAR"/>
- <result property="premiums2Sum" column="premiums2_sum" jdbcType="DECIMAL"/>
- <result property="sumTax" column="sum_tax" jdbcType="DECIMAL"/>
- </resultMap>
- <sql id="Base_Column_List">
- id
- ,contract_main_no,contract_no1,
- contract_no2,premiums1,premiums2,
- annual_tax_due,sum_tax_default,sum_tax
- </sql>
- <select id="jqCalculationTable" resultMap="CalculationTableMap" parameterType="java.lang.String">
- select '单交' as insurance,
- premiums1 as premium,
- count(*) as number,
- sum(premiums1) as premiums1_sum,
- sum(premiums2) as premiums2_sum,
- sum(sum_tax) as sum_tax,
- concat(round(sum(sum_tax) / (sum(premiums1) + sum(premiums2)) * 100, 2), '%') as proportion
- from esm_policy_information
- where (contract_no2 is null
- or contract_no2 = '')
- and issue_date = #{today}
- group by premiums1
- order by premiums1;
- </select>
- <select id="jqCalculationTableSum" resultMap="CalculationTableMap" parameterType="java.lang.String">
- select '单交' as insurance,
- count(*) as number,
- sum(premiums1) as premiums1_sum,
- sum(premiums2) as premiums2_sum,
- sum(sum_tax) as sum_tax,
- concat(round(sum(sum_tax) / (sum(premiums1) + sum(premiums2)) * 100, 2), '%') as proportion
- from esm_policy_information
- where (contract_no2 is null
- or contract_no2 = '')
- and issue_date = #{today}
- </select>
- <select id="syCalculationTable" resultMap="CalculationTableMap" parameterType="java.lang.String">
- select '交三' as insurance,
- premiums1 as premium,
- count(*) as number,
- sum(premiums1) as premiums1_sum,
- sum(premiums2) as premiums2_sum,
- sum(sum_tax) as sum_tax,
- concat(round(sum(sum_tax) / (sum(premiums1) + sum(premiums2)) * 100, 2), '%') as proportion
- from esm_policy_information
- where (contract_no2 is not null
- or contract_no2 != '')
- and issue_date = #{today}
- group by premiums1
- order by premiums1;
- </select>
- <select id="syCalculationTableSum" resultMap="CalculationTableMap" parameterType="java.lang.String">
- select '交三' as insurance,
- count(*) as number,
- sum(premiums1) as premiums1_sum,
- sum(premiums2) as premiums2_sum,
- sum(sum_tax) as sum_tax,
- concat(round(sum(sum_tax) / (sum(premiums1) + sum(premiums2)) * 100, 2), '%') as proportion
- from esm_policy_information
- where (contract_no2 is not null
- or contract_no2 != '')
- and issue_date = #{today}
- </select>
- <select id="sumCalculationTable" resultMap="CalculationTableMap" parameterType="java.lang.String">
- select '合计' as insurance,
- count(*) as number,
- sum(premiums1) as premiums1_sum,
- sum(premiums2) as premiums2_sum,
- sum(sum_tax) as sum_tax,
- concat(round(sum(sum_tax) / (sum(premiums1) + sum(premiums2)) * 100, 2), '%') as proportion
- from esm_policy_information
- where issue_date = #{today};
- </select>
- <select id="sumMonthlyDaily" resultType="java.util.Map">
- SELECT issue_date,
- sum(premiums1) AS premiums1_sum,
- sum(premiums2) AS premiums2_sum,
- sum(sum_tax) AS sum_tax
- FROM esm_policy_information
- where DATE(issue_date) >= (
- DATE_SUB(CURRENT_DATE(), INTERVAL 30 DAY))
- GROUP BY issue_date
- </select>
- <select id="getTotalInsurance" resultType="com.ydtech.modules.esm.model.dto.TotalInsuranceDTO" parameterType="java.lang.String">
- SELECT
- '中煤' AS `name`,
- issue_date AS date_time,
- sum( premiums2 )+ sum( premiums1 ) AS premiums_sum,
- sum( sum_tax ) AS sum_tax
- FROM
- esm_policy_information
- WHERE
- issue_date = #{today} UNION ALL
- SELECT
- '永安' AS `name`,
- policy_date AS date_time,
- sum( sum_premium )+ sum( commerce_sum_premium ) AS premiums_sum,
- sum( sum_pay_tax ) AS sum_tax
- FROM
- esm_ya_policy_information
- WHERE
- policy_date =#{today} UNION ALL
- SELECT
- '永诚' AS `name`,
- issue_date AS date_time,
- sum( premiums1 ) + sum( premiums2 ) AS premiums_sum,
- sum( tax ) AS sum_tax
- FROM
- esm_yc_policy_information
- WHERE
- issue_date = #{today}
- </select>
- </mapper>
|