yonge 2 年之前
父節點
當前提交
9743a77bf9
共有 1 個文件被更改,包括 33 次插入4 次删除
  1. 33 4
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentInstrumentServiceImpl.java

+ 33 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentInstrumentServiceImpl.java

@@ -1,15 +1,13 @@
 package com.ym.mec.biz.service.impl;
 
 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.Optional;
 import java.util.stream.Collectors;
 
-import com.ym.mec.biz.service.*;
-import com.ym.mec.common.tenant.TenantContextHolder;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -32,15 +30,28 @@ import com.ym.mec.biz.dal.entity.SysUserCashAccount;
 import com.ym.mec.biz.dal.entity.SysUserCashAccountDetail;
 import com.ym.mec.biz.dal.enums.DealStatusEnum;
 import com.ym.mec.biz.dal.enums.GroupType;
-import com.ym.mec.biz.dal.enums.KitGroupPurchaseTypeEnum;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
 import com.ym.mec.biz.dal.enums.OrderDetailTypeEnum;
 import com.ym.mec.biz.dal.enums.OrderTypeEnum;
 import com.ym.mec.biz.dal.enums.PlatformCashAccountDetailTypeEnum;
+import com.ym.mec.biz.service.ContractService;
+import com.ym.mec.biz.service.GoodsCategoryService;
+import com.ym.mec.biz.service.GoodsService;
+import com.ym.mec.biz.service.PayService;
+import com.ym.mec.biz.service.StudentInstrumentService;
+import com.ym.mec.biz.service.StudentPaymentOrderService;
+import com.ym.mec.biz.service.StudentPaymentRouteOrderService;
+import com.ym.mec.biz.service.SysConfigService;
+import com.ym.mec.biz.service.SysCouponCodeService;
+import com.ym.mec.biz.service.SysMessageService;
+import com.ym.mec.biz.service.SysTenantConfigService;
+import com.ym.mec.biz.service.SysUserCashAccountDetailService;
+import com.ym.mec.biz.service.SysUserCashAccountService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.service.IdGeneratorService;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
+import com.ym.mec.common.tenant.TenantContextHolder;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
 import com.ym.mec.util.date.DateUtil;
 
@@ -350,6 +361,7 @@ public class StudentInstrumentServiceImpl extends BaseServiceImpl<Long, StudentI
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public Boolean subjectChangeUpdateInstrument(SubjectChange subjectChange) {
     	
         StudentInstrument studentInstrument = null;
@@ -393,6 +405,23 @@ public class StudentInstrumentServiceImpl extends BaseServiceImpl<Long, StudentI
         
         if (studentInstrument.getId() == null) {
         	studentInstrumentDao.insert(studentInstrument);
+        	
+        	//反向更新student_payment_order_detail表中的Id
+        	List<StudentPaymentOrderDetail> spodList = studentPaymentOrderDetailDao.findApplyOrderSuccess(subjectChange.getMusicGroupId(), DealStatusEnum.SUCCESS, null);
+        	if(spodList != null && spodList.size() > 0){
+        		StudentPaymentOrderDetail spod = null;
+        		Optional<StudentPaymentOrderDetail> optional = spodList.stream().filter(t -> t.getUserId().intValue() == subjectChange.getStudentId() && t.getType() == OrderDetailTypeEnum.MAINTENANCE).findFirst();
+        		if(optional.isPresent()){
+        			spod = optional.get();
+        			
+        			if(spod != null){
+        				spod.setStudentInstrumentId(studentInstrument.getId());
+        				spod.setUpdateTime(date);
+        				studentPaymentOrderDetailDao.update(spod);
+        			}
+        		}
+        	}
+        	
             return true;
         }
         studentInstrumentDao.update(studentInstrument);