|
@@ -2396,6 +2396,19 @@ public class ExportServiceImpl implements ExportService {
|
|
|
if(CollectionUtils.isEmpty(detailList)){
|
|
|
return;
|
|
|
}
|
|
|
+ if(basicOrder.getServiceAmount().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ //如果是指定内部账户,并且分润金额和内部库存金额一致,那么直接判定为云教练收入
|
|
|
+ if (basicOrder.getRouteMerNo().equals(goodsSellReceiptMerNo) && detailList.stream().
|
|
|
+ anyMatch(e -> StringUtils.equals(e.getIncomeItem(), "CLOUD_TEACHER") && e.getIncome().compareTo(BigDecimal.ZERO) > 0)) {
|
|
|
+ BigDecimal income = detailList.stream().filter(e -> StringUtils.equals(e.getIncomeItem(), "CLOUD_TEACHER") && e.getIncome().compareTo(BigDecimal.ZERO) > 0)
|
|
|
+ .map(e -> e.getIncome()).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
+ basicOrder.setCloudTeacherFee(income);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(detailList.stream().anyMatch(e-> e.getIncome().compareTo(BigDecimal.ZERO) == 0)){
|
|
|
+ return;
|
|
|
+ }
|
|
|
//订单详情去除余额部分
|
|
|
calculateOrderDetailActualAmount(basicOrder.getExpectAmount(),basicOrder.getBalancePaymentAmount(),detailList);
|
|
|
if(basicOrder.getServiceAmount().compareTo(BigDecimal.ZERO) > 0){
|
|
@@ -2602,26 +2615,22 @@ public class ExportServiceImpl implements ExportService {
|
|
|
}
|
|
|
}
|
|
|
public void setSaleFee(StudentPaymentOrderExportDto basicOrder,StudentPaymentOrderDetail orderDetail){
|
|
|
- if(orderDetail.getIncome().compareTo(BigDecimal.ZERO) > 0){
|
|
|
- basicOrder.setCloudTeacherFee(basicOrder.getCloudTeacherFee().add(orderDetail.getIncome()));
|
|
|
- }else {
|
|
|
- BigDecimal price = orderDetail.getPrice().subtract(orderDetail.getIncome());
|
|
|
- switch (orderDetail.getType()) {
|
|
|
- case OTHER:
|
|
|
- basicOrder.setOtherFee(basicOrder.getOtherFee().add(price));
|
|
|
- break;
|
|
|
- case MUSICAL:
|
|
|
- if (orderDetail.getKitGroupPurchaseType() != null && orderDetail.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.LEASE)) {
|
|
|
- basicOrder.setLeaseFee(basicOrder.getLeaseFee().add(price));
|
|
|
- } else {
|
|
|
- basicOrder.setMusicalFee(basicOrder.getMusicalFee().add(price));
|
|
|
- }
|
|
|
- break;
|
|
|
- case TEACHING:
|
|
|
- case ACCESSORIES:
|
|
|
- basicOrder.setTeachingFee(basicOrder.getTeachingFee().add(price));
|
|
|
- break;
|
|
|
- }
|
|
|
+ BigDecimal price = orderDetail.getPrice().subtract(orderDetail.getIncome());
|
|
|
+ switch (orderDetail.getType()) {
|
|
|
+ case OTHER:
|
|
|
+ basicOrder.setOtherFee(basicOrder.getOtherFee().add(price));
|
|
|
+ break;
|
|
|
+ case MUSICAL:
|
|
|
+ if (orderDetail.getKitGroupPurchaseType() != null && orderDetail.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.LEASE)) {
|
|
|
+ basicOrder.setLeaseFee(basicOrder.getLeaseFee().add(price));
|
|
|
+ } else {
|
|
|
+ basicOrder.setMusicalFee(basicOrder.getMusicalFee().add(price));
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case TEACHING:
|
|
|
+ case ACCESSORIES:
|
|
|
+ basicOrder.setTeachingFee(basicOrder.getTeachingFee().add(price));
|
|
|
+ break;
|
|
|
}
|
|
|
}
|
|
|
|