退单
This commit is contained in:
@@ -707,7 +707,7 @@ public class BuyOrderController {
|
|||||||
|
|
||||||
int refundId = buyOrderRefund.getId();
|
int refundId = buyOrderRefund.getId();
|
||||||
if (Constants.PAYMENT_METHOD_VIRTUAL.equals(buyOrder.getPaymentMethod())) {
|
if (Constants.PAYMENT_METHOD_VIRTUAL.equals(buyOrder.getPaymentMethod())) {
|
||||||
if(refundFee.compareTo(BigDecimal.ZERO)>0){
|
//if(refundFee.compareTo(BigDecimal.ZERO)>0){
|
||||||
//退还虚拟币
|
//退还虚拟币
|
||||||
transactionDetailsService.refundRecord(buyOrder,user,refundFee);
|
transactionDetailsService.refundRecord(buyOrder,user,refundFee);
|
||||||
user.setPeanutCoin(user.getPeanutCoin().add(refundFee));
|
user.setPeanutCoin(user.getPeanutCoin().add(refundFee));
|
||||||
@@ -720,7 +720,7 @@ public class BuyOrderController {
|
|||||||
buyOrder.setOrderStatus(Constants.ORDER_STATUS_REFUND);
|
buyOrder.setOrderStatus(Constants.ORDER_STATUS_REFUND);
|
||||||
buyOrderService.updateById(buyOrder);
|
buyOrderService.updateById(buyOrder);
|
||||||
return R.ok("ok");
|
return R.ok("ok");
|
||||||
}
|
//}
|
||||||
} else if (Constants.PAYMENT_METHOD_WECHAT_PAY.equals(buyOrder.getPaymentMethod())) {
|
} else if (Constants.PAYMENT_METHOD_WECHAT_PAY.equals(buyOrder.getPaymentMethod())) {
|
||||||
buyOrderRefundLogService.insertRefundLog(refundId,1,0);
|
buyOrderRefundLogService.insertRefundLog(refundId,1,0);
|
||||||
if (refundFee.compareTo(BigDecimal.ZERO) > 0) {
|
if (refundFee.compareTo(BigDecimal.ZERO) > 0) {
|
||||||
|
|||||||
@@ -734,10 +734,14 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
|
|||||||
public void removeCourseToUser(BuyOrder orderEntity){
|
public void removeCourseToUser(BuyOrder orderEntity){
|
||||||
QueryWrapper<UserCourseBuyLog> buyLogQueryWrapper = new QueryWrapper<>();
|
QueryWrapper<UserCourseBuyLog> buyLogQueryWrapper = new QueryWrapper<>();
|
||||||
buyLogQueryWrapper.eq("order_sn",orderEntity.getOrderSn());
|
buyLogQueryWrapper.eq("order_sn",orderEntity.getOrderSn());
|
||||||
|
log.info("order+sn===="+orderEntity.getOrderSn());
|
||||||
List<UserCourseBuyLog> userCourseBuyLogList = userCourseBuyLogDao.selectList(buyLogQueryWrapper);
|
List<UserCourseBuyLog> userCourseBuyLogList = userCourseBuyLogDao.selectList(buyLogQueryWrapper);
|
||||||
|
log.info("size===="+userCourseBuyLogList.size());
|
||||||
for (UserCourseBuyLog userCourseBuyLog:userCourseBuyLogList){
|
for (UserCourseBuyLog userCourseBuyLog:userCourseBuyLogList){
|
||||||
userCourseBuyDao.deleteById(userCourseBuyLog.getUserCourseBuyId());
|
log.info("===delete====="+userCourseBuyLog.getUserCourseBuyId());
|
||||||
userCourseBuyLogDao.deleteById(userCourseBuyLog.getId());
|
log.info("===delete2====="+userCourseBuyLog.getId());
|
||||||
|
userCourseBuyDao.realDeleteById(userCourseBuyLog.getUserCourseBuyId());
|
||||||
|
userCourseBuyLogDao.realDeleteById(userCourseBuyLog.getId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
@@ -1059,7 +1063,7 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
|
|||||||
return refundFee;
|
return refundFee;
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void refundOrder(BuyOrder buyOrder, MyUserEntity user, int refundId){
|
public void refundOrder(BuyOrder buyOrder, MyUserEntity user, int refundId){
|
||||||
if(buyOrder.getCouponId()!=null && buyOrder.getCouponId()!=0){
|
if(buyOrder.getCouponId()!=null && buyOrder.getCouponId()!=0){
|
||||||
couponService.rollbackCoupon(buyOrder.getCouponId());
|
couponService.rollbackCoupon(buyOrder.getCouponId());
|
||||||
}
|
}
|
||||||
@@ -1073,7 +1077,7 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
|
|||||||
jfTransactionDetailsService.refundJfTransaction(buyOrder,user);
|
jfTransactionDetailsService.refundJfTransaction(buyOrder,user);
|
||||||
user.setJf(jf.add(user.getJf()));
|
user.setJf(jf.add(user.getJf()));
|
||||||
myUserService.updateById(user);
|
myUserService.updateById(user);
|
||||||
buyOrderRefundLogService.insertRefundLog(refundId,2,1);
|
buyOrderRefundLogService.insertRefundLog(refundId,5,1);
|
||||||
}
|
}
|
||||||
if(buyOrder.getOrderType().equals("vip")){
|
if(buyOrder.getOrderType().equals("vip")){
|
||||||
userVipService.refundVip(buyOrder);
|
userVipService.refundVip(buyOrder);
|
||||||
@@ -1085,6 +1089,7 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
|
|||||||
//撤回电子书权限
|
//撤回电子书权限
|
||||||
userEbookBuyService.rollbackUserEbooks(buyOrder, orderProducts);
|
userEbookBuyService.rollbackUserEbooks(buyOrder, orderProducts);
|
||||||
//撤回课程权限
|
//撤回课程权限
|
||||||
|
log.info("====remove========="+buyOrder.getOrderSn());
|
||||||
removeCourseToUser(buyOrder);
|
removeCourseToUser(buyOrder);
|
||||||
//回滚库存
|
//回滚库存
|
||||||
shopProductService.rollbackStock(buyOrder);
|
shopProductService.rollbackStock(buyOrder);
|
||||||
|
|||||||
@@ -88,6 +88,7 @@ public class TransactionDetailsServiceImpl extends ServiceImpl<TransactionDetail
|
|||||||
TransactionDetailsEntity transactionDetailsEntity = new TransactionDetailsEntity();
|
TransactionDetailsEntity transactionDetailsEntity = new TransactionDetailsEntity();
|
||||||
transactionDetailsEntity.setUserId(user.getId());
|
transactionDetailsEntity.setUserId(user.getId());
|
||||||
transactionDetailsEntity.setOrderType("订单退款");
|
transactionDetailsEntity.setOrderType("订单退款");
|
||||||
|
transactionDetailsEntity.setPayNo(buyOrder.getOrderSn());
|
||||||
transactionDetailsEntity.setChangeAmount(refundPrice);
|
transactionDetailsEntity.setChangeAmount(refundPrice);
|
||||||
transactionDetailsEntity.setUserBalance(user.getPeanutCoin().add(refundPrice));
|
transactionDetailsEntity.setUserBalance(user.getPeanutCoin().add(refundPrice));
|
||||||
transactionDetailsEntity.setRelationId(buyOrder.getOrderId());
|
transactionDetailsEntity.setRelationId(buyOrder.getOrderId());
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ public class TransactionDetailsController {
|
|||||||
BuyOrder buyOrder = buyOrderService.getOne(new LambdaQueryWrapper<BuyOrder>()
|
BuyOrder buyOrder = buyOrderService.getOne(new LambdaQueryWrapper<BuyOrder>()
|
||||||
.eq(BuyOrder::getOrderSn,orderSn));
|
.eq(BuyOrder::getOrderSn,orderSn));
|
||||||
if (buyOrder!=null){
|
if (buyOrder!=null){
|
||||||
if ("购买商品".equals(detail.getOrderType())){
|
if ("购买商品".equals(detail.getOrderType())||"订单退款".equals(detail.getOrderType())){
|
||||||
List<BuyOrderProduct> products = buyOrderProductService.list(new LambdaQueryWrapper<BuyOrderProduct>()
|
List<BuyOrderProduct> products = buyOrderProductService.list(new LambdaQueryWrapper<BuyOrderProduct>()
|
||||||
.eq(BuyOrderProduct::getOrderId,buyOrder.getOrderId()));
|
.eq(BuyOrderProduct::getOrderId,buyOrder.getOrderId()));
|
||||||
for (BuyOrderProduct buyOrderProduct : products) {
|
for (BuyOrderProduct buyOrderProduct : products) {
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package com.peanut.modules.common.dao;
|
|||||||
|
|
||||||
import com.github.yulichang.base.MPJBaseMapper;
|
import com.github.yulichang.base.MPJBaseMapper;
|
||||||
import com.peanut.modules.common.entity.UserCourseBuyEntity;
|
import com.peanut.modules.common.entity.UserCourseBuyEntity;
|
||||||
|
import org.apache.ibatis.annotations.Delete;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
@@ -18,4 +19,7 @@ public interface UserCourseBuyDao extends MPJBaseMapper<UserCourseBuyEntity> {
|
|||||||
List<Map<String,Object>> getIncome(@Param("date") String date);
|
List<Map<String,Object>> getIncome(@Param("date") String date);
|
||||||
|
|
||||||
List<Map<String,Object>> getCoursePurchaseDetails(int courseId,int catalogueId,Integer limit,Integer offset);
|
List<Map<String,Object>> getCoursePurchaseDetails(int courseId,int catalogueId,Integer limit,Integer offset);
|
||||||
|
|
||||||
|
@Delete("DELETE FROM user_course_buy WHERE id = #{userCourseBuyId}")
|
||||||
|
int realDeleteById(int userCourseBuyId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,8 +2,11 @@ package com.peanut.modules.common.dao;
|
|||||||
|
|
||||||
import com.github.yulichang.base.MPJBaseMapper;
|
import com.github.yulichang.base.MPJBaseMapper;
|
||||||
import com.peanut.modules.common.entity.UserCourseBuyLog;
|
import com.peanut.modules.common.entity.UserCourseBuyLog;
|
||||||
|
import org.apache.ibatis.annotations.Delete;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
@Mapper
|
@Mapper
|
||||||
public interface UserCourseBuyLogDao extends MPJBaseMapper<UserCourseBuyLog> {
|
public interface UserCourseBuyLogDao extends MPJBaseMapper<UserCourseBuyLog> {
|
||||||
|
@Delete("DELETE FROM user_course_buy_log WHERE id = #{userCourseBuyLogId}")
|
||||||
|
int realDeleteById(int userCourseBuyLogId);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -519,9 +519,9 @@ public class WxpayServiceImpl extends ServiceImpl<PayWechatOrderDao, PayWechatOr
|
|||||||
|
|
||||||
PayRefundOrder refund = new PayRefundOrder();
|
PayRefundOrder refund = new PayRefundOrder();
|
||||||
refund.setPayType("1");
|
refund.setPayType("1");
|
||||||
refund.setOrderId(order.getOrderId());
|
refund.setRefundId(resourceMap.get("refund_id").toString());
|
||||||
refund.setTradeNo(resourceMap.get("transaction_id").toString());
|
refund.setTradeNo(resourceMap.get("transaction_id").toString());
|
||||||
refund.setOutTradeNo(resourceMap.get("out_trade_no").toString());
|
refund.setOrderSn(resourceMap.get("out_trade_no").toString());
|
||||||
refund.setRefundFee(((Map)resourceMap.get("amount")).get("refund").toString());
|
refund.setRefundFee(((Map)resourceMap.get("amount")).get("refund").toString());
|
||||||
refundOrderService.save(refund);
|
refundOrderService.save(refund);
|
||||||
|
|
||||||
@@ -547,7 +547,7 @@ public class WxpayServiceImpl extends ServiceImpl<PayWechatOrderDao, PayWechatOr
|
|||||||
refundInfo.setWxRefundNo( resourceMap.get("refund_id").toString());
|
refundInfo.setWxRefundNo( resourceMap.get("refund_id").toString());
|
||||||
buyOrderRefundService.updateById(refundInfo);
|
buyOrderRefundService.updateById(refundInfo);
|
||||||
|
|
||||||
buyOrderRefundLogService.insertRefundLog(refundInfo.getId(),1,3,resourceMap.get("reason").toString());
|
// buyOrderRefundLogService.insertRefundLog(refundInfo.getId(),1,3,resourceMap.get("reason").toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user