浏览代码

Merge branch 'saas' into master_saas

yonge 3 年之前
父节点
当前提交
4b37eb8c6b

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/PracticeGroupServiceImpl.java

@@ -4603,7 +4603,7 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             activityUserMapper.setTeacherId(student.getTeacherId());
             activityUserMapper.setVipFlag(1);
             activityUserMapper.setActualPrice(order.getExpectAmount());
-            activityUserMapper.setTeacherId(order.getTenantId());
+            activityUserMapper.setTenantId(order.getTenantId());
             if (activity.isPayToBalance()) {
                 boolean appendCourseBalance = sysUserCashAccountService.appendCourseBalance(userId, studentPaymentOrder.getExpectAmount(), PlatformCashAccountDetailTypeEnum.RECHARGE, "通用营销活动购买");
                 if (!appendCourseBalance) {

+ 54 - 17
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SellOrderServiceImpl.java

@@ -1,14 +1,15 @@
 package com.ym.mec.biz.service.impl;
 
 
-import com.alibaba.fastjson.JSONObject;
-import com.ym.mec.biz.dal.dao.*;
-import com.ym.mec.biz.dal.entity.*;
-import com.ym.mec.biz.dal.enums.*;
-import com.ym.mec.biz.service.*;
-import com.ym.mec.common.constant.CommonConstants;
-import com.ym.mec.common.dal.BaseDAO;
-import com.ym.mec.common.service.impl.BaseServiceImpl;
+import static com.ym.mec.biz.dal.enums.GroupType.GOODS_SELL;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -16,11 +17,39 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Isolation;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.math.BigDecimal;
-import java.util.*;
-import java.util.stream.Collectors;
-
-import static com.ym.mec.biz.dal.enums.GroupType.GOODS_SELL;
+import com.alibaba.fastjson.JSONObject;
+import com.ym.mec.biz.dal.dao.GoodsDao;
+import com.ym.mec.biz.dal.dao.MusicGroupDao;
+import com.ym.mec.biz.dal.dao.SellOrderDao;
+import com.ym.mec.biz.dal.dao.SporadicChargeInfoDao;
+import com.ym.mec.biz.dal.dao.StudentPaymentOrderDao;
+import com.ym.mec.biz.dal.dao.StudentPaymentOrderDetailDao;
+import com.ym.mec.biz.dal.dao.StudentRepairDao;
+import com.ym.mec.biz.dal.entity.Goods;
+import com.ym.mec.biz.dal.entity.MusicGroup;
+import com.ym.mec.biz.dal.entity.SellOrder;
+import com.ym.mec.biz.dal.entity.SporadicChargeInfo;
+import com.ym.mec.biz.dal.entity.StudentPaymentOrder;
+import com.ym.mec.biz.dal.entity.StudentPaymentOrderDetail;
+import com.ym.mec.biz.dal.entity.StudentRepair;
+import com.ym.mec.biz.dal.entity.SysUserCashAccountLog;
+import com.ym.mec.biz.dal.enums.AccountType;
+import com.ym.mec.biz.dal.enums.GoodsType;
+import com.ym.mec.biz.dal.enums.KitGroupPurchaseTypeEnum;
+import com.ym.mec.biz.dal.enums.OrderDetailTypeEnum;
+import com.ym.mec.biz.dal.enums.OrderTypeEnum;
+import com.ym.mec.biz.dal.enums.PaymentChannelEnum;
+import com.ym.mec.biz.dal.enums.ReturnFeeEnum;
+import com.ym.mec.biz.dal.enums.SellStatus;
+import com.ym.mec.biz.dal.enums.SellTypeEnum;
+import com.ym.mec.biz.dal.enums.SporadicChargeTypeEnum;
+import com.ym.mec.biz.service.GoodsService;
+import com.ym.mec.biz.service.SellOrderService;
+import com.ym.mec.biz.service.StudentPaymentOrderDetailService;
+import com.ym.mec.biz.service.SysPaymentConfigService;
+import com.ym.mec.biz.service.SysUserCashAccountLogService;
+import com.ym.mec.common.dal.BaseDAO;
+import com.ym.mec.common.service.impl.BaseServiceImpl;
 
 @Service
 public class SellOrderServiceImpl extends BaseServiceImpl<Integer, SellOrder> implements SellOrderService {
@@ -44,6 +73,8 @@ public class SellOrderServiceImpl extends BaseServiceImpl<Integer, SellOrder> im
     private SporadicChargeInfoDao sporadicChargeInfoDao;
     @Autowired
     private StudentRepairDao studentRepairDao;
+    @Autowired
+    private StudentPaymentOrderDetailService studentPaymentOrderDetailService;
 
     @Override
     public BaseDAO<Integer, SellOrder> getDAO() {
@@ -451,6 +482,12 @@ public class SellOrderServiceImpl extends BaseServiceImpl<Integer, SellOrder> im
         if (order == null) {
             return null;
         }
+        
+        List<StudentPaymentOrderDetail> studentPaymentOrderDetailList = studentPaymentOrderDetailService.queryOrderDetail(order.getId());
+        BigDecimal cloudIncome = BigDecimal.ZERO;
+        if(studentPaymentOrderDetailList != null) {
+        	cloudIncome = studentPaymentOrderDetailList.stream().filter(t -> StringUtils.isNoneBlank(t.getMinuendStockGoodsIdList()) && StringUtils.equals(t.getIncomeItem(), OrderDetailTypeEnum.CLOUD_TEACHER.name())).map(t -> t.getIncome()).reduce(BigDecimal.ZERO, BigDecimal::add);
+        }
 
         //零星支付除了充值其他都是服务费用
         if (order.getType().equals(OrderTypeEnum.SPORADIC)) {
@@ -462,13 +499,13 @@ public class SellOrderServiceImpl extends BaseServiceImpl<Integer, SellOrder> im
         Map<String, BigDecimal> sellAmount = new HashMap<>();
         //乐器销售,声部更改
         if (order.getType().equals(OrderTypeEnum.GOODS_SELL) || order.getType().equals(OrderTypeEnum.SUBJECT_CHANGE)) {
-            sellAmount.put("actualAmount", order.getActualAmount());
+            sellAmount.put("actualAmount", order.getActualAmount().subtract(cloudIncome));
             sellAmount.put("balance", order.getBalancePaymentAmount() == null ? BigDecimal.ZERO : order.getBalancePaymentAmount());
             return sellAmount;
         }
         //乐器置换
         if (order.getType().equals(OrderTypeEnum.REPLACEMENT)) {
-            sellAmount.put("actualAmount", order.getActualAmount());
+            sellAmount.put("actualAmount", order.getActualAmount().subtract(cloudIncome));
             sellAmount.put("balance", order.getBalancePaymentAmount() == null ? BigDecimal.ZERO : order.getBalancePaymentAmount());
             return sellAmount;
         }
@@ -512,7 +549,7 @@ public class SellOrderServiceImpl extends BaseServiceImpl<Integer, SellOrder> im
 
             BigDecimal goodsTotalBalance = goodsTotalPrice.multiply(balance).divide(totalAmount, 2, BigDecimal.ROUND_DOWN);
             BigDecimal goodsTotalActualAmount = goodsTotalPrice.multiply(order.getActualAmount()).divide(totalAmount, 2, BigDecimal.ROUND_DOWN);
-            sellAmount.put("actualAmount", goodsTotalActualAmount);
+            sellAmount.put("actualAmount", goodsTotalActualAmount.subtract(cloudIncome));
             sellAmount.put("balance", goodsTotalBalance);
             return sellAmount;
         }
@@ -529,7 +566,7 @@ public class SellOrderServiceImpl extends BaseServiceImpl<Integer, SellOrder> im
             //商品销售占的余额
             BigDecimal detailTotalBalance = detailTotalPrice.multiply(totalBalance).divide(totalPrice, 2, BigDecimal.ROUND_DOWN);
 
-            sellAmount.put("actualAmount", detailTotalPrice.subtract(detailTotalBalance));
+            sellAmount.put("actualAmount", detailTotalPrice.subtract(detailTotalBalance).subtract(cloudIncome));
             sellAmount.put("balance", detailTotalBalance);
             return sellAmount;
         }

+ 1 - 1
mec-student/src/main/java/com/ym/mec/student/controller/MusicGroupController.java

@@ -154,7 +154,7 @@ public class MusicGroupController extends BaseController {
                 MusicGroupPaymentCalender paymentCalender = musicGroupPaymentCalenderService.getApplyCalenderByMusicId(musicGroupId);
                 HashMap<String, Object> calenderDetail = new HashMap<>(5);
                 musicGroupPaymentCalenderService.getCalenderDetail(calenderDetail,paymentCalender.getId());
-                boolean flag = false;
+                boolean flag = true;
                 //是否购买乐团课
                 if(Objects.nonNull(calenderDetail.get("course"))){
                     if(typeList.contains(OrderDetailTypeEnum.COURSE)