培训班

This commit is contained in:
wuchunlei
2025-04-16 16:39:34 +08:00
parent c6b7699e84
commit d1746c678f
11 changed files with 166 additions and 52 deletions

View File

@@ -6,12 +6,8 @@ import com.peanut.common.utils.R;
import com.peanut.common.utils.ShiroUtils; import com.peanut.common.utils.ShiroUtils;
import com.peanut.config.Constants; import com.peanut.config.Constants;
import com.peanut.config.DelayQueueConfig; import com.peanut.config.DelayQueueConfig;
import com.peanut.modules.common.entity.BuyOrder; import com.peanut.modules.common.entity.*;
import com.peanut.modules.common.entity.TrainingClass; import com.peanut.modules.common.service.*;
import com.peanut.modules.common.entity.TrainingToUser;
import com.peanut.modules.common.service.BuyOrderService;
import com.peanut.modules.common.service.TrainingClassService;
import com.peanut.modules.common.service.TrainingToUserService;
import com.peanut.modules.pay.weChatPay.dto.WechatPaymentInfo; import com.peanut.modules.pay.weChatPay.dto.WechatPaymentInfo;
import com.peanut.modules.pay.weChatPay.service.WxpayService; import com.peanut.modules.pay.weChatPay.service.WxpayService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -25,6 +21,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -41,10 +38,16 @@ public class TrainingClassController {
@Autowired @Autowired
private TrainingToUserService trainingToUserService; private TrainingToUserService trainingToUserService;
@Autowired @Autowired
private com.peanut.modules.book.service.TransactionDetailsService transactionDetailsService;
@Autowired
private JfTransactionDetailsService jfTransactionDetailsService;
@Autowired
private BuyOrderService buyOrderService; private BuyOrderService buyOrderService;
@Autowired @Autowired
private WxpayService wxpayService; private WxpayService wxpayService;
@Autowired @Autowired
private MyUserService userService;
@Autowired
private RabbitTemplate rabbitTemplate; private RabbitTemplate rabbitTemplate;
//获取用户当前培训班最低价格 //获取用户当前培训班最低价格
@@ -59,8 +62,17 @@ public class TrainingClassController {
public R trainingClassList(@RequestBody Map<String,Object> params) { public R trainingClassList(@RequestBody Map<String,Object> params) {
List<TrainingClass> trainingClassList = trainingClassService.list(new LambdaQueryWrapper<TrainingClass>() List<TrainingClass> trainingClassList = trainingClassService.list(new LambdaQueryWrapper<TrainingClass>()
.eq(StringUtils.isNotEmpty(params.get("year").toString()),TrainingClass::getYear,params.get("year")) .eq(StringUtils.isNotEmpty(params.get("year").toString()),TrainingClass::getYear,params.get("year"))
.orderByDesc(TrainingClass::getSingupFlag)
.orderByAsc(TrainingClass::getSort)); .orderByAsc(TrainingClass::getSort));
for (TrainingClass trainingClass : trainingClassList) { for (TrainingClass trainingClass : trainingClassList) {
trainingClass.setFinalFee("0");
Map m = trainingClassService.getFinalPriceByUser(trainingClass.getId(),ShiroUtils.getUId());
if (m!=null&m.containsKey("identity")){
trainingClass.setIdentity(m.get("identity").toString());
}
if (m!=null&m.containsKey("fee")){
trainingClass.setFinalFee(m.get("fee").toString());
}
int count = trainingToUserService.count(new LambdaQueryWrapper<TrainingToUser>() int count = trainingToUserService.count(new LambdaQueryWrapper<TrainingToUser>()
.eq(TrainingToUser::getUserId, ShiroUtils.getUId()) .eq(TrainingToUser::getUserId, ShiroUtils.getUId())
.eq(TrainingToUser::getTrainingId,trainingClass.getId())); .eq(TrainingToUser::getTrainingId,trainingClass.getId()));
@@ -83,7 +95,34 @@ public class TrainingClassController {
buyOrder.setOrderSn(timeId); buyOrder.setOrderSn(timeId);
buyOrder.setUserId(ShiroUtils.getUId()); buyOrder.setUserId(ShiroUtils.getUId());
buyOrderService.save(buyOrder); buyOrderService.save(buyOrder);
if (StringUtils.isNotEmpty(buyOrder.getUserName())){
MyUserEntity user = userService.getById(buyOrder.getUserId());
user.setName(buyOrder.getUserName());
userService.updateById(user);
}
BigDecimal totalPrice = buyOrder.getRealMoney(); BigDecimal totalPrice = buyOrder.getRealMoney();
//虚拟币支付
if (Constants.PAYMENT_METHOD_VIRTUAL.equals(buyOrder.getPaymentMethod())) {
buyOrder.setOrderStatus(Constants.ORDER_STATUS_TO_BE_SHIPPED);
MyUserEntity user = userService.getById(buyOrder.getUserId());
if (usePeanutCoin(user, totalPrice)) {
//处理抵扣积分
if(buyOrder.getJfDeduction().compareTo(BigDecimal.ZERO)>0){
userCoinJf(buyOrder);
}
buyOrder.setSuccessTime(new Date());
// 更新订单状态
buyOrderService.updateOrderStatus(user.getId(), buyOrder.getOrderSn(), "2");
//记录用户虚拟币消费
if(totalPrice.compareTo(BigDecimal.ZERO)>0){
transactionDetailsService.recordTransaction(buyOrder, user, totalPrice);
}
//插入培训班
trainingClassService.addTrainingClassForUser(buyOrder);
} else {
return R.error(500, "余额不足!");
}
}
//微信支付预付款订单 //微信支付预付款订单
if(Constants.PAYMENT_METHOD_WECHAT_PAY.equals(buyOrder.getPaymentMethod())){ if(Constants.PAYMENT_METHOD_WECHAT_PAY.equals(buyOrder.getPaymentMethod())){
BuyOrder buyOrderEntity = buyOrderService.getBaseMapper().selectOne(new LambdaQueryWrapper<BuyOrder>() BuyOrder buyOrderEntity = buyOrderService.getBaseMapper().selectOne(new LambdaQueryWrapper<BuyOrder>()
@@ -112,6 +151,32 @@ public class TrainingClassController {
return R.ok().put("orderSn", timeId).put("money", totalPrice); return R.ok().put("orderSn", timeId).put("money", totalPrice);
} }
private boolean usePeanutCoin(MyUserEntity user, BigDecimal totalPrice) {
if (user.getPeanutCoin().compareTo(totalPrice) >= 0) {
if(totalPrice.compareTo(BigDecimal.ZERO)==0){//纯积分支付,虚拟币不用支付
return true;
}
user.setPeanutCoin(user.getPeanutCoin().subtract(totalPrice));
userService.updateById(user);
return true;
}
return false;
}
private void userCoinJf(BuyOrder order){
MyUserEntity userEntity = userService.getById(order.getUserId());
userEntity.setJf(userEntity.getJf().subtract(order.getJfDeduction()));
userService.updateById(userEntity);
JfTransactionDetails jfTransactionDetails = new JfTransactionDetails();
jfTransactionDetails.setUserId(userEntity.getId());
jfTransactionDetails.setChangeAmount(order.getJfDeduction().negate());
jfTransactionDetails.setActType(1);
jfTransactionDetails.setUserBalance(userEntity.getJf());
jfTransactionDetails.setRelationId(order.getOrderId());
jfTransactionDetails.setRemark("消费积分抵扣:"+order.getJfDeduction().toString()+",订单号:"+order.getOrderSn());
jfTransactionDetailsService.save(jfTransactionDetails);
}
private MessagePostProcessor messagePostProcessor() { private MessagePostProcessor messagePostProcessor() {
return message -> { return message -> {
//设置有效期30分钟 //设置有效期30分钟

View File

@@ -70,6 +70,7 @@ public class TransactionDetailsController {
} }
} }
detail.setProductName(productName); detail.setProductName(productName);
detail.setRelationId(buyOrder.getOrderId());
} }
} }
return R.ok().put("transactionDetailsList",list); return R.ok().put("transactionDetailsList",list);

View File

@@ -171,7 +171,7 @@ public class BuyOrder implements Serializable {
private Integer abroadBookId;//海外读书购买书籍id private Integer abroadBookId;//海外读书购买书籍id
private Integer offlineActivityId;//线下活动id private Integer trainingClassId;//培训班id
/** /**
* 地址id * 地址id
@@ -218,4 +218,6 @@ public class BuyOrder implements Serializable {
private VipBuyConfigEntity vipBuyConfigEntity; private VipBuyConfigEntity vipBuyConfigEntity;
@TableField(exist = false) @TableField(exist = false)
private BookEntity bookEntity; private BookEntity bookEntity;
@TableField(exist = false)
private String trainingClassIdentity;
} }

View File

@@ -30,10 +30,13 @@ public class TrainingClass {
//培训日期 //培训日期
private String trainingDate; private String trainingDate;
//截至日期
private String endDate;
//详情图片 //详情图片
private String icon; private String icon;
//报名开关 0可报名1可报名 //报名开关 0可报名1可报名
private Integer singupFlag; private Integer singupFlag;
//费用 //费用
@@ -70,5 +73,9 @@ public class TrainingClass {
@TableField(exist = false) @TableField(exist = false)
private int isJoin; private int isJoin;
@TableField(exist = false)
private String identity;
@TableField(exist = false)
private String finalFee;
} }

View File

@@ -24,8 +24,6 @@ public class TrainingToUser {
private String identity; private String identity;
private String payMethod;
private Date createTime; private Date createTime;
@TableLogic @TableLogic
@@ -33,5 +31,11 @@ public class TrainingToUser {
@TableField(exist = false) @TableField(exist = false)
private MyUserEntity user; private MyUserEntity user;
@TableField(exist = false)
private String payMethod;
@TableField(exist = false)
private String realMoney;
@TableField(exist = false)
private String jfDeduction;
} }

View File

@@ -25,7 +25,7 @@ public class UserVip implements Serializable {
*/ */
private Integer userId; private Integer userId;
/** /**
* 4中医学5针灸学6肿瘤学7国学8心理学 * 4中医学5针灸学6肿瘤学7国学8心理学9中西汇通
*/ */
private Integer type; private Integer type;
/** /**

View File

@@ -1,14 +1,14 @@
package com.peanut.modules.common.service; package com.peanut.modules.common.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.peanut.modules.common.entity.MyUserEntity; import com.peanut.modules.common.entity.BuyOrder;
import com.peanut.modules.common.entity.TrainingClass; import com.peanut.modules.common.entity.TrainingClass;
import java.math.BigDecimal;
import java.util.Map; import java.util.Map;
public interface TrainingClassService extends IService<TrainingClass> { public interface TrainingClassService extends IService<TrainingClass> {
Map<String,Object> getFinalPriceByUser(int classId, int userId); Map<String,Object> getFinalPriceByUser(int classId, int userId);
void addTrainingClassForUser(BuyOrder buyOrder);
} }

View File

@@ -5,11 +5,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.peanut.modules.common.dao.TrainingClassDao; import com.peanut.modules.common.dao.TrainingClassDao;
import com.peanut.modules.common.dao.UserVipDao; import com.peanut.modules.common.dao.UserVipDao;
import com.peanut.modules.common.entity.MyUserEntity; import com.peanut.modules.common.entity.*;
import com.peanut.modules.common.entity.TrainingClass;
import com.peanut.modules.common.entity.UserContribution;
import com.peanut.modules.common.entity.UserVip;
import com.peanut.modules.common.service.TrainingClassService; import com.peanut.modules.common.service.TrainingClassService;
import com.peanut.modules.common.service.TrainingToUserService;
import com.peanut.modules.common.service.UserContributionService; import com.peanut.modules.common.service.UserContributionService;
import com.peanut.modules.common.service.UserVipService; import com.peanut.modules.common.service.UserVipService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -29,6 +27,8 @@ public class TrainingClassServiceImpl extends ServiceImpl<TrainingClassDao, Trai
private UserVipService userVipService; private UserVipService userVipService;
@Autowired @Autowired
private UserContributionService userContributionService; private UserContributionService userContributionService;
@Autowired
private TrainingToUserService trainingToUserService;
@Override @Override
public Map<String,Object> getFinalPriceByUser(int classId,int userId) { public Map<String,Object> getFinalPriceByUser(int classId,int userId) {
@@ -43,7 +43,20 @@ public class TrainingClassServiceImpl extends ServiceImpl<TrainingClassDao, Trai
.eq(UserVip::getUserId,userId).eq(UserVip::getType,vipType).eq(UserVip::getState,0)); .eq(UserVip::getUserId,userId).eq(UserVip::getType,vipType).eq(UserVip::getState,0));
if (count>0){ if (count>0){
fee = trainingClass.getVipFee(); fee = trainingClass.getVipFee();
identity = "vip"; if ("4".equals(vipType)){
identity = "中医学vip";
}else if ("5".equals(vipType)) {
identity = "针灸学vip";
}else if ("6".equals(vipType)) {
identity = "肿瘤学vip";
}else if ("7".equals(vipType)) {
identity = "国学vip";
}else if ("8".equals(vipType)) {
identity = "心理学vip";
}else if ("9".equals(vipType)) {
identity = "中西汇通vip";
}
break;
} }
} }
} }
@@ -53,12 +66,12 @@ public class TrainingClassServiceImpl extends ServiceImpl<TrainingClassDao, Trai
if ("1".equals(svipType)&&userVipService.is4569SVip(userId)){ if ("1".equals(svipType)&&userVipService.is4569SVip(userId)){
if (fee.compareTo(trainingClass.getSvipFee())>0){ if (fee.compareTo(trainingClass.getSvipFee())>0){
fee = trainingClass.getSvipFee(); fee = trainingClass.getSvipFee();
identity = "svip"; identity = "医学svip";
} }
}else if ("2".equals(svipType)&&userVipService.is78SVip(userId)){ }else if ("2".equals(svipType)&&userVipService.is78SVip(userId)){
if (fee.compareTo(trainingClass.getSvipFee())>0){ if (fee.compareTo(trainingClass.getSvipFee())>0){
fee = trainingClass.getSvipFee(); fee = trainingClass.getSvipFee();
identity = "svip"; identity = "国学心理学svip";
} }
} }
} }
@@ -98,4 +111,14 @@ public class TrainingClassServiceImpl extends ServiceImpl<TrainingClassDao, Trai
return map; return map;
} }
@Override
public void addTrainingClassForUser(BuyOrder buyOrder) {
TrainingToUser trainingToUser = new TrainingToUser();
trainingToUser.setTrainingId(buyOrder.getTrainingClassId());
trainingToUser.setUserId(buyOrder.getUserId());
trainingToUser.setOrderSn(buyOrder.getOrderSn());
trainingToUser.setIdentity(buyOrder.getTrainingClassIdentity());
trainingToUserService.save(trainingToUser);
}
} }

View File

@@ -4,10 +4,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.peanut.common.utils.R; import com.peanut.common.utils.R;
import com.peanut.modules.common.entity.MyUserEntity; import com.peanut.modules.common.entity.*;
import com.peanut.modules.common.entity.TrainingClass; import com.peanut.modules.common.service.BuyOrderService;
import com.peanut.modules.common.entity.TrainingToUser;
import com.peanut.modules.common.entity.VipBuyConfigEntity;
import com.peanut.modules.common.service.MyUserService; import com.peanut.modules.common.service.MyUserService;
import com.peanut.modules.common.service.TrainingClassService; import com.peanut.modules.common.service.TrainingClassService;
import com.peanut.modules.common.service.TrainingToUserService; import com.peanut.modules.common.service.TrainingToUserService;
@@ -39,6 +37,8 @@ public class TrainingClassController {
private MyUserService userService; private MyUserService userService;
@Autowired @Autowired
private VipBuyConfigService vipBuyConfigService; private VipBuyConfigService vipBuyConfigService;
@Autowired
private BuyOrderService buyOrderService;
//vip商品类型 //vip商品类型
@RequestMapping("/getVipBuyConfigList") @RequestMapping("/getVipBuyConfigList")
@@ -93,9 +93,9 @@ public class TrainingClassController {
wrapper.orderByAsc(TrainingClass::getSort); wrapper.orderByAsc(TrainingClass::getSort);
wrapper.orderByDesc(TrainingClass::getCreateTime); wrapper.orderByDesc(TrainingClass::getCreateTime);
} }
Page<TrainingClass> trainingClassList = trainingClassService.page(new Page<>( Page<TrainingClass> trainingClassPage = trainingClassService.page(new Page<>(
Long.parseLong(params.get("current").toString()), Long.parseLong(params.get("limit").toString())),wrapper); Long.parseLong(params.get("current").toString()), Long.parseLong(params.get("limit").toString())),wrapper);
return R.ok().put("trainingClassList",trainingClassList); return R.ok().put("trainingClassList",trainingClassPage);
} }
//培训班下用户列表 //培训班下用户列表
@@ -106,11 +106,22 @@ public class TrainingClassController {
wrapper.selectAll(TrainingToUser.class); wrapper.selectAll(TrainingToUser.class);
wrapper.eq(TrainingToUser::getTrainingId,params.get("trainingId")); wrapper.eq(TrainingToUser::getTrainingId,params.get("trainingId"));
wrapper.like(StringUtils.isNotEmpty(params.get("tel").toString()),MyUserEntity::getTel,params.get("tel")); wrapper.like(StringUtils.isNotEmpty(params.get("tel").toString()),MyUserEntity::getTel,params.get("tel"));
wrapper.orderByDesc(TrainingToUser::getCreateTime); if ("2".equals(params.get("createTimeSort").toString())){
wrapper.orderByAsc(TrainingToUser::getCreateTime);
}else {
wrapper.orderByDesc(TrainingToUser::getCreateTime);
}
Page<TrainingToUser> trainingClassUserList = trainingToUserService.page(new Page<>( Page<TrainingToUser> trainingClassUserList = trainingToUserService.page(new Page<>(
Long.parseLong(params.get("current").toString()), Long.parseLong(params.get("limit").toString())),wrapper); Long.parseLong(params.get("current").toString()), Long.parseLong(params.get("limit").toString())),wrapper);
for (TrainingToUser toUser:trainingClassUserList.getRecords()){ for (TrainingToUser toUser:trainingClassUserList.getRecords()){
toUser.setUser(userService.getById(toUser.getUserId())); toUser.setUser(userService.getById(toUser.getUserId()));
if (StringUtils.isNotEmpty(toUser.getOrderSn())){
BuyOrder buyOrder = buyOrderService.getOne(new LambdaQueryWrapper<BuyOrder>()
.eq(BuyOrder::getOrderSn,toUser.getOrderSn()));
toUser.setPayMethod("1".equals(buyOrder.getPaymentMethod())?"微信":("2".equals(buyOrder.getPaymentMethod())?"支付宝":"虚拟币"));
toUser.setRealMoney(buyOrder.getRealMoney().toString());
toUser.setJfDeduction(buyOrder.getJfDeduction().toString());
}
} }
return R.ok().put("trainingClassUserList",trainingClassUserList); return R.ok().put("trainingClassUserList",trainingClassUserList);
} }
@@ -129,6 +140,13 @@ public class TrainingClassController {
return R.ok(); return R.ok();
} }
//培训班删除用户
@RequestMapping("/delUserToTrainingClass")
public R delUserToTrainingClass(@RequestBody Map<String,Object> params) {
trainingToUserService.removeById(params.get("id").toString());
return R.ok();
}

View File

@@ -10,13 +10,14 @@ import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.peanut.common.utils.CopyUtils; import com.peanut.common.utils.CopyUtils;
import com.peanut.common.utils.OrderUtils; import com.peanut.common.utils.OrderUtils;
import com.peanut.common.utils.ShiroUtils; import com.peanut.common.utils.ShiroUtils;
import com.peanut.modules.book.service.BookBuyConfigService;
import com.peanut.modules.book.service.BuyOrderService;
import com.peanut.modules.book.service.MyUserService;
import com.peanut.modules.book.service.TransactionDetailsService;
import com.peanut.modules.common.dao.*; import com.peanut.modules.common.dao.*;
import com.peanut.modules.book.service.*; import com.peanut.modules.book.service.*;
import com.peanut.modules.common.entity.*; import com.peanut.modules.common.entity.*;
import com.peanut.modules.common.service.CouponHistoryService; import com.peanut.modules.common.service.*;
import com.peanut.modules.common.service.CouponService;
import com.peanut.modules.common.service.OfflineActivityToUserService;
import com.peanut.modules.common.service.UserVipService;
import com.peanut.modules.master.service.UserCourseBuyService; import com.peanut.modules.master.service.UserCourseBuyService;
import com.peanut.modules.pay.alipay.config.AliPayConfig; import com.peanut.modules.pay.alipay.config.AliPayConfig;
import com.peanut.modules.pay.alipay.config.AliPayUtil; import com.peanut.modules.pay.alipay.config.AliPayUtil;
@@ -76,7 +77,7 @@ public class AliPayServiceImpl implements AliPayService {
@Autowired @Autowired
private CouponHistoryService couponHistoryService; private CouponHistoryService couponHistoryService;
@Autowired @Autowired
private OfflineActivityToUserService offlineActivityToUserService; private TrainingClassService trainingClassService;
@Override @Override
public String pay(AlipayDTO payDto) { public String pay(AlipayDTO payDto) {
@@ -169,15 +170,11 @@ public class AliPayServiceImpl implements AliPayService {
couponService.useCouponAmount(couponHistory); couponService.useCouponAmount(couponHistory);
} }
if("offlineActivity".equals(subject)){ if("trainingClass".equals(subject)){
//更新 订单 记录 //更新 订单 记录
buyOrderService.updateOrderStatus(Integer.valueOf(customerid),oldPayZfbOrderEntity.getRelevanceoid(),"2"); buyOrderService.updateOrderStatus(Integer.valueOf(customerid),oldPayZfbOrderEntity.getRelevanceoid(),"2");
//插入活动人员关联 //插入培训班
OfflineActivityToUser offlineActivityToUser = new OfflineActivityToUser(); trainingClassService.addTrainingClassForUser(order);
offlineActivityToUser.setActivityId(order.getOfflineActivityId());
offlineActivityToUser.setOrderId(order.getOrderId());
offlineActivityToUser.setUserId(ShiroUtils.getUId());
offlineActivityToUserService.save(offlineActivityToUser);
} }
if("relearn".equals(subject)){ if("relearn".equals(subject)){

View File

@@ -8,13 +8,14 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.peanut.common.utils.ShiroUtils; import com.peanut.common.utils.ShiroUtils;
import com.peanut.modules.book.service.BookBuyConfigService;
import com.peanut.modules.book.service.BuyOrderService;
import com.peanut.modules.book.service.MyUserService;
import com.peanut.modules.book.service.TransactionDetailsService;
import com.peanut.modules.common.dao.*; import com.peanut.modules.common.dao.*;
import com.peanut.modules.book.service.*; import com.peanut.modules.book.service.*;
import com.peanut.modules.common.entity.*; import com.peanut.modules.common.entity.*;
import com.peanut.modules.common.service.CouponHistoryService; import com.peanut.modules.common.service.*;
import com.peanut.modules.common.service.CouponService;
import com.peanut.modules.common.service.OfflineActivityToUserService;
import com.peanut.modules.common.service.UserVipService;
import com.peanut.modules.master.service.UserCourseBuyService; import com.peanut.modules.master.service.UserCourseBuyService;
import com.peanut.modules.pay.refund.entity.PayRefundOrder; import com.peanut.modules.pay.refund.entity.PayRefundOrder;
import com.peanut.modules.pay.refund.service.PayRefundOrderService; import com.peanut.modules.pay.refund.service.PayRefundOrderService;
@@ -83,7 +84,7 @@ public class WxpayServiceImpl extends ServiceImpl<PayWechatOrderDao, PayWechatOr
@Autowired @Autowired
private CouponHistoryService couponHistoryService; private CouponHistoryService couponHistoryService;
@Autowired @Autowired
private OfflineActivityToUserService offlineActivityToUserService; private TrainingClassService trainingClassService;
@Override @Override
public void prepay(WechatPaymentInfo paymentInfo){ public void prepay(WechatPaymentInfo paymentInfo){
@@ -157,15 +158,11 @@ public class WxpayServiceImpl extends ServiceImpl<PayWechatOrderDao, PayWechatOr
couponService.useCouponAmount(couponHistory); couponService.useCouponAmount(couponHistory);
} }
if("offlineActivity".equals(order.getOrderType())){ if("trainingClass".equals(order.getOrderType())){
//更新 订单 记录 //更新 订单 记录
buyOrderService.updateOrderStatus(order.getUserId(),orderNo,"2"); buyOrderService.updateOrderStatus(order.getUserId(),orderNo,"2");
//插入活动人员关联 //插入培训班
OfflineActivityToUser offlineActivityToUser = new OfflineActivityToUser(); trainingClassService.addTrainingClassForUser(order);
offlineActivityToUser.setActivityId(order.getOfflineActivityId());
offlineActivityToUser.setOrderId(order.getOrderId());
offlineActivityToUser.setUserId(ShiroUtils.getUId());
offlineActivityToUserService.save(offlineActivityToUser);
} }
if("relearn".equals(order.getOrderType())){ if("relearn".equals(order.getOrderType())){
//处理抵扣积分 //处理抵扣积分