培训班
This commit is contained in:
@@ -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分钟
|
||||||
|
|||||||
@@ -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);
|
||||||
|
|||||||
@@ -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;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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;
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -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);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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"));
|
||||||
|
if ("2".equals(params.get("createTimeSort").toString())){
|
||||||
|
wrapper.orderByAsc(TrainingToUser::getCreateTime);
|
||||||
|
}else {
|
||||||
wrapper.orderByDesc(TrainingToUser::getCreateTime);
|
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();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -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)){
|
||||||
|
|||||||
@@ -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())){
|
||||||
//处理抵扣积分
|
//处理抵扣积分
|
||||||
|
|||||||
Reference in New Issue
Block a user