fix 微信回调支付失败异常信息

This commit is contained in:
2024-01-22 22:46:25 +08:00
parent 648266357e
commit 92df2d803e
3 changed files with 36 additions and 14 deletions

View File

@@ -1,6 +1,9 @@
package com.ydd.oms.task;
import com.OmsApplication;
import com.sv.entity.Order;
import com.sv.mapper.OrderMapper;
import com.sv.service.api.VenueEnterService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
@@ -28,4 +31,16 @@ public class BarcodeTimeTaskTest {
clearPersonTask.clearMember();
}
@Resource
VenueEnterService venueEnterService;
@Resource
OrderMapper orderMapper;
@Test
public void testPaySuccess() {
Order order = orderMapper.findById(16412);
venueEnterService.paySuccess(order);
}
}

View File

@@ -1,5 +1,6 @@
package com.sv.mapper;
import com.sv.annotation.NoPlatform;
import com.sv.dto.api.MemberEnterOrderDTO;
import com.sv.entity.BarcodeOrderTime;
import org.apache.ibatis.annotations.Param;
@@ -11,31 +12,32 @@ import java.util.List;
* 用户入场订单
*/
public interface BarcodeOrderTimeMapper {
@NoPlatform
int deleteByPrimaryKey(Integer id);
@NoPlatform
int insert(BarcodeOrderTime record);
@NoPlatform
int insertSelective(BarcodeOrderTime record);
@NoPlatform
BarcodeOrderTime selectByPrimaryKey(Integer id);
@NoPlatform
int updateByPrimaryKeySelective(BarcodeOrderTime record);
@NoPlatform
int updateByPrimaryKey(BarcodeOrderTime record);
@NoPlatform
int findEffOrder(@Param("currentDate") Date currentDate,@Param("memberId") Integer memberId, @Param("venueId") Integer venueId);
@NoPlatform
BarcodeOrderTime findLastOrder(@Param("memberId") Integer memberId, @Param("venueId") Integer venueId);
@NoPlatform
BarcodeOrderTime findLastOrderBySn(@Param("memberId") Integer memberId, @Param("venueId") Integer venueId,@Param("orderSn") String orderSn);
@NoPlatform
List<BarcodeOrderTime> endOrderList(@Param("currentDate") Date currentDate);
@NoPlatform
List<BarcodeOrderTime> needPayOrderList();
@NoPlatform
List<MemberEnterOrderDTO> memberOrderEnterList(@Param("memberId") Integer memberId);
@NoPlatform
MemberEnterOrderDTO memberOrderEnterDetail(@Param("memberId") Integer memberId,@Param("enterId") Integer enterId);
@NoPlatform
List<MemberEnterOrderDTO> findAll(@Param("starTime") String starTime,@Param("endTime") String endTime,@Param("orderSn") String orderSn,@Param("state") Integer state);
}

View File

@@ -80,6 +80,7 @@ public class VenueEnterService extends BaseServiceImpl {
}
int effOrder = barcodeOrderTimeMapper.findEffOrder(new Date(), memberId, venueId);
if (effOrder <= 0) {
logger.info(memberId + "&用户创建订单,开始进场,需要支付金额");
if (price.compareTo(BigDecimal.ZERO) > 0) {
checkOrderPaying(memberId);
basketEnterResult.setFlg(2);
@@ -89,6 +90,7 @@ public class VenueEnterService extends BaseServiceImpl {
}
basketEnterResult.setMoney(price);
}else {
logger.info(memberId + "&用户创建订单,开始进场");
// 不需要交钱,则不需要微信支付,直接展示二维码
Integer timePayHour = 2; // 此处修改押金小时数
if(PayStyleEnum.TIME.getValue() == venue.getPayStyle()){
@@ -99,10 +101,12 @@ public class VenueEnterService extends BaseServiceImpl {
timePayHour = 4;
}
}
logger.info(memberId + "&用户创建订单,开始进场,免费入场");
createBarcodeTimeOrder(memberId,venueId,timePayHour,"000");
}
} else {
// 还沿用原来订单
logger.info(memberId + "&用户重新入场,沿用原来订单");
BarcodeOrderTime lastEnterOrder = barcodeOrderTimeMapper.findLastOrder(memberId, venueId);
if (lastEnterOrder != null) {
lastEnterOrder.setPaying(0);
@@ -149,11 +153,12 @@ public class VenueEnterService extends BaseServiceImpl {
BarcodeOrderTime lastOrder = barcodeOrderTimeMapper.findLastOrder(memberId, venueId);
String enterTime = DateUtilCard.getTimeFromDate(lastOrder.getOrderStart());
Date dateNow = new Date();
logger.info(memberId + "&用户出场");
if (2 != lastOrder.getPaying()) {
// 当前时间已经超过订单结束日期,则该订单需要重新补收费
// 取入场的价格
VenuePrice venuePriceEnter = venuePriceService.findPrice(venueId, enterTime);
if (venuePriceEnter == null) {
logger.info(memberId + "&用户出场,场馆暂未开放");
throw new ServiceException(ExceptionCodeTemplate.VENUE_ERROR);
}
// 按时出场选择按照分钟四舍五入到角扣款