修改redis连接信息

This commit is contained in:
yanglei 2025-10-28 11:22:10 +08:00
parent 20595ca5d7
commit a546893816
7 changed files with 137 additions and 107 deletions

View File

@ -23,8 +23,8 @@ import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import static com.cdzy.operations.model.entity.table.EbiekSpecialDayTableDef.EBIEK_SPECIAL_DAY;
import static com.cdzy.operations.model.entity.table.EbiekSpecialTimeTableDef.EBIEK_SPECIAL_TIME;
import static com.cdzy.operations.model.entity.table.EbikeSpecialDayTableDef.EBIKE_SPECIAL_DAY;
import static com.cdzy.operations.model.entity.table.EbikeSpecialTimeTableDef.EBIKE_SPECIAL_TIME;
import static com.cdzy.operations.model.entity.table.EbikeSpecialBillingConfigurationTableDef.EBIKE_SPECIAL_BILLING_CONFIGURATION;
/**
@ -65,7 +65,7 @@ public class EbikeSpecialBillingConfigurationServiceImpl extends ServiceImpl<Ebi
throw new EbikeException("选择高峰时段计费后必须配置时段费用");
}
queryWrapper.clear();
queryWrapper.where(EBIEK_SPECIAL_TIME.REGION_ID.eq(regionId));
queryWrapper.where(EBIKE_SPECIAL_TIME.REGION_ID.eq(regionId));
timeMapper.deleteByQuery(queryWrapper);
List<EbikeSpecialTime> list = new ArrayList<>();
for (EbiekSpecialTimeVo timeConfig : timeConfigs) {
@ -89,7 +89,7 @@ public class EbikeSpecialBillingConfigurationServiceImpl extends ServiceImpl<Ebi
}
queryWrapper.clear();
queryWrapper.where(EBIEK_SPECIAL_DAY.REGION_ID.eq(regionId));
queryWrapper.where(EBIKE_SPECIAL_DAY.REGION_ID.eq(regionId));
dayMapper.deleteByQuery(queryWrapper);
List<EbikeSpecialDay> list = new ArrayList<>();
for (EbiekSpecialDayVo dayConfig : dayConfigs) {
@ -117,11 +117,11 @@ public class EbikeSpecialBillingConfigurationServiceImpl extends ServiceImpl<Ebi
return null;
}
queryWrapper.clear();
queryWrapper.where(EBIEK_SPECIAL_DAY.REGION_ID.eq(regionId));
queryWrapper.where(EBIKE_SPECIAL_DAY.REGION_ID.eq(regionId));
List<EbikeSpecialDay> days = dayMapper.selectListByQuery(queryWrapper);
queryWrapper.clear();
queryWrapper.where(EBIEK_SPECIAL_TIME.REGION_ID.eq(regionId));
queryWrapper.where(EBIKE_SPECIAL_TIME.REGION_ID.eq(regionId));
List<EbikeSpecialTime> times = timeMapper.selectListByQuery(queryWrapper);
specialBillingConfiguration.setDayConfigs(days);
specialBillingConfiguration.setTimeConfigs(times);

View File

@ -148,6 +148,11 @@
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-loadbalancer</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.kafka</groupId>
<artifactId>spring-kafka</artifactId>

View File

@ -0,0 +1,39 @@
package com.cdzy.user.config;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;
/**
* @author attiya
* @since 2025-03-20
*/
@Configuration
public class RedisConfig {
@Bean
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
RedisTemplate<String, Object> template = new RedisTemplate<>();
template.setConnectionFactory(factory);
// 使用Jackson2JsonRedisSerializer序列化值
Jackson2JsonRedisSerializer<Object> serializer = new Jackson2JsonRedisSerializer<>(Object.class);
ObjectMapper mapper = new ObjectMapper();
mapper.activateDefaultTyping(mapper.getPolymorphicTypeValidator(), ObjectMapper.DefaultTyping.NON_FINAL);
serializer.setObjectMapper(mapper);
// 设置键和值的序列化器
template.setKeySerializer(new StringRedisSerializer());
template.setValueSerializer(serializer);
template.setHashKeySerializer(new StringRedisSerializer());
template.setHashValueSerializer(serializer);
template.afterPropertiesSet();
return template;
}
}

View File

