事件处理:车辆驶入驶出围栏报警

vehicle-xiaofan
黄大举 2024-04-06 21:14:48 +08:00
parent fc291b12f0
commit 938d1fe41a
12 changed files with 349 additions and 209 deletions

View File

@ -122,6 +122,14 @@
</execution> </execution>
</executions> </executions>
</plugin> </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>10</source>
<target>10</target>
</configuration>
</plugin>
</plugins> </plugins>
</build> </build>
</project> </project>

View File

@ -2,6 +2,7 @@ package com.muyu.analyze.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.muyu.system.common.domain.Fence;
import com.muyu.system.common.domain.VehicleData; import com.muyu.system.common.domain.VehicleData;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -22,6 +23,7 @@ public interface VehicleMapper{
Boolean addVehicleStoredEvent(ArrayList<VehicleData> list); Boolean addVehicleStoredEvent(ArrayList<VehicleData> list);
List<Fence> selectFenceList();

View File

@ -37,197 +37,197 @@ public class BreakdownImpl implements VehicleService{
@Override @Override
public void eventResolution(VehicleData vehicleData) { public void eventResolution(VehicleData vehicleData) {
log.info("故障事件解析"); // log.info("故障事件解析");
if (StateConstant.VEHICLE_STATUS != vehicleData.getVehicleStatus() // if (StateConstant.VEHICLE_STATUS != vehicleData.getVehicleStatus()
|| StateConstant.CHARGING_STATUS!=vehicleData.getChgStatus() // || StateConstant.CHARGING_STATUS!=vehicleData.getChgStatus()
|| StateConstant.OPERATING_STATUS!=vehicleData.getOperatingStatus() // || StateConstant.OPERATING_STATUS!=vehicleData.getOperatingStatus()
|| StateConstant.SOC_STATUS!=vehicleData.getSocStatus() // || StateConstant.SOC_STATUS!=vehicleData.getSocStatus()
|| StateConstant.CHARGING_ENERGY_STORAGE_STATUS != vehicleData.getChargingEnergyStorageStatus() // || StateConstant.CHARGING_ENERGY_STORAGE_STATUS != vehicleData.getChargingEnergyStorageStatus()
|| StateConstant.DRIVE_MOTOR_STATUS != vehicleData.getDriveMotorStatus() // || StateConstant.DRIVE_MOTOR_STATUS != vehicleData.getDriveMotorStatus()
|| StateConstant.POSITION_STATUS != vehicleData.getPositionStatus() // || StateConstant.POSITION_STATUS != vehicleData.getPositionStatus()
|| StateConstant.EAS_STATUS != vehicleData.getEasStatus() // || StateConstant.EAS_STATUS != vehicleData.getEasStatus()
|| StateConstant.PTC_STATUS != vehicleData.getPtcStatus() // || StateConstant.PTC_STATUS != vehicleData.getPtcStatus()
|| StateConstant.ABS_STATUS != vehicleData.getAbsStatus() // || StateConstant.ABS_STATUS != vehicleData.getAbsStatus()
|| StateConstant.MCU_STATUS != vehicleData.getMcuStatus() // || StateConstant.MCU_STATUS != vehicleData.getMcuStatus()
|| StateConstant.HEATING_STATUS != vehicleData.getHeatingStatus() // || StateConstant.HEATING_STATUS != vehicleData.getHeatingStatus()
|| StateConstant.BATTERY_STATUS != vehicleData.getBatteryStatus() // || StateConstant.BATTERY_STATUS != vehicleData.getBatteryStatus()
|| StateConstant.BATTERY_INSULATION_STATUS != vehicleData.getBatteryInsulationStatus() // || StateConstant.BATTERY_INSULATION_STATUS != vehicleData.getBatteryInsulationStatus()
|| StateConstant.DCDC_STATUS != vehicleData.getDcdcStatus() // || StateConstant.DCDC_STATUS != vehicleData.getDcdcStatus()
|| StateConstant.CHG_STATUS != vehicleData.getChgStatus()){ // || StateConstant.CHG_STATUS != vehicleData.getChgStatus()){
FaultLogs faultLogsAddReq = new FaultLogs();
faultLogsAddReq.setCarVin(vehicleData.getVin());
// /**
// * 车辆状态
// */
// private int vehicleStatus ;
if (vehicleData.getVehicleStatus()==0){
faultLogsAddReq.setFaultCode("GTB001");
faultLogsAddReq.setFaultLevel(3);
}
// /**
// * 充电状态
// */
// private int chargingStatus;
if (vehicleData.getChargingStatus()==0){
faultLogsAddReq.setFaultCode("GTB002");
faultLogsAddReq.setFaultLevel(3);
}
// /**
// * 运行状态
// */
// private int operatingStatus;
if (vehicleData.getOperatingStatus()==0){
faultLogsAddReq.setFaultCode("GTB003");
faultLogsAddReq.setFaultLevel(3);
}
// /**
// * SOC
// */
// private int socStatus;
if (vehicleData.getSocStatus()==0){
faultLogsAddReq.setFaultCode("GTO001");
faultLogsAddReq.setFaultLevel(2);
}
// //
// //
//GTO003 // FaultLogs faultLogsAddReq = new FaultLogs();
// faultLogsAddReq.setCarVin(vehicleData.getVin());
// /** //
// * 可充电储能装置工作状态 // // /**
// */ //
// private int chargingEnergyStorageStatus ; //
if (vehicleData.getChargingEnergyStorageStatus()==0){ // // * 车辆状态
faultLogsAddReq.setFaultCode("GTO002"); // // */
faultLogsAddReq.setFaultLevel(2); // // private int vehicleStatus ;
} //
// /** // if (vehicleData.getVehicleStatus()==0){
// * 驱动电机状态 // faultLogsAddReq.setFaultCode("GTB001");
// */ // faultLogsAddReq.setFaultLevel(3);
// private int driveMotorStatus ; // }
if (vehicleData.getDriveMotorStatus()==0){ // // /**
faultLogsAddReq.setFaultCode("GT0003"); // // * 充电状态
faultLogsAddReq.setFaultLevel(2); // // */
} // // private int chargingStatus;
// /** // if (vehicleData.getChargingStatus()==0){
// * 定位是否有效 // faultLogsAddReq.setFaultCode("GTB002");
// */ // faultLogsAddReq.setFaultLevel(3);
// private int positionStatus ; // }
if (vehicleData.getPositionStatus()==0){ // // /**
faultLogsAddReq.setFaultCode("GT0004"); // // * 运行状态
faultLogsAddReq.setFaultLevel(2); // // */
} //GTO004 // // private int operatingStatus;
//GTO005 // if (vehicleData.getOperatingStatus()==0){
//GTO006 // faultLogsAddReq.setFaultCode("GTB003");
//GTO007 // faultLogsAddReq.setFaultLevel(3);
// /** // }
// * EAS(汽车防盗系统)状态 // // /**
// */ // // * SOC
// private int easStatus ; // // */
if (vehicleData.getEasStatus()==0){ // // private int socStatus;
faultLogsAddReq.setFaultCode("GTO005"); // if (vehicleData.getSocStatus()==0){
faultLogsAddReq.setFaultLevel(2); // faultLogsAddReq.setFaultCode("GTO001");
} // faultLogsAddReq.setFaultLevel(2);
// /** // }
// * PTC(电动加热器)状态 // //
// */ // //
// private int ptcStatus ; // //GTO003
if (vehicleData.getPtcStatus()==0){ //
// // /**
faultLogsAddReq.setFaultCode("GTO006"); // // * 可充电储能装置工作状态
faultLogsAddReq.setFaultLevel(2); // // */
} // // private int chargingEnergyStorageStatus ;
// /** // if (vehicleData.getChargingEnergyStorageStatus()==0){
// * EPS(电动助力系统)状态 // faultLogsAddReq.setFaultCode("GTO002");
// */ // faultLogsAddReq.setFaultLevel(2);
// private int epsStatus ; // }
if (vehicleData.getEpsStatus()==0){ // // /**
// // * 驱动电机状态
faultLogsAddReq.setFaultCode("GTO007"); // // */
faultLogsAddReq.setFaultLevel(2); // // private int driveMotorStatus ;
} // if (vehicleData.getDriveMotorStatus()==0){
// /** // faultLogsAddReq.setFaultCode("GT0003");
// * ABS(防抱死)状态 // faultLogsAddReq.setFaultLevel(2);
// */ // }
// private int absStatus ; // // /**
if (vehicleData.getAbsStatus()==0){ // // * 定位是否有效
// // */
faultLogsAddReq.setFaultCode("GTX001"); // // private int positionStatus ;
faultLogsAddReq.setFaultLevel(1); // if (vehicleData.getPositionStatus()==0){
} // faultLogsAddReq.setFaultCode("GT0004");
// faultLogsAddReq.setFaultLevel(2);
// /** // } //GTO004
// * MCU(电机/逆变器)状态 // //GTO005
// */ // //GTO006
// private int mcuStatus ; // //GTO007
if (vehicleData.getMcuStatus()==0){ // // /**
// // * EAS(汽车防盗系统)状态
faultLogsAddReq.setFaultCode("GTX002"); // // */
faultLogsAddReq.setFaultLevel(1); // // private int easStatus ;
} // if (vehicleData.getEasStatus()==0){
// /** // faultLogsAddReq.setFaultCode("GTO005");
// * 动力电池加热状态 // faultLogsAddReq.setFaultLevel(2);
// */ // }
// private int heatingStatus ; // // /**
if (vehicleData.getHeatingStatus()==0){ // // * PTC(电动加热器)状态
// // */
faultLogsAddReq.setFaultCode("GTX003"); // // private int ptcStatus ;
faultLogsAddReq.setFaultLevel(1); // if (vehicleData.getPtcStatus()==0){
} //
// /** // faultLogsAddReq.setFaultCode("GTO006");
// * 动力电池当前状态 // faultLogsAddReq.setFaultLevel(2);
// */ // }
// private int batteryStatus ; // // /**
if (vehicleData.getBatteryStatus()==0){ // // * EPS(电动助力系统)状态
// // */
faultLogsAddReq.setFaultCode("GTX004"); // // private int epsStatus ;
faultLogsAddReq.setFaultLevel(1); // if (vehicleData.getEpsStatus()==0){
} //
// /** // faultLogsAddReq.setFaultCode("GTO007");
// * 动力电池保温状态 // faultLogsAddReq.setFaultLevel(2);
// */ // }
// private int batteryInsulationStatus ; // // /**
if (vehicleData.getBatteryInsulationStatus()==0){ // // * ABS(防抱死)状态
// // */
faultLogsAddReq.setFaultCode("GTX005"); // // private int absStatus ;
faultLogsAddReq.setFaultLevel(1); // if (vehicleData.getAbsStatus()==0){
} //
// /** // faultLogsAddReq.setFaultCode("GTX001");
// * DCDC(电力交换系统)状态 // faultLogsAddReq.setFaultLevel(1);
// */ // }
// private int dcdcStatus ; //
if (vehicleData.getDcdcStatus()==0){ // // /**
// // * MCU(电机/逆变器)状态
faultLogsAddReq.setFaultCode("GTX006"); // // */
faultLogsAddReq.setFaultLevel(1); // // private int mcuStatus ;
} // if (vehicleData.getMcuStatus()==0){
// /** //
// * CHG(充电机)状态 // faultLogsAddReq.setFaultCode("GTX002");
// */ // faultLogsAddReq.setFaultLevel(1);
// private int chgStatus ; // }
if (vehicleData.getChgStatus()==0){ // // /**
// // * 动力电池加热状态
faultLogsAddReq.setFaultCode("GTX007"); // // */
faultLogsAddReq.setFaultLevel(1); // // private int heatingStatus ;
} // if (vehicleData.getHeatingStatus()==0){
// rabbitTemplate.convertAndSend(RabbitMqConfig.EXCHANGE, RabbitMqConfig.KEY,faultLogsAddReq, message -> { //
// message.getMessageProperties().setMessageId(UUID.randomUUID().toString()); // faultLogsAddReq.setFaultCode("GTX003");
// return message; // faultLogsAddReq.setFaultLevel(1);
// } ,new CorrelationData(UUID.randomUUID().toString())); // }
// // /**
// // * 动力电池当前状态
// // */
String key = "breakdown"; // // private int batteryStatus ;
String value = JSON.toJSONString(faultLogsAddReq); // if (vehicleData.getBatteryStatus()==0){
redisTemplate.opsForSet().add(key, value); //
long expireTime = 30; // faultLogsAddReq.setFaultCode("GTX004");
redisTemplate.expire(key, expireTime, TimeUnit.MINUTES); // faultLogsAddReq.setFaultLevel(1);
} // }
// // /**
// // * 动力电池保温状态
// // */
// // private int batteryInsulationStatus ;
// if (vehicleData.getBatteryInsulationStatus()==0){
//
// faultLogsAddReq.setFaultCode("GTX005");
// faultLogsAddReq.setFaultLevel(1);
// }
// // /**
// // * DCDC(电力交换系统)状态
// // */
// // private int dcdcStatus ;
// if (vehicleData.getDcdcStatus()==0){
//
// faultLogsAddReq.setFaultCode("GTX006");
// faultLogsAddReq.setFaultLevel(1);
// }
// // /**
// // * CHG(充电机)状态
// // */
// // private int chgStatus ;
// if (vehicleData.getChgStatus()==0){
//
// faultLogsAddReq.setFaultCode("GTX007");
// faultLogsAddReq.setFaultLevel(1);
// }
//// rabbitTemplate.convertAndSend(RabbitMqConfig.EXCHANGE, RabbitMqConfig.KEY,faultLogsAddReq, message -> {
//// message.getMessageProperties().setMessageId(UUID.randomUUID().toString());
//// return message;
//// } ,new CorrelationData(UUID.randomUUID().toString()));
//
//
//
// String key = "breakdown";
// String value = JSON.toJSONString(faultLogsAddReq);
// redisTemplate.opsForSet().add(key, value);
// long expireTime = 30;
// redisTemplate.expire(key, expireTime, TimeUnit.MINUTES);
// }
log.info("故障事件结束"); log.info("故障事件结束");
} }

View File

@ -1,10 +1,22 @@
package com.muyu.analyze.service.impl; package com.muyu.analyze.service.impl;
import com.alibaba.fastjson.JSON;
import com.muyu.analyze.mapper.VehicleMapper;
import com.muyu.analyze.service.VehicleService; import com.muyu.analyze.service.VehicleService;
import com.muyu.system.common.domain.Car;
import com.muyu.system.common.domain.Fence;
import com.muyu.system.common.domain.VehicleData; import com.muyu.system.common.domain.VehicleData;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static java.lang.Double.parseDouble;
/** /**
* @ProjectName: cloud-vehicles * @ProjectName: cloud-vehicles
* @PackageName: com.muyu.analyze.service.impl * @PackageName: com.muyu.analyze.service.impl
@ -16,10 +28,95 @@ import org.springframework.stereotype.Service;
@Service("fenceAlarm") @Service("fenceAlarm")
public class FenceAlarmImpl implements VehicleService { public class FenceAlarmImpl implements VehicleService {
@Autowired
private StringRedisTemplate redisTemplate;
@Autowired
private VehicleMapper vehicleMapper;
@Override @Override
public void eventResolution(VehicleData analyze) { public void eventResolution(VehicleData analyze) {
System.out.println("电子围栏报警事件开启"); //车的vin
String vin = analyze.getVin();
System.out.println("vin:"+vin);
//经度
double pointLng = parseDouble(analyze.getLongitude());
//纬度
double pointLat = parseDouble(analyze.getLatitude());
List<Fence> list=vehicleMapper.selectFenceList();
for (Fence fence : list) {
if (fence.getCarVin().equals(vin)){
//fenceRadius
//39.958897, 116.179075; 39.950476,116.330823; 39.865149,116.290311; 39.881485,116.083631
String[] split = fence.getFenceRadius().split(";");
boolean withinFence = isWithinFence(pointLat, pointLng, Arrays.asList(split));
//false是除了围栏要报警
if (fence.getFenceType().equals("驶出")){
if (withinFence){
System.out.println("车辆vin:"+vin+"------在安全区");
}else {
System.out.println("车辆vin:"+vin+"------驶出围栏---报警");
}
}
if (fence.getFenceType().equals("驶入")){
if (withinFence){
System.out.println("车辆vin:"+vin+"------驶入禁行区----报警");
}else{
System.out.println("车辆vin:"+vin+"------在安全区");
}
}
}
}
}
public boolean isWithinFence(double pointLat, double pointLng, List<String> split) {
// 确保split列表至少包含四个经纬度对
if (split.size() < 4) {
throw new IllegalArgumentException("不符合条件");
}
// 解析矩形的四个顶点
double[] latitudes = new double[4];
double[] longitudes = new double[4];
for (int i = 0; i < 4; i++) {
String[] coordinates = split.get(i).split(",");
latitudes[i] = Double.parseDouble(coordinates[0]);
longitudes[i] = Double.parseDouble(coordinates[1]);
}
// 检查点是否在矩形内
return isPointInRectangle(pointLat, pointLng, latitudes, longitudes);
}
private boolean isPointInRectangle(double pointLat, double pointLng, double[] latitudes, double[] longitudes) {
// 根据矩形顶点顺序确定最小和最大纬度、经度
double minLatitude = Arrays.stream(latitudes).min().orElseThrow();
double maxLatitude = Arrays.stream(latitudes).max().orElseThrow();
double minLongitude = Arrays.stream(longitudes).min().orElseThrow();
double maxLongitude = Arrays.stream(longitudes).max().orElseThrow();
return pointLat >= minLatitude && pointLat <= maxLatitude &&
pointLng >= minLongitude && pointLng <= maxLongitude;
}
} }
@ -27,4 +124,3 @@ public class FenceAlarmImpl implements VehicleService {
}

View File

@ -20,8 +20,8 @@ public class RealTimeDataEventImpl implements VehicleService {
@Override @Override
public void eventResolution(VehicleData analyze) { public void eventResolution(VehicleData analyze) {
System.out.println("我是实时数据"); // System.out.println("我是实时数据");
System.out.println(analyze); // System.out.println(analyze);

View File

@ -36,18 +36,18 @@ public class StoredEventImpl implements VehicleService {
public void eventResolution(VehicleData analyze) { public void eventResolution(VehicleData analyze) {
list.add(analyze); // list.add(analyze);
if (list.size() >= 50) { // if (list.size() >= 50) {
log.info("集合满50,存储事件开始"); // log.info("集合满50,存储事件开始");
Boolean i= vehicleMapper.addVehicleStoredEvent(list); // Boolean i= vehicleMapper.addVehicleStoredEvent(list);
//
if (i) { // if (i) {
list.clear(); // list.clear();
log.info("存储事件结束"); // log.info("存储事件结束");
//
} // }
//
} // }

View File

@ -13,4 +13,7 @@
</foreach> </foreach>
</insert> </insert>
<select id="selectFenceList" resultType="com.muyu.system.common.domain.Fence">
select car_vin,fence_encoding,fence_id,fence_type,fence_radius from car left join fence on car.car_fence_id=fence.fence_id
</select>
</mapper> </mapper>

View File

@ -62,6 +62,8 @@ public class Fence{
@TableField("fence_radius") @TableField("fence_radius")
private String fenceRadius; private String fenceRadius;
private String carVin;
public static Fence addReqBuild(FenceAddRequest fenceAddRequest) { public static Fence addReqBuild(FenceAddRequest fenceAddRequest) {
return Fence.builder() return Fence.builder()
.fenceEncoding(fenceAddRequest.getFenceEncoding()) .fenceEncoding(fenceAddRequest.getFenceEncoding())

View File

@ -58,4 +58,9 @@ public interface CarMapper extends BaseMapper<Car>
* @return * @return
*/ */
Car selectByVin(String carVin); Car selectByVin(String carVin);
List<Fence> selectFenceList();
} }

