release-20260330 - 修改为手机开门,不扫码。

This commit is contained in:
2026-04-07 09:46:33 +08:00
parent c0b011c098
commit a1e22e9773
2 changed files with 36 additions and 24 deletions

3
.gitignore vendored
View File

@@ -28,3 +28,6 @@ hs_err_pid*
target target
*.iml *.iml
.vscode
.DS_Store

View File

@@ -25,7 +25,6 @@ import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.*; import java.util.*;
/** /**
* Service - 场馆 * Service - 场馆
* *
@@ -51,7 +50,6 @@ public class VenueEnterService extends BaseServiceImpl {
@Resource @Resource
OrderMapper orderMapper; OrderMapper orderMapper;
/** /**
* api 接口 * api 接口
* 我要进场 * 我要进场
@@ -119,6 +117,7 @@ public class VenueEnterService extends BaseServiceImpl {
/** /**
* 我要出场 * 我要出场
*
* @param memberId * @param memberId
* @param venueId * @param venueId
* @return * @return
@@ -158,7 +157,8 @@ public class VenueEnterService extends BaseServiceImpl {
BigDecimal deposit = basePrice.multiply(new BigDecimal(2)); BigDecimal deposit = basePrice.multiply(new BigDecimal(2));
BigDecimal difference = actualCost.subtract(deposit); BigDecimal difference = actualCost.subtract(deposit);
logger.info("用户出场$" + memberId + "$经过" + minutes + "分钟,实际费用:" + actualCost + ",押金:" + deposit + ",差额:" + difference); logger.info("用户出场$" + memberId + "$经过" + minutes + "分钟,实际费用:" + actualCost + ",押金:" + deposit + ",差额:"
+ difference);
if (difference.compareTo(BigDecimal.ZERO) > 0) { if (difference.compareTo(BigDecimal.ZERO) > 0) {
checkOrderPaying(memberId); checkOrderPaying(memberId);
@@ -196,6 +196,7 @@ public class VenueEnterService extends BaseServiceImpl {
/** /**
* 用户五分钟内有过微信支付,不能在结果未出来之前就让用户付款 * 用户五分钟内有过微信支付,不能在结果未出来之前就让用户付款
*
* @param memberId * @param memberId
*/ */
private void checkOrderPaying(Integer memberId) { private void checkOrderPaying(Integer memberId) {
@@ -222,9 +223,11 @@ public class VenueEnterService extends BaseServiceImpl {
* @param venueId * @param venueId
* @param venueType * @param venueType
*/ */
public void createMemberMoneyLog(Integer type, BigDecimal price, Integer memberId, Integer platformId, Integer payType, String cardType, public void createMemberMoneyLog(Integer type, BigDecimal price, Integer memberId, Integer platformId,
Integer payType, String cardType,
Integer venueId, Integer venueType) { Integer venueId, Integer venueType) {
memberMoneyLogService.create(memberId,platformId == null ? 1 : platformId,type,price.negate(),payType,cardType,venueId,venueType,null); memberMoneyLogService.create(memberId, platformId == null ? 1 : platformId, type, price.negate(), payType,
cardType, venueId, venueType, null);
} }
public void addNumber(Integer venueId, Integer number, Integer memberId) { public void addNumber(Integer venueId, Integer number, Integer memberId) {
@@ -239,6 +242,7 @@ public class VenueEnterService extends BaseServiceImpl {
/** /**
* 按次入场订单入库 * 按次入场订单入库
*
* @param memberId * @param memberId
* @param venueId * @param venueId
* @param timePayHour * @param timePayHour
@@ -263,6 +267,7 @@ public class VenueEnterService extends BaseServiceImpl {
/** /**
* 支付成功 * 支付成功
*
* @param order * @param order
*/ */
public void paySuccess(Order order) { public void paySuccess(Order order) {
@@ -271,7 +276,8 @@ public class VenueEnterService extends BaseServiceImpl {
Integer memberId = order.getMemberId(); Integer memberId = order.getMemberId();
Integer venueId = order.getParentOrderId(); Integer venueId = order.getParentOrderId();
Venue venue = venueMapper.findById(venueId); Venue venue = venueMapper.findById(venueId);
createMemberMoneyLog(MoneyLogEnum.JOIN.value, order.getPrice(), memberId, order.getPlatformId(), PayTypeEnum.WEI_XIN.value, null,venue.getId(), venue.getType()); createMemberMoneyLog(MoneyLogEnum.JOIN.value, order.getPrice(), memberId, order.getPlatformId(),
PayTypeEnum.WEI_XIN.value, null, venue.getId(), venue.getType());
if (EnterEnum.OUT.value != enterFlag) { if (EnterEnum.OUT.value != enterFlag) {
Integer timePayHour = 8; // 此处修改押金小时数 Integer timePayHour = 8; // 此处修改押金小时数
if (PayStyleEnum.TIME.getValue() == venue.getPayStyle()) { if (PayStyleEnum.TIME.getValue() == venue.getPayStyle()) {
@@ -284,7 +290,8 @@ public class VenueEnterService extends BaseServiceImpl {
} }
createBarcodeTimeOrder(memberId, venueId, timePayHour, order.getOrderSn()); createBarcodeTimeOrder(memberId, venueId, timePayHour, order.getOrderSn());
} else { } else {
BarcodeOrderTime lastOrder = barcodeOrderTimeMapper.findLastOrderBySn(memberId, venueId,order.getOrderSn()); BarcodeOrderTime lastOrder = barcodeOrderTimeMapper.findLastOrderBySn(memberId, venueId,
order.getOrderSn());
if (lastOrder != null) { if (lastOrder != null) {
lastOrder.setPaying(2); lastOrder.setPaying(2);
lastOrder.setStatus(BarCodeStatusEnum.USED.getValue()); lastOrder.setStatus(BarCodeStatusEnum.USED.getValue());
@@ -296,6 +303,7 @@ public class VenueEnterService extends BaseServiceImpl {
/** /**
* 我的进场订单 * 我的进场订单
*
* @param memberId * @param memberId
* @param pagination * @param pagination
* @return * @return
@@ -357,7 +365,8 @@ public class VenueEnterService extends BaseServiceImpl {
throw new ServiceException("订单多次支付(使用超时),无法进行退款!"); throw new ServiceException("订单多次支付(使用超时),无法进行退款!");
} }
Order baseOrder = orderMapper.findByOrderSn(orderSn); Order baseOrder = orderMapper.findByOrderSn(orderSn);
BigDecimal currentSumPayMoney = barcodeOrder.getSumPayMoney() == null ? BigDecimal.ZERO : barcodeOrder.getSumPayMoney(); BigDecimal currentSumPayMoney = barcodeOrder.getSumPayMoney() == null ? BigDecimal.ZERO
: barcodeOrder.getSumPayMoney();
if (currentSumPayMoney.add(payMoney).compareTo(baseOrder.getPrice()) > 0) { if (currentSumPayMoney.add(payMoney).compareTo(baseOrder.getPrice()) > 0) {
throw new ServiceException("退款金额不能超过总支付金额!"); throw new ServiceException("退款金额不能超过总支付金额!");
} }