Преглед на файлове

Merge branch '20221010' into master_saas

yonge преди 2 години
родител
ревизия
54e58c7430
променени са 1 файла, в които са добавени 19 реда и са изтрити 14 реда
  1. 19 14
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectChangeServiceImpl.java

+ 19 - 14
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectChangeServiceImpl.java

@@ -340,18 +340,6 @@ public class SubjectChangeServiceImpl extends BaseServiceImpl<Integer, SubjectCh
         StudentPaymentOrderDetail studentPaymentOrderDetail = null;
 
         BigDecimal totalPrice = BigDecimal.ZERO;
-    	
-    	//分润分部
-        /*if(subjectChange.getChangeCourseFee().compareTo(BigDecimal.ZERO) > 0 && subjectChange.getKitGroupPurchaseType() == KitGroupPurchaseTypeEnum.GROUP) {
-        	StudentPaymentOrderDetail spod = new StudentPaymentOrderDetail();
-            spod.setType(OrderDetailTypeEnum.ORGAN_SHARE_PROFIT);
-            spod.setPrice(subjectChange.getChangeCourseFee());
-            spod.setRemitFee(BigDecimal.ZERO);
-            spod.setCreateTime(date);
-            spod.setUpdateTime(date);
-            spod.setPaymentOrderId(studentPaymentOrder.getId());
-            studentPaymentOrderDetailList.add(spod);
-        }*/
         
         List<String> changeGoodsList = new ArrayList<String>();
         
@@ -380,6 +368,23 @@ public class SubjectChangeServiceImpl extends BaseServiceImpl<Integer, SubjectCh
 				goodsTotalGroupPurchasePrice = goodsTotalGroupPurchasePrice.add(goods.getGroupPurchasePrice());
         	}
         	
+        	//分润分部
+            if(subjectChange.getChangeCourseFee().compareTo(BigDecimal.ZERO) > 0 && subjectChange.getKitGroupPurchaseType() == KitGroupPurchaseTypeEnum.GROUP) {
+            	
+            	goodsTotalGroupPurchasePrice = goodsTotalGroupPurchasePrice.add(subjectChange.getChangeCourseFee());
+            	
+            	StudentPaymentOrderDetail spod = new StudentPaymentOrderDetail();
+                spod.setType(OrderDetailTypeEnum.ORGAN_SHARE_PROFIT);
+                spod.setPrice(subjectChange.getChangeCourseFee().multiply(goods.getGroupPurchasePrice()).divide(goodsTotalGroupPurchasePrice, BigDecimal.ROUND_DOWN).setScale(2, BigDecimal.ROUND_DOWN));
+                spod.setRemitFee(BigDecimal.ZERO);
+                spod.setCreateTime(date);
+                spod.setUpdateTime(date);
+                spod.setPaymentOrderId(studentPaymentOrder.getId());
+                studentPaymentOrderDetailList.add(spod);
+                
+                totalPrice = totalPrice.add(spod.getPrice());
+            }
+        	
         	for(String goodsIdStr : goodsIdsStr.split(",")){
         		if(StringUtils.isBlank(goodsIdStr)){
 					continue;
@@ -498,14 +503,14 @@ public class SubjectChangeServiceImpl extends BaseServiceImpl<Integer, SubjectCh
             subjectChange.setOriginalSubjectId(lastSubjectChange.getChangeSubjectId());
             subjectChange.setCooperationOrganId(lastSubjectChange.getCooperationOrganId());
             subjectChange.setMusicGroupId(musicGroupId);
-            subjectChange.setOriginalCourseFee(subjectChange.getChangeCourseFee());
+            subjectChange.setOriginalCourseFee(lastSubjectChange.getChangeCourseFee());
             subjectChange.setOriginalMusical(lastSubjectChange.getChangeMusical());
             subjectChange.setOriginalMusicalPrice(lastSubjectChange.getChangeMusicalPrice());
             subjectChange.setOriginalAccessories(lastSubjectChange.getChangeAccessories());
             subjectChange.setOriginalAccessoriesPrice(lastSubjectChange.getChangeAccessoriesPrice());
             subjectChange.setOriginalCost(lastSubjectChange.getChangeCost());
             subjectChange.setOriginalKitGroupPurchaseType(
-                    lastSubjectChange.getOriginalKitGroupPurchaseType() == null ? KitGroupPurchaseTypeEnum.OWNED : lastSubjectChange.getOriginalKitGroupPurchaseType());
+                    lastSubjectChange.getKitGroupPurchaseType() == null ? KitGroupPurchaseTypeEnum.OWNED : lastSubjectChange.getKitGroupPurchaseType());
         }
         if (subjectChange.getKitGroupPurchaseType().equals(KitGroupPurchaseTypeEnum.OWNED)) {
             subjectChange.setChangeMusical(null);