screen-api/src/main/java/com/moral/api/controller/OrganizationController.java
@@ -16,6 +16,7 @@ import javax.servlet.http.HttpServletRequest; import com.moral.api.service.DeviceService; import com.moral.api.service.SysAreaService; import com.moral.constant.ResponseCodeEnum; import com.moral.constant.ResultMessage; @@ -30,6 +31,9 @@ @Autowired private SysAreaService sysAreaService; @Autowired private DeviceService deviceService; /** * @param request 请求信息 @@ -49,4 +53,23 @@ List<Map<String, Object>> response = sysAreaService.getMapPath(Integer.parseInt(params.get("organizationId").toString())); return ResultMessage.ok(response); } /** * @param request 请求信息 * @return 返回请求成功后的对象信息 */ @GetMapping("getDevicesByOrganizationId") @ApiOperation(value = "获取当前组织下设备列表", notes = "获取当前组织下设备列表") @ApiImplicitParams(value = { @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String"), @ApiImplicitParam(name = "organizationId", value = "组织id", required = true, paramType = "query", dataType = "String") }) public ResultMessage getDevicesByOrganizationId(HttpServletRequest request) { Map<String, Object> params = WebUtils.getParametersStartingWith(request, null); if (!params.containsKey("organizationId")) { return ResultMessage.fail(ResponseCodeEnum.PARAMETERS_IS_MISSING.getCode(), ResponseCodeEnum.PARAMETERS_IS_MISSING.getMsg()); } List<Map<String, Object>> response = deviceService.getDevicesByOrganizationId(Integer.parseInt(params.get("organizationId").toString())); return ResultMessage.ok(response); } } screen-api/src/main/java/com/moral/api/service/DeviceService.java
@@ -28,4 +28,7 @@ //通过mac获取设备信息 Device getDeviceByMac(String mac); //获取当前组织下所有设备列表 List<Map<String, Object>> getDevicesByOrganizationId(Integer orgId); } screen-api/src/main/java/com/moral/api/service/SysAreaService.java
@@ -16,6 +16,7 @@ */ public interface SysAreaService extends IService<SysArea> { //获取当前用户的地图权限 List<Map<String, Object>> getMapPath(Integer orgId); } screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
@@ -22,6 +22,7 @@ import java.util.List; import java.util.Map; import java.util.stream.Collectors; /** * <p> @@ -162,6 +163,16 @@ return device; } @Override public List<Map<String, Object>> getDevicesByOrganizationId(Integer orgId) { //从数据库获取mac QueryWrapper<Device> queryWrapper = new QueryWrapper<>(); queryWrapper.select("mac").eq("organization_id", orgId).eq("is_delete", Constants.NOT_DELETE); List<Device> devices = deviceMapper.selectList(queryWrapper); //从redis获取设备详细信息 return devices.stream().map(device -> (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.DEVICE, device.getMac())).collect(Collectors.toList()); } private Device getDeviceByMacFromDB(String mac) { QueryWrapper<Device> wrapper = new QueryWrapper<>(); wrapper.eq("mac", mac);