Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
Y
yifu-mvp
Project
Project
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fangxinjiang
yifu-mvp
Commits
fa6e4101
Commit
fa6e4101
authored
Sep 05, 2022
by
zhaji
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
"feature-zhaJi:优化登记保单保费的校验逻辑"
parent
d3498c03
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
105 additions
and
11 deletions
+105
-11
TInsuranceDetailServiceImpl.java
...s/service/insurance/impl/TInsuranceDetailServiceImpl.java
+105
-11
No files found.
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/service/insurance/impl/TInsuranceDetailServiceImpl.java
View file @
fa6e4101
...
...
@@ -1369,7 +1369,6 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
);
if
(
StringUtils
.
isNotBlank
(
success
.
getInvoiceNo
())){
detail
.
setInvoiceNo
(
success
.
getInvoiceNo
());
//如果发票号不为空,将替换类型的发票号也全部更新
List
<
TInsuranceReplace
>
list
=
tInsuranceReplaceService
.
list
(
Wrappers
.<
TInsuranceReplace
>
query
().
lambda
()
.
eq
(
TInsuranceReplace:
:
getOriginInsuranceDetailId
,
detail
.
getId
()));
...
...
@@ -1446,6 +1445,24 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
tInsuranceSettleService
.
updateById
(
settle
);
}
});
}
else
if
(
settle
.
getIsActualPush
()
==
CommonConstants
.
ONE_INT
&&
(
new
BigDecimal
(
success
.
getActualPremium
()).
compareTo
(
detail
.
getActualPremium
())
==
0
)){
//推送保费更新
settle
.
setActualPremium
(
new
BigDecimal
(
success
.
getActualPremium
()));
settle
.
setIsActualPush
(
CommonConstants
.
ZERO_INT
);
settle
.
setUpdateTime
(
LocalDateTime
.
now
());
tInsuranceSettleService
.
updateById
(
settle
);
//调EKP更新实际保费
detail
.
setActualPremium
(
new
BigDecimal
(
success
.
getActualPremium
()));
threadPool
.
execute
(()
->{
String
s
=
pushEstimate
(
detail
,
CommonConstants
.
FOUR_INT
);
if
(
StringUtils
.
isNotBlank
(
s
)){
settle
.
setActualPushTime
(
LocalDateTime
.
now
());
settle
.
setIsActualPush
(
CommonConstants
.
ONE_INT
);
tInsuranceSettleService
.
updateById
(
settle
);
}
});
}
}
}
...
...
@@ -1499,6 +1516,34 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
}
}
}
String
invoiceNo
=
success
.
getInvoiceNo
();
String
policyNo
=
success
.
getPolicyNo
();
boolean
booleanInvoiceNo
=
StringUtils
.
isNotBlank
(
invoiceNo
)
&&
!
invoiceNo
.
equals
(
detail
.
getInvoiceNo
());
boolean
booleanPolicyNo
=
StringUtils
.
isNotBlank
(
policyNo
)
&&
!
policyNo
.
equals
(
detail
.
getPolicyNo
());
//如果当前保费为空,且保单号或发票号不一样
if
(
StringUtils
.
isBlank
(
success
.
getActualPremium
())
&&
(!
booleanInvoiceNo
||
!
booleanPolicyNo
)){
if
(
StringUtils
.
isNotBlank
(
detail
.
getDefaultSettleId
())){
TInsuranceSettle
settle
=
tInsuranceSettleService
.
getById
(
detail
.
getDefaultSettleId
());
if
(
Optional
.
ofNullable
(
settle
).
isPresent
()){
//如果当前实缴信息未推送,则新增实缴单推送
threadPool
.
execute
(()
->{
if
(
StringUtils
.
isNotBlank
(
invoiceNo
)){
detail
.
setInvoiceNo
(
invoiceNo
);
}
if
(
StringUtils
.
isNotBlank
(
policyNo
)){
detail
.
setPolicyNo
(
policyNo
);
}
String
s
=
pushEstimate
(
detail
,
CommonConstants
.
FOUR_INT
);
//如果推送成功则更改推送状态
if
(
StringUtils
.
isNotBlank
(
s
)){
settle
.
setActualPushTime
(
LocalDateTime
.
now
());
settle
.
setIsActualPush
(
CommonConstants
.
ONE_INT
);
tInsuranceSettleService
.
updateById
(
settle
);
}
});
}
}
}
//可以改成批量更新
this
.
updateById
(
detail
);
detailList
.
add
(
detail
);
...
...
@@ -2659,7 +2704,6 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
listResult
.
add
(
param
);
continue
;
}
if
(!
LocalDateUtil
.
isDate
(
param
.
getPolicyStart
(),
LocalDateUtil
.
NORM_DATE_PATTERN
)){
param
.
setErrorMessage
(
InsurancesConstants
.
POLICY_START_PARSE_ERROR
);
listResult
.
add
(
param
);
...
...
@@ -2797,22 +2841,72 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
listResult
.
add
(
param
);
continue
;
}
if
(
StringUtils
.
isNotBlank
(
detail
.
getDefaultSettleId
())){
//保单号是否更新
boolean
booleanPolicyNo
=
StringUtils
.
isNotBlank
(
param
.
getPolicyNo
())
&&
!
param
.
getPolicyNo
().
equals
(
detail
.
getPolicyNo
());
//发票号是否更新
boolean
booleanInvoiceNo
=
StringUtils
.
isNotBlank
(
param
.
getInvoiceNo
())
&&
!
param
.
getInvoiceNo
().
equals
(
detail
.
getInvoiceNo
());
//保费是否更新
boolean
booleanActualPremium
=
StringUtils
.
isNotBlank
(
param
.
getActualPremium
())
&&
detail
.
getActualPremium
().
compareTo
(
new
BigDecimal
(
param
.
getActualPremium
()))
!=
0
;
//如果当前为合并结算
if
(
CommonConstants
.
ZERO_INT
==
detail
.
getSettleType
()
&&
StringUtils
.
isNotBlank
(
detail
.
getDefaultSettleId
())){
TInsuranceSettle
settle
=
tInsuranceSettleService
.
getById
(
detail
.
getDefaultSettleId
());
if
(
Optional
.
ofNullable
(
settle
).
isPresent
()){
SettleVo
settleVo
=
getInsuranceDetailSettleStatus
(
detail
.
getId
(),
detail
.
getDefaultSettleId
());
if
(!
Common
.
isEmpty
(
settleVo
)){
if
(
InsurancesConstants
.
SETTLE_ONE
.
equals
(
settleVo
.
getActualStatus
())){
String
estimateStatus
=
settleVo
.
getEstimateStatus
();
String
actualStatus
=
settleVo
.
getActualStatus
();
//保费更新,保单号,发票号不更新
if
(
booleanActualPremium
&&
!
booleanPolicyNo
&&
!
booleanInvoiceNo
){
if
(
InsurancesConstants
.
SETTLE_TWO
.
equals
(
actualStatus
)){
param
.
setErrorMessage
(
InsurancesConstants
.
SETTLE_HANDLE_THREE_NOT_REGISTERED
);
listResult
.
add
(
param
);
continue
;
}
if
(
InsurancesConstants
.
SETTLE_ONE
.
equals
(
actualStatus
)){
param
.
setErrorMessage
(
InsurancesConstants
.
SETTLE_HANDLE_TWO_NOT_REGISTERED
);
listResult
.
add
(
param
);
continue
;
}
if
(
InsurancesConstants
.
SETTLE_TWO
.
equals
(
settleVo
.
getActualStatus
())){
}
//
if
(!
booleanPolicyNo
||
!
booleanInvoiceNo
){
if
(
InsurancesConstants
.
SETTLE_TWO
.
equals
(
estimateStatus
)
||
InsurancesConstants
.
SETTLE_TWO
.
equals
(
actualStatus
)){
param
.
setErrorMessage
(
InsurancesConstants
.
SETTLE_HANDLE_THREE_NOT_REGISTERED
);
listResult
.
add
(
param
);
continue
;
}
if
(
InsurancesConstants
.
SETTLE_ONE
.
equals
(
estimateStatus
)
||
InsurancesConstants
.
SETTLE_ONE
.
equals
(
actualStatus
)){
param
.
setErrorMessage
(
InsurancesConstants
.
SETTLE_HANDLE_TWO_NOT_REGISTERED
);
listResult
.
add
(
param
);
continue
;
}
}
}
}
}
//如果当前为单独结算,判断实缴有没有结算
if
(
CommonConstants
.
ONE_INT
==
detail
.
getSettleType
()
&&
StringUtils
.
isNotBlank
(
detail
.
getDefaultSettleId
())){
TInsuranceSettle
settle
=
tInsuranceSettleService
.
getById
(
detail
.
getDefaultSettleId
());
if
(
Optional
.
ofNullable
(
settle
).
isPresent
()){
SettleVo
settleVo
=
getInsuranceDetailSettleStatus
(
detail
.
getId
(),
detail
.
getDefaultSettleId
());
if
(!
Common
.
isEmpty
(
settleVo
)){
String
actualStatus
=
settleVo
.
getActualStatus
();
//判断实缴是否结算中
if
(
booleanActualPremium
&&
!
booleanPolicyNo
&&
!
booleanInvoiceNo
){
if
(
InsurancesConstants
.
SETTLE_TWO
.
equals
(
actualStatus
)){
param
.
setErrorMessage
(
InsurancesConstants
.
SETTLE_HANDLE_THREE_NOT_REGISTERED
);
listResult
.
add
(
param
);
continue
;
}
if
(
InsurancesConstants
.
SETTLE_ONE
.
equals
(
actualStatus
)){
param
.
setErrorMessage
(
InsurancesConstants
.
SETTLE_HANDLE_TWO_NOT_REGISTERED
);
listResult
.
add
(
param
);
continue
;
}
}
}
}
}
}
...
...
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