package com.sandu.ximon.admin.controller;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.sandu.common.domain.ResponseVO;
|
import com.sandu.common.util.ResponseUtil;
|
import com.sandu.common.util.SpringContextHolder;
|
import com.sandu.ximon.admin.param.BroadcastTerminalV2Param;
|
import com.sandu.ximon.admin.security.SecurityUtils;
|
import com.sandu.ximon.admin.service.ClientService;
|
import com.sandu.ximon.admin.service.LedPlayerEntityService;
|
import com.sandu.ximon.admin.service.LedSFileService;
|
import com.sandu.ximon.dao.bo.LightBo;
|
import com.sandu.ximon.admin.service.*;
|
import com.sandu.ximon.dao.bo.BroadcastTerminalV2EntityBo;
|
import com.sandu.ximon.dao.bo.MonitorBo;
|
import com.sandu.ximon.dao.domain.Client;
|
import com.sandu.ximon.dao.domain.LedPlayerEntity;
|
import com.sandu.ximon.dao.domain.LedSFile;
|
import com.sandu.ximon.dao.domain.Pole;
|
import com.sandu.ximon.dao.mapper.LightMapper;
|
import com.sandu.ximon.dao.domain.IpVolumeFile;
|
import com.sandu.ximon.dao.domain.LEDProgram;
|
import com.sandu.ximon.dao.domain.PoleLightemitEntity;
|
import com.sandu.ximon.dao.mapper.MonitorMapper;
|
import com.sandu.ximon.dao.mapper.PoleMapper;
|
import lombok.AllArgsConstructor;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import java.util.ArrayList;
|
import java.util.LinkedHashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* 绑定设备时获取硬件列表的controller
|
*
|
* @author ZZQ
|
* @date 2022/5/27 9:41
|
*/
|
@RestController
|
@AllArgsConstructor
|
@RequestMapping("/v1/getListOnBinding")
|
public class GetListOnBindingController {
|
|
/**
|
* 客户列表
|
*/
|
@GetMapping("/getClientList")
|
public ResponseVO<Object> getClientList() {
|
LambdaQueryWrapper<Client> wrapper = Wrappers.lambdaQuery(Client.class);
|
//非超管只能看到自己下属的客户信息
|
if (SecurityUtils.getClientId() != null) {
|
wrapper.eq(Client::getSuperiorId, SecurityUtils.getUserId());
|
}
|
List<Client> list = SpringContextHolder.getBean(ClientService.class).list(wrapper);
|
|
List<Map> mapList = new ArrayList<>();
|
Map map;
|
for (Client bean : list) {
|
map = new LinkedHashMap();
|
map.put("id", bean.getId());
|
map.put("clientName", bean.getClientName());
|
|
mapList.add(map);
|
}
|
return ResponseUtil.success(mapList);
|
}
|
|
/**
|
* 灯杆列表
|
*/
|
private final PoleMapper poleMapper;
|
|
@GetMapping("/getPoleList")
|
public ResponseVO<Object> getPoleList() {
|
List<Pole> poleList;
|
if (SecurityUtils.getClientId() == null) {
|
poleList = poleMapper.queryPoleOnLineStatesList(null, null, null, null, null);
|
} else {
|
poleList = poleMapper.queryPoleOnLineStatesList(SecurityUtils.getUserId(), null, null, null, null);
|
}
|
|
List<Map> mapList = new ArrayList<>();
|
Map map;
|
for (Pole bean : poleList) {
|
map = new LinkedHashMap();
|
map.put("id", bean.getId());
|
map.put("poleName", bean.getPoleName());
|
mapList.add(map);
|
}
|
return ResponseUtil.success(mapList);
|
}
|
|
/**
|
* 路灯列表
|
*/
|
private final LightMapper lightMapper;
|
|
@GetMapping("/getLightList")
|
public ResponseVO<Object> getLightList() {
|
List<LightBo> listLight = lightMapper.listLight(SecurityUtils.getClientId(), null);
|
|
|
List<Map> mapList = new ArrayList<>();
|
Map map;
|
for (LightBo bean : listLight) {
|
map = new LinkedHashMap();
|
map.put("id", bean.getLightId());
|
map.put("deviceCode", bean.getDeviceCode());
|
map.put("poleId", bean.getPoleId());
|
map.put("poleName", bean.getPoleName());
|
mapList.add(map);
|
}
|
return ResponseUtil.success(mapList);
|
}
|
|
/**
|
* NLED列表(诺瓦设备)
|
*/
|
@GetMapping("/getLedPlayerEntityList")
|
public ResponseVO<Object> getLedPlayerEntityList() {
|
List<LedPlayerEntity> list = SpringContextHolder.getBean(LedPlayerEntityService.class).
|
ledPlayerEntityList(null, null);
|
|
List<Map> mapList = new ArrayList<>();
|
Map map;
|
for (LedPlayerEntity bean : list) {
|
map = new LinkedHashMap();
|
map.put("id", bean.getId());
|
map.put("name", bean.getName());
|
map.put("playerName", bean.getPlayerName());
|
map.put("sn", bean.getSn());
|
map.put("poleId", bean.getPoleId());
|
map.put("poleName", bean.getPoleName());
|
map.put("onlineStatus", bean.getOnlineStatus());
|
mapList.add(map);
|
}
|
return ResponseUtil.success(mapList);
|
}
|
|
/**
|
* NLED文件列表
|
*/
|
@GetMapping("/getLedFilesList")
|
public ResponseVO<Object> getLedFilesList() {
|
List<LedSFile> list = SpringContextHolder.getBean(LedSFileService.class).list();
|
|
List<Map> mapList = new ArrayList<>();
|
Map map;
|
for (LedSFile bean : list) {
|
map = new LinkedHashMap();
|
map.put("fileId", bean.getFileId());
|
map.put("fileType", bean.getFileType());
|
map.put("fileUrl", bean.getFileUrl());
|
map.put("fileSize", bean.getFileSize());
|
mapList.add(map);
|
}
|
return ResponseUtil.success(mapList);
|
}
|
|
/**
|
* NLED节目列表
|
*
|
* @return
|
*/
|
private final LEDProgramService ledProgramService;
|
|
@GetMapping("/getNledProgeamList")
|
public ResponseVO<Object> getNledProgeamList() {
|
List<LEDProgram> ledPrograms = ledProgramService.listProgram(null, null);
|
List<Map> mapList = new ArrayList<>();
|
Map map;
|
for (LEDProgram bean : ledPrograms) {
|
map = new LinkedHashMap();
|
map.put("id", bean.getId());
|
map.put("name", bean.getName());
|
mapList.add(map);
|
}
|
return ResponseUtil.success(mapList);
|
}
|
|
|
/**
|
* SLED列表
|
*
|
* @return
|
*/
|
private final PoleLightemitService sLedService;
|
|
@GetMapping("/getSledList")
|
public ResponseVO<Object> getSledList() {
|
List<PoleLightemitEntity> poleLightemitEntities = sLedService.listLed(null, false);
|
List<Map> mapList = new ArrayList<>();
|
Map map;
|
for (PoleLightemitEntity bean : poleLightemitEntities) {
|
map = new LinkedHashMap();
|
map.put("lightemitName", bean.getLightemitName());
|
map.put("lightemitControlCode", bean.getLightemitControlCode());
|
map.put("isOnLine", bean.isOnLine());
|
map.put("streetlightId", bean.getPoleId());
|
map.put("streetlightName", bean.getPoleName());
|
mapList.add(map);
|
}
|
return ResponseUtil.success(mapList);
|
}
|
|
|
/**
|
* 摄像头列表
|
*
|
* @return
|
*/
|
private final MonitorMapper monitorMapper;
|
|
@GetMapping("/getMonitorList")
|
public ResponseVO<Object> getMonitorList() {
|
List<MonitorBo> monitorBos;
|
//超管
|
if (SecurityUtils.getClientId() == null) {
|
monitorBos = monitorMapper.listMonitorDeviceSerial1(null, null, 2);
|
} else {
|
monitorBos = monitorMapper.listMonitorDeviceSerial1(SecurityUtils.getUserId(), null, 2);
|
}
|
List<Map> mapList = new ArrayList<>();
|
Map map;
|
for (MonitorBo bean : monitorBos) {
|
map = new LinkedHashMap();
|
map.put("id", bean.getId());
|
map.put("deviceSerial", bean.getDeviceSerial());
|
map.put("poleId", bean.getPoleId());
|
map.put("poleName", bean.getPoleName());
|
map.put("note", bean.getNote());
|
mapList.add(map);
|
}
|
return ResponseUtil.success(mapList);
|
}
|
|
|
/**
|
* 音柱列表
|
*/
|
private final IpVolumeService ipVolumeService;
|
|
@GetMapping("/getIpVolumeList")
|
public ResponseVO<Object> getIpVolumeList() {
|
BroadcastTerminalV2Param param = new BroadcastTerminalV2Param();
|
param.setBindingState(2);
|
param.setKeyword(null);
|
param.setWorkState(2);
|
List<BroadcastTerminalV2EntityBo> broadcastTerminalList = ipVolumeService.getBroadcastTerminalList(null, param);
|
List<Map> mapList = new ArrayList<>();
|
Map map;
|
for (BroadcastTerminalV2EntityBo bean : broadcastTerminalList) {
|
map = new LinkedHashMap();
|
map.put("id", bean.getId());
|
map.put("terminalName", bean.getTerminalName());
|
map.put("status", bean.getStatus());
|
map.put("poleId", bean.getPoleId());
|
map.put("PoleName", bean.getPoleName());
|
mapList.add(map);
|
}
|
return ResponseUtil.success(mapList);
|
}
|
|
|
/**
|
* 音柱广播素材列表
|
*/
|
private final IpVolumeFileService ipVolumeFileService;
|
|
@GetMapping("/getIpFileList")
|
public ResponseVO<Object> getIpFileList() {
|
List<IpVolumeFile> ipVolumeFiles = ipVolumeFileService.listFiles();
|
List<Map> mapList = new ArrayList<>();
|
Map map;
|
for (IpVolumeFile bean : ipVolumeFiles) {
|
map = new LinkedHashMap();
|
map.put("id", bean.getId());
|
map.put("fileName", bean.getFileName());
|
mapList.add(map);
|
}
|
return ResponseUtil.success(mapList);
|
}
|
|
|
}
|