View File

@ -3,6 +3,9 @@ package com.muyu.system.service.impl;
import java.util.Arrays; import java.util.Arrays;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.concurrent.TimeUnit;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
@ -20,6 +23,7 @@ import com.muyu.system.common.domain.req.CarInfoAddReq;
import com.muyu.system.common.domain.vo.CarVo; import com.muyu.system.common.domain.vo.CarVo;
import com.muyu.system.mapper.CarMapper; import com.muyu.system.mapper.CarMapper;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.muyu.system.service.CarService; import com.muyu.system.service.CarService;
@ -38,13 +42,20 @@ public class CarServiceImpl extends ServiceImpl<CarMapper,Car> implements CarSer
private CarMapper carMapper; private CarMapper carMapper;
@Autowired @Autowired
private RestTemplate restTemplate; private RestTemplate restTemplate;
@Autowired
private StringRedisTemplate redisTemplate;
/** /**
* *
* @param carVo * @param carVo
*/ */
@Override @Override
public Result<PageResult<Car>> list(CarVo carVo) { public Result<PageResult<Car>> list(CarVo carVo) {
List<Fence> list1 = carMapper.selectFenceList();
for (Fence fence : list1) {
redisTemplate.opsForList().rightPush("fenceKey:", JSON.toJSONString(fence));
}
PageHelper.startPage(carVo.getPageNum(),carVo.getPageSize()); PageHelper.startPage(carVo.getPageNum(),carVo.getPageSize());
LambdaQueryWrapper<Car> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<Car> lambdaQueryWrapper = new LambdaQueryWrapper<>();
// VIN码条件查询 // VIN码条件查询
@ -76,6 +87,13 @@ public class CarServiceImpl extends ServiceImpl<CarMapper,Car> implements CarSer
lambdaQueryWrapper.like(Car::getCarBatteryId,carVo.getCarBatteryId()); lambdaQueryWrapper.like(Car::getCarBatteryId,carVo.getCarBatteryId());
} }
List<Car> list=this.list(lambdaQueryWrapper); List<Car> list=this.list(lambdaQueryWrapper);
for (Car car : list) {
redisTemplate.opsForSet().add("carKey:", JSON.toJSONString(car));
}
PageInfo<Car> info = new PageInfo<>(list); PageInfo<Car> info = new PageInfo<>(list);
return PageResult.toResult(info.getTotal(),info.getList()); return PageResult.toResult(info.getTotal(),info.getList());
} }

View File

@ -15,6 +15,7 @@ import com.muyu.system.service.ISysUserService;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
@ -55,6 +56,7 @@ public class SysUserServiceImpl implements ISysUserService
@Autowired @Autowired
protected Validator validator; protected Validator validator;
/** /**
* *
* *
@ -65,8 +67,9 @@ public class SysUserServiceImpl implements ISysUserService
@DataScope(deptAlias = "d", userAlias = "u") @DataScope(deptAlias = "d", userAlias = "u")
public List<SysUser> selectUserList(SysUser user) public List<SysUser> selectUserList(SysUser user)
{ {
//获取登录人信息
LoginUser loginUser = SecurityUtils.getLoginUser();
return userMapper.selectUserList(user); return userMapper.selectUserList(user);

View File

@ -42,4 +42,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
car_vin=#{carVin} car_vin=#{carVin}
</where> </where>
</select> </select>
<select id="selectFenceList" resultType="com.muyu.system.common.domain.Fence">
select * from fence where fence_state=0
</select>
</mapper> </mapper>