|
@@ -80,6 +80,7 @@ public class OverheadLineService {
|
|
|
}
|
|
|
List<JkxlDetailFee> list = getDetails(id,"1","1",itemType,"1");
|
|
|
JkxlDetailFee top = new JkxlDetailFee();
|
|
|
+ //处理变电站调整
|
|
|
if(itemType.equals("3")){
|
|
|
top.setWbsCode("20000000");
|
|
|
List<JkxlDetailFee> bdzList = new ArrayList<>();
|
|
@@ -92,7 +93,10 @@ public class OverheadLineService {
|
|
|
list.add(top);
|
|
|
DetailFeeUtil.getTree(list);
|
|
|
}else{
|
|
|
+ //处理架空和电缆线路
|
|
|
DetailFeeUtil.getGatherFee(top,list);
|
|
|
+ //top节点要把totalFee也进行调差,这样后面调用dealTotalFee处理计算差额时不会出错,变电站不需要这一步,因为它把top放到list里,在循环调整金额时top节点也会调整
|
|
|
+ top.setTotalFee(DoubleUtil.add(top.getTotalFee(),ftFee));
|
|
|
top.setNodes(list);
|
|
|
}
|
|
|
//分摊依据字段和
|
|
@@ -418,13 +422,15 @@ public class OverheadLineService {
|
|
|
double wsbfee = 0.00;
|
|
|
if(wsbFees != null && wsbFees.size()>0){
|
|
|
for(JkxlAdjustFee jkxlAdjustFee : wsbFees){
|
|
|
- jkxlAdjustFee.setId(id);
|
|
|
- feeAdjustService.save(jkxlAdjustFee);
|
|
|
+// 取未识别费用合计,这里要处理一种情况,就是有些金额是应该减掉的,但是在结算书里是正数
|
|
|
double fee = jkxlAdjustFee.getFee();
|
|
|
- if(jkxlAdjustFee.getType().contains("减") || jkxlAdjustFee.getType().contains("扣") || jkxlAdjustFee.getType().contains("下浮")){
|
|
|
+ if(fee>0&&(jkxlAdjustFee.getType().contains("减") || jkxlAdjustFee.getType().contains("扣") || jkxlAdjustFee.getType().contains("下浮"))){
|
|
|
fee = fee* -1;
|
|
|
}
|
|
|
wsbfee = DoubleUtil.add(wsbfee,fee);
|
|
|
+ jkxlAdjustFee.setId(id);
|
|
|
+ jkxlAdjustFee.setFee(Math.abs(fee));
|
|
|
+ feeAdjustService.save(jkxlAdjustFee);
|
|
|
}
|
|
|
}
|
|
|
//计算差额
|