feat:过期扫一扫订单直接删除
This commit is contained in:
1 parent
d46f232224
commit
5f4a987c26
2 files changed
+24
-3
No files matched your search
+18
@@ -0,0 +1,18 @@
|
||||
package com.bsd.pjcloud.hard.redis.config;
|
||||
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.data.redis.connection.RedisConnectionFactory;
|
||||
import org.springframework.data.redis.listener.RedisMessageListenerContainer;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class RedisConfig {
|
||||
|
||||
@Bean
|
||||
public RedisMessageListenerContainer container(RedisConnectionFactory connectionFactory) {
|
||||
RedisMessageListenerContainer container = new RedisMessageListenerContainer();
|
||||
container.setConnectionFactory(connectionFactory);
|
||||
return container;
|
||||
}
|
||||
|
||||
}
|
||||
+6
-3
@@ -5,6 +5,7 @@ import cn.hutool.extra.spring.SpringUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alipay.api.response.AlipayTradePayResponse;
|
||||
import com.baomidou.lock.annotation.Lock4j;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
@@ -82,6 +83,7 @@ import com.bsd.pjcloud.wallet.api.vo.WalletManageVo;
|
||||
import com.bsd.pjcloud.wallet.api.vo.WalletSettingVo;
|
||||
import com.bsd.pjcloud.wallet.api.vo.mch.MchRuleJoinDtoVo;
|
||||
import jakarta.validation.Valid;
|
||||
import lombok.Locked;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
@@ -413,9 +415,9 @@ public class HardOrderServiceImpl extends ServiceImpl<HardOrderMapper, HardOrder
|
||||
|
||||
// String qrCodeData = String.format("https://stgl.pj.gov.cn/h5/#/pages/pay/scanPay?action=harQrCodeScanPay&orderId=%s&mchId=%s", orderObj.getId(), orderObj.getMerchantId());
|
||||
|
||||
// 在redis里存储订单id如果30分钟没有支付就删除订单
|
||||
// 在redis里存储订单id如果5分钟没有支付就删除订单
|
||||
String redisKey = String.format("%s:%s", CacheConstants.HARDER_ORDER_NON_PAY, orderObj.getId());
|
||||
redisTemplate.opsForValue().set(redisKey, String.valueOf(orderObj.getId()), 30, TimeUnit.MINUTES);
|
||||
redisTemplate.opsForValue().set(redisKey, String.valueOf(orderObj.getId()), 300, TimeUnit.SECONDS);
|
||||
|
||||
String qrCodeData = String.format("http://192.168.101.173:8889/h5/#/pages/pay/scanPay?action=harQrCodeScanPay&orderId=%s&mchId=%s", orderObj.getId(), orderObj.getMerchantId());
|
||||
return HardCreateHardQrCodeScanOrderVo.builder().orderId(orderObj.getId()).mchId(orderObj.getMerchantId()).qrCodeData(qrCodeData).build();
|
||||
@@ -425,6 +427,7 @@ public class HardOrderServiceImpl extends ServiceImpl<HardOrderMapper, HardOrder
|
||||
* 用户确认设备二维码扫一扫订单
|
||||
*/
|
||||
@Override
|
||||
@Lock4j(keys = {"#dto.orderId"})
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void doneHardQrCodeScanOrder(HardDoneHardQrCodeScanOrderDto dto, PjcloudUser user) {
|
||||
// 查询订单
|
||||
@@ -466,7 +469,7 @@ public class HardOrderServiceImpl extends ServiceImpl<HardOrderMapper, HardOrder
|
||||
// 钱包扣款
|
||||
getSelf().fastReduceBalance(order);
|
||||
|
||||
// 在redis里存储订单id如果30分钟没有支付就删除订单(这里删除一下)
|
||||
// 在redis里存储订单id如果5分钟没有支付就删除订单(这里删除一下)
|
||||
String redisKey = String.format("%s:%s", CacheConstants.HARDER_ORDER_NON_PAY, order.getId());
|
||||
redisTemplate.delete(redisKey);
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user