Просмотр исходного кода

[卡券][新增]:卡券退款(作废)接口,供订单退款调用

release_toaliyun_real
hupeng 7 лет назад
Родитель
Сommit
624f9d4601
3 измененных файлов: 44 добавлений и 4 удалений
  1. +7
    -0
      mallinkService/src/main/java/com/simple/common/ErrorCode.java
  2. +9
    -3
      mallinkService/src/main/java/com/simple/service/WxCouponOrderService.java
  3. +28
    -1
      mallinkService/src/main/java/com/simple/service/impl/WxCouponOrderServiceImpl.java

+ 7
- 0
mallinkService/src/main/java/com/simple/common/ErrorCode.java Просмотреть файл

@@ -77,6 +77,13 @@ public enum ErrorCode{
ORDER_IS_NOT_FIND(3003, "订单不存在"),
ORDER_IS_NOT_PAY(3004, "订单已不能进行支付"),

/**
* 卡券
*/
COUPON_ORDER_IS_USED(4000, "卡券已核销"),
COUPON_ORDER_IS_OVER_TIME(4001, "卡券已过期"),
COUPON_ORDER_IS_INVALID(4002, "卡券已经作废"),

/**
* 微信
*/


+ 9
- 3
mallinkService/src/main/java/com/simple/service/WxCouponOrderService.java Просмотреть файл

@@ -43,11 +43,17 @@ public interface WxCouponOrderService {
* 根据主键Id(券码)核销
*
* @param id
* @param mallUserInfo 核销人(登录用户)
* @param mallUserInfo 核销人(登录用户)
*/
ResultData verify(Long id, MallUserInfo mallUserInfo);

/**
* 根据主键Id(券码)退券(款)
*
* @param id
* @param mallUserInfo 退券(款)人(登录用户)
*/
ResultData refund(Long id, MallUserInfo mallUserInfo);



+ 28
- 1
mallinkService/src/main/java/com/simple/service/impl/WxCouponOrderServiceImpl.java Просмотреть файл

@@ -2,15 +2,19 @@ package com.simple.service.impl;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.simple.common.ErrorCode;
import com.simple.common.IdWorker;
import com.simple.common.Result;
import com.simple.common.ResultData;
import com.simple.domain.po.MallUserInfo;
import com.simple.domain.po.WxCouponOrder;
import com.simple.enums.EnumCouponOrderStatus;
import com.simple.mapper.WxCouponOrderMapper;
import com.simple.service.WxCouponOrderService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import java.util.Date;

@@ -20,7 +24,6 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
@Autowired
WxCouponOrderMapper wxCouponOrderMapper;


@Override
public PageInfo<WxCouponOrder> listAsPage(WxCouponOrder record, Integer pageIndex, Integer pageSize) {
return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCouponOrderMapper.findList(record));
@@ -48,7 +51,10 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
wxCouponOrderMapper.deleteByPrimaryKey(id);
}



@Override
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public ResultData verify(Long id, MallUserInfo mallUserInfo) {
WxCouponOrder wxCouponOrder = wxCouponOrderMapper.selectByPrimaryKey(id);
if (wxCouponOrder.getCouponOrderStatus() == 2) {
@@ -69,5 +75,26 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {

}

@Override
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public ResultData refund(Long id, MallUserInfo mallUserInfo) {
WxCouponOrder wxCouponOrder = wxCouponOrderMapper.selectByPrimaryKey(id);

if (wxCouponOrder.getCouponOrderStatus().equals(EnumCouponOrderStatus.COUPON_ORDER_OVER_TIME.getCode())) {
return new ResultData(ErrorCode.COUPON_ORDER_IS_OVER_TIME);
}
if (wxCouponOrder.getCouponOrderStatus().equals(EnumCouponOrderStatus.COUPON_ORDER_INVALID.getCode())) {
return new ResultData(ErrorCode.COUPON_ORDER_IS_INVALID);
}
if (wxCouponOrder.getCouponOrderStatus().equals(EnumCouponOrderStatus.COUPON_ORDER_USED.getCode())) {
return new ResultData(ErrorCode.COUPON_ORDER_IS_USED);
}

wxCouponOrder.setCouponOrderStatus(EnumCouponOrderStatus.COUPON_ORDER_INVALID.getCode()); //3退款,券作废
wxCouponOrder.setBUserId(mallUserInfo.getId());
wxCouponOrder.setUpdateDate(new Date());
wxCouponOrderMapper.updateByPrimaryKeySelective(wxCouponOrder);
return new ResultData(wxCouponOrder);
}

}

Загрузка…
Отмена
Сохранить