Browse Source

处理优惠券使用记录没有订单编号的问题

zouxuan 10 months ago
parent
commit
14a79bf3f5

+ 3 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/SysCouponCodeDao.java

@@ -58,5 +58,7 @@ public interface SysCouponCodeDao extends BaseDAO<Long, SysCouponCode> {
      * 使用优惠券
      * 使用优惠券
      * @param couponIdList
      * @param couponIdList
      */
      */
-    void use(@Param("couponIdList") List<Integer> couponIdList);
+    void use(@Param("couponIdList") List<Integer> couponIdList,@Param("paymentOrderId") Long paymentOrderId);
+
+    void updatePaymentOrderId(@Param("paymentOrderId") Long paymentOrderId, @Param("couponCodeIdList") List<Integer> couponCodeIdList);
 }
 }

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/SysCouponCodeService.java

@@ -9,6 +9,7 @@ import com.ym.mec.biz.dal.page.SysCouponCodeQueryInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.page.QueryInfo;
 import com.ym.mec.common.service.BaseService;
 import com.ym.mec.common.service.BaseService;
+import org.springframework.transaction.annotation.Transactional;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.util.List;
 import java.util.List;
@@ -79,10 +80,14 @@ public interface SysCouponCodeService extends BaseService<Long, SysCouponCode> {
 
 
     void useCoupon(List<Integer> couponIdList);
     void useCoupon(List<Integer> couponIdList);
 
 
+    void useCoupon(List<Integer> couponIdList, Long paymentOrderId);
+
     /**
     /**
      * 退优惠券
      * 退优惠券
      *
      *
      * @param couponCodeId
      * @param couponCodeId
      */
      */
     void quit(String couponCodeId);
     void quit(String couponCodeId);
+
+    void updatePaymentOrderId(Long paymentOrderId, String couponCodeIds);
 }
 }

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/EduPracticeGroupServiceImpl.java

