feat:消费机重复请求优化
This commit is contained in:
1 parent
8b3b86a679
commit
9bee9781cc
4 files changed
+26
-6
No files matched your search
+1
@@ -224,6 +224,7 @@ public class HardOrderController {
|
||||
PjcloudUser user = SecurityUtils.getUser();
|
||||
dto.setUserId(user.getId());
|
||||
dto.setIsFindCarList(true);
|
||||
dto.setIsFindApptList(true);
|
||||
dto.setMchTypeCodes(List.of(MerchantTypeEnum.CANTEEN.getType()));
|
||||
return R.ok(hardwareOrderService.pagejoin(page, dto));
|
||||
}
|
||||
|
||||
+1
@@ -71,6 +71,7 @@ public interface HardOrderMapper extends PjcloudBaseMapper<HardOrderEntity> {
|
||||
.in(ObjectUtil.isNotEmpty(dto.getUserIds()), HardOrderEntity::getUserId, dto.getUserIds())
|
||||
.in(ObjectUtil.isNotEmpty(dto.getMchIds()), HardOrderEntity::getMerchantId, dto.getMchIds())
|
||||
.in(ObjectUtil.isNotEmpty(dto.getMchTypeCodes()), HardOrderEntity::getMerchantType, dto.getMchTypeCodes())
|
||||
.in(ObjectUtil.isNotEmpty(dto.getRefundStatusCodes()), HardOrderEntity::getRefundStatus, dto.getRefundStatusCodes())
|
||||
.between(
|
||||
ObjectUtil.isNotEmpty(dto.getCreateTimeList()),
|
||||
HardOrderEntity::getCreateTime,
|
||||
|
||||
+2
-2
@@ -159,7 +159,7 @@ public class HardAfterSaleServiceImpl extends ServiceImpl<HardAfterSaleMapper, H
|
||||
// 更改订单状态为已取消
|
||||
HardAfterSaleLogEntity last = hardAfterSaleLogMapper.getFirst(afterSale.getId());
|
||||
if (ObjectUtil.isNotEmpty(last) && ObjectUtil.isNotEmpty(last.getAfterStatus())) {
|
||||
HardOrderEntity updateOrderObj = HardOrderEntity.builder().id(order.getId()).applyCancelTime(LocalDateTime.now()).orderStatus(last.getBeforeStatus()).build();
|
||||
HardOrderEntity updateOrderObj = HardOrderEntity.builder().id(order.getId()).applyCancelTime(LocalDateTime.now()).refundStatus(HardRefundStatusEnum.NONE.getStatus()).orderStatus(last.getBeforeStatus()).build();
|
||||
hardOrderService.updateById(updateOrderObj);
|
||||
}
|
||||
// 添加售后进度
|
||||
@@ -465,7 +465,7 @@ public class HardAfterSaleServiceImpl extends ServiceImpl<HardAfterSaleMapper, H
|
||||
LambdaUpdateWrapper<HardOrderEntity> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.set(HardOrderEntity::getApplyCancelTime, null)
|
||||
.set(HardOrderEntity::getOrderStatus, HardOrderStatusEnum.REFUND.getType())
|
||||
.set(HardOrderEntity::getRefundStatus, HardRefundStatusEnum.NONE.getStatus())
|
||||
.set(HardOrderEntity::getRefundStatus, HardRefundStatusEnum.APPLY.getStatus())
|
||||
.eq(HardOrderEntity::getId, order.getId());
|
||||
hardOrderService.update(updateWrapper);
|
||||
return saveObj;
|
||||
|
||||
+22
-4
@@ -137,8 +137,30 @@ public class HardXfjServiceImpl implements HardXfjService {
|
||||
@Override
|
||||
public XfjServerTimeVo serverTime(String body, Map<String, String> headers) {
|
||||
HardXfjLogEntity logger = initLogger(body, headers, "获取服务器时间接口");
|
||||
|
||||
XfjServerTimeVo result = new XfjServerTimeVo();
|
||||
try {
|
||||
|
||||
// 是否重复请求
|
||||
Map<String, String> transitionHeader = new LinkedHashMap<>();
|
||||
for (Map.Entry<String, String> entry : headers.entrySet()) {
|
||||
transitionHeader.put(entry.getKey().toUpperCase(), entry.getValue());
|
||||
}
|
||||
String deviceId = transitionHeader.get("DEVICE-ID");
|
||||
if (ObjectUtil.isEmpty(deviceId)) {
|
||||
throw new RuntimeException("|检查设备并返回配置|错误,deviceId不存在");
|
||||
}
|
||||
String lockKey = CacheConstants.HARD_XFJ_WHITE_LIST_LOCK + ":" + deviceId;
|
||||
// 检查是否存在锁
|
||||
Boolean hasLock = false;
|
||||
hasLock = redisTemplate.hasKey(lockKey);
|
||||
if (ObjectUtil.isNotEmpty(hasLock) && hasLock) {
|
||||
log.warn("|获取服务器时间接口|设备uniqueCode:{}在30分钟内已查询过,拒绝重复查询", deviceId);
|
||||
result.setWLUptate(0);
|
||||
result.setWLPage(1);
|
||||
return result;
|
||||
}
|
||||
|
||||
HardManagerEntity entity = checkSignAndReturnConfig(body, headers);
|
||||
logger.setUniqueCode(entity.getUniqueCode());
|
||||
|
||||
@@ -164,10 +186,6 @@ public class HardXfjServiceImpl implements HardXfjService {
|
||||
countDto.setCarNumberLength(10);
|
||||
Integer carCount = walletService.remoteOpenCardCount(countDto).getData();
|
||||
|
||||
String lockKey = CacheConstants.HARD_XFJ_WHITE_LIST_LOCK + ":" + entity.getUniqueCode();
|
||||
// 检查是否存在锁
|
||||
Boolean hasLock = false;
|
||||
hasLock = redisTemplate.hasKey(lockKey);
|
||||
if (ObjectUtil.isNotEmpty(hasLock) && hasLock && dto.getWLSum() > 0) {
|
||||
log.warn("|获取服务器时间接口|设备uniqueCode:{}在30分钟内已查询过,拒绝重复查询", entity.getUniqueCode());
|
||||
result.setWLUptate(0);
|
||||
|
||||
Reference in new issue
Block a user