Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yd-backend
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
AutogeneralShanghai
yd-backend
Commits
8394444a
Commit
8394444a
authored
Nov 23, 2020
by
jianan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
来佣比对列表加经纪人姓名和经纪人类型字段
parent
15a24b49
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
90 additions
and
28 deletions
+90
-28
yd-api/src/main/java/com/yd/api/commission/service/impl/LifeCommissionServiceImpl.java
+16
-21
yd-api/src/main/java/com/yd/api/commission/vo/lifecommission/ComeCommissionListResponseVO.java
+16
-4
yd-api/src/main/java/com/yd/api/commission/vo/lifecommission/ComeCommissionVO.java
+4
-0
yd-api/src/main/java/com/yd/dal/mapper/lifecommission/LifeCommissionMapper.java
+4
-1
yd-api/src/main/resources/mapper/lifecommission/LifeCommissionMapper.xml
+50
-2
No files found.
yd-api/src/main/java/com/yd/api/commission/service/impl/LifeCommissionServiceImpl.java
View file @
8394444a
...
...
@@ -45,9 +45,14 @@ public class LifeCommissionServiceImpl implements LifeCommissionService {
PageInfo
<
ComeCommissionVO
>
pageInfo
=
this
.
queryComeCommissionListPage
(
requestVO
);
resp
.
setDataList
(
pageInfo
.
getList
());
pageInfo
.
setList
(
null
);
// 不分页结果集统计总单数,总保费,总来佣
List
<
ComeCommissionVO
>
dataList
=
lifeCommissionMapper
.
queryComeCommissionList
(
requestVO
);
this
.
getSummaries
(
resp
,
dataList
);
// 不分页结果集统计总单数,总保费,总来佣,待来佣总数,已比对总数,已退保总数
Map
<
String
,
BigDecimal
>
summaries
=
lifeCommissionMapper
.
getSummaries
(
requestVO
);
resp
.
setTotalOrderPrice
(
String
.
valueOf
(
summaries
.
get
(
"totalOrderPrice"
)));
resp
.
setTotalCommission
(
String
.
valueOf
(
summaries
.
get
(
"totalCommission"
)));
resp
.
setTotalSingular
(
String
.
valueOf
(
summaries
.
get
(
"totalSingular"
)));
resp
.
setTotalDaiLaiYong
(
String
.
valueOf
(
summaries
.
get
(
"totalDaiLaiYong"
)));
resp
.
setTotalYiBiDui
(
String
.
valueOf
(
summaries
.
get
(
"totalYiBiDui"
)));
resp
.
setTotalYiTuiBao
(
String
.
valueOf
(
summaries
.
get
(
"totalYiTuiBao"
)));
resp
.
setPage
(
pageInfo
);
resp
.
setCommonResult
(
new
CommonResult
(
true
,
ZHBErrorConfig
.
getErrorInfo
(
"800000"
)));
...
...
@@ -58,20 +63,6 @@ public class LifeCommissionServiceImpl implements LifeCommissionService {
return
resp
;
}
private
void
getSummaries
(
ComeCommissionListResponseVO
resp
,
List
<
ComeCommissionVO
>
dataList
)
{
Integer
totalSingular
=
dataList
.
size
();
BigDecimal
totalOrderPrice
=
BigDecimal
.
ZERO
;
BigDecimal
totalCommission
=
BigDecimal
.
ZERO
;
for
(
ComeCommissionVO
item:
dataList
)
{
totalOrderPrice
=
totalOrderPrice
.
add
(
new
BigDecimal
(
item
.
getOrderPrice
()));
totalCommission
=
totalCommission
.
add
(
new
BigDecimal
(
item
.
getCommissionAmount
()));
}
resp
.
setTotalOrderPrice
(
totalOrderPrice
);
resp
.
setTotalSingular
(
totalSingular
);
resp
.
setTotalCommission
(
totalCommission
);
}
@Override
public
CheckComeCommissionResponseVO
updateCommissionCheckStatus
(
CheckComeCommissionRequestVO
requestVO
)
{
CheckComeCommissionResponseVO
resp
=
new
CheckComeCommissionResponseVO
();
...
...
@@ -116,14 +107,14 @@ public class LifeCommissionServiceImpl implements LifeCommissionService {
o
.
setCommissionCheckId
(
null
);
o
.
setCommissionCheckStatus
(
"1"
);
o
.
setCommissionCheckAt
(
new
Date
());
o
.
setCommissionCheckBy
(
Long
.
getLong
(
loginId
));
o
.
setCommissionCheckBy
(
Long
.
valueOf
(
loginId
));
poOrderDALService
.
update
(
o
);
}
// 批量设置fortune为不可发佣
fortuneList
.
forEach
(
f
->
{
f
.
setCommissionPayoutStatus
(
"1"
);
f
.
setCommissionPayoutAt
(
new
Date
());
f
.
setCommissionPayoutBy
(
Long
.
getLong
(
loginId
));
f
.
setCommissionPayoutBy
(
Long
.
valueOf
(
loginId
));
});
if
(
fortuneList
.
size
()
>
0
)
{
customerFortuneDalService
.
updateBatch
(
fortuneList
);
...
...
@@ -155,7 +146,7 @@ public class LifeCommissionServiceImpl implements LifeCommissionService {
}
private
void
checkPass
(
List
<
Long
>
orderIds
,
String
status
,
String
loginId
,
String
checkBatch
)
{
//
插入批次表信息
//
获取批次号(如2020-11的字符串)
Long
checkBatchId
=
this
.
getOrderCommissionCheckBatch
(
checkBatch
,
loginId
);
// 设置order记录的CommissionCheckId
this
.
setOrderCommissionCheckId
(
orderIds
,
status
,
checkBatchId
,
loginId
);
...
...
@@ -202,7 +193,11 @@ public class LifeCommissionServiceImpl implements LifeCommissionService {
}
private
Long
getOrderCommissionCheckBatch
(
String
OrderCommissionCheckBatch
,
String
loginId
)
{
OrderCommissonCheck
orderCommissonCheck
=
lifeCommissionMapper
.
findByCheckYearmonth
(
OrderCommissionCheckBatch
);
List
<
OrderCommissonCheck
>
list
=
lifeCommissionMapper
.
findByCheckYearmonth
(
OrderCommissionCheckBatch
);
OrderCommissonCheck
orderCommissonCheck
=
null
;
if
(
list
.
size
()
>
0
)
{
orderCommissonCheck
=
list
.
get
(
0
);
}
if
(
orderCommissonCheck
==
null
){
// 获取当前时间
Date
curDate
=
new
Date
();
...
...
yd-api/src/main/java/com/yd/api/commission/vo/lifecommission/ComeCommissionListResponseVO.java
View file @
8394444a
...
...
@@ -5,7 +5,6 @@ import com.github.pagehelper.PageInfo;
import
com.yd.api.result.CommonResult
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.List
;
@Data
...
...
@@ -15,15 +14,28 @@ public class ComeCommissionListResponseVO {
/**
* 总单数
*/
private
Integer
totalSingular
;
private
String
totalSingular
;
/**
* 总待来佣数
*/
private
String
totalDaiLaiYong
;
/**
* 总比对保数
*/
private
String
totalYiBiDui
;
/**
* 总已退保数
*/
private
String
totalYiTuiBao
;
/**
* 总保费
*/
private
BigDecimal
totalOrderPrice
;
private
String
totalOrderPrice
;
/**
* 应发金额总额
*/
private
BigDecimal
totalCommission
;
private
String
totalCommission
;
private
CommonResult
commonResult
;
private
List
<
ComeCommissionVO
>
dataList
;
}
yd-api/src/main/java/com/yd/api/commission/vo/lifecommission/ComeCommissionVO.java
View file @
8394444a
...
...
@@ -19,6 +19,8 @@ public class ComeCommissionVO {
* 保障期间
* 产品险种
* 保险种类
* 经纪人姓名
* 经纪人类型
*/
private
Long
orderId
;
private
String
checkDate
;
...
...
@@ -34,4 +36,6 @@ public class ComeCommissionVO {
private
String
coverageTerm
;
private
String
categoryName
;
private
String
planCategoryName
;
private
String
name
;
private
String
practitionerTypeId
;
}
yd-api/src/main/java/com/yd/dal/mapper/lifecommission/LifeCommissionMapper.java
View file @
8394444a
...
...
@@ -5,6 +5,7 @@ import com.yd.api.commission.vo.lifecommission.QueryComeCommissionListRequestVO;
import
com.yd.dal.entity.commission.OrderCommissonCheck
;
import
org.apache.ibatis.annotations.Param
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -15,5 +16,7 @@ public interface LifeCommissionMapper {
void
insertOrderCommissionCheck
(
OrderCommissonCheck
orderCommissonCheck
);
OrderCommissonCheck
findByCheckYearmonth
(
String
orderCommissionCheckBatch
);
List
<
OrderCommissonCheck
>
findByCheckYearmonth
(
String
orderCommissionCheckBatch
);
Map
<
String
,
BigDecimal
>
getSummaries
(
QueryComeCommissionListRequestVO
requestVO
);
}
yd-api/src/main/resources/mapper/lifecommission/LifeCommissionMapper.xml
View file @
8394444a
...
...
@@ -17,6 +17,8 @@
o.order_date orderDate,
e.coverageTerm,
e.payTerm,
f.name,
f.practitioner_type_id practitionerTypeId,
IFNULL(p.categoryName,a.categoryName2) categoryName,
a.planCategoryName
from (SELECT id, policy_no, order_price, commission_rate, commission_amount, commission_check_status, commission_check_id, product_id,
...
...
@@ -37,10 +39,21 @@
left join ag_product_category proc on proc.id = pro.product_category_id
) a on o.plan_id = a.id
left join ag_acl_insurer i on o.insurer_id = i.id
left join (SELECT order_id, name, practitioner_type_id
from (
select
order_id,
CASE WHEN referral_amount = MAX(referral_amount) THEN customer_id END customer_id
from ag_acl_customer_fortune
group by order_id
) f
left join ag_acl_practitioner practitioner on f.customer_id = practitioner.customer_id
left join ag_acl_practitioner_setting setting on setting.practitioner_id = practitioner.id
) f on f.order_id = o.id
left join (SELECT
order_id,
MAX(CASE WHEN factor_
name = '保险期间
' THEN element_text END) coverageTerm,
MAX(CASE WHEN factor_
name = '缴费年限
' THEN element_text END) payTerm
MAX(CASE WHEN factor_
code = 'f_coverage_term
' THEN element_text END) coverageTerm,
MAX(CASE WHEN factor_
code = 'f_pay_term
' THEN element_text END) payTerm
FROM ag_po_order_life_product_elements t
GROUP BY order_id
) e on e.order_id = o.id
...
...
@@ -99,5 +112,39 @@
where check_yearmonth = #{orderCommissionCheckBatch,jdbcType=VARCHAR}
</select>
<select
id=
"getSummaries"
resultType=
"java.util.Map"
>
select
count(1) totalSingular,
sum(CASE WHEN o.commission_check_status = '1' THEN 1 ELSE 0 END) totalDaiLaiYong,
sum(CASE WHEN o.commission_check_status = '2' THEN 1 ELSE 0 END) totalYiBiDui,
sum(CASE WHEN o.commission_check_status = '3' THEN 1 ELSE 0 END) totalYiTuiBao,
sum(o.order_price) totalOrderPrice,
sum(o.commission_amount) totalCommission
from (SELECT id, policy_no, order_price, commission_rate, commission_amount, commission_check_status, commission_check_id, product_id,
plan_id, insurer_id, order_date, commission_check_at
from ag_po_order t
where t.status in (3,4) and policy_no is not null
and (t.plan_id not in (424,453,464) or t.plan_id is null)
) o
left join ag_po_order_commission_check c on o.commission_check_id = c.id
where 1=1
<choose>
<when
test=
"historyDate != null "
>
and c.check_yearmonth = #{historyDate}
</when>
<otherwise>
<if
test=
"compareDate != null"
>
and date_format(o.order_date, '%Y-%m')
<
#{compareDate}
</if>
<if
test=
"insurerId != null"
>
and o.insurer_id = #{insurerId}
</if>
<if
test=
"commissionCheckStatus != null"
>
and o.commission_check_status = #{commissionCheckStatus}
</if>
</otherwise>
</choose>
</select>
</mapper>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment