|
@@ -39,12 +39,15 @@ import java.util.*;
|
|
|
import java.util.concurrent.atomic.AtomicBoolean;
|
|
import java.util.concurrent.atomic.AtomicBoolean;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
-*@author: tz
|
|
|
|
|
-*@description: 费用接口中相关功能的实现类
|
|
|
|
|
-*@create: 2024-3-1 11:45:33
|
|
|
|
|
-*/
|
|
|
|
|
|
|
+ *@author: tz
|
|
|
|
|
+ *@description: 费用接口中相关功能的实现类
|
|
|
|
|
+ *@create: 2024-3-1 11:45:33
|
|
|
|
|
+ */
|
|
|
@Service
|
|
@Service
|
|
|
public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
|
|
public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
|
|
|
|
|
+
|
|
|
|
|
+ private static final Logger log = LoggerFactory.getLogger("fee");
|
|
|
|
|
+
|
|
|
@Resource
|
|
@Resource
|
|
|
private InsOrdersService insOrdersService;
|
|
private InsOrdersService insOrdersService;
|
|
|
|
|
|
|
@@ -98,8 +101,6 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private static final Logger log = LoggerFactory.getLogger("FeeRules");
|
|
|
|
|
-
|
|
|
|
|
/**
|
|
/**
|
|
|
* 校验费用因子
|
|
* 校验费用因子
|
|
|
*/
|
|
*/
|
|
@@ -123,7 +124,7 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
|
|
|
String costsId = verificationCosts(agreementProductCosts, insAreaCompany, insOrders);
|
|
String costsId = verificationCosts(agreementProductCosts, insAreaCompany, insOrders);
|
|
|
if(costsId != null) {
|
|
if(costsId != null) {
|
|
|
calcCosts(costsId, insAreaCompany);
|
|
calcCosts(costsId, insAreaCompany);
|
|
|
- System.out.printf("费用因子校验通过,子订单id:" + insAreaCompany.getId() + ",费用id:" + costsId);
|
|
|
|
|
|
|
+ log.debug("费用因子校验通过,子订单id:" + insAreaCompany.getId() + ",费用id:" + costsId);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -503,8 +504,10 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
|
|
|
// }
|
|
// }
|
|
|
for (int i = 0; i < agreementProductCosts.size(); i++) {
|
|
for (int i = 0; i < agreementProductCosts.size(); i++) {
|
|
|
//判断是否匹配
|
|
//判断是否匹配
|
|
|
- System.out.printf("费用因子匹配开始:" + agreementProductCosts.get(i).getId() + "\n");
|
|
|
|
|
- System.out.println("费用因子备注:" + agreementProductCosts.get(i).getCostsDescription() + "\n");
|
|
|
|
|
|
|
+
|
|
|
|
|
+ log.debug("费用因子匹配开始:" + agreementProductCosts.get(i).getId());
|
|
|
|
|
+ log.debug("车牌号:" + insOrders.getLicenseno());
|
|
|
|
|
+ log.debug("费用因子备注:" + agreementProductCosts.get(i).getCostsDescription());
|
|
|
if (judgements(agreementProductCosts.get(i).getCostsAttrLinks(), undwrtRulesAttrList, ruleAttrMappingVoList)) {
|
|
if (judgements(agreementProductCosts.get(i).getCostsAttrLinks(), undwrtRulesAttrList, ruleAttrMappingVoList)) {
|
|
|
//返回 费用id 如果需要匹配非车的情况 将返回值返回list 后赛选
|
|
//返回 费用id 如果需要匹配非车的情况 将返回值返回list 后赛选
|
|
|
return agreementProductCosts.get(i).getId();
|
|
return agreementProductCosts.get(i).getId();
|
|
@@ -557,8 +560,8 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
|
|
|
|
|
|
|
|
//如果查找不到 传值属性 直接费用对比失败
|
|
//如果查找不到 传值属性 直接费用对比失败
|
|
|
if(ruleAttrMappingVo == null){
|
|
if(ruleAttrMappingVo == null){
|
|
|
- System.out.printf("规则匹配失败:" + ptlAgreementProductCostsAttrLinks.get(i).getAttrCode() + "\n");
|
|
|
|
|
- System.out.printf("传入的值找不到该属性:" + ptlAgreementProductCostsAttrLinks.get(finalI).getAttrCode() + "\n");
|
|
|
|
|
|
|
+ log.debug("规则匹配失败:" + ptlAgreementProductCostsAttrLinks.get(i).getAttrCode());
|
|
|
|
|
+ log.debug("传入的值找不到该属性:" + ptlAgreementProductCostsAttrLinks.get(finalI).getAttrCode());
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -567,9 +570,9 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
|
|
|
|
|
|
|
|
useFlag = attrEqual(ptlAgreementProductCostsAttrLinks.get(i), ptlAgreementUndwrtRulesAttr, ruleAttrMappingVo.getValue());
|
|
useFlag = attrEqual(ptlAgreementProductCostsAttrLinks.get(i), ptlAgreementUndwrtRulesAttr, ruleAttrMappingVo.getValue());
|
|
|
if(!useFlag){
|
|
if(!useFlag){
|
|
|
- System.out.printf("规则匹配失败:" + ptlAgreementProductCostsAttrLinks.get(i).getAttrCode() + "\n");
|
|
|
|
|
- System.out.printf("检验的值:" + ptlAgreementProductCostsAttrLinks.get(i).getMin() + "\n");
|
|
|
|
|
- System.out.printf("传入的值:" + ruleAttrMappingVo.getValue() + "\n");
|
|
|
|
|
|
|
+ log.debug("规则匹配失败:" + ptlAgreementProductCostsAttrLinks.get(i).getAttrCode());
|
|
|
|
|
+ log.debug("检验的值:" + ptlAgreementProductCostsAttrLinks.get(i).getMin());
|
|
|
|
|
+ log.debug("传入的值:" + ruleAttrMappingVo.getValue());
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -586,7 +589,7 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
|
|
|
* @return
|
|
* @return
|
|
|
*/
|
|
*/
|
|
|
private boolean judgementsRules(List<PtlAgreementUndwrtRulesAttrLink> ptlAgreementUndwrtRulesAttrLinks,
|
|
private boolean judgementsRules(List<PtlAgreementUndwrtRulesAttrLink> ptlAgreementUndwrtRulesAttrLinks,
|
|
|
- List<PtlAgreementUndwrtRulesAttr> rulesAttrs, List<RuleAttrMappingVo> ruleAttrMappingVoList){
|
|
|
|
|
|
|
+ List<PtlAgreementUndwrtRulesAttr> rulesAttrs, List<RuleAttrMappingVo> ruleAttrMappingVoList){
|
|
|
boolean useFlag = true;
|
|
boolean useFlag = true;
|
|
|
|
|
|
|
|
for(int i=0;i<ptlAgreementUndwrtRulesAttrLinks.size();i++){
|
|
for(int i=0;i<ptlAgreementUndwrtRulesAttrLinks.size();i++){
|
|
@@ -645,7 +648,7 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
|
|
|
* @return
|
|
* @return
|
|
|
*/
|
|
*/
|
|
|
private boolean judgementsIsNoCar(List<PtlAgreementProductCostsAttrLink> ptlAgreementProductCostsAttrLinks,
|
|
private boolean judgementsIsNoCar(List<PtlAgreementProductCostsAttrLink> ptlAgreementProductCostsAttrLinks,
|
|
|
- List<PtlAgreementUndwrtRulesAttr> rulesAttrs, List<RuleAttrMappingVo> ruleAttrMappingVoList){
|
|
|
|
|
|
|
+ List<PtlAgreementUndwrtRulesAttr> rulesAttrs, List<RuleAttrMappingVo> ruleAttrMappingVoList){
|
|
|
boolean useFlag = true;
|
|
boolean useFlag = true;
|
|
|
|
|
|
|
|
for(int i=0;i<ptlAgreementProductCostsAttrLinks.size();i++){
|
|
for(int i=0;i<ptlAgreementProductCostsAttrLinks.size();i++){
|