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

[核销整理][整理]

release_toaliyun_real
Stormeye.Wu 7 лет назад
Родитель
Сommit
e5cbdce54d
3 измененных файлов: 74 добавлений и 38 удалений
  1. +21
    -2
      mallinkBApi/src/main/java/com/simple/controller/WxCouponOrderController.java
  2. +13
    -2
      mallinkService/src/main/java/com/simple/service/WxCouponOrderService.java
  3. +40
    -34
      mallinkService/src/main/java/com/simple/service/impl/WxCouponOrderServiceImpl.java

+ 21
- 2
mallinkBApi/src/main/java/com/simple/controller/WxCouponOrderController.java Просмотреть файл

@@ -118,9 +118,9 @@ public class WxCouponOrderController extends BaseController {
logger.error("couponOrderId参数不正确: " + paramMap.toString());
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
}
WxCouponOrder couponOrder = null;
try {
ResultData rd = wxCouponOrderService.verify(couponOrderId, getUser().getId());
return rd;
couponOrder = wxCouponOrderService.verify(couponOrderId, getUser().getId());
} catch (MallinkException e) {
logger.error("核销异常: " + e.getMessage());
return new ResultData(e.getErrorCode(), e.getMessage());
@@ -128,6 +128,25 @@ public class WxCouponOrderController extends BaseController {
logger.error("核销异常: " + e.getMessage());
return new ResultData(ErrorCode.VERIFY_ERROR, e.getMessage());
}
// 核销分账
if (couponOrder != null) {
try {
wxCouponOrderService.shareAfterVerify(couponOrder);
} catch (Exception e) {
logger.error(e.getMessage());
}
}

// 核销发券
if (couponOrder != null) {
try {
wxCouponOrderService.sendCouponAfterVerify(couponOrder, getUser());
} catch (Exception e) {
logger.error(e.getMessage());
}
}

return new ResultData(couponOrder);
}

@ApiOperation(value = "根据couponOrderId查询接口", notes = "{\"couponOrderId\":\"string\"}")


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

@@ -63,9 +63,20 @@ public interface WxCouponOrderService {
* @param couponOrderId
* @param bUserId 核销人(登录用户)
*/
ResultData verify(Long couponOrderId, Long bUserId);
WxCouponOrder verify(Long couponOrderId, Long bUserId);

ResultData couponOrderVerify(WxCouponOrder wxCouponOrder, WxMerchantBUser wxMerchantBUser, WxOrder wxOrder);
/**
* 核销发券
* @param couponOrder
* @param bUser
*/
void sendCouponAfterVerify(WxCouponOrder couponOrder, WxMerchantBUser bUser);

/**
* 核销分账
* @param couponOrder
*/
void shareAfterVerify(WxCouponOrder couponOrder);

/**
* 根据日期 b用户查券list


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

@@ -297,7 +297,26 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {

@Override
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public ResultData couponOrderVerify(WxCouponOrder wxCouponOrder, WxMerchantBUser wxMerchantBUser, WxOrder wxOrder) {
public WxCouponOrder verify(Long couponOrderId, Long bUserId) {

WxCouponOrder wxCouponOrder = wxCouponOrderMapper.selectByPrimaryKey(couponOrderId);
if(wxCouponOrder == null){
logger.error("券ID不存在:"+ couponOrderId);
throw new MallinkException(ErrorCode.COUPON_ORDER_IS_NULL);
}

WxMerchantBUser wxMerchantBUser = wxMerchantBUserMapper.selectByPrimaryKey(bUserId.longValue());
if(wxMerchantBUser == null){
logger.error("核销员ID不存在:"+ bUserId);
throw new MallinkException(ErrorCode.COUPON_ORDER_IS_NULL);
}

WxOrder wxOrder = wxOrderMapper.selectByPrimaryKey(wxCouponOrder.getOrderId());

if (!wxOrder.getMerchantId().equals(wxMerchantBUser.getMerchantId())){
logger.error("券: couponMerchantId-" + wxOrder.getMerchantId()+"核销: couponMerchantId-"+wxMerchantBUser.getMerchantId());
throw new MallinkException(ErrorCode.COUPON_ORDER_IS_NULL);
}
if (wxCouponOrder.getCouponOrderStatus() == EnumCouponOrderStatus.COUPON_ORDER_OVER_TIME.getCode()) {
logger.error("已过期: couponOrder-" + wxCouponOrder.getId());
throw new MallinkException(ErrorCode.COUPON_ORDER_IS_OVER_TIME);
@@ -320,44 +339,18 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage());
}

return new ResultData(wxCouponOrder);
}

@Override
public ResultData verify(Long couponOrderId, Long bUserId) {

WxCouponOrder wxCouponOrder = wxCouponOrderMapper.selectByPrimaryKey(couponOrderId);
if(wxCouponOrder == null){
logger.error("券ID不存在:"+ couponOrderId);
throw new MallinkException(ErrorCode.COUPON_ORDER_IS_NULL);
}

WxMerchantBUser wxMerchantBUser = wxMerchantBUserMapper.selectByPrimaryKey(bUserId.longValue());
if(wxMerchantBUser == null){
logger.error("核销员ID不存在:"+ bUserId);
throw new MallinkException(ErrorCode.COUPON_ORDER_IS_NULL);
}

WxOrder wxOrder = wxOrderMapper.selectByPrimaryKey(wxCouponOrder.getOrderId());
return wxCouponOrder;

if (!wxOrder.getMerchantId().equals(wxMerchantBUser.getMerchantId())){
logger.error("券: couponMerchantId-" + wxOrder.getMerchantId()+"核销: couponMerchantId-"+wxMerchantBUser.getMerchantId());
throw new MallinkException(ErrorCode.COUPON_ORDER_IS_NULL);
}

ResultData rd = couponOrderVerify(wxCouponOrder, wxMerchantBUser, wxOrder);

// 核销发券
try {
wxCouponSendService.sendCouponToUser(wxMerchantBUser.getTenantId(), wxOrder.getCUserId(), EnumCouponSendType.COUPON_VERIFY.getCode());
} catch (Exception e) {
logger.error("核销发券: " + e.getMessage());
}
}

@Override
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
public void shareAfterVerify(WxCouponOrder couponOrder) {
// 微信分账
try {
WxPayOrder wxPayOrder = new WxPayOrder();
wxPayOrder.setOrderId(wxCouponOrder.getOrderId());
wxPayOrder.setOrderId(couponOrder.getOrderId());
wxPayOrder.setPayOrderStatus(EnumPayStatus.PAY_WAY_SUCCESS.getCode());
wxPayOrder = wxPayOrderMapper.selectOne(wxPayOrder);
if (wxPayOrder == null)
@@ -367,10 +360,23 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
} catch (Exception e) {
logger.error("微信分账: " + e.getMessage());
}
}

return rd;
@Override
public void sendCouponAfterVerify(WxCouponOrder couponOrder, WxMerchantBUser bUser) {
// 核销发券
WxOrder wxOrder = wxOrderMapper.selectByPrimaryKey(couponOrder.getOrderId());
if (wxOrder != null) {
try {
wxCouponSendService.sendCouponToUser(bUser.getTenantId(), wxOrder.getCUserId(), EnumCouponSendType.COUPON_VERIFY.getCode());
} catch (Exception e) {
logger.error("核销发券: " + e.getMessage());
}
}
}



@Override
public List<CUserDateAmountVo> queryPriceTotalGroup(String tenantId, Date startTime, Date endTime) {
return wxCouponOrderMapper.queryPriceTotalGroup(tenantId, startTime, endTime);


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