|
@@ -3,7 +3,7 @@ package com.ydtech.modules.protocols.service.impl;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
-import com.ydtech.modules.protocol.entity.po.PtlAgreementProductCosts;
|
|
|
|
|
|
|
+import com.ydtech.modules.base.controller.BaseController;
|
|
|
import com.ydtech.modules.protocol.entity.po.PtlAreaLicense;
|
|
import com.ydtech.modules.protocol.entity.po.PtlAreaLicense;
|
|
|
import com.ydtech.modules.protocol.service.PtlAreaLicenseService;
|
|
import com.ydtech.modules.protocol.service.PtlAreaLicenseService;
|
|
|
import com.ydtech.modules.protocols.dao.PtlAgreementProductCostsNewMapper;
|
|
import com.ydtech.modules.protocols.dao.PtlAgreementProductCostsNewMapper;
|
|
@@ -17,6 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
|
|
+import java.time.LocalDateTime;
|
|
|
import java.util.*;
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
@@ -41,6 +42,12 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
@Autowired
|
|
@Autowired
|
|
|
PtlAgreementProductCostsExportService ptlAgreementProductCostsExportService;
|
|
PtlAgreementProductCostsExportService ptlAgreementProductCostsExportService;
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ PtlAgreementProductCostsNewHistoryServiceImpl ptlAgreementProductCostsNewHistoryService;
|
|
|
|
|
+
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ PtlAgreementProductCostsAttrLinkHistoryService ptlAgreementProductCostsAttrLinkHistoryService;
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
public Page<PtlAgreementProductCostsNew> getByAgreementId(Page page, String agreementId) {
|
|
public Page<PtlAgreementProductCostsNew> getByAgreementId(Page page, String agreementId) {
|
|
|
Page<PtlAgreementProductCostsNew> pages = baseMapper.selectPage(page, new LambdaQueryWrapper<PtlAgreementProductCostsNew>()
|
|
Page<PtlAgreementProductCostsNew> pages = baseMapper.selectPage(page, new LambdaQueryWrapper<PtlAgreementProductCostsNew>()
|
|
@@ -100,51 +107,48 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
* @param undwrtRulesAttrList
|
|
* @param undwrtRulesAttrList
|
|
|
* @return
|
|
* @return
|
|
|
*/
|
|
*/
|
|
|
- private String buildDesc(List<PtlAgreementProductCostsAttrLink> v, List<PtlAgreementUndwrtRulesAttr> undwrtRulesAttrList){
|
|
|
|
|
|
|
+ private String buildDesc(List<PtlAgreementProductCostsAttrLink> v, List<PtlAgreementUndwrtRulesAttr> undwrtRulesAttrList) {
|
|
|
String desc = "";
|
|
String desc = "";
|
|
|
- for(int i=0;i<v.size();i++){
|
|
|
|
|
|
|
+ for (int i = 0; i < v.size(); i++) {
|
|
|
int finalI = i;
|
|
int finalI = i;
|
|
|
PtlAgreementUndwrtRulesAttr ptlAgreementUndwrtRulesAttr = undwrtRulesAttrList.stream().filter(x -> x.getAttrCode().equals(v.get(finalI).getAttrCode())).findAny().get();
|
|
PtlAgreementUndwrtRulesAttr ptlAgreementUndwrtRulesAttr = undwrtRulesAttrList.stream().filter(x -> x.getAttrCode().equals(v.get(finalI).getAttrCode())).findAny().get();
|
|
|
//数值范围判断
|
|
//数值范围判断
|
|
|
- if("inputNumber".equals(ptlAgreementUndwrtRulesAttr.getAttrType()))
|
|
|
|
|
- {
|
|
|
|
|
- desc += inputNumberIdentifying(ptlAgreementUndwrtRulesAttr,v.get(i)) + "\n";
|
|
|
|
|
|
|
+ if ("inputNumber".equals(ptlAgreementUndwrtRulesAttr.getAttrType())) {
|
|
|
|
|
+ desc += inputNumberIdentifying(ptlAgreementUndwrtRulesAttr, v.get(i)) + "\n";
|
|
|
}
|
|
}
|
|
|
- if("radio".equals(ptlAgreementUndwrtRulesAttr.getAttrType()))
|
|
|
|
|
- {
|
|
|
|
|
- desc += radioIdentifying(ptlAgreementUndwrtRulesAttr,v.get(i)) + "\n";
|
|
|
|
|
|
|
+ if ("radio".equals(ptlAgreementUndwrtRulesAttr.getAttrType())) {
|
|
|
|
|
+ desc += radioIdentifying(ptlAgreementUndwrtRulesAttr, v.get(i)) + "\n";
|
|
|
}
|
|
}
|
|
|
- if("checkbox".equals(ptlAgreementUndwrtRulesAttr.getAttrType()) || "select".equals(ptlAgreementUndwrtRulesAttr.getAttrType()))
|
|
|
|
|
- {
|
|
|
|
|
|
|
+ if ("checkbox".equals(ptlAgreementUndwrtRulesAttr.getAttrType()) || "select".equals(ptlAgreementUndwrtRulesAttr.getAttrType())) {
|
|
|
desc += ptlAgreementUndwrtRulesAttr.getAttrName() + "包含" + v.get(i).getMin() + "\n";
|
|
desc += ptlAgreementUndwrtRulesAttr.getAttrName() + "包含" + v.get(i).getMin() + "\n";
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
return desc;
|
|
return desc;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private String radioIdentifying(PtlAgreementUndwrtRulesAttr ptlAgreementUndwrtRulesAttr,PtlAgreementProductCostsAttrLink ptlAgreementProductCostsAttrLink){
|
|
|
|
|
|
|
+ private String radioIdentifying(PtlAgreementUndwrtRulesAttr ptlAgreementUndwrtRulesAttr, PtlAgreementProductCostsAttrLink ptlAgreementProductCostsAttrLink) {
|
|
|
PtlAgreementUndwrtRulesDictLabal ptlAgreementUndwrtRulesDictLabal = ptlAgreementUndwrtRulesAttr.getDictLabal().stream().filter(x ->
|
|
PtlAgreementUndwrtRulesDictLabal ptlAgreementUndwrtRulesDictLabal = ptlAgreementUndwrtRulesAttr.getDictLabal().stream().filter(x ->
|
|
|
x.getCode().equals(ptlAgreementProductCostsAttrLink.getMin())).findAny().get();
|
|
x.getCode().equals(ptlAgreementProductCostsAttrLink.getMin())).findAny().get();
|
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "为" + ptlAgreementUndwrtRulesDictLabal.getName();
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "为" + ptlAgreementUndwrtRulesDictLabal.getName();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- private String inputNumberIdentifying(PtlAgreementUndwrtRulesAttr ptlAgreementUndwrtRulesAttr,PtlAgreementProductCostsAttrLink ptlAgreementProductCostsAttrLink){
|
|
|
|
|
- if("1".equals(ptlAgreementProductCostsAttrLink.getOperator())){
|
|
|
|
|
|
|
+ private String inputNumberIdentifying(PtlAgreementUndwrtRulesAttr ptlAgreementUndwrtRulesAttr, PtlAgreementProductCostsAttrLink ptlAgreementProductCostsAttrLink) {
|
|
|
|
|
+ if ("1".equals(ptlAgreementProductCostsAttrLink.getOperator())) {
|
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "范围值" + ptlAgreementProductCostsAttrLink.getMin() + "到" + ptlAgreementProductCostsAttrLink.getMax();
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "范围值" + ptlAgreementProductCostsAttrLink.getMin() + "到" + ptlAgreementProductCostsAttrLink.getMax();
|
|
|
- }else if("2".equals(ptlAgreementProductCostsAttrLink.getOperator())) {
|
|
|
|
|
|
|
+ } else if ("2".equals(ptlAgreementProductCostsAttrLink.getOperator())) {
|
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "小于" + ptlAgreementProductCostsAttrLink.getMin();
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "小于" + ptlAgreementProductCostsAttrLink.getMin();
|
|
|
- }else if("3".equals(ptlAgreementProductCostsAttrLink.getOperator())) {
|
|
|
|
|
|
|
+ } else if ("3".equals(ptlAgreementProductCostsAttrLink.getOperator())) {
|
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "小于等于" + ptlAgreementProductCostsAttrLink.getMin();
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "小于等于" + ptlAgreementProductCostsAttrLink.getMin();
|
|
|
- }else if("4".equals(ptlAgreementProductCostsAttrLink.getOperator())) {
|
|
|
|
|
|
|
+ } else if ("4".equals(ptlAgreementProductCostsAttrLink.getOperator())) {
|
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "大于" + ptlAgreementProductCostsAttrLink.getMax();
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "大于" + ptlAgreementProductCostsAttrLink.getMax();
|
|
|
- }else if("5".equals(ptlAgreementProductCostsAttrLink.getOperator())) {
|
|
|
|
|
|
|
+ } else if ("5".equals(ptlAgreementProductCostsAttrLink.getOperator())) {
|
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "大于等于" + ptlAgreementProductCostsAttrLink.getMax();
|
|
return ptlAgreementUndwrtRulesAttr.getAttrName() + "大于等于" + ptlAgreementProductCostsAttrLink.getMax();
|
|
|
}
|
|
}
|
|
|
return "";
|
|
return "";
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
- public AgreementProductCostsSave costsGet(String costsId,List<PtlAgreementUndwrtRulesAttr> undwrtRulesAttrList) {
|
|
|
|
|
|
|
+ public AgreementProductCostsSave costsGet(String costsId, List<PtlAgreementUndwrtRulesAttr> undwrtRulesAttrList) {
|
|
|
//设置费用入口信息
|
|
//设置费用入口信息
|
|
|
PtlAgreementProductCostsNew ptlAgreementProductCostsNew = baseMapper.selectOne(new LambdaQueryWrapper<PtlAgreementProductCostsNew>().eq(PtlAgreementProductCostsNew::getId, costsId));
|
|
PtlAgreementProductCostsNew ptlAgreementProductCostsNew = baseMapper.selectOne(new LambdaQueryWrapper<PtlAgreementProductCostsNew>().eq(PtlAgreementProductCostsNew::getId, costsId));
|
|
|
if (ptlAgreementProductCostsNew == null) {
|
|
if (ptlAgreementProductCostsNew == null) {
|
|
@@ -156,7 +160,7 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
//设置费用出口信息
|
|
//设置费用出口信息
|
|
|
PtlAgreementProductCostsExport ptlAgreementProductCostsExport = ptlAgreementProductCostsExportService.getOne(new LambdaQueryWrapper<PtlAgreementProductCostsExport>()
|
|
PtlAgreementProductCostsExport ptlAgreementProductCostsExport = ptlAgreementProductCostsExportService.getOne(new LambdaQueryWrapper<PtlAgreementProductCostsExport>()
|
|
|
.eq(PtlAgreementProductCostsExport::getCostsId, costsId));
|
|
.eq(PtlAgreementProductCostsExport::getCostsId, costsId));
|
|
|
- if(!Objects.isNull(ptlAgreementProductCostsExport)) {
|
|
|
|
|
|
|
+ if (!Objects.isNull(ptlAgreementProductCostsExport)) {
|
|
|
agreementProductCosts.setExportRadio(ptlAgreementProductCostsExport);
|
|
agreementProductCosts.setExportRadio(ptlAgreementProductCostsExport);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -168,12 +172,11 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
|
|
|
|
|
undwrtRulesAttrList.stream().forEach(x -> {
|
|
undwrtRulesAttrList.stream().forEach(x -> {
|
|
|
//处理多选和下拉
|
|
//处理多选和下拉
|
|
|
- if("checkbox".equals(x.getAttrType()) || "select".equals(x.getAttrType()))
|
|
|
|
|
- {
|
|
|
|
|
|
|
+ if ("checkbox".equals(x.getAttrType()) || "select".equals(x.getAttrType())) {
|
|
|
//处理车牌
|
|
//处理车牌
|
|
|
- if("select".equals(x.getAttrType()) && "LicenseNo".equals(x.getAttrCode())){
|
|
|
|
|
|
|
+ if ("select".equals(x.getAttrType()) && "LicenseNo".equals(x.getAttrCode())) {
|
|
|
PtlAgreementProductCostsAttrLink licenseNo = list.stream().filter(l -> l.getAttrCode().equals("LicenseNo")).findFirst().orElse(null);
|
|
PtlAgreementProductCostsAttrLink licenseNo = list.stream().filter(l -> l.getAttrCode().equals("LicenseNo")).findFirst().orElse(null);
|
|
|
- if(licenseNo != null) {
|
|
|
|
|
|
|
+ if (licenseNo != null) {
|
|
|
//根据operator 获取车牌的地区id
|
|
//根据operator 获取车牌的地区id
|
|
|
List<PtlAreaLicense> byParentNumber = ptlAreaLicenseService.getByParentNumber(licenseNo.getOperator());
|
|
List<PtlAreaLicense> byParentNumber = ptlAreaLicenseService.getByParentNumber(licenseNo.getOperator());
|
|
|
List<PtlAgreementUndwrtRulesDictLabal> dictLabal = byParentNumber.stream().map(y -> {
|
|
List<PtlAgreementUndwrtRulesDictLabal> dictLabal = byParentNumber.stream().map(y -> {
|
|
@@ -188,14 +191,14 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
}
|
|
}
|
|
|
x.setMinArray(new String[]{});
|
|
x.setMinArray(new String[]{});
|
|
|
list.stream().filter(y -> y.getAttrCode().equals(x.getAttrCode())).findFirst().ifPresent(z -> {
|
|
list.stream().filter(y -> y.getAttrCode().equals(x.getAttrCode())).findFirst().ifPresent(z -> {
|
|
|
- if(null != z.getMin()) {
|
|
|
|
|
|
|
+ if (null != z.getMin()) {
|
|
|
x.setId(z.getId());
|
|
x.setId(z.getId());
|
|
|
x.setMinArray(z.getMin().split(","));
|
|
x.setMinArray(z.getMin().split(","));
|
|
|
x.setMax(z.getMax());
|
|
x.setMax(z.getMax());
|
|
|
x.setOperator(z.getOperator());
|
|
x.setOperator(z.getOperator());
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
list.stream().filter(y -> y.getAttrCode().equals(x.getAttrCode())).findFirst().ifPresent(z -> {
|
|
list.stream().filter(y -> y.getAttrCode().equals(x.getAttrCode())).findFirst().ifPresent(z -> {
|
|
|
x.setId(z.getId());
|
|
x.setId(z.getId());
|
|
|
x.setMin(z.getMin());
|
|
x.setMin(z.getMin());
|
|
@@ -212,6 +215,7 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
return agreementProductCosts;
|
|
return agreementProductCosts;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
public List<AgreementProductCosts> costsGetList(String agreementId) {
|
|
public List<AgreementProductCosts> costsGetList(String agreementId) {
|
|
|
List<PtlAgreementProductCostsNew> ptlAgreementProductCostsNews = baseMapper.selectList(new LambdaQueryWrapper<PtlAgreementProductCostsNew>()
|
|
List<PtlAgreementProductCostsNew> ptlAgreementProductCostsNews = baseMapper.selectList(new LambdaQueryWrapper<PtlAgreementProductCostsNew>()
|
|
@@ -225,15 +229,14 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
BeanUtils.copyProperties(news, productCosts);
|
|
BeanUtils.copyProperties(news, productCosts);
|
|
|
agreementProductCosts.add(productCosts);
|
|
agreementProductCosts.add(productCosts);
|
|
|
});
|
|
});
|
|
|
- if(ptlAgreementProductCostsNews.size() > 0)
|
|
|
|
|
- {
|
|
|
|
|
|
|
+ if (ptlAgreementProductCostsNews.size() > 0) {
|
|
|
List<PtlAgreementProductCostsAttrLink> list = ptlAgreementProductCostsAttrLinkService.list(new LambdaQueryWrapper<PtlAgreementProductCostsAttrLink>()
|
|
List<PtlAgreementProductCostsAttrLink> list = ptlAgreementProductCostsAttrLinkService.list(new LambdaQueryWrapper<PtlAgreementProductCostsAttrLink>()
|
|
|
.in(PtlAgreementProductCostsAttrLink::getCostsId, ptlAgreementProductCostsNews.stream().map(PtlAgreementProductCostsNew::getId).collect(Collectors.toList())));
|
|
.in(PtlAgreementProductCostsAttrLink::getCostsId, ptlAgreementProductCostsNews.stream().map(PtlAgreementProductCostsNew::getId).collect(Collectors.toList())));
|
|
|
agreementProductCosts.forEach(x -> {
|
|
agreementProductCosts.forEach(x -> {
|
|
|
List<PtlAgreementProductCostsAttrLink> collect = list.stream().filter(y -> y.getCostsId().equals(x.getId())).collect(Collectors.toList());
|
|
List<PtlAgreementProductCostsAttrLink> collect = list.stream().filter(y -> y.getCostsId().equals(x.getId())).collect(Collectors.toList());
|
|
|
x.setCostsAttrLinks(collect);
|
|
x.setCostsAttrLinks(collect);
|
|
|
});
|
|
});
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
agreementProductCosts.forEach(x -> {
|
|
agreementProductCosts.forEach(x -> {
|
|
|
x.setCostsAttrLinks(new ArrayList<>());
|
|
x.setCostsAttrLinks(new ArrayList<>());
|
|
|
});
|
|
});
|
|
@@ -256,15 +259,14 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
BeanUtils.copyProperties(news, productCosts);
|
|
BeanUtils.copyProperties(news, productCosts);
|
|
|
agreementProductCosts.add(productCosts);
|
|
agreementProductCosts.add(productCosts);
|
|
|
});
|
|
});
|
|
|
- if(ptlAgreementProductCostsNews.size() > 0)
|
|
|
|
|
- {
|
|
|
|
|
|
|
+ if (ptlAgreementProductCostsNews.size() > 0) {
|
|
|
List<PtlAgreementProductCostsAttrLink> list = ptlAgreementProductCostsAttrLinkService.list(new LambdaQueryWrapper<PtlAgreementProductCostsAttrLink>()
|
|
List<PtlAgreementProductCostsAttrLink> list = ptlAgreementProductCostsAttrLinkService.list(new LambdaQueryWrapper<PtlAgreementProductCostsAttrLink>()
|
|
|
.in(PtlAgreementProductCostsAttrLink::getCostsId, ptlAgreementProductCostsNews.stream().map(PtlAgreementProductCostsNew::getId).collect(Collectors.toList())));
|
|
.in(PtlAgreementProductCostsAttrLink::getCostsId, ptlAgreementProductCostsNews.stream().map(PtlAgreementProductCostsNew::getId).collect(Collectors.toList())));
|
|
|
agreementProductCosts.forEach(x -> {
|
|
agreementProductCosts.forEach(x -> {
|
|
|
List<PtlAgreementProductCostsAttrLink> collect = list.stream().filter(y -> y.getCostsId().equals(x.getId())).collect(Collectors.toList());
|
|
List<PtlAgreementProductCostsAttrLink> collect = list.stream().filter(y -> y.getCostsId().equals(x.getId())).collect(Collectors.toList());
|
|
|
x.setCostsAttrLinks(collect);
|
|
x.setCostsAttrLinks(collect);
|
|
|
});
|
|
});
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
agreementProductCosts.forEach(x -> {
|
|
agreementProductCosts.forEach(x -> {
|
|
|
x.setCostsAttrLinks(new ArrayList<>());
|
|
x.setCostsAttrLinks(new ArrayList<>());
|
|
|
});
|
|
});
|
|
@@ -272,6 +274,7 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
return agreementProductCosts;
|
|
return agreementProductCosts;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
@Transactional
|
|
@Transactional
|
|
|
@Override
|
|
@Override
|
|
|
public boolean costsAdd(AgreementProductCosts agreementProductCosts) {
|
|
public boolean costsAdd(AgreementProductCosts agreementProductCosts) {
|
|
@@ -289,28 +292,61 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
ptlAgreementProductCostsExport.setId(null);
|
|
ptlAgreementProductCostsExport.setId(null);
|
|
|
ptlAgreementProductCostsExport.blank();
|
|
ptlAgreementProductCostsExport.blank();
|
|
|
ptlAgreementProductCostsExportService.save(ptlAgreementProductCostsExport);
|
|
ptlAgreementProductCostsExportService.save(ptlAgreementProductCostsExport);
|
|
|
-
|
|
|
|
|
|
|
+ //保存产品费用历史记录
|
|
|
|
|
+ PtlAgreementProductCostsNewHistory ptlAgreementProductCostsNewHistory = new PtlAgreementProductCostsNewHistory();
|
|
|
|
|
+ BeanUtils.copyProperties(agreementProductCosts, ptlAgreementProductCostsNewHistory);
|
|
|
|
|
+ //添加费用ID
|
|
|
|
|
+ ptlAgreementProductCostsNewHistory.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
|
|
|
+ //生成批次ID
|
|
|
|
|
+ String uuid = UUID.randomUUID().toString();
|
|
|
|
|
+ ptlAgreementProductCostsNewHistory.setBatch(uuid);
|
|
|
|
|
+ ptlAgreementProductCostsNewHistory.setOperatorType("add");
|
|
|
|
|
+ ptlAgreementProductCostsNewHistory.setModifier(BaseController.getUser().getId());
|
|
|
|
|
+ ptlAgreementProductCostsNewHistory.setOperatorTime(LocalDateTime.now());
|
|
|
|
|
+ ptlAgreementProductCostsNewHistoryService.save(ptlAgreementProductCostsNewHistory);
|
|
|
|
|
+ //创建产品费用因子历史记录容器
|
|
|
|
|
+ List<PtlAgreementProductCostsAttrLinkHistory> costsAttrLinkHistories = new ArrayList<>();
|
|
|
//遍历费用属性
|
|
//遍历费用属性
|
|
|
List<PtlAgreementProductCostsAttrLink> costsAttrLinks = agreementProductCosts.getCostsAttrLinks();
|
|
List<PtlAgreementProductCostsAttrLink> costsAttrLinks = agreementProductCosts.getCostsAttrLinks();
|
|
|
List<PtlAgreementProductCostsAttrLink> costsAttrLink = new ArrayList<>();
|
|
List<PtlAgreementProductCostsAttrLink> costsAttrLink = new ArrayList<>();
|
|
|
costsAttrLinks.forEach(x -> {
|
|
costsAttrLinks.forEach(x -> {
|
|
|
|
|
+ PtlAgreementProductCostsAttrLinkHistory costsAttrLinkHistory = new PtlAgreementProductCostsAttrLinkHistory();
|
|
|
|
|
+
|
|
|
//单独处理车牌号
|
|
//单独处理车牌号
|
|
|
- if("LicenseNo".equals(x.getAttrCode()) && (x.getMin() != null && !x.getMin().equals(""))){
|
|
|
|
|
|
|
+ if ("LicenseNo".equals(x.getAttrCode()) && (x.getMin() != null && !x.getMin().equals(""))) {
|
|
|
x.setOperator(x.getDictLabal().getJSONObject(0).getString("parentNumber"));
|
|
x.setOperator(x.getDictLabal().getJSONObject(0).getString("parentNumber"));
|
|
|
x.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
x.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
|
x.setId(0);
|
|
x.setId(0);
|
|
|
costsAttrLink.add(x);
|
|
costsAttrLink.add(x);
|
|
|
- }else {
|
|
|
|
|
|
|
+ BeanUtils.copyProperties(x, costsAttrLinkHistory);
|
|
|
|
|
+ //设置产品费用因子历史记录
|
|
|
|
|
+ costsAttrLinkHistory.setBatch(uuid);
|
|
|
|
|
+ costsAttrLinkHistory.setOperatorType("add");
|
|
|
|
|
+ costsAttrLinkHistory.setModifier(BaseController.getUser().getId());
|
|
|
|
|
+ costsAttrLinkHistory.setOperatorTime(LocalDateTime.now());
|
|
|
|
|
+ costsAttrLinkHistories.add(costsAttrLinkHistory);
|
|
|
|
|
+ } else {
|
|
|
if ((!"0".equals(x.getMin()) && null != x.getMin()) || (!"0".equals(x.getMax()) && null != x.getMax())) {
|
|
if ((!"0".equals(x.getMin()) && null != x.getMin()) || (!"0".equals(x.getMax()) && null != x.getMax())) {
|
|
|
|
|
|
|
|
x.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
x.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
|
x.setId(0);
|
|
x.setId(0);
|
|
|
costsAttrLink.add(x);
|
|
costsAttrLink.add(x);
|
|
|
|
|
+ BeanUtils.copyProperties(x, costsAttrLinkHistory);
|
|
|
|
|
+ //设置产品费用因子历史记录
|
|
|
|
|
+ costsAttrLinkHistory.setBatch(uuid);
|
|
|
|
|
+
|
|
|
|
|
+ costsAttrLinkHistory.setOperatorType("add");
|
|
|
|
|
+ costsAttrLinkHistory.setModifier(BaseController.getUser().getId());
|
|
|
|
|
+ costsAttrLinkHistory.setOperatorTime(LocalDateTime.now());
|
|
|
|
|
+ costsAttrLinkHistories.add(costsAttrLinkHistory);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
|
|
+ //保存产品费用因子历史记录
|
|
|
|
|
+ ptlAgreementProductCostsAttrLinkHistoryService.saveBatch(costsAttrLinkHistories);
|
|
|
ptlAgreementProductCostsAttrLinkService.saveBatch(costsAttrLink);
|
|
ptlAgreementProductCostsAttrLinkService.saveBatch(costsAttrLink);
|
|
|
return true;
|
|
return true;
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Transactional
|
|
@Transactional
|
|
@@ -324,13 +360,15 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
//更新费用出口表信息
|
|
//更新费用出口表信息
|
|
|
PtlAgreementProductCostsExport ptlAgreementProductCostsExport = ptlAgreementProductCostsExportService.getOne(
|
|
PtlAgreementProductCostsExport ptlAgreementProductCostsExport = ptlAgreementProductCostsExportService.getOne(
|
|
|
new LambdaQueryWrapper<PtlAgreementProductCostsExport>()
|
|
new LambdaQueryWrapper<PtlAgreementProductCostsExport>()
|
|
|
- .eq(PtlAgreementProductCostsExport::getCostsId, ptlAgreementProductCostsNew.getId()));
|
|
|
|
|
- if(Objects.isNull(ptlAgreementProductCostsExport)){
|
|
|
|
|
|
|
+ .eq(PtlAgreementProductCostsExport::getCostsId, ptlAgreementProductCostsNew.getId()));
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ if (Objects.isNull(ptlAgreementProductCostsExport)) {
|
|
|
ptlAgreementProductCostsExport = new PtlAgreementProductCostsExport();
|
|
ptlAgreementProductCostsExport = new PtlAgreementProductCostsExport();
|
|
|
BeanUtils.copyProperties(agreementProductCosts, ptlAgreementProductCostsExport);
|
|
BeanUtils.copyProperties(agreementProductCosts, ptlAgreementProductCostsExport);
|
|
|
ptlAgreementProductCostsExport.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
ptlAgreementProductCostsExport.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
|
ptlAgreementProductCostsExport.setId(null);
|
|
ptlAgreementProductCostsExport.setId(null);
|
|
|
- }else{
|
|
|
|
|
|
|
+ } else {
|
|
|
//保存原始id
|
|
//保存原始id
|
|
|
String id = ptlAgreementProductCostsExport.getId();
|
|
String id = ptlAgreementProductCostsExport.getId();
|
|
|
BeanUtils.copyProperties(agreementProductCosts, ptlAgreementProductCostsExport);
|
|
BeanUtils.copyProperties(agreementProductCosts, ptlAgreementProductCostsExport);
|
|
@@ -339,41 +377,86 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
}
|
|
}
|
|
|
ptlAgreementProductCostsExportService.saveOrUpdate(ptlAgreementProductCostsExport);
|
|
ptlAgreementProductCostsExportService.saveOrUpdate(ptlAgreementProductCostsExport);
|
|
|
|
|
|
|
|
|
|
+ //保存产品费用历史记录
|
|
|
|
|
+ PtlAgreementProductCostsNewHistory ptlAgreementProductCostsNewHistory = new PtlAgreementProductCostsNewHistory();
|
|
|
|
|
+ BeanUtils.copyProperties(agreementProductCosts, ptlAgreementProductCostsNewHistory);
|
|
|
|
|
+ //添加费用ID
|
|
|
|
|
+ ptlAgreementProductCostsNewHistory.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
|
|
|
+ //生成批次ID
|
|
|
|
|
+ String uuid = UUID.randomUUID().toString();
|
|
|
|
|
+ ptlAgreementProductCostsNewHistory.setBatch(uuid);
|
|
|
|
|
+
|
|
|
|
|
+ ptlAgreementProductCostsNewHistory.setOperatorType("update");
|
|
|
|
|
+ ptlAgreementProductCostsNewHistory.setModifier(BaseController.getUser().getId());
|
|
|
|
|
+ ptlAgreementProductCostsNewHistory.setOperatorTime(LocalDateTime.now());
|
|
|
|
|
+ ptlAgreementProductCostsNewHistoryService.save(ptlAgreementProductCostsNewHistory);
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
//设置费用因子属性
|
|
//设置费用因子属性
|
|
|
//先删除属性值
|
|
//先删除属性值
|
|
|
ptlAgreementProductCostsAttrLinkService.remove(new LambdaQueryWrapper<PtlAgreementProductCostsAttrLink>()
|
|
ptlAgreementProductCostsAttrLinkService.remove(new LambdaQueryWrapper<PtlAgreementProductCostsAttrLink>()
|
|
|
.eq(PtlAgreementProductCostsAttrLink::getCostsId, ptlAgreementProductCostsNew.getId()));
|
|
.eq(PtlAgreementProductCostsAttrLink::getCostsId, ptlAgreementProductCostsNew.getId()));
|
|
|
List<PtlAgreementUndwrtRulesAttr> undwrtRulesAttrList = ptlAgreementUndwrtRulesAttrService.getUndwrtRulesAttrList();
|
|
List<PtlAgreementUndwrtRulesAttr> undwrtRulesAttrList = ptlAgreementUndwrtRulesAttrService.getUndwrtRulesAttrList();
|
|
|
|
|
+ //创建产品费用因子历史记录容器
|
|
|
|
|
+ List<PtlAgreementProductCostsAttrLinkHistory> costsAttrLinkHistories = new ArrayList<>();
|
|
|
//再添加属性值
|
|
//再添加属性值
|
|
|
List<PtlAgreementProductCostsAttrLink> costsAttrLinks = agreementProductCosts.getCostsAttrLinks();
|
|
List<PtlAgreementProductCostsAttrLink> costsAttrLinks = agreementProductCosts.getCostsAttrLinks();
|
|
|
List<PtlAgreementProductCostsAttrLink> costsAttrLink = new ArrayList<>();
|
|
List<PtlAgreementProductCostsAttrLink> costsAttrLink = new ArrayList<>();
|
|
|
costsAttrLinks.forEach(x -> {
|
|
costsAttrLinks.forEach(x -> {
|
|
|
//单独处理车牌号
|
|
//单独处理车牌号
|
|
|
- if("LicenseNo".equals(x.getAttrCode()) && (x.getMin() != null && x.getMin() != "")){
|
|
|
|
|
|
|
+ if ("LicenseNo".equals(x.getAttrCode()) && (x.getMin() != null && x.getMin() != "")) {
|
|
|
x.setOperator(x.getDictLabal().getJSONObject(0).getString("parentNumber"));
|
|
x.setOperator(x.getDictLabal().getJSONObject(0).getString("parentNumber"));
|
|
|
x.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
x.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
|
x.setId(0);
|
|
x.setId(0);
|
|
|
costsAttrLink.add(x);
|
|
costsAttrLink.add(x);
|
|
|
- }else {
|
|
|
|
|
|
|
+ //设置产品费用因子历史记录
|
|
|
|
|
+ PtlAgreementProductCostsAttrLinkHistory costsAttrLinkHistory = new PtlAgreementProductCostsAttrLinkHistory();
|
|
|
|
|
+ BeanUtils.copyProperties(x, costsAttrLinkHistory);
|
|
|
|
|
+ costsAttrLinkHistory.setBatch(uuid);
|
|
|
|
|
+
|
|
|
|
|
+ costsAttrLinkHistory.setOperatorType("update");
|
|
|
|
|
+ costsAttrLinkHistory.setModifier(BaseController.getUser().getId());
|
|
|
|
|
+ costsAttrLinkHistory.setOperatorTime(LocalDateTime.now());
|
|
|
|
|
+ costsAttrLinkHistories.add(costsAttrLinkHistory);
|
|
|
|
|
+ } else {
|
|
|
PtlAgreementUndwrtRulesAttr ptlAgreementUndwrtRulesAttr = undwrtRulesAttrList.stream().filter(y -> y.getAttrCode().equals(x.getAttrCode())).findFirst().orElse(null);
|
|
PtlAgreementUndwrtRulesAttr ptlAgreementUndwrtRulesAttr = undwrtRulesAttrList.stream().filter(y -> y.getAttrCode().equals(x.getAttrCode())).findFirst().orElse(null);
|
|
|
//单独判断radio radio中存在0的属性值
|
|
//单独判断radio radio中存在0的属性值
|
|
|
- if("radio".equals(ptlAgreementUndwrtRulesAttr.getAttrType())){
|
|
|
|
|
|
|
+ if ("radio".equals(ptlAgreementUndwrtRulesAttr.getAttrType())) {
|
|
|
if (null != x.getMin()) {
|
|
if (null != x.getMin()) {
|
|
|
-
|
|
|
|
|
x.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
x.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
|
x.setId(0);
|
|
x.setId(0);
|
|
|
costsAttrLink.add(x);
|
|
costsAttrLink.add(x);
|
|
|
|
|
+ //设置产品费用因子历史记录
|
|
|
|
|
+ PtlAgreementProductCostsAttrLinkHistory costsAttrLinkHistory = new PtlAgreementProductCostsAttrLinkHistory();
|
|
|
|
|
+ BeanUtils.copyProperties(x, costsAttrLinkHistory);
|
|
|
|
|
+ costsAttrLinkHistory.setBatch(uuid);
|
|
|
|
|
+
|
|
|
|
|
+ costsAttrLinkHistory.setOperatorType("update");
|
|
|
|
|
+ costsAttrLinkHistory.setModifier(BaseController.getUser().getId());
|
|
|
|
|
+ costsAttrLinkHistory.setOperatorTime(LocalDateTime.now());
|
|
|
|
|
+ costsAttrLinkHistories.add(costsAttrLinkHistory);
|
|
|
}
|
|
}
|
|
|
- }else {
|
|
|
|
|
|
|
+ } else {
|
|
|
if ((!"0".equals(x.getMin()) && null != x.getMin()) || (!"0".equals(x.getMax()) && null != x.getMax())) {
|
|
if ((!"0".equals(x.getMin()) && null != x.getMin()) || (!"0".equals(x.getMax()) && null != x.getMax())) {
|
|
|
|
|
|
|
|
x.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
x.setCostsId(ptlAgreementProductCostsNew.getId());
|
|
|
x.setId(0);
|
|
x.setId(0);
|
|
|
costsAttrLink.add(x);
|
|
costsAttrLink.add(x);
|
|
|
|
|
+ //设置产品费用因子历史记录
|
|
|
|
|
+ PtlAgreementProductCostsAttrLinkHistory costsAttrLinkHistory = new PtlAgreementProductCostsAttrLinkHistory();
|
|
|
|
|
+ BeanUtils.copyProperties(x, costsAttrLinkHistory);
|
|
|
|
|
+ costsAttrLinkHistory.setBatch(uuid);
|
|
|
|
|
+
|
|
|
|
|
+ costsAttrLinkHistory.setOperatorType("update");
|
|
|
|
|
+ costsAttrLinkHistory.setModifier(BaseController.getUser().getId());
|
|
|
|
|
+ costsAttrLinkHistory.setOperatorTime(LocalDateTime.now());
|
|
|
|
|
+ costsAttrLinkHistories.add(costsAttrLinkHistory);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
|
|
+ //保存产品费用因子历史记录
|
|
|
|
|
+ ptlAgreementProductCostsAttrLinkHistoryService.saveBatch(costsAttrLinkHistories);
|
|
|
ptlAgreementProductCostsAttrLinkService.saveBatch(costsAttrLink);
|
|
ptlAgreementProductCostsAttrLinkService.saveBatch(costsAttrLink);
|
|
|
return true;
|
|
return true;
|
|
|
}
|
|
}
|
|
@@ -383,6 +466,10 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
|
|
|
public boolean costsDelete(String costsId) {
|
|
public boolean costsDelete(String costsId) {
|
|
|
baseMapper.deleteById(costsId);
|
|
baseMapper.deleteById(costsId);
|
|
|
ptlAgreementProductCostsAttrLinkService.remove(new LambdaQueryWrapper<PtlAgreementProductCostsAttrLink>().eq(PtlAgreementProductCostsAttrLink::getCostsId, costsId));
|
|
ptlAgreementProductCostsAttrLinkService.remove(new LambdaQueryWrapper<PtlAgreementProductCostsAttrLink>().eq(PtlAgreementProductCostsAttrLink::getCostsId, costsId));
|
|
|
- return true;
|
|
|
|
|
|
|
+ //删除产品费用历史记录
|
|
|
|
|
+ ptlAgreementProductCostsNewHistoryService.remove(new LambdaQueryWrapper<PtlAgreementProductCostsNewHistory>().eq(PtlAgreementProductCostsNewHistory::getCostsId, costsId));
|
|
|
|
|
+ //删除产品费用因子历史记录
|
|
|
|
|
+ ptlAgreementProductCostsAttrLinkHistoryService.remove(new LambdaQueryWrapper<PtlAgreementProductCostsAttrLinkHistory>().eq(PtlAgreementProductCostsAttrLinkHistory::getCostsId, costsId));
|
|
|
|
|
+ return true;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|