Przeglądaj źródła

[库存][修改]:库存退回修复

release_toaliyun_real
Stormeye Wu 7 lat temu
rodzic
commit
c8c8b17ecb
5 zmienionych plików z 21 dodań i 17 usunięć
  1. +1
    -1
      mallinkAdmin/src/main/java/com/iformall/controller/WxCouponOrderController.java
  2. +1
    -1
      mallinkBApi/src/main/java/com/iformall/controller/WxRefundOrderController.java
  3. +17
    -8
      mallinkSchedule/src/main/java/com/iformall/schedule/CouponOrderExpiringSchedule.java
  4. +1
    -1
      mallinkService/src/main/java/com/iformall/service/WxRefundOrderService.java
  5. +1
    -6
      mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java

+ 1
- 1
mallinkAdmin/src/main/java/com/iformall/controller/WxCouponOrderController.java Wyświetl plik

@@ -143,7 +143,7 @@ public class WxCouponOrderController extends BaseController {
WxAppinfo appinfo = appinfoPageInfo.getList().get(0); WxAppinfo appinfo = appinfoPageInfo.getList().get(0);
if (appinfo != null) { if (appinfo != null) {
try { try {
wxRefundOrderService.createRefundOrder(payProperty.isReal(), appinfo, couponOrderId, EnumPayType.PAY_ADMIN_REFUND, null, true);
wxRefundOrderService.createRefundOrder(payProperty.isReal(), appinfo, couponOrderId, EnumPayType.PAY_ADMIN_REFUND, null);
return new ResultData(); return new ResultData();
} catch (MallinkException e) { } catch (MallinkException e) {
logger.error(e.getMessage()); logger.error(e.getMessage());


+ 1
- 1
mallinkBApi/src/main/java/com/iformall/controller/WxRefundOrderController.java Wyświetl plik

@@ -57,7 +57,7 @@ public class WxRefundOrderController extends BaseController {
WxMerchantBUser bUser = getUser(); WxMerchantBUser bUser = getUser();
WxAppinfo appinfo = getAppInfo(bUser.getAppId()); WxAppinfo appinfo = getAppInfo(bUser.getAppId());
try { try {
ResultData rd = wxRefundOrderService.createRefundOrder(payProperty.isReal(), appinfo, couponOrderId, EnumPayType.PAY_B_REFUND, bUser.getId(), true);
ResultData rd = wxRefundOrderService.createRefundOrder(payProperty.isReal(), appinfo, couponOrderId, EnumPayType.PAY_B_REFUND, bUser.getId());
return rd; return rd;
} catch (MallinkException e) { } catch (MallinkException e) {
logger.error(e.getMessage()); logger.error(e.getMessage());


+ 17
- 8
mallinkSchedule/src/main/java/com/iformall/schedule/CouponOrderExpiringSchedule.java Wyświetl plik

@@ -60,7 +60,7 @@ public class CouponOrderExpiringSchedule {
list.stream().forEach(co -> { list.stream().forEach(co -> {
// 券过期,更改状态及库存退回 // 券过期,更改状态及库存退回
try { try {
couponOrderExpire(co);
couponOrderExpire(co, true);
} catch (Exception e) { } catch (Exception e) {
logger.error(e.getMessage()); logger.error(e.getMessage());
} }
@@ -78,14 +78,14 @@ public class CouponOrderExpiringSchedule {
list.stream().forEach(co -> { list.stream().forEach(co -> {
// 券过期,更改状态及库存退回 // 券过期,更改状态及库存退回
try { try {
couponOrderExpire(co);
couponOrderExpire(co, false);
} catch (Exception e) { } catch (Exception e) {
logger.error(e.getMessage()); logger.error(e.getMessage());
} }


// 退款 // 退款
try { try {
couponOrderExpireRefund(co, false);
couponOrderExpireRefund(co, true);
} catch (Exception e) { } catch (Exception e) {
logger.error(e.getMessage()); logger.error(e.getMessage());
} }
@@ -96,7 +96,7 @@ public class CouponOrderExpiringSchedule {




@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public void couponOrderExpire(WxCouponOrder co) {
public void couponOrderExpire(WxCouponOrder co, boolean bStockBack) {
// 标记 couponOrder过期 // 标记 couponOrder过期
WxCouponOrder updateRecord = new WxCouponOrder(); WxCouponOrder updateRecord = new WxCouponOrder();
updateRecord.setId(co.getId()); updateRecord.setId(co.getId());
@@ -109,9 +109,11 @@ public class CouponOrderExpiringSchedule {
wxCouponOrderMapper.updateByPrimaryKeySelective(updateRecord); wxCouponOrderMapper.updateByPrimaryKeySelective(updateRecord);


// 库存退回 // 库存退回
WxOrder order = wxOrderMapper.selectByPrimaryKey(co.getOrderId());
if(order != null) {
wxOrderService.stockBack(order);
if(bStockBack) {
WxOrder order = wxOrderMapper.selectByPrimaryKey(co.getOrderId());
if(order != null) {
wxOrderService.stockBack(order);
}
} }
} }


@@ -125,7 +127,7 @@ public class CouponOrderExpiringSchedule {
appinfo = wxAppinfoMapper.findList(appinfo).get(0); appinfo = wxAppinfoMapper.findList(appinfo).get(0);


try { try {
wxRefundOrderService.createRefundOrder(payProperty.isReal(), appinfo, co.getId(), EnumPayType.PAY_AUTO_REFUND, null, bStockBack);
wxRefundOrderService.createRefundOrder(payProperty.isReal(), appinfo, co.getId(), EnumPayType.PAY_AUTO_REFUND, null);
} catch (MallinkException e) { } catch (MallinkException e) {
logger.error("退款失败:"+e.getMessage()+"couponOrderId="+co.getId()); logger.error("退款失败:"+e.getMessage()+"couponOrderId="+co.getId());
throw new MallinkException(e.getErrorCode(), e.getMessage()); throw new MallinkException(e.getErrorCode(), e.getMessage());
@@ -160,6 +162,13 @@ public class CouponOrderExpiringSchedule {
throw new MallinkException(e.getErrorCode(), e.getMessage()); throw new MallinkException(e.getErrorCode(), e.getMessage());
} }


if(bStockBack) {
// 库存退回
WxOrder order = wxOrderMapper.selectByPrimaryKey(co.getOrderId());
if(order != null) {
wxOrderService.stockBack(order);
}
}
} }
} }
} }

+ 1
- 1
mallinkService/src/main/java/com/iformall/service/WxRefundOrderService.java Wyświetl plik

@@ -21,7 +21,7 @@ public interface WxRefundOrderService {
* @param bUserId b端退款Id,auto,admin,self可为null * @param bUserId b端退款Id,auto,admin,self可为null
* @return * @return
*/ */
ResultData createRefundOrder(boolean isReal, WxAppinfo appInfo, Long couponOrderId, EnumPayType payType, Long bUserId, boolean bStockBack);
ResultData createRefundOrder(boolean isReal, WxAppinfo appInfo, Long couponOrderId, EnumPayType payType, Long bUserId);


/** /**
* 创建退款订单 * 创建退款订单


+ 1
- 6
mallinkService/src/main/java/com/iformall/service/impl/WxRefundOrderServiceImpl.java Wyświetl plik

@@ -263,7 +263,7 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService {


@Override @Override
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public ResultData createRefundOrder(boolean isReal, WxAppinfo appInfo, Long couponOrderId, EnumPayType payType, Long bUserId, boolean bStockBack) {
public ResultData createRefundOrder(boolean isReal, WxAppinfo appInfo, Long couponOrderId, EnumPayType payType, Long bUserId) {
WxCouponOrder wxCouponOrder = wxCouponOrderMapper.selectByPrimaryKey(couponOrderId); WxCouponOrder wxCouponOrder = wxCouponOrderMapper.selectByPrimaryKey(couponOrderId);
if (wxCouponOrder == null) { if (wxCouponOrder == null) {
logger.error("券ID不存在:" + couponOrderId); logger.error("券ID不存在:" + couponOrderId);
@@ -360,11 +360,6 @@ public class WxRefundOrderServiceImpl implements WxRefundOrderService {
throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage());
} }


// 退库存
if(bStockBack) {
wxOrderService.stockBack(wxOrder);
}

// 查找支付订单 // 查找支付订单
WxPayOrder payOrderQ = new WxPayOrder(); WxPayOrder payOrderQ = new WxPayOrder();
payOrderQ.setTenantId(appInfo.getTenantId()); payOrderQ.setTenantId(appInfo.getTenantId());


Ładowanie…
Anuluj
Zapisz