车辆类型

master
张小东 2023-11-21 20:14:25 +08:00
parent 729f3e1fd7
commit c0f6a98fa2
8 changed files with 142 additions and 19 deletions

View File

@ -0,0 +1,58 @@
package com.february.common.domain;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Vehicle {
/**
*
*/
private Integer vehicleId;
/**
* VIN
*/
private String vehicleVIN;
/**
*
*/
private Integer vehicleTypeId;
/**
*
*/
private Integer vehicleStatus;
/**
*
*/
private Integer fenceId;
/**
*
*/
private String motorManufacturer;
/**
*
*/
private String batteryManufacturer;
/**
*
*/
private String motorCoding;
/**
*
*/
private String batteryCoding;
}

View File

@ -0,0 +1,23 @@
package com.february.common.domain;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class VehicleType {
/**
*
*/
private Integer vehicleTypeId;
/**
*
*/
private String vehicleTypeName;
}

View File

@ -48,6 +48,17 @@
<version>3.6.3</version> <version>3.6.3</version>
</dependency> </dependency>
<!-- aop 依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<!-- 用于日志切面中,以 json 格式打印出入参 -->
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
</dependencies> </dependencies>
<build> <build>
<finalName>${project.artifactId}</finalName> <finalName>${project.artifactId}</finalName>

View File

@ -2,8 +2,9 @@ package com.vehicle.trajectory.controller;
import com.february.common.core.domain.Result; import com.february.common.core.domain.Result;
import com.february.common.domain.Car;
import com.february.common.domain.RealData; import com.february.common.domain.RealData;
import com.february.common.domain.Vehicle;
import com.february.common.domain.VehicleType;
import com.vehicle.trajectory.service.TrajectoryService; import com.vehicle.trajectory.service.TrajectoryService;
import lombok.extern.log4j.Log4j2; import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -39,11 +40,22 @@ public class TrajectoryController {
/** /**
* *
*/ */
@GetMapping("/carList") @GetMapping("/vehicleList")
public Result<List<Car>> carList() { public Result<List<Vehicle>> carList() {
log.info("功能名称:【查看在线车辆】,请求路径:【{}】,请求方式:【{}】", request.getRequestURI(), request.getMethod()); log.info("功能名称:【查看在线车辆】,请求路径:【{}】,请求方式:【{}】", request.getRequestURI(), request.getMethod());
Result<List<Car>> result = trajectoryService.carList(); Result<List<Vehicle>> result = trajectoryService.vehicleList();
log.info("请求结果:【{}】", result); log.info("请求结果:【{}】", result);
return result; return result;
} }
/**
*
*/
@GetMapping("/vehicleTypeList")
public Result<List<VehicleType>> vehicleTypeList(){
log.info("功能名称:【车辆类型】,请求路径:【{}】,请求方式:【{}】",request.getRequestURI(),request.getMethod());
Result<List<VehicleType>> result = trajectoryService.vehicleTypeList();
log.info("请求结果:【{}】",result);
return result;
}
} }

View File

@ -1,7 +1,8 @@
package com.vehicle.trajectory.mapper; package com.vehicle.trajectory.mapper;
import com.february.common.domain.Car;
import com.february.common.domain.RealData; import com.february.common.domain.RealData;
import com.february.common.domain.Vehicle;
import com.february.common.domain.VehicleType;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List; import java.util.List;
@ -10,5 +11,7 @@ import java.util.List;
public interface TrajectoryMapper { public interface TrajectoryMapper {
List<RealData> realDateList(); List<RealData> realDateList();
List<Car> carList(); List<Vehicle> vehicleList();
List<VehicleType> vehicleTypeList();
} }

View File

@ -1,13 +1,16 @@
package com.vehicle.trajectory.service; package com.vehicle.trajectory.service;
import com.february.common.core.domain.Result; import com.february.common.core.domain.Result;
import com.february.common.domain.Car;
import com.february.common.domain.RealData; import com.february.common.domain.RealData;
import com.february.common.domain.Vehicle;
import com.february.common.domain.VehicleType;
import java.util.List; import java.util.List;
public interface TrajectoryService<T, C> { public interface TrajectoryService<T, C> {
Result<List<RealData>> realDateList(); Result<List<RealData>> realDateList();
Result<List<Car>> carList(); Result<List<Vehicle>> vehicleList();
Result<List<VehicleType>> vehicleTypeList();
} }

View File

@ -4,8 +4,9 @@ package com.vehicle.trajectory.service.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.february.common.core.domain.Result; import com.february.common.core.domain.Result;
import com.february.common.domain.Car;
import com.february.common.domain.RealData; import com.february.common.domain.RealData;
import com.february.common.domain.Vehicle;
import com.february.common.domain.VehicleType;
import com.february.common.redis.service.RedisService; import com.february.common.redis.service.RedisService;
import com.vehicle.trajectory.mapper.TrajectoryMapper; import com.vehicle.trajectory.mapper.TrajectoryMapper;
import com.vehicle.trajectory.service.TrajectoryService; import com.vehicle.trajectory.service.TrajectoryService;
@ -29,24 +30,32 @@ public class TrajectoryServiceImpl implements TrajectoryService {
@Autowired @Autowired
private RedisService redisService; private RedisService redisService;
@Override @Override
public Result<List<Car>> carList() { public Result<List<Vehicle>> vehicleList() {
Boolean aBoolean = redisService.hasKey("状态为上线的车辆信息");//查询redis中是否有此键 Boolean aBoolean = redisService.hasKey("状态为上线的车辆信息");//查询redis中是否有此键
if (Boolean.TRUE.equals(aBoolean)){ if (Boolean.TRUE.equals(aBoolean)){
List<Object> list = redisService.redisTemplate.opsForList().range("状态为上线的车辆信息", 0, -1); List<Object> list = redisService.redisTemplate.opsForList().range("状态为上线的车辆信息", 0, -1);
ArrayList<Car> carArrayList = new ArrayList<>(); ArrayList<Vehicle> carArrayList = new ArrayList<>();
if (list != null) { if (list != null) {
for (Object o : list) { for (Object o : list) {
String o1 = (String) o; String o1 = (String) o;
Car notice = JSON.parseObject(o1, Car.class); Vehicle vehicle = JSON.parseObject(o1, Vehicle.class);
carArrayList.add(notice); carArrayList.add(vehicle);
} }
return Result.success(carArrayList); return Result.success(carArrayList);
} }
} }
List<Car> carList = mapper.carList(); //上线车辆的信息 List<Vehicle> vehicleList = mapper.vehicleList(); //上线车辆的信息
for (Car car : carList) { for (Vehicle vehicle : vehicleList) {
redisService.redisTemplate.opsForList().leftPush("状态为上线的车辆信息", JSONObject.toJSONString(car)); redisService.redisTemplate.opsForList().leftPush("状态为上线的车辆信息", JSONObject.toJSONString(vehicle));
} }
return Result.success(carList); return Result.success(vehicleList);
} }
@Override
public Result<List<VehicleType>> vehicleTypeList() {
List<VehicleType> vehicleTypes = mapper.vehicleTypeList();
return Result.success(vehicleTypes);
}
} }

View File

@ -6,8 +6,12 @@
select * select *
from t_real_data from t_real_data
</select> </select>
<select id="carList" resultType="com.february.common.domain.Car"> <select id="vehicleList" resultType="com.february.common.domain.Vehicle">
select * select *
from t_car; from vehicle where vehicle_status = 1;
</select>
<select id="vehicleTypeList" resultType="com.february.common.domain.VehicleType">
select *
from vehicle_type;
</select> </select>
</mapper> </mapper>