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.*;
|
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.IpVolumeFile;
|
import com.sandu.ximon.dao.domain.LEDProgram;
|
import com.sandu.ximon.dao.domain.PoleLightemitEntity;
|
import com.sandu.ximon.dao.mapper.MonitorMapper;
|
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);
|
}
|
|
|
/**
|
* 摄像头列表
|
*
|
* @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 IpVolumeFileService ipVolumeFileService;
|
|
/**
|
* 音柱广播素材列表
|
*
|
* @return
|
*/
|
@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);
|
}
|
|
private final IpVolumeService ipVolumeService;
|
|
/**
|
* 音柱列表
|
*
|
* @return
|
*/
|
@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 PoleLightemitService sLedService;
|
|
/**
|
* SLED列表
|
*
|
* @return
|
*/
|
@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);
|
}
|
|
private final LEDProgramService ledProgramService;
|
|
/**
|
* NLED节目列表
|
*
|
* @return
|
*/
|
@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);
|
}
|
|
}
|