package com.hxzkmonitor.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.hxzkmonitor.mapper.TbBaidumapMapper;
import com.hxzkmonitor.mapper.TbUserMapper;
import com.hxzkmonitor.pojo.*;
import com.hxzkmonitor.service.*;
import com.hxzkmonitor.udp.Udp_Out;
import com.hxzkmonitor.util.DateUtil;
import com.hxzkmonitor.util.R;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.*;
/**
*
* 前端控制器
*
*
* @author wangfei
* @since 2024-08-05
*/
@RestController
@RequestMapping("/")
public class TbEquipmentController {
@Autowired
TbEquipmentService tbEquipmentService;
@Autowired
TbSystemOperationLogService tbSystemOperationLogService;
@Autowired
TbSystemService tbSystemService;
@Autowired
TbEvrydayweiyi2024Service tbEvrydayweiyi2024Service;
@Autowired
TbBaidumapMapper tbBaidumapMapper;
@Autowired
TbUserMapper tbUserMapper;
@Autowired
TbGuangboService tbGuangboService;
@ApiOperation(value = "分页查询", notes = "分页查询")
@GetMapping("/api/everyday")
public R everyday(Page page, String username) {
IPage ipage = tbEquipmentService.everyday(page, username);
return R.ok(ipage);
}
//根据当前登录人查设备,然后根据时间查询所查到所有设备当天的数据以list返回给前端
@GetMapping("/api/searcheveryday")
public R searcheveryday(Page page, String keyword, String username) {
return R.ok(tbEquipmentService.searcheveryday(page, keyword, username));
}
@ApiOperation(value = "分页查询", notes = "分页查询")
@GetMapping("/api/getEquipmentPage")
public R getEquipmentPage(Page page, String type, String username) {
IPage ipage = tbEquipmentService.getEquipmentPage(page, type, username);
return R.ok(ipage);
}
@PostMapping("/api/addorupEquipment")
public R addorupEquipment(TbEquipment tbEquipment) throws Exception {
if (tbEquipmentService.addorupEquipment(tbEquipment) == -1) {
return R.failed("当前编号已存在");
} else {
return R.ok(tbEquipmentService.addorupEquipment(tbEquipment));
}
}
@GetMapping("/api/delEquipment")
public R delEquipment(Integer id) {
return R.ok(tbEquipmentService.delEquipment(id));
}
@GetMapping("/api/searchEquipment")
public R searchEquipment(Page page, String keyword, String type, String username) {
return R.ok(tbEquipmentService.searchEquipment(page, keyword, type, username));
}
@GetMapping("/api/getdevicestate")
public R getdevicestate(String tagid) {
String year = DateUtil.formatDate4(new Date(), "yyyy");
TbEvrydayweiyi2024 getonedesc = tbEvrydayweiyi2024Service.getonedesc(year, tagid);
TbEquipment byTagid = tbEquipmentService.getByTagid(tagid);
Map result = new HashMap<>();
result.put("dataList", getonedesc);
result.put("dataList2", byTagid);
return R.ok(result);
}
@GetMapping("/api/getEquipment")
public R getEquipment(Integer type, String username, String phone) {
return R.ok(tbEquipmentService.getEquipment(type, username, phone));
}
@GetMapping("/api/getEquipmentmonitor")
public R getEquipmentmonitor(String username, String phone) {
return R.ok(tbEquipmentService.getEquipmentmonitor(username, phone));
}
@GetMapping("/api/getEquipmenttwo")
public R getEquipmenttwo(String username, String phone) {
return R.ok(tbEquipmentService.getEquipmenttwo(username, phone));
}
@PostMapping("/api/alldevice")
public R alldevice(String username, String phone) {
// TbUser user = tbUserService.getByUsername(SeachRole.name());
Map result = new HashMap<>();
List list = new ArrayList<>();
// TbCompany tbCompany = new TbCompany();
// if (user.getRole().equals("超级管理员")) {
list = tbEquipmentService.getalldevice(username, phone);
Map resultg = new HashMap<>();
List listg = new ArrayList<>();
// TbCompany tbCompany = new TbCompany();
// if (user.getRole().equals("超级管理员")) {
listg = tbGuangboService.getallguangbo(username, phone);
// } else {
// //获取登陆人公司名称,
// String SeachName = user.getCaname();
// //查询登陆者对应公司ID 表TB COMPANY
// tbCompany = tbCompanyService.Bycompanyname(SeachName);
// //根据公司ID查询对应数据
// Integer comId = tbCompany.getId();
// list = tbEquipmentService.list(new QueryWrapper().eq("companyid",comId));
// }
List list1 = tbSystemService.list();
QueryWrapper queryWrapper2 = new QueryWrapper<>();
queryWrapper2.eq("username", username);
TbUser tbUser = tbUserMapper.selectOne(queryWrapper2);
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.eq("companyname", tbUser.getCaname());
TbBaidumap tbBaidumap = tbBaidumapMapper.selectOne(queryWrapper);
result.put("dataList", list);
result.put("gbList", listg);
result.put("view", tbBaidumap.getCenter());
result.put("shijiao", tbBaidumap.getShijiao());
// result.put("view", tbBaidumap.getCenter());
// result.put("view", list1.get(0).getView());
return R.ok(result);
}
@GetMapping("/api/searchdevice")
public R search(String username, String query) {
return R.ok(tbEquipmentService.search(username, query));
// 执行搜索逻辑,并返回结果
// List- items = searchService.search(query);
// return items.stream().map(Item::getName).collect(Collectors.toList());
// 如果没有服务,可以使用静态数据进行演示
// return Arrays.asList("Search Result 1", "Search Result 2", "Search Result 3").stream()
// .filter(result -> result.contains(query))
// .collect(Collectors.toList());
}
@GetMapping("/api/resetinitv")
public R resetinitv(String tagid, String initv) {
String xieyi = "$setbegvalue," + tagid + "," + initv + ",END";
Udp_Out.udp_to_cs(xieyi);
return R.ok();
}
@GetMapping("/api/resetzuobiao")
public R resetzuobiao(String tagid ) {
String xieyi = "$setbaselock," + tagid + ",END";
Udp_Out.udp_to_cs(xieyi);
return R.ok();
}
@GetMapping("/api/jzsearch")
public R jzsearch( String query,String type) {
return R.ok(tbEquipmentService.jzsearch(query,type));
// 执行搜索逻辑,并返回结果
// List
- items = searchService.search(query);
// return items.stream().map(Item::getName).collect(Collectors.toList());
// 如果没有服务,可以使用静态数据进行演示
// return Arrays.asList("Search Result 1", "Search Result 2", "Search Result 3").stream()
// .filter(result -> result.contains(query))
// .collect(Collectors.toList());
}
@GetMapping("/api/jzsearchfive")
public R jzsearchfive(String type ) {
return R.ok(tbEquipmentService.jzsearchfive(type));
// 执行搜索逻辑,并返回结果
// List
- items = searchService.search(query);
// return items.stream().map(Item::getName).collect(Collectors.toList());
// 如果没有服务,可以使用静态数据进行演示
// return Arrays.asList("Search Result 1", "Search Result 2", "Search Result 3").stream()
// .filter(result -> result.contains(query))
// .collect(Collectors.toList());
}
}