|
@@ -338,22 +338,8 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
|
|
|
BigDecimal orderTotalAmount = BigDecimal.ZERO;
|
|
|
|
|
|
boolean isCalculatedOfAccessories = false;
|
|
|
-
|
|
|
- if(orderDetailList.size() == 0) {
|
|
|
- if(subjectChange != null){
|
|
|
- if(subjectChange.getChangeMusical() != null){
|
|
|
- kitGroupPurchaseType = subjectChange.getKitGroupPurchaseType();
|
|
|
- musicalId = subjectChange.getChangeMusical() + "";
|
|
|
- userOrderTypeMap.put(OrderDetailTypeEnum.MUSICAL, subjectChange.getChangeMusicalPrice());
|
|
|
- orderTotalAmount = orderTotalAmount.add(subjectChange.getChangeMusicalPrice());
|
|
|
- }
|
|
|
- if(StringUtils.isNotBlank(subjectChange.getChangeAccessories())) {
|
|
|
- accessoriesId = accessoriesId.append(subjectChange.getChangeAccessories());
|
|
|
- userOrderTypeMap.put(OrderDetailTypeEnum.ACCESSORIES, subjectChange.getChangeAccessoriesPrice());
|
|
|
- orderTotalAmount = orderTotalAmount.add(subjectChange.getChangeAccessoriesPrice());
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ boolean isBuyMusical = false;
|
|
|
+ boolean isBuyAccessories = false;
|
|
|
|
|
|
for(StudentPaymentOrderDetail spod : orderDetailList) {
|
|
|
|
|
@@ -380,6 +366,7 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
|
|
|
musicalId = spod.getGoodsIdList();
|
|
|
//musicalAmount = musicalAmount.add(spod.getPrice());
|
|
|
}
|
|
|
+ isBuyMusical = true;
|
|
|
}else if(spod.getType() == OrderDetailTypeEnum.ACCESSORIES){
|
|
|
if(subjectChange != null && spod.getPaymentOrderId() <= subjectChange.getOriginalOrderId()) {
|
|
|
if(StringUtils.isBlank(subjectChange.getChangeAccessories()) || isCalculatedOfAccessories == true){
|
|
@@ -394,6 +381,7 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
|
|
|
accessoriesId = accessoriesId.append(spod.getGoodsIdList()).append(",");
|
|
|
//accessoriesAmount = accessoriesAmount.add(spod.getPrice());
|
|
|
}
|
|
|
+ isBuyAccessories = true;
|
|
|
}
|
|
|
|
|
|
amount = userOrderTypeMap.get(spod.getType());
|
|
@@ -406,6 +394,36 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
|
|
|
|
|
|
orderTotalAmount = orderTotalAmount.add(spod.getPrice().subtract(spod.getRemitFee()));
|
|
|
}
|
|
|
+
|
|
|
+ if(orderDetailList.size() == 0) {
|
|
|
+ if(subjectChange != null){
|
|
|
+ if(subjectChange.getChangeMusical() != null){
|
|
|
+ kitGroupPurchaseType = subjectChange.getKitGroupPurchaseType();
|
|
|
+ musicalId = subjectChange.getChangeMusical() + "";
|
|
|
+ userOrderTypeMap.put(OrderDetailTypeEnum.MUSICAL, subjectChange.getChangeMusicalPrice());
|
|
|
+ orderTotalAmount = orderTotalAmount.add(subjectChange.getChangeMusicalPrice());
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotBlank(subjectChange.getChangeAccessories())) {
|
|
|
+ accessoriesId = accessoriesId.append(subjectChange.getChangeAccessories()).append(",");
|
|
|
+ userOrderTypeMap.put(OrderDetailTypeEnum.ACCESSORIES, subjectChange.getChangeAccessoriesPrice());
|
|
|
+ orderTotalAmount = orderTotalAmount.add(subjectChange.getChangeAccessoriesPrice());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else if(isBuyAccessories == false || isBuyMusical == false){
|
|
|
+ if(subjectChange != null){
|
|
|
+ if(subjectChange.getChangeMusical() != null && isBuyMusical == false){
|
|
|
+ kitGroupPurchaseType = subjectChange.getKitGroupPurchaseType();
|
|
|
+ musicalId = subjectChange.getChangeMusical() + "";
|
|
|
+ userOrderTypeMap.put(OrderDetailTypeEnum.MUSICAL, subjectChange.getChangeMusicalPrice());
|
|
|
+ orderTotalAmount = orderTotalAmount.add(subjectChange.getChangeMusicalPrice());
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotBlank(subjectChange.getChangeAccessories()) && isBuyAccessories == false) {
|
|
|
+ accessoriesId = accessoriesId.append(subjectChange.getChangeAccessories()).append(",");
|
|
|
+ userOrderTypeMap.put(OrderDetailTypeEnum.ACCESSORIES, subjectChange.getChangeAccessoriesPrice());
|
|
|
+ orderTotalAmount = orderTotalAmount.add(subjectChange.getChangeAccessoriesPrice());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
dto.setAccessoriesAmount(userOrderTypeMap.get(OrderDetailTypeEnum.ACCESSORIES));
|
|
|
dto.setCourseAmount(userOrderTypeMap.get(OrderDetailTypeEnum.COURSE));
|