@@ -473,6 +473,8 @@ public class EduPracticeGroupServiceImpl implements EduPracticeGroupService{
         studentPaymentOrder.setMemo(operatorInfo+",教务代买");
         studentPaymentOrder.setMemo(operatorInfo+",教务代买");
         studentPaymentOrder.setVersion(0);
         studentPaymentOrder.setVersion(0);
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         if(practiceGroupBuyParams.isUseBalancePayment() || studentPaymentOrder.getExpectAmount().doubleValue() == 0){
         if(practiceGroupBuyParams.isUseBalancePayment() || studentPaymentOrder.getExpectAmount().doubleValue() == 0){
             SysUserCashAccount userCashAccount = sysUserCashAccountService.getLocked(practiceGroupBuyParams.getStudentId());
             SysUserCashAccount userCashAccount = sysUserCashAccountService.getLocked(practiceGroupBuyParams.getStudentId());
@@ -821,6 +823,8 @@ public class EduPracticeGroupServiceImpl implements EduPracticeGroupService{
         studentPaymentOrder.setMemo(operatorInfo+",教务代买");
         studentPaymentOrder.setMemo(operatorInfo+",教务代买");
         studentPaymentOrder.setVersion(0);
         studentPaymentOrder.setVersion(0);
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         if(practiceGroupBuyParams.isUseBalancePayment() || studentPaymentOrder.getExpectAmount().doubleValue() == 0){
         if(practiceGroupBuyParams.isUseBalancePayment() || studentPaymentOrder.getExpectAmount().doubleValue() == 0){
             SysUserCashAccount userCashAccount = sysUserCashAccountService.getLocked(practiceGroupBuyParams.getStudentId());
             SysUserCashAccount userCashAccount = sysUserCashAccountService.getLocked(practiceGroupBuyParams.getStudentId());

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -934,6 +934,8 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         studentPaymentOrder.setMusicGroupId(sporadicPayDto.getSporadicId().toString());
         studentPaymentOrder.setMusicGroupId(sporadicPayDto.getSporadicId().toString());
         studentPaymentOrder.setClassGroupId(sporadicPayDto.getNum());
         studentPaymentOrder.setClassGroupId(sporadicPayDto.getNum());
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
+		//更新sys_coupon_code表的订单编号
+		sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         studentPaymentOrder.setVersion(0);
         studentPaymentOrder.setVersion(0);
         BigDecimal balance = BigDecimal.ZERO;
         BigDecimal balance = BigDecimal.ZERO;

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

@@ -2442,6 +2442,8 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             studentPaymentOrder.setMemo(operatorInfo + ",教务代买");
             studentPaymentOrder.setMemo(operatorInfo + ",教务代买");
         }
         }
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         //创建班级老师关联记录
         //创建班级老师关联记录
         ClassGroupTeacherMapper classGroupTeacherMapper = new ClassGroupTeacherMapper();
         ClassGroupTeacherMapper classGroupTeacherMapper = new ClassGroupTeacherMapper();
@@ -3038,6 +3040,8 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             studentPaymentOrder.setMemo(operatorInfo + ",教务代买");
             studentPaymentOrder.setMemo(operatorInfo + ",教务代买");
         }
         }
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         BigDecimal balance = BigDecimal.ZERO;
         BigDecimal balance = BigDecimal.ZERO;
         if (practiceGroupBuyParams.isUseBalancePayment() || studentPaymentOrder.getExpectAmount().doubleValue() == 0) {
         if (practiceGroupBuyParams.isUseBalancePayment() || studentPaymentOrder.getExpectAmount().doubleValue() == 0) {
@@ -4250,6 +4254,8 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
         studentPaymentOrder.setActivityId(vipGroupActivityId == null ? "" : vipGroupActivityId.toString());
         studentPaymentOrder.setActivityId(vipGroupActivityId == null ? "" : vipGroupActivityId.toString());
         studentPaymentOrder.setActivityBuyNum(practiceGroup.getAllCourseNum());
         studentPaymentOrder.setActivityBuyNum(practiceGroup.getAllCourseNum());
         studentPaymentOrderDao.insert(studentPaymentOrder);
         studentPaymentOrderDao.insert(studentPaymentOrder);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         BigDecimal amount = studentPaymentOrder.getActualAmount();
         BigDecimal amount = studentPaymentOrder.getActualAmount();
         BigDecimal balance = BigDecimal.ZERO;
         BigDecimal balance = BigDecimal.ZERO;
@@ -4466,6 +4472,8 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
         studentPaymentOrder.setActivityId(activityId.toString());
         studentPaymentOrder.setActivityId(activityId.toString());
         studentPaymentOrder.setActivityBuyNum(1);
         studentPaymentOrder.setActivityBuyNum(1);
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         studentPaymentOrder.setVersion(0);
         studentPaymentOrder.setVersion(0);
         if (activityFee.compareTo(BigDecimal.ZERO) == 0) {
         if (activityFee.compareTo(BigDecimal.ZERO) == 0) {

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ReplacementInstrumentActivityServiceImpl.java

@@ -383,6 +383,8 @@ public class ReplacementInstrumentActivityServiceImpl extends BaseServiceImpl<In
         studentPaymentOrder.setCreateTime(nowDate);
         studentPaymentOrder.setCreateTime(nowDate);
         studentPaymentOrder.setUpdateTime(nowDate);
         studentPaymentOrder.setUpdateTime(nowDate);
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
         //修改支付状态
         //修改支付状态
         replacementInstrumentActivity.setPayStatus(1);
         replacementInstrumentActivity.setPayStatus(1);
         replacementInstrumentActivity.setUpdateTime(nowDate);
         replacementInstrumentActivity.setUpdateTime(nowDate);

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentInstrumentServiceImpl.java

@@ -155,6 +155,8 @@ public class StudentInstrumentServiceImpl extends BaseServiceImpl<Long, StudentI
         studentPaymentOrder.setCreateTime(nowDate);
         studentPaymentOrder.setCreateTime(nowDate);
         studentPaymentOrder.setUpdateTime(nowDate);
         studentPaymentOrder.setUpdateTime(nowDate);
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         int isRenew = 0;
         int isRenew = 0;
         if (studentInstrument.getEndTime() != null) {
         if (studentInstrument.getEndTime() != null) {

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentPaymentOrderServiceImpl.java

@@ -199,6 +199,9 @@ public class StudentPaymentOrderServiceImpl extends BaseServiceImpl<Long, Studen
             studentPaymentOrderDetailService.allocateAndAdd(details, studentPaymentOrder.getCouponRemitFee());
             studentPaymentOrderDetailService.allocateAndAdd(details, studentPaymentOrder.getCouponRemitFee());
         }
         }
 
 
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
+
         String baseApiUrl = sysConfigDao.findConfigValue(SysConfigService.BASE_API_URL);
         String baseApiUrl = sysConfigDao.findConfigValue(SysConfigService.BASE_API_URL);
 
 
         //logger.info("XXX-createOrder ---> cashAmount:{}, balance:{}", cashAmount, cashAmount.compareTo(BigDecimal.ZERO));
         //logger.info("XXX-createOrder ---> cashAmount:{}, balance:{}", cashAmount, cashAmount.compareTo(BigDecimal.ZERO));
@@ -1397,6 +1400,8 @@ public class StudentPaymentOrderServiceImpl extends BaseServiceImpl<Long, Studen
         studentPaymentOrder.setTenantId(student.getTenantId());
         studentPaymentOrder.setTenantId(student.getTenantId());
         this.insert(studentPaymentOrder);
         this.insert(studentPaymentOrder);
         studentPaymentOrder.setVersion(studentPaymentOrder.getVersion());
         studentPaymentOrder.setVersion(studentPaymentOrder.getVersion());
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         // 余额支付
         // 余额支付
         if (model.isUseBalance() && studentPaymentOrder.getActualAmount().compareTo(BigDecimal.ZERO) > 0 ) {
         if (model.isUseBalance() && studentPaymentOrder.getActualAmount().compareTo(BigDecimal.ZERO) > 0 ) {

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

@@ -762,7 +762,7 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
             //优惠券减免金额应该是要减去 送课金额
             //优惠券减免金额应该是要减去 送课金额
             studentPaymentOrder.setCouponRemitFee(useCouponAmount.subtract(freeNewCourse));
             studentPaymentOrder.setCouponRemitFee(useCouponAmount.subtract(freeNewCourse));
             //核销优惠券
             //核销优惠券
-            sysCouponCodeService.useCoupon(registerPayDto.getCouponIdList());
+            sysCouponCodeService.useCoupon(registerPayDto.getCouponIdList(),studentPaymentOrder.getId());
         }
         }
         //添加订单明细
         //添加订单明细
         studentPaymentOrderDetailService.batchAdd(studentPaymentOrderDetailList);
         studentPaymentOrderDetailService.batchAdd(studentPaymentOrderDetailList);

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRepairServiceImpl.java

@@ -359,6 +359,8 @@ public class StudentRepairServiceImpl extends BaseServiceImpl<Integer, StudentRe
         studentPaymentOrder.setRoutingOrganId(student.getOrganId());
         studentPaymentOrder.setRoutingOrganId(student.getOrganId());
         studentPaymentOrder.setTenantId(student.getTenantId());
         studentPaymentOrder.setTenantId(student.getTenantId());
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         studentPaymentOrderDetailService.initStudentPaymentOrderDetail(studentPaymentOrder, goodsSellDtos);
         studentPaymentOrderDetailService.initStudentPaymentOrderDetail(studentPaymentOrder, goodsSellDtos);
 
 
@@ -486,6 +488,9 @@ public class StudentRepairServiceImpl extends BaseServiceImpl<Integer, StudentRe
         studentPaymentOrder.setTenantId(studentGoodsSell.getTenantId());
         studentPaymentOrder.setTenantId(studentGoodsSell.getTenantId());
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
 
 
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
+
         studentPaymentOrderDetailService.initStudentPaymentOrderDetail(studentPaymentOrder, goodsSellDtos);
         studentPaymentOrderDetailService.initStudentPaymentOrderDetail(studentPaymentOrder, goodsSellDtos);
 
 
         studentPaymentOrder.setVersion(0);
         studentPaymentOrder.setVersion(0);
@@ -631,6 +636,8 @@ public class StudentRepairServiceImpl extends BaseServiceImpl<Integer, StudentRe
 
 
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrder.setVersion(0);
         studentPaymentOrder.setVersion(0);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
 
 
         List<StudentPaymentOrderDetail> studentPaymentOrderDetailList = new ArrayList<StudentPaymentOrderDetail>();
         List<StudentPaymentOrderDetail> studentPaymentOrderDetailList = new ArrayList<StudentPaymentOrderDetail>();
@@ -896,6 +903,8 @@ public class StudentRepairServiceImpl extends BaseServiceImpl<Integer, StudentRe
 
 
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrder.setVersion(0);
         studentPaymentOrder.setVersion(0);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         List<StudentPaymentOrderDetail> studentPaymentOrderDetailList = new ArrayList<StudentPaymentOrderDetail>();
         List<StudentPaymentOrderDetail> studentPaymentOrderDetailList = new ArrayList<StudentPaymentOrderDetail>();
         // 添加studentPaymentOrderDetail
         // 添加studentPaymentOrderDetail

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectChangeServiceImpl.java

@@ -245,6 +245,8 @@ public class SubjectChangeServiceImpl extends BaseServiceImpl<Integer, SubjectCh
         studentPaymentOrder.setRoutingOrganId(subjectChange.getOrganId());
         studentPaymentOrder.setRoutingOrganId(subjectChange.getOrganId());
         studentPaymentOrder.setTenantId(tenantId);
         studentPaymentOrder.setTenantId(tenantId);
         studentPaymentOrderService.insert(studentPaymentOrder);
         studentPaymentOrderService.insert(studentPaymentOrder);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         subjectChange.setOrderId(studentPaymentOrder.getId().intValue());
         subjectChange.setOrderId(studentPaymentOrder.getId().intValue());
         subjectChange.setOrderNo(orderNo);
         subjectChange.setOrderNo(orderNo);

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

@@ -32,6 +32,7 @@ import org.springframework.transaction.annotation.Transactional;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.util.*;
 import java.util.*;
+import java.util.stream.Collectors;
 
 
 @Service
 @Service
 public class SysCouponCodeServiceImpl extends BaseServiceImpl<Long, SysCouponCode> implements SysCouponCodeService {
 public class SysCouponCodeServiceImpl extends BaseServiceImpl<Long, SysCouponCode> implements SysCouponCodeService {
@@ -370,7 +371,13 @@ public class SysCouponCodeServiceImpl extends BaseServiceImpl<Long, SysCouponCod
     @Override
     @Override
     @Transactional(rollbackFor = Exception.class)
     @Transactional(rollbackFor = Exception.class)
     public void useCoupon(List<Integer> couponIdList) {
     public void useCoupon(List<Integer> couponIdList) {
-        sysCouponCodeDao.use(couponIdList);
+        sysCouponCodeDao.use(couponIdList,null);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void useCoupon(List<Integer> couponIdList, Long paymentOrderId) {
+        sysCouponCodeDao.use(couponIdList,paymentOrderId);
     }
     }
 
 
     @Override
     @Override
@@ -381,4 +388,14 @@ public class SysCouponCodeServiceImpl extends BaseServiceImpl<Long, SysCouponCod
         }
         }
         sysCouponCodeDao.quit(couponCodeId);
         sysCouponCodeDao.quit(couponCodeId);
     }
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void updatePaymentOrderId(Long paymentOrderId, String couponCodeIds) {
+        if (StringUtils.isEmpty(couponCodeIds)) {
+            return;
+        }
+        List<Integer> couponCodeIdList = Arrays.stream(couponCodeIds.split(",")).map(Integer::parseInt).collect(Collectors.toList());
+        sysCouponCodeDao.updatePaymentOrderId(paymentOrderId, couponCodeIdList);
+    }
 }
 }

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupActivityServiceImpl.java

@@ -652,6 +652,8 @@ public class VipGroupActivityServiceImpl extends BaseServiceImpl<Integer, VipGro
 		studentPaymentOrder.setActivityId(payParam.getVipGroupActivityId().toString());
 		studentPaymentOrder.setActivityId(payParam.getVipGroupActivityId().toString());
 		studentPaymentOrder.setMemo("学员活动购买");
 		studentPaymentOrder.setMemo("学员活动购买");
 		studentPaymentOrderService.insert(studentPaymentOrder);
 		studentPaymentOrderService.insert(studentPaymentOrder);
+		//更新sys_coupon_code表的订单编号
+		sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
 		//余额消耗
 		//余额消耗
 		Boolean success = sysUserCashAccountService.use(payParam,studentPaymentOrder);
 		Boolean success = sysUserCashAccountService.use(payParam,studentPaymentOrder);
@@ -839,6 +841,8 @@ public class VipGroupActivityServiceImpl extends BaseServiceImpl<Integer, VipGro
 		studentPaymentOrder.setMusicGroupId(activityIdList);
 		studentPaymentOrder.setMusicGroupId(activityIdList);
 		studentPaymentOrder.setVersion(0);
 		studentPaymentOrder.setVersion(0);
 		studentPaymentOrderService.insert(studentPaymentOrder);
 		studentPaymentOrderService.insert(studentPaymentOrder);
+		//更新sys_coupon_code表的订单编号
+		sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
 		//消耗余额
 		//消耗余额
 		Boolean success = sysUserCashAccountService.use(payParam,studentPaymentOrder);
 		Boolean success = sysUserCashAccountService.use(payParam,studentPaymentOrder);

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -2747,6 +2747,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
         Integer vipGroupActivityId = vipGroup.getVipGroupActivityId();
         Integer vipGroupActivityId = vipGroup.getVipGroupActivityId();
         studentPaymentOrder.setActivityId(vipGroupActivityId == null ? "" : vipGroupActivityId.toString());
         studentPaymentOrder.setActivityId(vipGroupActivityId == null ? "" : vipGroupActivityId.toString());
         studentPaymentOrderDao.insert(studentPaymentOrder);
         studentPaymentOrderDao.insert(studentPaymentOrder);
+        //更新sys_coupon_code表的订单编号
+        sysCouponCodeService.updatePaymentOrderId(studentPaymentOrder.getId(), studentPaymentOrder.getCouponCodeId());
 
 
         BigDecimal amount = studentPaymentOrder.getActualAmount();
         BigDecimal amount = studentPaymentOrder.getActualAmount();
         BigDecimal balance = BigDecimal.ZERO;
         BigDecimal balance = BigDecimal.ZERO;

+ 8 - 2
mec-biz/src/main/resources/config/mybatis/SysCouponCodeMapper.xml

@@ -118,15 +118,21 @@
 		WHERE id_ = #{id} and tenant_id_ = #{tenantId}
 		WHERE id_ = #{id} and tenant_id_ = #{tenantId}
 	</update>
 	</update>
 	<update id="quit">
 	<update id="quit">
-		UPDATE sys_coupon_code SET usage_status_ = 0,used_time_ = NULL,update_time_ = NOW() WHERE FIND_IN_SET(id_,#{couponCodeId})
+		UPDATE sys_coupon_code SET usage_status_ = 0,used_time_ = NULL,payment_order_id_ = NULL,update_time_ = NOW() WHERE FIND_IN_SET(id_,#{couponCodeId})
 	</update>
 	</update>
 	<update id="use">
 	<update id="use">
-		UPDATE sys_coupon_code SET usage_status_ = 1,used_time_ = NOW(),update_time_ = NOW()
+		UPDATE sys_coupon_code SET usage_status_ = 1,used_time_ = NOW(),update_time_ = NOW(),payment_order_id_ = #{paymentOrderId}
 		WHERE id_ IN
 		WHERE id_ IN
 		<foreach collection="couponIdList" open="(" close=")" item="item" separator=",">
 		<foreach collection="couponIdList" open="(" close=")" item="item" separator=",">
 			#{item}
 			#{item}
 		</foreach>
 		</foreach>
 	</update>
 	</update>
+	<update id="updatePaymentOrderId">
+		UPDATE sys_coupon_code SET payment_order_id_ = #{paymentOrderId},update_time_ = NOW() WHERE id_ IN
+		<foreach collection="couponCodeIdList" open="(" close=")" item="item" separator=",">
+			#{item}
+		</foreach>
+	</update>
 
 
 	<!-- 根据主键删除一条记录 -->
 	<!-- 根据主键删除一条记录 -->
 	<delete id="delete" >
 	<delete id="delete" >