Commit d8870757 by hongzhong

Merge remote-tracking branch 'origin/dev_20210330' into dev_20210330

parents 697f354c c28439ea
...@@ -50,11 +50,47 @@ public class LifeCommissionServiceImpl implements LifeCommissionService { ...@@ -50,11 +50,47 @@ public class LifeCommissionServiceImpl implements LifeCommissionService {
@Override @Override
public ComeCommissionListResponseVO queryComeCommissionList(QueryComeCommissionListRequestVO requestVO) { public ComeCommissionListResponseVO queryComeCommissionList(QueryComeCommissionListRequestVO requestVO) {
ComeCommissionListResponseVO resp = new ComeCommissionListResponseVO(); ComeCommissionListResponseVO resp = new ComeCommissionListResponseVO();
String commissionType = requestVO.getCommissionType();
try { try {
if (StringUtils.isBlank(commissionType)) {
resp.setCommonResult(new CommonResult(false, "佣金类型不能为空"));
return resp;
}
if ("2".equals(commissionType)) {
this.querySpecialCommission(requestVO, resp);
} else {
this.queryBaseCommission(requestVO, resp);
}
resp.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000")));
} catch (Exception e) {
e.printStackTrace();
resp.setCommonResult(new CommonResult(false, e.getMessage()));
}
return resp;
}
private void querySpecialCommission(QueryComeCommissionListRequestVO requestVO, ComeCommissionListResponseVO resp) {
PageInfo<ComeCommissionVO> page = requestVO.getPage();
String orderBy = "orderDate desc";
PageHelper.startPage(page.getPageNum(), page.getPageSize(), orderBy);
List<ComeCommissionVO> dataList = lifeCommissionMapper.querySpecialCommissionList(requestVO);
PageInfo<ComeCommissionVO> pageInfo = new PageInfo<>(dataList);
resp.setDataList(pageInfo.getList());
pageInfo.setList(null);
resp.setPage(pageInfo);
}
private void queryBaseCommission(QueryComeCommissionListRequestVO requestVO, ComeCommissionListResponseVO resp) {
// 分页结果集 // 分页结果集
PageInfo<ComeCommissionVO> pageInfo = this.queryComeCommissionListPage(requestVO); PageInfo<ComeCommissionVO> pageInfo = this.queryComeCommissionListPage(requestVO);
resp.setDataList(pageInfo.getList()); resp.setDataList(pageInfo.getList());
pageInfo.setList(null); pageInfo.setList(null);
resp.setPage(pageInfo);
// 不分页结果集统计总单数,总保费,总来佣,待来佣总数,已比对总数,已退保总数 // 不分页结果集统计总单数,总保费,总来佣,待来佣总数,已比对总数,已退保总数
Map<String, Object> summaries = lifeCommissionMapper.getSummaries(requestVO); Map<String, Object> summaries = lifeCommissionMapper.getSummaries(requestVO);
// 不分页结果集统计总寿险经纪人人数 // 不分页结果集统计总寿险经纪人人数
...@@ -66,14 +102,6 @@ public class LifeCommissionServiceImpl implements LifeCommissionService { ...@@ -66,14 +102,6 @@ public class LifeCommissionServiceImpl implements LifeCommissionService {
resp.setTotalDaiLaiYong(summaries.get("totalDaiLaiYong").toString()); resp.setTotalDaiLaiYong(summaries.get("totalDaiLaiYong").toString());
resp.setTotalYiBiDui(summaries.get("totalYiBiDui").toString()); resp.setTotalYiBiDui(summaries.get("totalYiBiDui").toString());
resp.setTotalYiTuiBao(summaries.get("totalYiTuiBao").toString()); resp.setTotalYiTuiBao(summaries.get("totalYiTuiBao").toString());
resp.setPage(pageInfo);
resp.setCommonResult(new CommonResult(true, ZHBErrorConfig.getErrorInfo("800000")));
} catch (Exception e) {
e.printStackTrace();
resp.setCommonResult(new CommonResult(false, e.getMessage()));
}
return resp;
} }
@Override @Override
......
...@@ -11,6 +11,7 @@ public class QueryComeCommissionListRequestVO { ...@@ -11,6 +11,7 @@ public class QueryComeCommissionListRequestVO {
private Long insurerId; private Long insurerId;
private Long practitionerTypeId; private Long practitionerTypeId;
private String commissionCheckStatus; private String commissionCheckStatus;
private String commissionCategory; private String commissionType;
private String commissionItem;
private PageInfo<ComeCommissionVO> page; private PageInfo<ComeCommissionVO> page;
} }
...@@ -22,4 +22,6 @@ public interface LifeCommissionMapper { ...@@ -22,4 +22,6 @@ public interface LifeCommissionMapper {
List<String> querycheckBatchList(); List<String> querycheckBatchList();
Integer queryLifePractitionerCount(QueryComeCommissionListRequestVO requestVO); Integer queryLifePractitionerCount(QueryComeCommissionListRequestVO requestVO);
List<ComeCommissionVO> querySpecialCommissionList(QueryComeCommissionListRequestVO requestVO);
} }
...@@ -34,6 +34,8 @@ ...@@ -34,6 +34,8 @@
amount commissionAmount, amount commissionAmount,
rate commissionRate, rate commissionRate,
commission_category, commission_category,
commission_type,
commission_item,
commission_period commission_period
from from
(SELECT id, policy_no, order_price, product_id, commission_rate, commission_amount, commission_check_status, (SELECT id, policy_no, order_price, product_id, commission_rate, commission_amount, commission_check_status,
...@@ -46,6 +48,7 @@ ...@@ -46,6 +48,7 @@
) o ) o
LEFT JOIN LEFT JOIN
(SELECT policy_no policyNo, commission_no, commission_year, amount, commission_status, commission_time, commission_check_id, (SELECT policy_no policyNo, commission_no, commission_year, amount, commission_status, commission_time, commission_check_id,
t.commission_type, t.commission_item,
commission_period, rate, order_id, commission_category commission_period, rate, order_id, commission_category
from ag_po_order_commission t from ag_po_order_commission t
) orderCommission ) orderCommission
...@@ -102,8 +105,11 @@ ...@@ -102,8 +105,11 @@
<if test="commissionCheckStatus != null"> <if test="commissionCheckStatus != null">
and o.commissionCheckStatus = #{commissionCheckStatus} and o.commissionCheckStatus = #{commissionCheckStatus}
</if> </if>
<if test="commissionCategory != null"> <if test="commissionType != null">
and o.commission_category = #{commissionCategory} and o.commission_type = #{commissionType}
<if test="commissionItem != null">
and o.commission_item = #{commissionItem}
</if>
</if> </if>
<choose> <choose>
<when test="historyDate != null "> <when test="historyDate != null ">
...@@ -169,6 +175,8 @@ ...@@ -169,6 +175,8 @@
amount commissionAmount, amount commissionAmount,
rate commissionRate, rate commissionRate,
commission_category, commission_category,
commission_type,
commission_item,
commission_period commission_period
from from
(SELECT id, policy_no, order_price, commission_rate, commission_amount, commission_check_status, product_id, (SELECT id, policy_no, order_price, commission_rate, commission_amount, commission_check_status, product_id,
...@@ -181,6 +189,7 @@ ...@@ -181,6 +189,7 @@
) o ) o
LEFT JOIN LEFT JOIN
(SELECT policy_no policyNo, commission_no, commission_year, amount, commission_status, commission_time, rate, commission_check_id, (SELECT policy_no policyNo, commission_no, commission_year, amount, commission_status, commission_time, rate, commission_check_id,
t.commission_type,t.commission_item,
commission_period, order_id, commission_category commission_period, order_id, commission_category
from ag_po_order_commission t from ag_po_order_commission t
) orderCommission ) orderCommission
...@@ -213,8 +222,11 @@ ...@@ -213,8 +222,11 @@
<if test="commissionCheckStatus != null"> <if test="commissionCheckStatus != null">
and o.commissionCheckStatus = #{commissionCheckStatus} and o.commissionCheckStatus = #{commissionCheckStatus}
</if> </if>
<if test="commissionCategory != null"> <if test="commissionType != null">
and o.commission_category = #{commissionCategory} and o.commission_type = #{commissionType}
<if test="commissionItem != null">
and o.commission_item = #{commissionItem}
</if>
</if> </if>
<choose> <choose>
<when test="historyDate != null "> <when test="historyDate != null ">
...@@ -235,5 +247,80 @@ ...@@ -235,5 +247,80 @@
</select> </select>
<select id="querySpecialCommissionList" parameterType="com.yd.api.commission.vo.lifecommission.QueryComeCommissionListRequestVO"
resultType="com.yd.api.commission.vo.lifecommission.ComeCommissionVO">
select
null as orderId,
c.check_yearmonth checkDate,
IFNULL(i.name_abbre,i.name) insurerName,
IFNULL(a.name,p.name) planName,
o.policy_no policyNo,
o.premium orderPrice,
o.commission_status commissionCheckStatus,
o.amount commissionAmount,
o.rate commissionRate,
o.created_at orderDate,
o.commission_no commissionNo,
date_format(o.commission_year, '%Y-%m-%d') commissionYear,
o.commission_time commissionTime,
o.commission_period commissionPeriod,
null as coverageTerm,
null as payTerm,
(case o.config_level when 2 then p2.pName2 else p3.pName3 END) categoryName,
(case o.config_level when 2 then p2.cName2 else p3.cName3 END) planCategoryName
from
(SELECT policy_no, commission_no, commission_year, amount, commission_status, commission_time, commission_check_id,premium,t.insurer_id,
t.commission_type,t.commission_item,
commission_period, rate, order_id, commission_category, t.created_at, b.product_id, b.plan_id, b.config_level
from ag_po_order_commission t left join ag_product_life_commission_base b on t.commission_base_id = b.id
WHERE 1=1
<if test="startDate != null ">
and date_format(commission_year, '%Y-%m') &gt;= #{startDate}
</if>
<if test="endDate != null ">
and date_format(commission_year, '%Y-%m') &lt;= #{endDate}
</if>
) o
left join ag_po_order_commission_check c on o.commission_check_id = c.id
left join ag_product_plan a on o.plan_id = a.id
left join ag_product p on o.product_id = p.id
left join (select plcl.config_level, plcl.product_id, plc.name cName2, pc.name pName2
from ag_plan_category_list plcl
left join ag_plan_category plc on plcl.plan_category_id = plc.id
left join ag_product_category pc on plc.product_category_id = pc.id
where plcl.config_level = 2
) p2
on o.config_level = p2.config_level and o.product_id = p2.product_id
left join (select plcl.config_level, plcl.plan_id, plc.name cName3, pc.name pName3
from ag_plan_category_list plcl
left join ag_plan_category plc on plcl.plan_category_id = plc.id
left join ag_product_category pc on plc.product_category_id = pc.id
where plcl.config_level = 3
) p3
on o.config_level = p3.config_level and o.plan_id = p3.plan_id
left join ag_acl_insurer i on o.insurer_id = i.id
where 1=1
<if test="insurerId != null">
and o.insurer_id = #{insurerId}
</if>
<if test="commissionType != null">
and o.commission_type = #{commissionType}
<if test="commissionItem != null">
and o.commission_item = #{commissionItem}
</if>
</if>
<if test="commissionCheckStatus != null">
and o.commission_status = #{commissionCheckStatus}
</if>
<choose>
<when test="historyDate != null ">
and c.check_yearmonth = #{historyDate}
</when>
</choose>
</select>
</mapper> </mapper>
\ No newline at end of file
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