package com.whyc.service;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageInfo;
|
import com.whyc.dto.Response;
|
import com.whyc.dto.paramter.PowerInfPar;
|
import com.whyc.mapper.PowerInfMapper;
|
import com.whyc.pojo.PowerInf;
|
import com.whyc.util.ActionUtil;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.util.HashMap;
|
import java.util.Iterator;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.stream.Collectors;
|
|
@Service
|
public class PowerInfService {
|
@Resource
|
private PowerInfMapper mapper;
|
|
public int add(PowerInf powerInf){
|
return mapper.insert(powerInf);
|
}
|
|
public void updateByPowerDeviceId(PowerInf powerInf){
|
UpdateWrapper<PowerInf> wrapper = new UpdateWrapper<PowerInf>().eq("PowerDeviceId",powerInf.getPowerDeviceId());
|
mapper.update(powerInf,wrapper);
|
}
|
|
public void deleteByPowerDeviceId(Integer powerDeviceId){
|
QueryWrapper<PowerInf> wrapper = new QueryWrapper<PowerInf>().eq("PowerDeviceId",powerDeviceId);
|
mapper.delete(wrapper);
|
}
|
|
|
public List<String> delEmptyData(List<String> list){
|
Iterator<String> it = list.iterator();
|
while(it.hasNext()){
|
String str = it.next();
|
if ("".equals(str.trim())){
|
it.remove();
|
}
|
}
|
return list;
|
}
|
|
|
public Response getProvincesContainBatt(){
|
List<String> list= mapper.getProvincesContainBatt();
|
delEmptyData(list);
|
return new Response().set(1,list,"查询成功");
|
}
|
|
public Response getCitiesContainBatt(String stationName1){
|
List<String> list= mapper.getCitiesContainBatt(stationName1);
|
delEmptyData(list);
|
return new Response().set(1,list,"查询成功");
|
}
|
|
public Response getDistrictsContainBatt(String stationName1,String stationName2){
|
List<String> list= mapper.getDistrictsContainBatt(stationName1,stationName2);
|
delEmptyData(list);
|
return new Response().set(1,list,"查询成功");
|
}
|
|
public Response getProvinces(Long uId){
|
List<String> list= mapper.getProvinces(uId);
|
delEmptyData(list);
|
return new Response().set(1,list,"查询成功");
|
}
|
|
public Response getCities(Long uId,String stationName1){
|
List<String> list= mapper.getCities(uId,stationName1);
|
delEmptyData(list);
|
return new Response().set(1,list,"查询成功");
|
}
|
public Response getDistricts(Long uId,String stationName1,String stationName2){
|
List<String> list= mapper.getDistricts(uId,stationName1,stationName2);
|
delEmptyData(list);
|
return new Response().set(1,list,"查询成功");
|
}
|
|
public Response getExistStations(String stationName1, String stationName2, String stationName5) {
|
List<PowerInf> list = mapper.getExistStations(stationName1, stationName2, stationName5);
|
return new Response().set(1, list, "查询成功");
|
}
|
|
public Response getStations(Long userId, String stationName5) {
|
List<PowerInf> list = mapper.getStations(userId, stationName5);
|
return new Response().set(1, list, "查询成功");
|
}
|
|
public Response getPowerDevicesPage(int pageNum, int pageSize, Long uId, PowerInfPar powerInfPar) {
|
PageHelper.startPage(pageNum, pageSize);
|
List<PowerInf> list = mapper.getPowerDevicesPage(uId, powerInfPar);
|
PageInfo<PowerInf> pageInfo = new PageInfo<>(list);
|
return new Response().set(1, pageInfo, "查询成功");
|
}
|
|
public Response getPowerDevices(String stationId) {
|
QueryWrapper<PowerInf> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("stationid", stationId);
|
List<PowerInf> list = mapper.selectList(queryWrapper);
|
return new Response().set(1, list, "查询成功");
|
}
|
|
//查询某个电源的详细信息
|
public Response getInfoById(int powerDeviceId) {
|
QueryWrapper wrapper=new QueryWrapper();
|
wrapper.eq("PowerDeviceId",powerDeviceId);
|
List list=mapper.selectList(wrapper);
|
PageInfo pageInfo=new PageInfo(list);
|
return new Response().set(1,pageInfo);
|
}
|
|
//在线监测-实时监控-获取配电柜的实时数据
|
public Response getPowerInfoById(int powerDeviceId) {
|
//acdcinfMapper.getInfo(powerDeviceId);
|
return new Response().set(1);
|
}
|
|
public int getNum(int userId) {
|
return mapper.getNum(userId);
|
}
|
|
//管理员首页:电源信息
|
public List<PowerInf> getPwrdevInfAnalysis(int userId) {
|
List<PowerInf> list = mapper.getPwrdevInfAnalysis(userId);
|
return list;
|
}
|
|
public Response updateExceptionCause(PowerInf powerInf) {
|
//非空校验
|
if(powerInf.getExceptionCause()==null || powerInf.getExceptionCause().isEmpty()){
|
return new Response().set(1,false,"异常原因不能为空");
|
}
|
mapper.updateById(powerInf);
|
return new Response().set(1,true,"填写完成");
|
}
|
|
public Response updateCancelExceptionCause(int num) {
|
UpdateWrapper<PowerInf> update = Wrappers.update();
|
update.set("exception_cause", null).set("exception_cause_analysis", null).eq("num", num);
|
mapper.update((PowerInf) ActionUtil.objeNull, update);
|
return new Response().setII(1, "取消成功");
|
}
|
|
public Response getExceptionCause(int num) {
|
QueryWrapper<PowerInf> query = Wrappers.query();
|
query.select("StationName", "PowerProducer", "exception_cause", "exception_cause_analysis").eq("num", num);
|
PowerInf powerInf = mapper.selectOne(query);
|
return new Response().set(1, powerInf);
|
}
|
|
public Response getPwrInf(Long uId) {
|
List<PowerInf> list = mapper.getPwrInf(uId);
|
return new Response().set(1, list, "查询成功");
|
}
|
|
//获取所有的电源品牌
|
public Response getPwrProducer() {
|
List<String> list = mapper.getPwrProducer();
|
return new Response().setII(1, list.size() > 0 ? true : false, list, "获取所有的电源品牌");
|
}
|
|
public Response getModelList() {
|
QueryWrapper<PowerInf> query = Wrappers.query();
|
query.select("distinct model");
|
List<PowerInf> powerInfList = mapper.selectList(query);
|
List<String> modelList = powerInfList.stream().filter(model -> model != null).map(PowerInf::getModel).collect(Collectors.toList());
|
return new Response().set(1, modelList);
|
|
}
|
|
//根据品牌查询型号
|
public Response getModelListByPwrProducer(List<String> producer) {
|
QueryWrapper<PowerInf> query = Wrappers.query();
|
query.select("distinct model");
|
if (producer != null && producer.size() > 0) {
|
query.in("PowerProducer", producer);
|
}
|
List<PowerInf> powerInfList = mapper.selectList(query);
|
List<String> modelList = powerInfList.stream().filter(model -> model != null).map(PowerInf::getModel).collect(Collectors.toList());
|
return new Response().set(1, modelList);
|
}
|
|
public String getStationIdByPowerDeviceId(Integer powerDeviceId) {
|
QueryWrapper<PowerInf> query = Wrappers.query();
|
query.eq("PowerDeviceId",powerDeviceId).last(" limit 1");
|
return mapper.selectOne(query).getStationId();
|
}
|
|
public Response getProducerCount(int userId) {
|
List<PowerInf> powerInfList = getPwrdevInfAnalysis(userId);
|
Map<String, List<PowerInf>> powerProducerMap = powerInfList.stream().collect(Collectors.groupingBy(PowerInf::getPowerProducer));
|
Map<String, Object> AnalysisMap = new HashMap<>();
|
for (String producer : powerProducerMap.keySet()) {
|
AnalysisMap.put(producer, powerProducerMap.get(producer).size());
|
}
|
return new Response().set(1, AnalysisMap, "电源信息");
|
}
|
}
|