Commit 58384739 by wenyang Committed by jianan

发佣检核保单报表优化-4

parent 10e0273d
...@@ -432,7 +432,8 @@ ...@@ -432,7 +432,8 @@
o.policy_no '2', o.policy_no '2',
i.name '3' /*保司*/, i.name '3' /*保司*/,
o.order_price '4' , o.order_price '4' ,
p.name '5' /*产品*/, if(p.name is not null, p.name, (select tp.name from ag_product_plan tp where tp.id = o.plan_id)) '5' /*产品*/,
o.underwriting_date '6', o.underwriting_date '6',
CONCAT(o.payment_term, (case o.payment_term_unit when 'Y' then '年' when 'M' then '月' else '年' END)) '7', CONCAT(o.payment_term, (case o.payment_term_unit when 'Y' then '年' when 'M' then '月' else '年' END)) '7',
if(o.fyc_rate,o.fyc_rate,'') '8' /*'FYC%'*/, if(o.fyc_rate,o.fyc_rate,'') '8' /*'FYC%'*/,
...@@ -441,8 +442,8 @@ ...@@ -441,8 +442,8 @@
if(l.achievements_rate is not null,l.achievements_rate,'') '11' /*'业绩%'*/, if(l.achievements_rate is not null,l.achievements_rate,'') '11' /*'业绩%'*/,
if(f.commission_period!=1,f.fyc_rate,'') '12' /*'RYC%'*/, if(f.commission_period!=1,f.fyc_rate,'') '12' /*'RYC%'*/,
o.fyc_amount '13'/*保单FYC*/, o.fyc_amount '13'/*保单FYC*/,
o.fyc_amount*l.commission_rate/100*IF(f.grade_commission_rate IS NOT NULL,f.grade_commission_rate,'100')/100 '14' /*佣金FYC*/, round(o.fyc_amount*l.commission_rate/100*IF(f.grade_commission_rate IS NOT NULL,f.grade_commission_rate,'100')/100,2) '14' /*佣金FYC*/,
o.fyc_amount*l.achievements_rate/100*IF(f.grade_commission_rate IS NOT NULL,f.grade_commission_rate,'100')/100 '15' /*业绩FYC*/, round(o.fyc_amount*l.achievements_rate/100*IF(f.grade_commission_rate IS NOT NULL,f.grade_commission_rate,'100')/100,2) '15' /*业绩FYC*/,
if(f.commission_period!=1,f.fyc_amount,'') '16' /*保单RYC*/, if(f.commission_period!=1,f.fyc_amount,'') '16' /*保单RYC*/,
if(f.commission_period!=1,f.referral_amount,'') '17' /*佣金RYC*/, if(f.commission_period!=1,f.referral_amount,'') '17' /*佣金RYC*/,
...@@ -455,20 +456,20 @@ ...@@ -455,20 +456,20 @@
sum(case when drop_option_code ='C02' then f.referral_amount else null end) '24' /*续年销售佣金*/, sum(case when drop_option_code ='C02' then f.referral_amount else null end) '24' /*续年销售佣金*/,
(SELECT group_concat(t.practitioner_id) from ag_acl_customer_fortune t (SELECT group_concat(t.practitioner_id) from ag_acl_customer_fortune t
LEFT JOIN ag_po_order_commission c on c.id = t.commission_id LEFT JOIN ag_acl_practitioner a ON a.customer_id = t.customer_id
where t.drop_option_code ='R03' and t.order_id=f.order_id and t.sale_practitioner_id=l.practitioner_id and c.commission_status='2' WHERE drop_option_code ='R03' AND order_id=f.order_id AND sale_practitioner_id = l.practitioner_id AND a.id=l.mentor_id
and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach> and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach>
) '25' /*续期辅导人*/, ) '25' /*续期辅导人*/,
(SELECT group_concat(CONCAT_WS('-', t.practitioner_id, referral_amount)) (SELECT group_concat(calculation_rate)
from ag_acl_customer_fortune t from ag_acl_customer_fortune t
LEFT JOIN ag_po_order_commission c on c.id = t.commission_id LEFT JOIN ag_acl_practitioner a ON a.customer_id = t.customer_id
where t.drop_option_code ='R03' and t.order_id=f.order_id and t.sale_practitioner_id=l.practitioner_id and c.commission_status='2' WHERE drop_option_code ='R03' AND order_id=f.order_id AND sale_practitioner_id = l.practitioner_id AND a.id=l.mentor_id
and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach> and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach>
) '26' /*续期辅导奖金率*/, ) '26' /*续期辅导奖金率*/,
(SELECT group_concat(CONCAT_WS('-', t.practitioner_id, referral_amount)) (SELECT group_concat(referral_amount)
from ag_acl_customer_fortune t from ag_acl_customer_fortune t
LEFT JOIN ag_po_order_commission c on c.id = t.commission_id LEFT JOIN ag_acl_practitioner a ON a.customer_id = t.customer_id
where t.drop_option_code ='R03' and t.order_id=f.order_id and t.sale_practitioner_id=l.practitioner_id and c.commission_status='2' WHERE drop_option_code ='R03' AND order_id=f.order_id AND sale_practitioner_id = l.practitioner_id AND a.id=l.mentor_id
and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach> and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach>
) '27' /*续期辅导奖*/, ) '27' /*续期辅导奖*/,
...@@ -692,25 +693,26 @@ ...@@ -692,25 +693,26 @@
if(o.settlement_rule_type=1,'简单基本法','标准基本法') '66' /*基本法属性*/, if(o.settlement_rule_type=1,'简单基本法','标准基本法') '66' /*基本法属性*/,
sum(case when drop_option_code ='S01' then f.referral_amount else null end) '67' /*S01-首年度销售佣金*/, sum(case when drop_option_code ='S01' then f.referral_amount else null end) '67' /*S01-首年度销售佣金*/,
(SELECT group_concat(CONCAT_WS('-', t.practitioner_id, referral_amount)) (SELECT GROUP_CONCAT(CONCAT_WS('-', t.practitioner_id, referral_amount))
from ag_acl_customer_fortune t FROM ag_acl_customer_fortune t
LEFT JOIN ag_po_order_commission c on c.id = t.commission_id LEFT JOIN ag_acl_practitioner a ON a.customer_id = t.customer_id
where t.drop_option_code ='S03' and t.order_id=f.order_id and t.sale_practitioner_id=l.practitioner_id and c.commission_status='2' WHERE drop_option_code ='S03' AND order_id=f.order_id AND sale_practitioner_id = l.practitioner_id
and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach> and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach>
) '68' /*S03-首年度辅导奖金*/, ) '68' /*S03-首年度辅导奖金*/,
null as '69' /*R01-首年度直接销售佣金(旧)*/, null as '69' /*R01-首年度直接销售佣金(旧)*/,
sum(case when drop_option_code ='R02' then f.referral_amount else null end) '70' /*R02-续年度直接销售拥金(旧)*/, sum(case when drop_option_code ='R02' then f.referral_amount else null end) '70' /*R02-续年度直接销售拥金(旧)*/,
(SELECT group_concat(CONCAT_WS('-', t.practitioner_id, referral_amount))
from ag_acl_customer_fortune t (SELECT GROUP_CONCAT(CONCAT_WS('-', t.practitioner_id, referral_amount))
LEFT JOIN ag_po_order_commission c on c.id = t.commission_id FROM ag_acl_customer_fortune t
where t.drop_option_code ='R03' and t.order_id=f.order_id and t.sale_practitioner_id=l.practitioner_id and c.commission_status='2' LEFT JOIN ag_acl_practitioner a ON a.customer_id = t.customer_id
WHERE drop_option_code ='R03' AND order_id=f.order_id AND sale_practitioner_id = l.practitioner_id AND a.id=l.mentor_id
and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach> and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach>
) '71' /*R03-续年度辅导佣金(旧)*/, ) '71' /*R03-续年度辅导佣金(旧)*/,
(SELECT group_concat(CONCAT_WS('-', t.practitioner_id, referral_amount)) (SELECT group_concat(CONCAT_WS('-', t.practitioner_id, referral_amount))
from ag_acl_customer_fortune t from ag_acl_customer_fortune t
LEFT JOIN ag_po_order_commission c on c.id = t.commission_id LEFT JOIN ag_po_order_commission c on c.id = t.commission_id
where t.drop_option_code ='R04' and t.order_id=f.order_id and t.sale_practitioner_id=l.practitioner_id and c.commission_status='2' where t.drop_option_code ='R04' and t.order_id=f.order_id and t.sale_practitioner_id=l.practitioner_id
and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach> and t.id in <foreach collection="list1" item="item" open="(" separator="," close=")">#{item,jdbcType=BIGINT}</foreach>
) '72' /*R04-续年度绩效奖金(旧)*/, ) '72' /*R04-续年度绩效奖金(旧)*/,
...@@ -839,30 +841,27 @@ ...@@ -839,30 +841,27 @@
o.policy_no '2', o.policy_no '2',
i.name '3' /*保司*/, i.name '3' /*保司*/,
o.order_price '4' , o.order_price '4' ,
p.name '5' /*产品*/, if(p.name is not null, p.name, (select tp.name from ag_product_plan tp where tp.id = o.plan_id)) '5' /*产品*/,
o.underwriting_date '6', o.underwriting_date '6',
CONCAT(o.payment_term, (case o.payment_term_unit when 'Y' then '年' when 'M' then '月' else '年' END)) '7', CONCAT(o.payment_term, (case o.payment_term_unit when 'Y' then '年' when 'M' then '月' else '年' END)) '7',
ifnull(f.fyc_rate,'') '8' /*'FYC%'*/, if(o.fyc_rate,o.fyc_rate,'') '8' /*'FYC%'*/,
if(f.order_id is not null, o.is_achievement_statistic, '100') '9' /*'业绩折标率%'*/, if(f.order_id is not null, o.is_achievement_statistic, '100') '9' /*'业绩折标率%'*/,
ifnull( f.share_rate,'') '10' /*'分佣%'*/, if(l.commission_rate is not null,l.commission_rate,'') '10' /*'分佣%'*/,
ifnull( f.achievements_rate,'') '11' /*'业绩%'*/, if(l.achievements_rate is not null,l.achievements_rate,'') '11' /*'业绩%'*/,
if(f.commission_period!=1,f.fyc_rate,'') '12' /*'RYC%'*/, if(f.commission_period!=1,f.fyc_rate,'') '12' /*'RYC%'*/,
ifnull( f.fyc_amount,'') '13'/*保单FYC*/, o.fyc_amount '13'/*保单FYC*/,
ifnull( f.referral_amount,'') '14' /*佣金FYC*/, round(o.fyc_amount*l.commission_rate/100*IF(f.grade_commission_rate IS NOT NULL,f.grade_commission_rate,'100')/100,2) '14' /*佣金FYC*/,
ifnull( f.achievements,'') '15' /*业绩FYC*/, round(o.fyc_amount*l.achievements_rate/100*IF(f.grade_commission_rate IS NOT NULL,f.grade_commission_rate,'100')/100,2) '15' /*业绩FYC*/,
if(f.commission_period!=1,f.fyc_amount,'') '16' /*保单RYC*/, if(f.commission_period!=1,f.fyc_amount,'') '16' /*保单RYC*/,
if(f.commission_period!=1,f.referral_amount,'') '17' /*佣金RYC*/, if(f.commission_period!=1,f.referral_amount,'') '17' /*佣金RYC*/,
(select name from ag_acl_channel where id = f.channel_id) '18' /*渠道*/, (select name from ag_acl_channel where id = f.channel_id) '18' /*渠道*/,
null as '19' /*FYC体系*/, coalesce(l.s1_id,l.s2_id,l.s3_id) as '19' /*FYC体系*/,
(select name from ag_acl_practitioner where id = f.sale_practitioner_id) '20' /*销售经纪人*/, l.practitioner_name '20' /*销售经纪人*/,
(SELECT b.practitioner_level l.practitioner_level '21' /*经纪人职级*/,
from ag_acl_practitioner a if(f.grade_commission_rate is not null,f.grade_commission_rate,'100') '22' /*职级率*/,
LEFT JOIN ag_acl_practitioner_setting b on b.practitioner_id = a.id
where a.id = f.sale_practitioner_id
) '21' /*经纪人职级*/,
ifnull(f.grade_commission_rate,'') '22' /*职级率*/,
null as '23' /*首年销售佣金*/, null as '23' /*首年销售佣金*/,
null as '24' /*续年销售佣金*/, null as '24' /*续年销售佣金*/,
...@@ -956,6 +955,7 @@ ...@@ -956,6 +955,7 @@
f.customer_id f.customer_id
FROM ag_acl_customer_fortune f FROM ag_acl_customer_fortune f
INNER JOIN ag_acl_life_insurance_practitioner l on l.order_id = f.order_id and l.practitioner_id = f.sale_practitioner_id
LEFT JOIN ag_acl_practitioner pra on pra.customer_id = f.customer_id LEFT JOIN ag_acl_practitioner pra on pra.customer_id = f.customer_id
LEFT JOIN ag_acl_practitioner_setting ps on ps.practitioner_id = pra.id LEFT JOIN ag_acl_practitioner_setting ps on ps.practitioner_id = pra.id
LEFT JOIN ag_md_drop_options op1 ON op1.id = ps.practitioner_level LEFT JOIN ag_md_drop_options op1 ON op1.id = ps.practitioner_level
...@@ -963,10 +963,7 @@ ...@@ -963,10 +963,7 @@
LEFT JOIN ag_acl_insurer i on i.id = o.insurer_id LEFT JOIN ag_acl_insurer i on i.id = o.insurer_id
LEFT JOIN ag_product p on p.id = o.product_id LEFT JOIN ag_product p on p.id = o.product_id
WHERE WHERE
f.id in f.id in <foreach collection="list2" item="item" open="(" separator="," close=")"> #{item,jdbcType=BIGINT} </foreach>
<foreach collection="list2" item="item" open="(" separator="," close=")">
#{item,jdbcType=BIGINT}
</foreach>
</if> </if>
ORDER BY '2' ORDER BY '2'
</select> </select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment