|
|
@@ -188,7 +188,7 @@ public class OrderService {
|
|
|
}
|
|
|
|
|
|
Long id = snowflakeIdWorker.nextId();
|
|
|
- redisTemplate.opsForValue().set("safeTransfer::" + id, "1", 10, TimeUnit.MINUTES);
|
|
|
+ redisTemplate.opsForValue().set("safeTransfer::" + id, safeTransfer, 10, TimeUnit.MINUTES);
|
|
|
SendResult result = rocketMQTemplate.syncSend(generalProperties.getCreateOrderTopic(),
|
|
|
new CreateOrderEvent(id, userId, collectionId, qty, addressId, userCouponId, invitor, vip),
|
|
|
100000);
|
|
|
@@ -667,7 +667,6 @@ public class OrderService {
|
|
|
.orElseThrow(new BusinessException("藏品不存在"));
|
|
|
|
|
|
User user = userRepo.findById(order.getUserId()).orElseThrow(new BusinessException("用户不存在"));
|
|
|
- boolean safeTransfer = Objects.equals("1", redisTemplate.opsForValue().get("safeTransfer::" + orderId));
|
|
|
if (order.getStatus() == OrderStatus.NOT_PAID) {
|
|
|
order.setStatus(OrderStatus.PROCESSING);
|
|
|
order.setPayTime(LocalDateTime.now());
|
|
|
@@ -699,7 +698,8 @@ public class OrderService {
|
|
|
if (collection.getSource() == CollectionSource.TRANSFER) {
|
|
|
orderRepo.save(order);
|
|
|
Asset asset = assetRepo.findById(collection.getAssetId()).orElse(null);
|
|
|
- assetService.transfer(asset, order.getPrice(), user, TransferReason.TRANSFER, order.getId());
|
|
|
+ boolean safeTransfer = Objects.equals(true, redisTemplate.opsForValue().get("safeTransfer::" + orderId));
|
|
|
+ assetService.transfer(asset, order.getPrice(), user, TransferReason.TRANSFER, order.getId(), safeTransfer);
|
|
|
order.setStatus(OrderStatus.FINISH);
|
|
|
orderRepo.save(order);
|
|
|
collectionRepo.delete(collection);
|