提交代码

yy_dev
胡锐 2 years ago
parent cc1eb61317
commit 23b5f5c2cb
  1. 8
      cweb/src/main/java/com/cweb/controller/BsTradeOrderController.java
  2. 51
      service/src/main/java/com/hfkj/service/impl/BsTradeOrderRefundServiceImpl.java
  3. 2
      service/src/main/java/com/hfkj/service/impl/BsTradeOrderServiceImpl.java

@ -242,8 +242,14 @@ public class BsTradeOrderController {
// 优惠活动 // 优惠活动
BsStoreDiscountActivity storeDiscountActivity = null; BsStoreDiscountActivity storeDiscountActivity = null;
if (StringUtils.isNotBlank(body.getString("userPhone")) && body.getLong("storeDiscountId") != null) { if (body.getLong("storeDiscountId") != null) {
storeDiscountActivity = storeDiscountActivityService.getDetailById(body.getLong("storeDiscountId")); storeDiscountActivity = storeDiscountActivityService.getDetailById(body.getLong("storeDiscountId"));
if (storeDiscountActivity != null) {
if (!storeDiscountActivity.getPartakeWay().equals(StoreDiscountActivityPartakeWayEnum.type1.getNumber())
&& StringUtils.isBlank(body.getString("userPhone"))) {
throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, storeDiscountActivity.getName() + ",需要登录才能参加");
}
}
} }
// 用户优惠券 // 用户优惠券

@ -3,15 +3,21 @@ package com.hfkj.service.impl;
import com.hfkj.channel.ccb.CCBTradeService; import com.hfkj.channel.ccb.CCBTradeService;
import com.hfkj.channel.weixin.WeiXinPayService; import com.hfkj.channel.weixin.WeiXinPayService;
import com.hfkj.dao.BsTradeOrderRefundMapper; import com.hfkj.dao.BsTradeOrderRefundMapper;
import com.hfkj.entity.BsTradeOrderRefund; import com.hfkj.entity.*;
import com.hfkj.entity.BsTradeOrderRefundExample;
import com.hfkj.channel.lakala.LaKaLaTradeService; import com.hfkj.channel.lakala.LaKaLaTradeService;
import com.hfkj.service.BsStoreDiscountActivityPartakeUserService;
import com.hfkj.service.BsStoreDiscountActivityService;
import com.hfkj.service.BsTradeOrderRefundService; import com.hfkj.service.BsTradeOrderRefundService;
import com.hfkj.service.BsTradeOrderService;
import com.hfkj.sysenum.PlatformTypeEnum; import com.hfkj.sysenum.PlatformTypeEnum;
import com.hfkj.sysenum.StoreDiscountActivityPartakeWayEnum;
import com.hfkj.sysenum.TradeOrderStatusEnum;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -21,6 +27,14 @@ public class BsTradeOrderRefundServiceImpl implements BsTradeOrderRefundService
@Resource @Resource
private BsTradeOrderRefundMapper tradeOrderRefundMapper; private BsTradeOrderRefundMapper tradeOrderRefundMapper;
@Resource
private BsTradeOrderService tradeOrderService;
@Resource
private BsStoreDiscountActivityService storeDiscountActivityService;
@Resource
private BsStoreDiscountActivityPartakeUserService discountActivityPartakeUserService;
@Resource @Resource
private LaKaLaTradeService laKaLaTradeService; private LaKaLaTradeService laKaLaTradeService;
@ -46,19 +60,38 @@ public class BsTradeOrderRefundServiceImpl implements BsTradeOrderRefundService
public Map<String, Object> tradeOrderRefund(BsTradeOrderRefund tradeOrderRefund) throws Exception { public Map<String, Object> tradeOrderRefund(BsTradeOrderRefund tradeOrderRefund) throws Exception {
editOrderRefund(tradeOrderRefund); editOrderRefund(tradeOrderRefund);
Map<String, Object> refund = new HashMap<>();
if (tradeOrderRefund.getPlatformType().equals(PlatformTypeEnum.type1.getNumber())) { if (tradeOrderRefund.getPlatformType().equals(PlatformTypeEnum.type1.getNumber())) {
return laKaLaTradeService.refund(tradeOrderRefund.getRefundNo(), tradeOrderRefund.getRefundAmount()); refund = laKaLaTradeService.refund(tradeOrderRefund.getRefundNo(), tradeOrderRefund.getRefundAmount());
}
if (tradeOrderRefund.getPlatformType().equals(PlatformTypeEnum.type3.getNumber())) { } else if (tradeOrderRefund.getPlatformType().equals(PlatformTypeEnum.type3.getNumber())) {
return ccbTradeService.refund(tradeOrderRefund.getRefundNo(), tradeOrderRefund.getRefundAmount()); refund = ccbTradeService.refund(tradeOrderRefund.getRefundNo(), tradeOrderRefund.getRefundAmount());
} else if (tradeOrderRefund.getPlatformType().equals(PlatformTypeEnum.type4.getNumber())) {
refund = weiXinPayService.refund(tradeOrderRefund.getRefundNo(), tradeOrderRefund.getRefundAmount());
} }
if (tradeOrderRefund.getPlatformType().equals(PlatformTypeEnum.type4.getNumber())) { // 交易订单
return weiXinPayService.refund(tradeOrderRefund.getRefundNo(), tradeOrderRefund.getRefundAmount()); BsTradeOrder tradeOrder = tradeOrderService.getOrderByTradeNoId(tradeOrderRefund.getTradeOrderId());
if (tradeOrder != null) {
// 退回门店优惠活动
if (tradeOrder.getStoreDiscountId() != null) {
BsStoreDiscountActivity storeDiscountActivity = storeDiscountActivityService.getDetailById(tradeOrder.getStoreDiscountId());
if (storeDiscountActivity != null
&& !storeDiscountActivity.getPartakeWay().equals(StoreDiscountActivityPartakeWayEnum.type1.getNumber())
&& StringUtils.isNotBlank(tradeOrder.getUserPhone())) {
BsStoreDiscountActivityPartakeUser partakeUser = discountActivityPartakeUserService.getPartakeUser(tradeOrder.getUserPhone(), tradeOrder.getStoreDiscountId());
if (partakeUser != null) {
partakeUser.setPartakeSurplusNum(partakeUser.getPartakeSurplusNum() + 1);
partakeUser.setPartakeUseNum(partakeUser.getPartakeUseNum() - 1);
discountActivityPartakeUserService.editData(partakeUser);
}
}
}
} }
return null; return refund;
} }
@Override @Override

@ -99,6 +99,8 @@ public class BsTradeOrderServiceImpl implements BsTradeOrderService {
tradeOrder.setTradeAmount(tradeAmount); tradeOrder.setTradeAmount(tradeAmount);
tradeOrder.setTradeActualAmount(tradeAmount); tradeOrder.setTradeActualAmount(tradeAmount);
tradeOrder.setStoreDiscountSatisfy(false); tradeOrder.setStoreDiscountSatisfy(false);
tradeOrder.setUserPhone(userPhone);
// 门店优惠 // 门店优惠
if (storeDiscount != null) { if (storeDiscount != null) {

Loading…
Cancel
Save