@ -1,13 +1,15 @@
package com.cdzy.user.controller;
import com.cdzy.common.model.response.JsonResult;
import com.cdzy.user.model.dto.EbikeUserCyclingDto;
import com.cdzy.user.model.entity.EbikeOrderTransaction;
import com.cdzy.user.service.EbikeOrderTransactionService;
import jakarta.annotation.Resource;
import jakarta.validation.constraints.NotBlank;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
* 用户订单 控制层
@ -29,11 +31,11 @@ public class EbikeOrderTransactionController {
* @param orderDto 骑行信息
* @ {@code 200} 添加成功{@code 500} 添加失败
*/
@PostMapping("saveRide")
public JsonResult<?> saveRide(@RequestBody @Validated EbikeUserCyclingDto orderDto) {
Long orderId = ebikeOrderTransactionService.saveRide(orderDto);
return JsonResult.success(orderId);
}
// @PostMapping("saveRide")
// public JsonResult<?> saveRide(@RequestBody @Validated EbikeUserCyclingDto orderDto) {
// Long orderId = ebikeOrderTransactionService.saveRide(orderDto);
// return JsonResult.success(orderId);
// }
/**
* 查看用户是否有未完成订单

View File

@ -1,6 +1,5 @@
package com.cdzy.user.service;
import com.cdzy.user.model.dto.EbikeUserCyclingDto;
import com.cdzy.user.model.entity.EbikeOrderTransaction;
import com.mybatisflex.core.service.IService;
@ -19,7 +18,7 @@ public interface EbikeOrderTransactionService extends IService<EbikeOrderTransac
* @param orderDto 用户骑行信息
* @return 骑行订单
*/
Long saveRide(EbikeUserCyclingDto orderDto);
// Long saveRide(EbikeUserCyclingDto orderDto);
/**
* 检查历史订单

View File

@ -1,58 +1,43 @@
//package com.cdzy.user.service.impl;
//
//import com.alibaba.fastjson2.JSONObject;
//import com.cdzy.common.enums.BikeUsageStatus;
//import com.cdzy.common.enums.Code;
//import com.cdzy.common.model.dto.ResGPSDto;
//import com.cdzy.common.model.response.JsonResult;
//import com.cdzy.user.enums.CmdCode;
//import com.cdzy.user.enums.EbikeRegionInOperation;
//import com.cdzy.user.enums.OrderStatus;
//import com.cdzy.user.enums.OrderType;
//import com.cdzy.user.handler.EbikeCoreHandler;
//import com.cdzy.user.mapper.EbikeOrderTransactionMapper;
//import com.cdzy.user.model.dto.EbikeUserCyclingDto;
//import com.cdzy.user.model.entity.EbikeOrderTransaction;
//import com.cdzy.user.service.EbikeOrderTransactionService;
//import com.cdzy.user.utils.RedisUtil;
//import com.ebike.feign.clients.OperationsFeignClient;
//import com.ebike.feign.model.vo.FeignEbikeBikeInfoVo;
//import com.ebike.feign.model.vo.FeignEbikeConfigurationVo;
//import com.ebike.feign.model.vo.FeignEbikeEcuInfoVo;
//import com.ebike.feign.model.vo.FeignEbikeRegionVo;
//import com.mybatisflex.core.query.QueryWrapper;
//import com.mybatisflex.spring.service.impl.ServiceImpl;
//import jakarta.annotation.Resource;
//import org.springframework.stereotype.Service;
//
//import java.time.LocalDateTime;
//import java.util.Objects;
//import java.util.concurrent.CompletableFuture;
//
//import static com.cdzy.user.model.entity.table.EbikeOrderTransactionTableDef.EBIKE_ORDER_TRANSACTION;
//
//
///**
// * 用户订单 服务层实现
// *
// * @author: yanglei
// * @since: 2025-10-15 17:07
// */
//
//@Service
//public class EbikeOrderTransactionServiceImpl extends ServiceImpl<EbikeOrderTransactionMapper, EbikeOrderTransaction> implements EbikeOrderTransactionService {
//
// @Resource
// private RedisUtil redisUtil;
//
package com.cdzy.user.service.impl;
import com.cdzy.common.enums.BikeUsageStatus;
import com.cdzy.user.enums.OrderStatus;
import com.cdzy.user.mapper.EbikeOrderTransactionMapper;
import com.cdzy.user.model.dto.EbikeUserCyclingDto;
import com.cdzy.user.model.entity.EbikeOrderTransaction;
import com.cdzy.user.service.EbikeOrderTransactionService;
import com.cdzy.user.utils.RedisUtil;
import com.ebike.feign.clients.OperationsFeignClient;
import com.ebike.feign.model.vo.FeignEbikeBikeInfoVo;
import com.mybatisflex.core.query.QueryWrapper;
import com.mybatisflex.spring.service.impl.ServiceImpl;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;
import static com.cdzy.user.model.entity.table.EbikeOrderTransactionTableDef.EBIKE_ORDER_TRANSACTION;
/**
* 用户订单 服务层实现
*
* @author: yanglei
* @since: 2025-10-15 17:07
*/
@Service
public class EbikeOrderTransactionServiceImpl extends ServiceImpl<EbikeOrderTransactionMapper, EbikeOrderTransaction> implements EbikeOrderTransactionService {
@Resource
private RedisUtil redisUtil;
// @Resource
// private EbikeCoreHandler ebikeCoreHandler;
//
// @Resource
// private EbikeOrderTransactionMapper ebikeOrderTransactionMapper;
//
// @Resource
// private OperationsFeignClient operationsFeignClient;
@Resource
private EbikeOrderTransactionMapper ebikeOrderTransactionMapper;
@Resource
private OperationsFeignClient operationsFeignClient;
//
// @Override
// public Long saveRide(EbikeUserCyclingDto orderDto) {
@ -116,40 +101,40 @@
// //处理车辆
// return userOrders.getOrderId();
// }
//
// @Override
// public EbikeOrderTransaction checkHistoryOrder(Long userId) {
// QueryWrapper queryWrapper = QueryWrapper.create()
// .where(EBIKE_ORDER_TRANSACTION.USER_ID.eq(userId))
// .where(EBIKE_ORDER_TRANSACTION.ORDER_STATUS.eq(OrderStatus.IN_PROGRESS).or(EBIKE_ORDER_TRANSACTION.ORDER_STATUS.eq(OrderStatus.PENDING_PAYMENT)));
// return ebikeOrderTransactionMapper.selectOneByQuery(queryWrapper);
// }
//
// /**
// * 校验车辆是否可用
// *
// * @param bikeInfoVo 车辆信息
// */
// private void validateBikeUsable(FeignEbikeBikeInfoVo bikeInfoVo) {
// if (bikeInfoVo == null) {
// throw new IllegalArgumentException("车辆信息不能为空");
// }
// Integer usageStatus = bikeInfoVo.getUsageStatus();
// if (usageStatus == null || usageStatus != BikeUsageStatus.WAIT) {
// throw new IllegalArgumentException("车辆当前状态不可用,状态码:" + usageStatus);
// }
// }
//
//
// private EbikeOrderTransaction getOrder(EbikeUserCyclingDto orderDto) {
// QueryWrapper queryWrapper = QueryWrapper.create()
// .where(EBIKE_ORDER_TRANSACTION.BIKE_CODE.eq(orderDto.getBikeCode()))
// .where(EBIKE_ORDER_TRANSACTION.USER_ID.eq(orderDto.getUserId()))
// .where(EBIKE_ORDER_TRANSACTION.ORDER_STATUS.eq(OrderStatus.IN_PROGRESS));
// EbikeOrderTransaction userOrders = ebikeOrderTransactionMapper.selectOneByQuery(queryWrapper);
// if (userOrders == null) {
// throw new RuntimeException("该订单不存在");
// }
// return userOrders;
// }
//}
@Override
public EbikeOrderTransaction checkHistoryOrder(Long userId) {
QueryWrapper queryWrapper = QueryWrapper.create()
.where(EBIKE_ORDER_TRANSACTION.USER_ID.eq(userId))
.where(EBIKE_ORDER_TRANSACTION.ORDER_STATUS.eq(OrderStatus.IN_PROGRESS).or(EBIKE_ORDER_TRANSACTION.ORDER_STATUS.eq(OrderStatus.PENDING_PAYMENT)));
return ebikeOrderTransactionMapper.selectOneByQuery(queryWrapper);
}
/**
* 校验车辆是否可用
*
* @param bikeInfoVo 车辆信息
*/
private void validateBikeUsable(FeignEbikeBikeInfoVo bikeInfoVo) {
if (bikeInfoVo == null) {
throw new IllegalArgumentException("车辆信息不能为空");
}
Integer usageStatus = bikeInfoVo.getUsageStatus();
if (usageStatus == null || usageStatus != BikeUsageStatus.WAIT) {
throw new IllegalArgumentException("车辆当前状态不可用,状态码:" + usageStatus);
}
}
private EbikeOrderTransaction getOrder(EbikeUserCyclingDto orderDto) {
QueryWrapper queryWrapper = QueryWrapper.create()
.where(EBIKE_ORDER_TRANSACTION.BIKE_CODE.eq(orderDto.getBikeCode()))
.where(EBIKE_ORDER_TRANSACTION.USER_ID.eq(orderDto.getUserId()))
.where(EBIKE_ORDER_TRANSACTION.ORDER_STATUS.eq(OrderStatus.IN_PROGRESS));
EbikeOrderTransaction userOrders = ebikeOrderTransactionMapper.selectOneByQuery(queryWrapper);
if (userOrders == null) {
throw new RuntimeException("该订单不存在");
}
return userOrders;
}
}

View File

@ -42,11 +42,11 @@ spring:
# Redis数据库索引默认为0
database: 1
# Redis服务器地址
host: 192.168.2.226
host: 47.109.71.130
# Redis服务器连接端口
port: 6379
# Redis服务器连接密码默认为空
# password:
password: 970529
# 连接超时时间
lettuce:
pool: