获取在线车辆列表 - 根据用户角色区分
/**
- 用户查看在线车辆
- 角色进行划分:超级管理员、管理员、教练、学员
- @param userId 用户ID
- @return 在线车辆 */ private List<CarManager> getOnlineCarListByUser(long userId) { //通过用户ID查询到当前用户对应的车辆 List<DeviceEntity> moveDeviceList = null; UserIdType userIdType = GM.me.checkUserId(userId); switch (userIdType) { case SUPER_ADMIN -> moveDeviceList = GM.me.getMoveDeviceListSuperAdmin(userId); case ADMIN -> moveDeviceList = getLiveRoomListAdmin(userId); case COACH -> moveDeviceList = getLiveRoomListCoach(userId); case CAR_USER -> moveDeviceList = getLiveRoomListCarUser(userId); }
List<CarManager> carManagersList = new ArrayList<>();//存放传输数据
if (moveDeviceList != null && moveDeviceList.size() > 0) { for (DeviceEntity deviceEntity : moveDeviceList) { //只展示在线的车辆 boolean existUser = ExternalCommunicationKit.existUser(deviceEntity.getDeviceId()); LogDebug.log("是否在线-"+deviceEntity.getDeviceId()+":"+existUser);
if (existUser) { CarManager carManagers = new CarManager(); carManagers.setDeviceId(deviceEntity.getDeviceId()); carManagers.setArea(deviceEntity.getArea());//获取定位 carManagers.setNumberplate(deviceEntity.getNumberplate()); Coach coach = invokeGetCoachInfoAction(deviceEntity.getCoachId()); if (coach != null) { carManagers.setRealName(coach.getRealName()); } CarModelAdmin carModelAdmin = GM.me.getCarModelAdminById(deviceEntity.getCarModelAdminId()); carManagers.setModel(carModelAdmin.getModel()); carManagers.setCarType(carModelAdmin.getCarType()); carManagers.setPicturePic(carModelAdmin.getPicturePic()); carManagers.setModelPic(carModelAdmin.getModelPic()); carManagersList.add(carManagers); } } } return carManagersList; } //测试用例 @Test public void testGetOnlineCarListByUser() { // 准备测试数据 long userId = 123; // 假设这是一个存在的用户ID
// 调用被测试方法 List<CarManager> onlineCarList = getOnlineCarListByUser(userId);
// 验证返回结果是否符合预期 // 可以使用断言来验证返回的在线车辆列表是否符合预期 // 比如,验证返回的在线车辆数量是否大于0 assertTrue(onlineCarList.size() > 0); }
原文地址: https://www.cveoy.top/t/topic/qdAn 著作权归作者所有。请勿转载和采集!