You've already forked FrameTour-BE
支持跳过支付
This commit is contained in:
@@ -4,6 +4,7 @@ import lombok.Data;
|
|||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class AioDeviceCreateOrderResp {
|
public class AioDeviceCreateOrderResp {
|
||||||
|
private boolean skipPay;
|
||||||
private Long orderId;
|
private Long orderId;
|
||||||
private String payCode;
|
private String payCode;
|
||||||
}
|
}
|
||||||
|
@@ -52,8 +52,13 @@ public class AioDeviceServiceImpl implements AioDeviceService {
|
|||||||
if (face == null) {
|
if (face == null) {
|
||||||
throw new BaseException("请选择人脸");
|
throw new BaseException("请选择人脸");
|
||||||
}
|
}
|
||||||
|
AioDeviceCreateOrderResp resp = new AioDeviceCreateOrderResp();
|
||||||
int sum = req.getItems().stream().mapToInt(AioDeviceCreateOrderReq.AioDeviceOrderItem::getCount).sum();
|
int sum = req.getItems().stream().mapToInt(AioDeviceCreateOrderReq.AioDeviceOrderItem::getCount).sum();
|
||||||
BigDecimal totalPrice = config.getEachPrice().multiply(new BigDecimal(sum));
|
BigDecimal totalPrice = config.getEachPrice().multiply(new BigDecimal(sum));
|
||||||
|
if (totalPrice.compareTo(BigDecimal.ZERO) <= 0) {
|
||||||
|
resp.setSkipPay(true);
|
||||||
|
return resp;
|
||||||
|
}
|
||||||
OrderEntity order = new OrderEntity();
|
OrderEntity order = new OrderEntity();
|
||||||
Long orderId = SnowFlakeUtil.getLongId();
|
Long orderId = SnowFlakeUtil.getLongId();
|
||||||
order.setId(orderId);
|
order.setId(orderId);
|
||||||
@@ -80,7 +85,6 @@ public class AioDeviceServiceImpl implements AioDeviceService {
|
|||||||
int addOrderItems = orderMapper.addOrderItems(orderItems);
|
int addOrderItems = orderMapper.addOrderItems(orderItems);
|
||||||
// 支付
|
// 支付
|
||||||
IPayAdapter scenicPayAdapter = scenicService.getScenicPayAdapter(aioDevice.getScenicId());
|
IPayAdapter scenicPayAdapter = scenicService.getScenicPayAdapter(aioDevice.getScenicId());
|
||||||
AioDeviceCreateOrderResp resp = new AioDeviceCreateOrderResp();
|
|
||||||
if (scenicPayAdapter instanceof WxMpPayAdapter adapter) {
|
if (scenicPayAdapter instanceof WxMpPayAdapter adapter) {
|
||||||
NativePayService service = new NativePayService.Builder().config(adapter.getConfig()).build();
|
NativePayService service = new NativePayService.Builder().config(adapter.getConfig()).build();
|
||||||
PrepayRequest request = new PrepayRequest();
|
PrepayRequest request = new PrepayRequest();
|
||||||
|
Reference in New Issue
Block a user