支付优化
This commit is contained in:
@ -111,9 +111,9 @@ public class WxRechargeServiceImpl implements WxRechargeService {
|
|||||||
cardDO.setChangeMoney(money);
|
cardDO.setChangeMoney(money);
|
||||||
cardDO.setType(CostTypeEnum.WX_PAY.getCode());
|
cardDO.setType(CostTypeEnum.WX_PAY.getCode());
|
||||||
cardDO.setMoney(newMoney);
|
cardDO.setMoney(newMoney);
|
||||||
cardDO.setCashAmount(wxNewMoney);
|
cardDO.setCashAmount(cashNewAmount);
|
||||||
cardDO.setGiftAmount(giftNewMoney);
|
cardDO.setGiftAmount(giftNewMoney);
|
||||||
cardDO.setWxAmount(cashNewAmount);
|
cardDO.setWxAmount(wxNewMoney);
|
||||||
//处理未完全支付订单
|
//处理未完全支付订单
|
||||||
handleOrderWx(cardDO.getUserId(), money, wxAmount, giftAmount);
|
handleOrderWx(cardDO.getUserId(), money, wxAmount, giftAmount);
|
||||||
|
|
||||||
|
@ -21,6 +21,7 @@ import cn.iocoder.yudao.module.member.dal.mysql.diningplates.DiningPlatesMapper;
|
|||||||
import cn.iocoder.yudao.module.member.dal.mysql.order.DishOrderMapper;
|
import cn.iocoder.yudao.module.member.dal.mysql.order.DishOrderMapper;
|
||||||
import cn.iocoder.yudao.module.member.dal.mysql.user.MemberUserMapper;
|
import cn.iocoder.yudao.module.member.dal.mysql.user.MemberUserMapper;
|
||||||
import cn.iocoder.yudao.module.member.service.admincard.AdminCardService;
|
import cn.iocoder.yudao.module.member.service.admincard.AdminCardService;
|
||||||
|
import cn.iocoder.yudao.module.member.service.amount.DeductionService;
|
||||||
import cn.iocoder.yudao.module.member.service.async.MemberAsyncService;
|
import cn.iocoder.yudao.module.member.service.async.MemberAsyncService;
|
||||||
import cn.iocoder.yudao.module.member.service.card.CardService;
|
import cn.iocoder.yudao.module.member.service.card.CardService;
|
||||||
import cn.iocoder.yudao.module.member.util.MemberConstants;
|
import cn.iocoder.yudao.module.member.util.MemberConstants;
|
||||||
@ -80,6 +81,8 @@ public class DiningPlatesServiceImpl implements DiningPlatesService {
|
|||||||
private AdminCardService adminCardService;
|
private AdminCardService adminCardService;
|
||||||
@Resource
|
@Resource
|
||||||
private MemberAsyncService asyncService;
|
private MemberAsyncService asyncService;
|
||||||
|
@Resource
|
||||||
|
private DeductionService deductionService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Long createDiningPlates(DiningPlatesSaveReqVO createReqVO) {
|
public Long createDiningPlates(DiningPlatesSaveReqVO createReqVO) {
|
||||||
@ -442,24 +445,24 @@ public class DiningPlatesServiceImpl implements DiningPlatesService {
|
|||||||
throw exception(DINING_PLATES_NOT_BIND);
|
throw exception(DINING_PLATES_NOT_BIND);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!"0".equals(money)){
|
|
||||||
throw exception(DINING_PLATES_CANNOT_UNBIND);
|
|
||||||
}
|
|
||||||
DiningPlatesDO diningPlatesDO = diningPlatesMapper.selectOne(Wrappers.<DiningPlatesDO>lambdaQuery()
|
DiningPlatesDO diningPlatesDO = diningPlatesMapper.selectOne(Wrappers.<DiningPlatesDO>lambdaQuery()
|
||||||
.eq(DiningPlatesDO::getDiningPlatesNum, diningPlatesNum)
|
.eq(DiningPlatesDO::getDiningPlatesNum, diningPlatesNum)
|
||||||
.eq(DiningPlatesDO::getStoreId,storeId)
|
.eq(DiningPlatesDO::getStoreId,storeId)
|
||||||
.last("limit 1"));
|
.last("limit 1"));
|
||||||
|
|
||||||
dishOrderMapper.deleteById(diningPlatesDO.getOrderId());
|
if(!"0".equals(money)){
|
||||||
diningPlatesMapper.update(Wrappers.<DiningPlatesDO>lambdaUpdate()
|
DishOrderDO dishOrderDO = dishOrderMapper.selectById(diningPlatesDO.getOrderId());
|
||||||
.set(DiningPlatesDO::getPayFlag, DiningPlatesDO.TO_PAY)
|
deductionService.deduction(dishOrderDO);
|
||||||
.set(DiningPlatesDO::getStatus, DiningPlatesDO.FREE)
|
}else {
|
||||||
.set(DiningPlatesDO::getUserId, null)
|
dishOrderMapper.deleteById(diningPlatesDO.getOrderId());
|
||||||
.set(DiningPlatesDO::getBindingTime, null)
|
diningPlatesMapper.update(Wrappers.<DiningPlatesDO>lambdaUpdate()
|
||||||
.set(DiningPlatesDO::getOrderId, null)
|
.set(DiningPlatesDO::getPayFlag, DiningPlatesDO.TO_PAY)
|
||||||
.eq(DiningPlatesDO::getId,diningPlatesDO.getId()));
|
.set(DiningPlatesDO::getStatus, DiningPlatesDO.FREE)
|
||||||
|
.set(DiningPlatesDO::getUserId, null)
|
||||||
|
.set(DiningPlatesDO::getBindingTime, null)
|
||||||
|
.set(DiningPlatesDO::getOrderId, null)
|
||||||
|
.eq(DiningPlatesDO::getId,diningPlatesDO.getId()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Reference in New Issue
Block a user