|
@@ -1,15 +1,13 @@
|
|
package com.ym.mec.biz.service.impl;
|
|
package com.ym.mec.biz.service.impl;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
-import java.util.ArrayList;
|
|
|
|
import java.util.Date;
|
|
import java.util.Date;
|
|
import java.util.HashMap;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
|
|
+import java.util.Optional;
|
|
import java.util.stream.Collectors;
|
|
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.apache.commons.lang3.StringUtils;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
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.entity.SysUserCashAccountDetail;
|
|
import com.ym.mec.biz.dal.enums.DealStatusEnum;
|
|
import com.ym.mec.biz.dal.enums.DealStatusEnum;
|
|
import com.ym.mec.biz.dal.enums.GroupType;
|
|
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.MessageTypeEnum;
|
|
import com.ym.mec.biz.dal.enums.OrderDetailTypeEnum;
|
|
import com.ym.mec.biz.dal.enums.OrderDetailTypeEnum;
|
|
import com.ym.mec.biz.dal.enums.OrderTypeEnum;
|
|
import com.ym.mec.biz.dal.enums.OrderTypeEnum;
|
|
import com.ym.mec.biz.dal.enums.PlatformCashAccountDetailTypeEnum;
|
|
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.dal.BaseDAO;
|
|
import com.ym.mec.common.exception.BizException;
|
|
import com.ym.mec.common.exception.BizException;
|
|
import com.ym.mec.common.service.IdGeneratorService;
|
|
import com.ym.mec.common.service.IdGeneratorService;
|
|
import com.ym.mec.common.service.impl.BaseServiceImpl;
|
|
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.thirdparty.message.MessageSenderPluginContext;
|
|
import com.ym.mec.util.date.DateUtil;
|
|
import com.ym.mec.util.date.DateUtil;
|
|
|
|
|
|
@@ -350,6 +361,7 @@ public class StudentInstrumentServiceImpl extends BaseServiceImpl<Long, StudentI
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
public Boolean subjectChangeUpdateInstrument(SubjectChange subjectChange) {
|
|
public Boolean subjectChangeUpdateInstrument(SubjectChange subjectChange) {
|
|
|
|
|
|
StudentInstrument studentInstrument = null;
|
|
StudentInstrument studentInstrument = null;
|
|
@@ -393,6 +405,23 @@ public class StudentInstrumentServiceImpl extends BaseServiceImpl<Long, StudentI
|
|
|
|
|
|
if (studentInstrument.getId() == null) {
|
|
if (studentInstrument.getId() == null) {
|
|
studentInstrumentDao.insert(studentInstrument);
|
|
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;
|
|
return true;
|
|
}
|
|
}
|
|
studentInstrumentDao.update(studentInstrument);
|
|
studentInstrumentDao.update(studentInstrument);
|