Commit 326ab746 authored by wujiang's avatar wujiang

修改预警统计数据对不上问题

parent a20f6820
package com.yeejoin.amos.boot.module.jxiop.biz.controller; package com.yeejoin.amos.boot.module.jxiop.biz.controller;
import cn.hutool.core.bean.BeanUtil; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.jxiop.biz.dto.IdxBizFanWarningRecordDto; import com.yeejoin.amos.boot.module.jxiop.biz.dto.IdxBizFanWarningRecordDto;
import com.yeejoin.amos.boot.module.jxiop.biz.entity.IdxBizFanPointProcessVariableClassification; import com.yeejoin.amos.boot.module.jxiop.biz.entity.IdxBizFanPointProcessVariableClassification;
import com.yeejoin.amos.boot.module.jxiop.biz.entity.IdxBizFanWarningRecord;
import com.yeejoin.amos.boot.module.jxiop.biz.entity.IdxBizFanWarningRuleSet; import com.yeejoin.amos.boot.module.jxiop.biz.entity.IdxBizFanWarningRuleSet;
import com.yeejoin.amos.boot.module.jxiop.biz.entity.IdxBizPvWarningRuleSet; import com.yeejoin.amos.boot.module.jxiop.biz.entity.IdxBizPvWarningRuleSet;
import com.yeejoin.amos.boot.module.jxiop.biz.mapper2.IdxBizFanPointProcessVariableClassificationMapper; import com.yeejoin.amos.boot.module.jxiop.biz.mapper2.IdxBizFanPointProcessVariableClassificationMapper;
...@@ -18,21 +42,10 @@ import com.yeejoin.amos.boot.module.jxiop.biz.service.impl.IdxBizFanWarningRuleS ...@@ -18,21 +42,10 @@ import com.yeejoin.amos.boot.module.jxiop.biz.service.impl.IdxBizFanWarningRuleS
import com.yeejoin.amos.boot.module.jxiop.biz.service.impl.IdxBizPvWarningRuleSetServiceImpl; import com.yeejoin.amos.boot.module.jxiop.biz.service.impl.IdxBizPvWarningRuleSetServiceImpl;
import com.yeejoin.amos.boot.module.jxiop.biz.tdMapper2.FanWaringRecordMapper; import com.yeejoin.amos.boot.module.jxiop.biz.tdMapper2.FanWaringRecordMapper;
import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.FanWarningRecord; import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.FanWarningRecord;
import cn.hutool.core.bean.BeanUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.beanutils.BeanMap;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest;
import java.util.*;
import java.util.stream.Collectors;
/** /**
* @author system_generator * @author system_generator
...@@ -43,396 +56,467 @@ import java.util.stream.Collectors; ...@@ -43,396 +56,467 @@ import java.util.stream.Collectors;
@RequestMapping(value = "/idx-biz-fan-warning-record") @RequestMapping(value = "/idx-biz-fan-warning-record")
public class IdxBizFanWarningRecordController extends BaseController { public class IdxBizFanWarningRecordController extends BaseController {
@Autowired @Autowired
IdxBizFanWarningRecordServiceImpl idxBizFanWarningRecordServiceImpl; IdxBizFanWarningRecordServiceImpl idxBizFanWarningRecordServiceImpl;
@Autowired @Autowired
IdxBizFanWarningRuleSetServiceImpl idxBizFanWarningRuleSetService; IdxBizFanWarningRuleSetServiceImpl idxBizFanWarningRuleSetService;
@Autowired @Autowired
IdxBizPvWarningRuleSetServiceImpl idxBizPvWarningRuleSetService; IdxBizPvWarningRuleSetServiceImpl idxBizPvWarningRuleSetService;
@Autowired @Autowired
FanWaringRecordMapper fanWaringRecordMapper; FanWaringRecordMapper fanWaringRecordMapper;
@Autowired @Autowired
private IPermissionService permissionService; private IPermissionService permissionService;
@Autowired @Autowired
IdxBizFanPointProcessVariableClassificationMapper idxBizFanPointProcessVariableClassificationMapper; IdxBizFanPointProcessVariableClassificationMapper idxBizFanPointProcessVariableClassificationMapper;
/** /**
* 新增 * 新增
* *
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save") @PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增") @ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<IdxBizFanWarningRecordDto> save(@RequestBody IdxBizFanWarningRecordDto model) { public ResponseModel<IdxBizFanWarningRecordDto> save(@RequestBody IdxBizFanWarningRecordDto model) {
model = idxBizFanWarningRecordServiceImpl.createWithModel(model); model = idxBizFanWarningRecordServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model); return ResponseHelper.buildResponse(model);
} }
/** /**
* 根据sequenceNbr更新 * 根据sequenceNbr更新
* *
* @param sequenceNbr 主键 * @param sequenceNbr 主键
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}") @PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新", notes = "根据sequenceNbr更新") @ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新", notes = "根据sequenceNbr更新")
public ResponseModel<IdxBizFanWarningRecordDto> updateBySequenceNbrIdxBizFanWarningRecord(@RequestBody IdxBizFanWarningRecordDto model, @PathVariable(value = "sequenceNbr") String sequenceNbr) { public ResponseModel<IdxBizFanWarningRecordDto> updateBySequenceNbrIdxBizFanWarningRecord(
model.setSequenceNbr(sequenceNbr); @RequestBody IdxBizFanWarningRecordDto model, @PathVariable(value = "sequenceNbr") String sequenceNbr) {
return ResponseHelper.buildResponse(idxBizFanWarningRecordServiceImpl.updateWithModel(model)); model.setSequenceNbr(sequenceNbr);
} return ResponseHelper.buildResponse(idxBizFanWarningRecordServiceImpl.updateWithModel(model));
}
/**
* 根据sequenceNbr删除 /**
* * 根据sequenceNbr删除
* @param sequenceNbr 主键 *
* @return * @param sequenceNbr 主键
*/ * @return
@TycloudOperation(ApiLevel = UserType.AGENCY) */
@DeleteMapping(value = "/{sequenceNbr}") @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除", notes = "根据sequenceNbr删除") @DeleteMapping(value = "/{sequenceNbr}")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr) { @ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除", notes = "根据sequenceNbr删除")
return ResponseHelper.buildResponse(idxBizFanWarningRecordServiceImpl.removeById(sequenceNbr)); public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request,
} @PathVariable(value = "sequenceNbr") Long sequenceNbr) {
return ResponseHelper.buildResponse(idxBizFanWarningRecordServiceImpl.removeById(sequenceNbr));
/** }
* 根据sequenceNbr查询
* /**
* @param sequenceNbr 主键 * 根据sequenceNbr查询
* @return *
*/ * @param sequenceNbr 主键
@TycloudOperation(ApiLevel = UserType.AGENCY) * @return
@GetMapping(value = "/{sequenceNbr}") */
@ApiOperation(httpMethod = "GET", value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个") @TycloudOperation(ApiLevel = UserType.AGENCY)
public ResponseModel<IdxBizFanWarningRecordDto> selectOne(@PathVariable Long sequenceNbr) { @GetMapping(value = "/{sequenceNbr}")
return ResponseHelper.buildResponse(idxBizFanWarningRecordServiceImpl.queryBySeq(sequenceNbr)); @ApiOperation(httpMethod = "GET", value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个")
} public ResponseModel<IdxBizFanWarningRecordDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(idxBizFanWarningRecordServiceImpl.queryBySeq(sequenceNbr));
/** }
* 列表分页查询
* /**
* @param current 当前页 * 列表分页查询
* @param current 每页大小 *
* @return * @param current 当前页
*/ * @param current 每页大小
@TycloudOperation(ApiLevel = UserType.AGENCY) * @return
@GetMapping(value = "/page") */
@ApiOperation(httpMethod = "GET", value = "分页查询", notes = "分页查询") @TycloudOperation(ApiLevel = UserType.AGENCY)
public ResponseModel<Page<IdxBizFanWarningRecordDto>> queryForPage(@RequestParam(value = "current") int current, @RequestParam @GetMapping(value = "/page")
(value = "size") int size) { @ApiOperation(httpMethod = "GET", value = "分页查询", notes = "分页查询")
Page<IdxBizFanWarningRecordDto> page = new Page<IdxBizFanWarningRecordDto>(); public ResponseModel<Page<IdxBizFanWarningRecordDto>> queryForPage(@RequestParam(value = "current") int current,
page.setCurrent(current); @RequestParam(value = "size") int size) {
page.setSize(size); Page<IdxBizFanWarningRecordDto> page = new Page<IdxBizFanWarningRecordDto>();
return ResponseHelper.buildResponse(idxBizFanWarningRecordServiceImpl.queryForIdxBizFanWarningRecordPage(page)); page.setCurrent(current);
} page.setSize(size);
return ResponseHelper.buildResponse(idxBizFanWarningRecordServiceImpl.queryForIdxBizFanWarningRecordPage(page));
/** }
* 列表全部数据查询
* /**
* @return * 列表全部数据查询
*/ *
@TycloudOperation(ApiLevel = UserType.AGENCY) * @return
@ApiOperation(httpMethod = "GET", value = "列表全部数据查询", notes = "列表全部数据查询") */
@GetMapping(value = "/list") @TycloudOperation(ApiLevel = UserType.AGENCY)
public ResponseModel<List<IdxBizFanWarningRecordDto>> selectForList() { @ApiOperation(httpMethod = "GET", value = "列表全部数据查询", notes = "列表全部数据查询")
return ResponseHelper.buildResponse(idxBizFanWarningRecordServiceImpl.queryForIdxBizFanWarningRecordList()); @GetMapping(value = "/list")
} public ResponseModel<List<IdxBizFanWarningRecordDto>> selectForList() {
return ResponseHelper.buildResponse(idxBizFanWarningRecordServiceImpl.queryForIdxBizFanWarningRecordList());
}
/**
* 根据sequenceNbr查询 /**
* * 根据sequenceNbr查询
* @param ANALYSISPOINTID 主键 *
* @return * @param ANALYSISPOINTID 主键
*/ * @return
@TycloudOperation(ApiLevel = UserType.AGENCY) */
@GetMapping(value = "/getInfoByPointId") @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "根据ANALYSIS_POINT_ID查询单个", notes = "根据ANALYSIS_POINT_ID查询单个") @GetMapping(value = "/getInfoByPointId")
public ResponseModel<Map<String, Object>> getInfoByPointId(@RequestParam String ANALYSISPOINTID) { @ApiOperation(httpMethod = "GET", value = "根据ANALYSIS_POINT_ID查询单个", notes = "根据ANALYSIS_POINT_ID查询单个")
public ResponseModel<Map<String, Object>> getInfoByPointId(@RequestParam String ANALYSISPOINTID) {
LambdaQueryWrapper<IdxBizFanWarningRuleSet> query = new LambdaQueryWrapper<>();
query.eq(IdxBizFanWarningRuleSet::getAnalysisPointId, ANALYSISPOINTID); LambdaQueryWrapper<IdxBizFanWarningRuleSet> query = new LambdaQueryWrapper<>();
List<IdxBizFanWarningRuleSet> idxBizFanWarningRecordList = idxBizFanWarningRuleSetService.getBaseMapper().selectList(query); query.eq(IdxBizFanWarningRuleSet::getAnalysisPointId, ANALYSISPOINTID);
Map<String, Object> map = new HashMap<>(); List<IdxBizFanWarningRuleSet> idxBizFanWarningRecordList = idxBizFanWarningRuleSetService.getBaseMapper()
for (int i = 0; i < idxBizFanWarningRecordList.size(); i++) { .selectList(query);
IdxBizFanWarningRuleSet idxBizFanWarningRecord = idxBizFanWarningRecordList.get(i); Map<String, Object> map = new HashMap<>();
if (idxBizFanWarningRecord.getWarningName().equals("注意")) { for (int i = 0; i < idxBizFanWarningRecordList.size(); i++) {
map.putAll(BeanUtil.beanToMap(idxBizFanWarningRecord)); IdxBizFanWarningRuleSet idxBizFanWarningRecord = idxBizFanWarningRecordList.get(i);
} else if (idxBizFanWarningRecord.getWarningName().equals("警告")) { if (idxBizFanWarningRecord.getWarningName().equals("注意")) {
//警告周期 map.putAll(BeanUtil.beanToMap(idxBizFanWarningRecord));
map.put("jgWarningCycle", idxBizFanWarningRecord.getWarningCycle()); } else if (idxBizFanWarningRecord.getWarningName().equals("警告")) {
map.put("jgWarningIf", idxBizFanWarningRecord.getWarningIf()); // 警告周期
} else if (idxBizFanWarningRecord.getWarningName().equals("危险")) { map.put("jgWarningCycle", idxBizFanWarningRecord.getWarningCycle());
//警告周期 map.put("jgWarningIf", idxBizFanWarningRecord.getWarningIf());
map.put("wxWarningCycle", idxBizFanWarningRecord.getWarningCycle()); } else if (idxBizFanWarningRecord.getWarningName().equals("危险")) {
map.put("wxWarningIf", idxBizFanWarningRecord.getWarningIf()); // 警告周期
} map.put("wxWarningCycle", idxBizFanWarningRecord.getWarningCycle());
} map.put("wxWarningIf", idxBizFanWarningRecord.getWarningIf());
return ResponseHelper.buildResponse(map); }
} }
return ResponseHelper.buildResponse(map);
}
/**
* 根据pointId修改信息 /**
* * 根据pointId修改信息
* @param analysisInfo 主键 *
* @return * @param analysisInfo 主键
*/ * @return
@TycloudOperation(ApiLevel = UserType.AGENCY) */
@PostMapping(value = "/updateByPointInfo") @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "POST", value = "根据pointId修改信息", notes = "根据pointId修改信息") @PostMapping(value = "/updateByPointInfo")
public ResponseModel<Boolean> updateByPointInfo(@RequestBody JSONObject analysisInfo) { @ApiOperation(httpMethod = "POST", value = "根据pointId修改信息", notes = "根据pointId修改信息")
LambdaQueryWrapper<IdxBizFanWarningRuleSet> query = new LambdaQueryWrapper<>(); public ResponseModel<Boolean> updateByPointInfo(@RequestBody JSONObject analysisInfo) {
query.eq(IdxBizFanWarningRuleSet::getAnalysisPointId, analysisInfo.get("analysisPointId")); LambdaQueryWrapper<IdxBizFanWarningRuleSet> query = new LambdaQueryWrapper<>();
List<IdxBizFanWarningRuleSet> idxBizFanWarningRecordList = idxBizFanWarningRuleSetService.getBaseMapper().selectList(query); query.eq(IdxBizFanWarningRuleSet::getAnalysisPointId, analysisInfo.get("analysisPointId"));
for (IdxBizFanWarningRuleSet idxBizFanWarningRuleSet : idxBizFanWarningRecordList) { List<IdxBizFanWarningRuleSet> idxBizFanWarningRecordList = idxBizFanWarningRuleSetService.getBaseMapper()
BeanUtil.copyProperties(analysisInfo, idxBizFanWarningRuleSet, "sequenceNbr", "warningName"); .selectList(query);
if (idxBizFanWarningRuleSet.getWarningName().equals("警告")) { for (IdxBizFanWarningRuleSet idxBizFanWarningRuleSet : idxBizFanWarningRecordList) {
//警告周期 BeanUtil.copyProperties(analysisInfo, idxBizFanWarningRuleSet, "sequenceNbr", "warningName");
idxBizFanWarningRuleSet.setWarningIf(analysisInfo.get("jgWarningIf").toString()); if (idxBizFanWarningRuleSet.getWarningName().equals("警告")) {
idxBizFanWarningRuleSet.setWarningCycle(analysisInfo.get("jgWarningCycle").toString()); // 警告周期
} else if (idxBizFanWarningRuleSet.getWarningName().equals("危险")) { idxBizFanWarningRuleSet.setWarningIf(analysisInfo.get("jgWarningIf").toString());
//警告周期 idxBizFanWarningRuleSet.setWarningCycle(analysisInfo.get("jgWarningCycle").toString());
idxBizFanWarningRuleSet.setWarningIf(analysisInfo.get("wxWarningIf").toString()); } else if (idxBizFanWarningRuleSet.getWarningName().equals("危险")) {
idxBizFanWarningRuleSet.setWarningCycle(analysisInfo.get("wxWarningCycle").toString()); // 警告周期
} idxBizFanWarningRuleSet.setWarningIf(analysisInfo.get("wxWarningIf").toString());
} idxBizFanWarningRuleSet.setWarningCycle(analysisInfo.get("wxWarningCycle").toString());
boolean b = idxBizFanWarningRuleSetService.updateBatchById(idxBizFanWarningRecordList); }
return ResponseHelper.buildResponse(b); }
} boolean b = idxBizFanWarningRuleSetService.updateBatchById(idxBizFanWarningRecordList);
return ResponseHelper.buildResponse(b);
}
/**
* 根据sequenceNbr查询 /**
* * 根据sequenceNbr查询
* @param ANALYSISPOINTID 主键 *
* @return * @param ANALYSISPOINTID 主键
*/ * @return
@TycloudOperation(ApiLevel = UserType.AGENCY) */
@GetMapping(value = "/getInfoByPointIdPv") @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "根据ANALYSIS_POINT_ID查询单个", notes = "根据ANALYSIS_POINT_ID查询单个") @GetMapping(value = "/getInfoByPointIdPv")
public ResponseModel<Map<String, Object>> getInfoByPointIdPv(@RequestParam String ANALYSISPOINTID) { @ApiOperation(httpMethod = "GET", value = "根据ANALYSIS_POINT_ID查询单个", notes = "根据ANALYSIS_POINT_ID查询单个")
public ResponseModel<Map<String, Object>> getInfoByPointIdPv(@RequestParam String ANALYSISPOINTID) {
LambdaQueryWrapper<IdxBizPvWarningRuleSet> query = new LambdaQueryWrapper<>();
query.eq(IdxBizPvWarningRuleSet::getAnalysisPointId, ANALYSISPOINTID); LambdaQueryWrapper<IdxBizPvWarningRuleSet> query = new LambdaQueryWrapper<>();
List<IdxBizPvWarningRuleSet> idxBizPvWarningRecordList = idxBizPvWarningRuleSetService.getBaseMapper().selectList(query); query.eq(IdxBizPvWarningRuleSet::getAnalysisPointId, ANALYSISPOINTID);
Map<String, Object> map = new HashMap<>(); List<IdxBizPvWarningRuleSet> idxBizPvWarningRecordList = idxBizPvWarningRuleSetService.getBaseMapper()
for (int i = 0; i < idxBizPvWarningRecordList.size(); i++) { .selectList(query);
IdxBizPvWarningRuleSet idxBizPvWarningRecord = idxBizPvWarningRecordList.get(i); Map<String, Object> map = new HashMap<>();
if (idxBizPvWarningRecord.getWarningName().equals("注意")) { for (int i = 0; i < idxBizPvWarningRecordList.size(); i++) {
map.putAll(BeanUtil.beanToMap(idxBizPvWarningRecord)); IdxBizPvWarningRuleSet idxBizPvWarningRecord = idxBizPvWarningRecordList.get(i);
} else if (idxBizPvWarningRecord.getWarningName().equals("警告")) { if (idxBizPvWarningRecord.getWarningName().equals("注意")) {
//警告周期 map.putAll(BeanUtil.beanToMap(idxBizPvWarningRecord));
map.put("jgWarningCycle", idxBizPvWarningRecord.getWarningCycle()); } else if (idxBizPvWarningRecord.getWarningName().equals("警告")) {
map.put("jgWarningIf", idxBizPvWarningRecord.getWarningIf()); // 警告周期
} else if (idxBizPvWarningRecord.getWarningName().equals("危险")) { map.put("jgWarningCycle", idxBizPvWarningRecord.getWarningCycle());
//警告周期 map.put("jgWarningIf", idxBizPvWarningRecord.getWarningIf());
map.put("wxWarningCycle", idxBizPvWarningRecord.getWarningCycle()); } else if (idxBizPvWarningRecord.getWarningName().equals("危险")) {
map.put("wxWarningIf", idxBizPvWarningRecord.getWarningIf()); // 警告周期
} map.put("wxWarningCycle", idxBizPvWarningRecord.getWarningCycle());
} map.put("wxWarningIf", idxBizPvWarningRecord.getWarningIf());
return ResponseHelper.buildResponse(map); }
} }
return ResponseHelper.buildResponse(map);
}
/**
* 根据pointId修改信息 /**
* * 根据pointId修改信息
* @param analysisInfo 主键 *
* @return * @param analysisInfo 主键
*/ * @return
@TycloudOperation(ApiLevel = UserType.AGENCY) */
@PostMapping(value = "/updateByPointInfoPv") @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "POST", value = "根据pointId修改信息", notes = "根据pointId修改信息") @PostMapping(value = "/updateByPointInfoPv")
public ResponseModel<Boolean> updateByPointInfoPv(@RequestBody JSONObject analysisInfo) { @ApiOperation(httpMethod = "POST", value = "根据pointId修改信息", notes = "根据pointId修改信息")
LambdaQueryWrapper<IdxBizPvWarningRuleSet> query = new LambdaQueryWrapper<>(); public ResponseModel<Boolean> updateByPointInfoPv(@RequestBody JSONObject analysisInfo) {
query.eq(IdxBizPvWarningRuleSet::getAnalysisPointId, analysisInfo.get("analysisPointId")); LambdaQueryWrapper<IdxBizPvWarningRuleSet> query = new LambdaQueryWrapper<>();
List<IdxBizPvWarningRuleSet> idxBizFanWarningRecordList = idxBizPvWarningRuleSetService.getBaseMapper().selectList(query); query.eq(IdxBizPvWarningRuleSet::getAnalysisPointId, analysisInfo.get("analysisPointId"));
for (IdxBizPvWarningRuleSet idxBizPvWarningRuleSet : idxBizFanWarningRecordList) { List<IdxBizPvWarningRuleSet> idxBizFanWarningRecordList = idxBizPvWarningRuleSetService.getBaseMapper()
BeanUtil.copyProperties(analysisInfo, idxBizPvWarningRuleSet, "sequenceNbr", "warningName"); .selectList(query);
if (idxBizPvWarningRuleSet.getWarningName().equals("警告")) { for (IdxBizPvWarningRuleSet idxBizPvWarningRuleSet : idxBizFanWarningRecordList) {
//警告周期 BeanUtil.copyProperties(analysisInfo, idxBizPvWarningRuleSet, "sequenceNbr", "warningName");
idxBizPvWarningRuleSet.setWarningIf(analysisInfo.get("jgWarningIf").toString()); if (idxBizPvWarningRuleSet.getWarningName().equals("警告")) {
idxBizPvWarningRuleSet.setWarningCycle(analysisInfo.get("jgWarningCycle").toString()); // 警告周期
} else if (idxBizPvWarningRuleSet.getWarningName().equals("危险")) { idxBizPvWarningRuleSet.setWarningIf(analysisInfo.get("jgWarningIf").toString());
//警告周期 idxBizPvWarningRuleSet.setWarningCycle(analysisInfo.get("jgWarningCycle").toString());
idxBizPvWarningRuleSet.setWarningIf(analysisInfo.get("wxWarningIf").toString()); } else if (idxBizPvWarningRuleSet.getWarningName().equals("危险")) {
idxBizPvWarningRuleSet.setWarningCycle(analysisInfo.get("wxWarningCycle").toString()); // 警告周期
} idxBizPvWarningRuleSet.setWarningIf(analysisInfo.get("wxWarningIf").toString());
} idxBizPvWarningRuleSet.setWarningCycle(analysisInfo.get("wxWarningCycle").toString());
boolean b = idxBizPvWarningRuleSetService.updateBatchById(idxBizFanWarningRecordList); }
return ResponseHelper.buildResponse(b); }
} boolean b = idxBizPvWarningRuleSetService.updateBatchById(idxBizFanWarningRecordList);
return ResponseHelper.buildResponse(b);
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@GetMapping(value = "/stringToMap") @TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(httpMethod = "get", value = "字符串转为对象格式", notes = "字符串转为对象格式") @GetMapping(value = "/stringToMap")
public ResponseModel<Map<String, Object>> list(@RequestParam("analysisPointIds") String ids) { @ApiOperation(httpMethod = "get", value = "字符串转为对象格式", notes = "字符串转为对象格式")
Map<String, Object> data = new HashMap<>(); public ResponseModel<Map<String, Object>> list(@RequestParam("analysisPointIds") String ids) {
data.put("analysisPointIds", ids); Map<String, Object> data = new HashMap<>();
return ResponseHelper.buildResponse(data); data.put("analysisPointIds", ids);
} return ResponseHelper.buildResponse(data);
}
/**
* 根据pointId修改信息 /**
* * 根据pointId修改信息
* @param analysisInfo 主键 *
* @return * @param analysisInfo 主键
*/ * @return
@TycloudOperation(ApiLevel = UserType.AGENCY) */
@PostMapping(value = "/updateByPointInfoBatchPv") @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "POST", value = "根据pointId修改信息", notes = "根据pointId修改信息") @PostMapping(value = "/updateByPointInfoBatchPv")
public ResponseModel<Boolean> updateByPointInfoBatchPv(@RequestBody JSONObject analysisInfo) { @ApiOperation(httpMethod = "POST", value = "根据pointId修改信息", notes = "根据pointId修改信息")
LambdaQueryWrapper<IdxBizPvWarningRuleSet> query = new LambdaQueryWrapper<>(); public ResponseModel<Boolean> updateByPointInfoBatchPv(@RequestBody JSONObject analysisInfo) {
List<String> analysisPointIds = Arrays.asList(analysisInfo.get("analysisPointIds").toString().split(",")); LambdaQueryWrapper<IdxBizPvWarningRuleSet> query = new LambdaQueryWrapper<>();
query.in(IdxBizPvWarningRuleSet::getAnalysisPointId, analysisPointIds); List<String> analysisPointIds = Arrays.asList(analysisInfo.get("analysisPointIds").toString().split(","));
List<IdxBizPvWarningRuleSet> idxBizFanWarningRecordList = idxBizPvWarningRuleSetService.getBaseMapper().selectList(query); query.in(IdxBizPvWarningRuleSet::getAnalysisPointId, analysisPointIds);
for (IdxBizPvWarningRuleSet idxBizPvWarningRuleSet : idxBizFanWarningRecordList) { List<IdxBizPvWarningRuleSet> idxBizFanWarningRecordList = idxBizPvWarningRuleSetService.getBaseMapper()
BeanUtil.copyProperties(analysisInfo, idxBizPvWarningRuleSet, "analysisPointIds"); .selectList(query);
if (idxBizPvWarningRuleSet.getWarningName().equals("警告")) { for (IdxBizPvWarningRuleSet idxBizPvWarningRuleSet : idxBizFanWarningRecordList) {
//警告周期 BeanUtil.copyProperties(analysisInfo, idxBizPvWarningRuleSet, "analysisPointIds");
if (StringUtils.isNotBlank(analysisInfo.getString("jgWarningCycle"))) { if (idxBizPvWarningRuleSet.getWarningName().equals("警告")) {
idxBizPvWarningRuleSet.setWarningCycle(analysisInfo.get("jgWarningCycle").toString()); // 警告周期
} if (StringUtils.isNotBlank(analysisInfo.getString("jgWarningCycle"))) {
} else if (idxBizPvWarningRuleSet.getWarningName().equals("危险")) { idxBizPvWarningRuleSet.setWarningCycle(analysisInfo.get("jgWarningCycle").toString());
//警告周期 }
if (StringUtils.isNotBlank(analysisInfo.getString("wxWarningCycle"))) { } else if (idxBizPvWarningRuleSet.getWarningName().equals("危险")) {
idxBizPvWarningRuleSet.setWarningCycle(analysisInfo.get("wxWarningCycle").toString()); // 警告周期
} if (StringUtils.isNotBlank(analysisInfo.getString("wxWarningCycle"))) {
} idxBizPvWarningRuleSet.setWarningCycle(analysisInfo.get("wxWarningCycle").toString());
} }
boolean b = idxBizPvWarningRuleSetService.updateBatchById(idxBizFanWarningRecordList); }
return ResponseHelper.buildResponse(b); }
} boolean b = idxBizPvWarningRuleSetService.updateBatchById(idxBizFanWarningRecordList);
return ResponseHelper.buildResponse(b);
}
/**
* 根据pointId修改信息 /**
* * 根据pointId修改信息
* @param analysisInfo 主键 *
* @return * @param analysisInfo 主键
*/ * @return
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false) */
@PostMapping(value = "/updateByPointInfoBatchFan") @TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(httpMethod = "POST", value = "根据pointId修改信息", notes = "根据pointId修改信息") @PostMapping(value = "/updateByPointInfoBatchFan")
public ResponseModel<Boolean> updateByPointInfoBatchFan(@RequestBody JSONObject analysisInfo) { @ApiOperation(httpMethod = "POST", value = "根据pointId修改信息", notes = "根据pointId修改信息")
LambdaQueryWrapper<IdxBizFanWarningRuleSet> query = new LambdaQueryWrapper<>(); public ResponseModel<Boolean> updateByPointInfoBatchFan(@RequestBody JSONObject analysisInfo) {
List<String> analysisPointIds = Arrays.asList(analysisInfo.get("analysisPointIds").toString().split(",")); LambdaQueryWrapper<IdxBizFanWarningRuleSet> query = new LambdaQueryWrapper<>();
query.in(IdxBizFanWarningRuleSet::getAnalysisPointId, analysisPointIds); List<String> analysisPointIds = Arrays.asList(analysisInfo.get("analysisPointIds").toString().split(","));
List<IdxBizFanWarningRuleSet> idxBizFanWarningRecordList = idxBizFanWarningRuleSetService.getBaseMapper().selectList(query); query.in(IdxBizFanWarningRuleSet::getAnalysisPointId, analysisPointIds);
for (IdxBizFanWarningRuleSet idxBizFanWarningRuleSet : idxBizFanWarningRecordList) { List<IdxBizFanWarningRuleSet> idxBizFanWarningRecordList = idxBizFanWarningRuleSetService.getBaseMapper()
BeanUtil.copyProperties(analysisInfo, idxBizFanWarningRuleSet, "analysisPointIds"); .selectList(query);
if (idxBizFanWarningRuleSet.getWarningName().equals("警告")) { for (IdxBizFanWarningRuleSet idxBizFanWarningRuleSet : idxBizFanWarningRecordList) {
//警告周期 BeanUtil.copyProperties(analysisInfo, idxBizFanWarningRuleSet, "analysisPointIds");
if (StringUtils.isNotBlank(analysisInfo.getString("jgWarningCycle"))) { if (idxBizFanWarningRuleSet.getWarningName().equals("警告")) {
idxBizFanWarningRuleSet.setWarningCycle(analysisInfo.get("jgWarningCycle").toString()); // 警告周期
} if (StringUtils.isNotBlank(analysisInfo.getString("jgWarningCycle"))) {
} else if (idxBizFanWarningRuleSet.getWarningName().equals("危险")) { idxBizFanWarningRuleSet.setWarningCycle(analysisInfo.get("jgWarningCycle").toString());
//警告周期 }
if (StringUtils.isNotBlank(analysisInfo.getString("wxWarningCycle"))) { } else if (idxBizFanWarningRuleSet.getWarningName().equals("危险")) {
idxBizFanWarningRuleSet.setWarningCycle(analysisInfo.get("wxWarningCycle").toString()); // 警告周期
} if (StringUtils.isNotBlank(analysisInfo.getString("wxWarningCycle"))) {
} idxBizFanWarningRuleSet.setWarningCycle(analysisInfo.get("wxWarningCycle").toString());
} }
boolean b = idxBizFanWarningRuleSetService.updateBatchById(idxBizFanWarningRecordList); }
return ResponseHelper.buildResponse(b); }
} boolean b = idxBizFanWarningRuleSetService.updateBatchById(idxBizFanWarningRecordList);
return ResponseHelper.buildResponse(b);
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false) }
@GetMapping(value = "/selectFanWarningNum")
@ApiOperation(httpMethod = "GET", value = "查询各风机预警状况", notes = "查询各风机预警状况") @TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
public ResponseModel<Map<String, Object>> selectFanWarningNum(@RequestParam String station) { @GetMapping(value = "/selectFanWarningNum")
@ApiOperation(httpMethod = "GET", value = "查询各风机预警状况", notes = "查询各风机预警状况")
public ResponseModel<Map<String, Object>> selectFanWarningNum(@RequestParam String station) {
LambdaQueryWrapper<IdxBizFanPointProcessVariableClassification> wrapper = new LambdaQueryWrapper<>();
wrapper.select(IdxBizFanPointProcessVariableClassification::getEquipmentName); LambdaQueryWrapper<IdxBizFanPointProcessVariableClassification> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(IdxBizFanPointProcessVariableClassification::getStation, station); wrapper.select(IdxBizFanPointProcessVariableClassification::getEquipmentName);
wrapper.groupBy(IdxBizFanPointProcessVariableClassification::getEquipmentName); wrapper.eq(IdxBizFanPointProcessVariableClassification::getStation, station);
wrapper.last(" ORDER BY RIGHT(EQUIPMENT_NAME,6) desc"); wrapper.groupBy(IdxBizFanPointProcessVariableClassification::getEquipmentName);
List<IdxBizFanPointProcessVariableClassification> variableClassificationList = idxBizFanPointProcessVariableClassificationMapper.selectList(wrapper); wrapper.last(" ORDER BY RIGHT(EQUIPMENT_NAME,6) desc");
List<IdxBizFanPointProcessVariableClassification> variableClassificationList = idxBizFanPointProcessVariableClassificationMapper
.selectList(wrapper);
Map<String, Object> resultMap = new HashMap<>();
List<String> gatewayIds = this.getGatewayIds(); QueryWrapper<FanWarningRecord> lambdaQw = new QueryWrapper<>();
List<Map<String, Object>> maps = fanWaringRecordMapper.selectFanWarningNum(station, gatewayIds); lambdaQw.select("COUNT(1) AS c,equipment_name AS equipmentname,warning_name AS warningname");
Map<String, Map<String, Object>> equipmentNameInfoMap = maps.stream().collect(Collectors.toMap(t -> t.get("EQUIPMENT_NAME").toString(), t -> t)); lambdaQw.lambda().eq(FanWarningRecord::getStation, station);
lambdaQw.lambda().eq(FanWarningRecord::getDisposotionState, "待确认");
List<Integer> wxList = new ArrayList<>(); lambdaQw.lambda().groupBy(FanWarningRecord::getEquipmentName);
List<Integer> zyList = new ArrayList<>(); lambdaQw.lambda().groupBy(FanWarningRecord::getWarningName);
List<Integer> jgList = new ArrayList<>(); List<Map<String, Object>> lists = fanWaringRecordMapper.selectMaps(lambdaQw);
List<String> list = new ArrayList<>();
for (Map<String, Object> map : maps) { // Map<String, Object> resultMap = new HashMap<>();
wxList.add(Integer.valueOf(map.get("危险").toString())); // List<String> gatewayIds = this.getGatewayIds();
zyList.add(Integer.valueOf(map.get("注意").toString())); // List<Map<String, Object>> maps = fanWaringRecordMapper.selectFanWarningNum(station, gatewayIds);
jgList.add(Integer.valueOf(map.get("警告").toString())); // Map<String, Map<String, Object>> equipmentNameInfoMap = maps.stream()
list.add(map.get("EQUIPMENT_NAME").toString()); // .collect(Collectors.toMap(t -> t.get("EQUIPMENT_NAME").toString(), t -> t));
} List<Integer> wxList = new ArrayList<>();
variableClassificationList.forEach(item -> { List<Integer> zyList = new ArrayList<>();
if (!equipmentNameInfoMap.containsKey(item.getEquipmentName())) { List<Integer> jgList = new ArrayList<>();
wxList.add(0); List<String> list = new ArrayList<>();
zyList.add(0);
jgList.add(0); Map<String, Map<String, Integer>> countMap = new HashMap<>();
list.add(item.getEquipmentName()); for (Map<String, Object> map : lists) {
} String equipmentName = String.valueOf(map.get("equipmentname"));
}); int count = Integer.valueOf(String.valueOf(map.get("c")));
String warningName = String.valueOf(map.get("warningname"));
Map<String, Integer> equipMap = countMap.get(equipmentName);
HashMap<String, Object> wxMapResult = new HashMap<>(); if (equipMap == null) {
wxMapResult.put("data", wxList); equipMap = new HashMap<>();
wxMapResult.put("name", "危险"); }
HashMap<String, Object> zyMapResult = new HashMap<>(); equipMap.put(warningName, count);
zyMapResult.put("data", zyList); countMap.put(equipmentName, equipMap);
zyMapResult.put("name", "注意"); }
HashMap<String, Object> jgMapResult = new HashMap<>();
jgMapResult.put("data", jgList); variableClassificationList.forEach(item -> {
jgMapResult.put("name", "警告"); Map<String, Integer> equipMap = countMap.get(item.getEquipmentName());
if (equipMap != null) {
List<Map<String, Object>> hashMaps = Arrays.asList(wxMapResult, zyMapResult, jgMapResult); wxList.add(equipMap.get("危险") != null ? equipMap.get("危险") : 0);
resultMap.put("axisData", list); zyList.add(equipMap.get("注意") != null ? equipMap.get("注意") : 0);
resultMap.put("seriesData", hashMaps); jgList.add(equipMap.get("警告") != null ? equipMap.get("警告") : 0);
return ResponseHelper.buildResponse(resultMap); } else {
wxList.add(0);
} zyList.add(0);
jgList.add(0);
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false) list.add(item.getEquipmentName());
@GetMapping(value = "/selectEquipWarningTotal") });
@ApiOperation(httpMethod = "GET", value = "预警信息统计富文本", notes = "预警信息统计富文本")
public ResponseModel<Map<String, Object>> selectEquipWarningTotal(@RequestParam String STATION, @RequestParam String EQUIPMENTNAME) { // for (Map<String, Object> map : maps) {
List<String> gatewayIds = this.getGatewayIds(); // wxList.add(Integer.valueOf(map.get("危险").toString()));
Map<String, Object> maps = fanWaringRecordMapper.selectEquipWarningTotal(STATION, EQUIPMENTNAME, gatewayIds); // zyList.add(Integer.valueOf(map.get("注意").toString()));
return ResponseHelper.buildResponse(maps); // jgList.add(Integer.valueOf(map.get("警告").toString()));
} // list.add(map.get("EQUIPMENT_NAME").toString());
//
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false) // }
@GetMapping(value = "/selectWarningPoint")
@ApiOperation(httpMethod = "GET", value = "预警监测设备右侧预警重复列表", notes = "预警监测设备右侧预警重复列表") HashMap<String, Object> wxMapResult = new HashMap<>();
public ResponseModel<Page<FanWarningRecord>> selectFanWarningNum(@RequestParam String STATION, @RequestParam String EQUIPMENTNAME, @RequestParam Integer current, @RequestParam Integer size) { wxMapResult.put("data", wxList);
Page<FanWarningRecord> page = new Page<>(); wxMapResult.put("name", "危险");
page.setCurrent(current); HashMap<String, Object> zyMapResult = new HashMap<>();
page.setSize(size); zyMapResult.put("data", zyList);
List<String> gatewayIds = this.getGatewayIds(); zyMapResult.put("name", "注意");
List<FanWarningRecord> maps = fanWaringRecordMapper.selectWarningPoint(STATION, EQUIPMENTNAME, (current - 1) * size, size, gatewayIds); HashMap<String, Object> jgMapResult = new HashMap<>();
page.setRecords(maps); jgMapResult.put("data", jgList);
int total = fanWaringRecordMapper.selectWarningPointTotal(STATION, EQUIPMENTNAME); jgMapResult.put("name", "警告");
page.setTotal(total);
return ResponseHelper.buildResponse(page); Map<String, Object> resultMap = new HashMap<String, Object>();
} List<Map<String, Object>> hashMaps = Arrays.asList(wxMapResult, zyMapResult, jgMapResult);
resultMap.put("axisData", list);
private List<String> getGatewayIds() { resultMap.put("seriesData", hashMaps);
List<String> permissions = permissionService.getCurrentUserPermissions(); return ResponseHelper.buildResponse(resultMap);
if (Objects.isNull(permissions)) {
permissions = Collections.emptyList(); }
}
return permissions; @TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
} @GetMapping(value = "/selectEquipWarningTotal")
@ApiOperation(httpMethod = "GET", value = "预警信息统计富文本", notes = "预警信息统计富文本")
public ResponseModel<Map<String, Object>> selectEquipWarningTotal(@RequestParam String STATION,
@RequestParam String EQUIPMENTNAME) {
// List<String> gatewayIds = this.getGatewayIds();
// Map<String, Object> maps = fanWaringRecordMapper.selectEquipWarningTotal(STATION, EQUIPMENTNAME, gatewayIds);
QueryWrapper<FanWarningRecord> lambdaQw = new QueryWrapper<>();
lambdaQw.select("COUNT(1) AS c,warning_name AS warningname");
lambdaQw.lambda().eq(FanWarningRecord::getStation, STATION);
lambdaQw.lambda().eq(FanWarningRecord::getDisposotionState, "待确认");
lambdaQw.lambda().eq(FanWarningRecord::getEquipmentName, EQUIPMENTNAME);
lambdaQw.lambda().groupBy(FanWarningRecord::getEquipmentName);
lambdaQw.lambda().groupBy(FanWarningRecord::getWarningName);
List<Map<String, Object>> lists = fanWaringRecordMapper.selectMaps(lambdaQw);
Map<String, Object> maps = new HashMap<>();
maps.put("zhuyi", 0);
maps.put("weixian", 0);
maps.put("jinggao", 0);
int total = 0;
for (Map<String, Object> map : lists) {
if ("注意".equals(String.valueOf(map.get("warningname")))) {
maps.put("zhuyi", map.get("c"));
total+=Integer.valueOf(String.valueOf(map.get("c")));
} else if ("危险".equals(String.valueOf(map.get("warningname")))) {
maps.put("weixian", map.get("c"));
total+=Integer.valueOf(String.valueOf(map.get("c")));
} else if ("警告".equals(String.valueOf(map.get("warningname")))) {
maps.put("jinggao", map.get("c"));
total+=Integer.valueOf(String.valueOf(map.get("c")));
}
}
maps.put("total", total);
return ResponseHelper.buildResponse(maps);
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@GetMapping(value = "/selectWarningPoint")
@ApiOperation(httpMethod = "GET", value = "预警监测设备右侧预警重复列表", notes = "预警监测设备右侧预警重复列表")
public ResponseModel<Page<FanWarningRecord>> selectWarningPoint(@RequestParam String STATION,
@RequestParam String EQUIPMENTNAME, @RequestParam Integer current, @RequestParam Integer size) {
Page<FanWarningRecord> page = new Page<>();
page.setCurrent(current);
page.setSize(size);
// List<String> gatewayIds = this.getGatewayIds();
LambdaQueryWrapper<FanWarningRecord> lambdaQw = new LambdaQueryWrapper<>();
lambdaQw.eq(FanWarningRecord::getStation, STATION);
lambdaQw.eq(FanWarningRecord::getEquipmentName, EQUIPMENTNAME);
lambdaQw.eq(FanWarningRecord::getDisposotionState, "待确认");
int total = fanWaringRecordMapper.selectCount(lambdaQw);
page.setTotal(total);
lambdaQw.orderByDesc(FanWarningRecord::getTs);
String limit = "LIMIT " + (current - 1) * size + "," + size;
lambdaQw.last(limit);
List<FanWarningRecord> list = fanWaringRecordMapper.selectList(lambdaQw);
// List<FanWarningRecord> maps =
// fanWaringRecordMapper.selectWarningPoint(STATION, EQUIPMENTNAME, (current -
// 1) * size, size, gatewayIds);
page.setRecords(list);
return ResponseHelper.buildResponse(page);
}
private List<String> getGatewayIds() {
List<String> permissions = permissionService.getCurrentUserPermissions();
if (Objects.isNull(permissions)) {
permissions = Collections.emptyList();
}
return permissions;
}
} }
package com.yeejoin.amos.boot.module.jxiop.biz.controller; package com.yeejoin.amos.boot.module.jxiop.biz.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import java.util.ArrayList;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import java.util.Arrays;
import com.yeejoin.amos.boot.module.jxiop.biz.dto.IdxBizPvWarningRecordDto; import java.util.HashMap;
import com.yeejoin.amos.boot.module.jxiop.biz.service.impl.IdxBizPvWarningRecordServiceImpl; import java.util.List;
import io.swagger.annotations.Api; import java.util.Map;
import io.swagger.annotations.ApiOperation;
import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import java.util.List; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.jxiop.biz.dto.IdxBizPvWarningRecordDto;
import com.yeejoin.amos.boot.module.jxiop.biz.entity.IdxBizFanPointProcessVariableClassification;
import com.yeejoin.amos.boot.module.jxiop.biz.entity.IdxBizPvPointProcessVariableClassification;
import com.yeejoin.amos.boot.module.jxiop.biz.mapper2.IdxBizPvPointProcessVariableClassificationMapper;
import com.yeejoin.amos.boot.module.jxiop.biz.service.impl.IdxBizPvWarningRecordServiceImpl;
import com.yeejoin.amos.boot.module.jxiop.biz.tdMapper2.PvWaringRecordMapper;
import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.FanWarningRecord;
import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.PvWarningRecord;
import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.PvWarningRecord;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/** /**
* *
...@@ -30,6 +54,14 @@ public class IdxBizPvWarningRecordController extends BaseController { ...@@ -30,6 +54,14 @@ public class IdxBizPvWarningRecordController extends BaseController {
@Autowired @Autowired
IdxBizPvWarningRecordServiceImpl idxBizPvWarningRecordServiceImpl; IdxBizPvWarningRecordServiceImpl idxBizPvWarningRecordServiceImpl;
@Autowired
PvWaringRecordMapper pvWaringRecordMapper;
@Autowired
IdxBizPvPointProcessVariableClassificationMapper idxBizPvPointProcessVariableClassificationMapper;
/** /**
* 新增 * 新增
* *
...@@ -112,4 +144,161 @@ public class IdxBizPvWarningRecordController extends BaseController { ...@@ -112,4 +144,161 @@ public class IdxBizPvWarningRecordController extends BaseController {
public ResponseModel<List<IdxBizPvWarningRecordDto>> selectForList() { public ResponseModel<List<IdxBizPvWarningRecordDto>> selectForList() {
return ResponseHelper.buildResponse(idxBizPvWarningRecordServiceImpl.queryForIdxBizPvWarningRecordList()); return ResponseHelper.buildResponse(idxBizPvWarningRecordServiceImpl.queryForIdxBizPvWarningRecordList());
} }
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@GetMapping(value = "/selectFanWarningNum")
@ApiOperation(httpMethod = "GET", value = "查询各风机预警状况", notes = "查询各风机预警状况")
public ResponseModel<Map<String, Object>> selectFanWarningNum(@RequestParam String station) {
LambdaQueryWrapper<IdxBizPvPointProcessVariableClassification> wrapper = new LambdaQueryWrapper<>();
wrapper.select(IdxBizPvPointProcessVariableClassification::getSubarray);
wrapper.eq(IdxBizPvPointProcessVariableClassification::getStation, station);
wrapper.groupBy(IdxBizPvPointProcessVariableClassification::getSubarray);
wrapper.last(" ORDER BY RIGHT(SUBARRAY,6) desc");
List<IdxBizPvPointProcessVariableClassification> variableClassificationList = idxBizPvPointProcessVariableClassificationMapper
.selectList(wrapper);
QueryWrapper<PvWarningRecord> lambdaQw = new QueryWrapper<>();
lambdaQw.select("COUNT(1) AS c,subarray AS subarray,warning_name AS warningname");
lambdaQw.lambda().eq(PvWarningRecord::getStation, station);
lambdaQw.lambda().eq(PvWarningRecord::getDisposotionState, "待确认");
lambdaQw.lambda().groupBy(PvWarningRecord::getSubarray);
lambdaQw.lambda().groupBy(PvWarningRecord::getWarningName);
List<Map<String, Object>> lists = pvWaringRecordMapper.selectMaps(lambdaQw);
// Map<String, Object> resultMap = new HashMap<>();
// List<String> gatewayIds = this.getGatewayIds();
// List<Map<String, Object>> maps = fanWaringRecordMapper.selectFanWarningNum(station, gatewayIds);
// Map<String, Map<String, Object>> equipmentNameInfoMap = maps.stream()
// .collect(Collectors.toMap(t -> t.get("EQUIPMENT_NAME").toString(), t -> t));
List<Integer> wxList = new ArrayList<>();
List<Integer> zyList = new ArrayList<>();
List<Integer> jgList = new ArrayList<>();
List<String> list = new ArrayList<>();
Map<String, Map<String, Integer>> countMap = new HashMap<>();
for (Map<String, Object> map : lists) {
String subarray = String.valueOf(map.get("subarray"));
int count = Integer.valueOf(String.valueOf(map.get("c")));
String warningName = String.valueOf(map.get("warningname"));
Map<String, Integer> equipMap = countMap.get(subarray);
if (equipMap == null) {
equipMap = new HashMap<>();
}
equipMap.put(warningName, count);
countMap.put(subarray, equipMap);
}
variableClassificationList.forEach(item -> {
Map<String, Integer> equipMap = countMap.get(item.getSubarray());
if(equipMap!=null)
{
wxList.add(equipMap.get("危险") != null ? equipMap.get("危险") : 0);
zyList.add(equipMap.get("注意") != null ? equipMap.get("注意") : 0);
jgList.add(equipMap.get("警告") != null ? equipMap.get("警告") : 0);
}else
{
wxList.add(0);
zyList.add(0);
jgList.add(0);
}
list.add(item.getSubarray());
});
// for (Map<String, Object> map : maps) {
// wxList.add(Integer.valueOf(map.get("危险").toString()));
// zyList.add(Integer.valueOf(map.get("注意").toString()));
// jgList.add(Integer.valueOf(map.get("警告").toString()));
// list.add(map.get("EQUIPMENT_NAME").toString());
//
// }
HashMap<String, Object> wxMapResult = new HashMap<>();
wxMapResult.put("data", wxList);
wxMapResult.put("name", "危险");
HashMap<String, Object> zyMapResult = new HashMap<>();
zyMapResult.put("data", zyList);
zyMapResult.put("name", "注意");
HashMap<String, Object> jgMapResult = new HashMap<>();
jgMapResult.put("data", jgList);
jgMapResult.put("name", "警告");
Map<String, Object> resultMap = new HashMap<String, Object>();
List<Map<String, Object>> hashMaps = Arrays.asList(wxMapResult, zyMapResult, jgMapResult);
resultMap.put("axisData", list);
resultMap.put("seriesData", hashMaps);
return ResponseHelper.buildResponse(resultMap);
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@GetMapping(value = "/selectEquipWarningTotal")
@ApiOperation(httpMethod = "GET", value = "预警信息统计富文本", notes = "预警信息统计富文本")
public ResponseModel<Map<String, Object>> selectEquipWarningTotal(@RequestParam String STATION,
@RequestParam String EQUIPMENTNAME) {
// List<String> gatewayIds = this.getGatewayIds();
// Map<String, Object> maps = fanWaringRecordMapper.selectEquipWarningTotal(STATION, EQUIPMENTNAME, gatewayIds);
QueryWrapper<PvWarningRecord> lambdaQw = new QueryWrapper<>();
lambdaQw.select("COUNT(1) AS c,warning_name AS warningname");
lambdaQw.lambda().eq(PvWarningRecord::getStation, STATION);
lambdaQw.lambda().eq(PvWarningRecord::getDisposotionState, "待确认");
lambdaQw.lambda().eq(PvWarningRecord::getEquipmentName, EQUIPMENTNAME);
lambdaQw.lambda().groupBy(PvWarningRecord::getEquipmentName);
lambdaQw.lambda().groupBy(PvWarningRecord::getWarningName);
List<Map<String, Object>> lists = pvWaringRecordMapper.selectMaps(lambdaQw);
Map<String, Object> maps = new HashMap<>();
maps.put("zhuyi", 0);
maps.put("weixian", 0);
maps.put("jinggao", 0);
int total = 0;
for (Map<String, Object> map : lists) {
if ("注意".equals(String.valueOf(map.get("warningname")))) {
maps.put("zhuyi", map.get("c"));
total+=Integer.valueOf(String.valueOf(map.get("c")));
} else if ("危险".equals(String.valueOf(map.get("warningname")))) {
maps.put("weixian", map.get("c"));
total+=Integer.valueOf(String.valueOf(map.get("c")));
} else if ("警告".equals(String.valueOf(map.get("warningname")))) {
maps.put("jinggao", map.get("c"));
total+=Integer.valueOf(String.valueOf(map.get("c")));
}
}
maps.put("total", total);
return ResponseHelper.buildResponse(maps);
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@GetMapping(value = "/selectWarningPoint")
@ApiOperation(httpMethod = "GET", value = "预警监测设备右侧预警重复列表", notes = "预警监测设备右侧预警重复列表")
public ResponseModel<Page<PvWarningRecord>> selectWarningPoint(@RequestParam String STATION,
@RequestParam String EQUIPMENTNAME, @RequestParam Integer current, @RequestParam Integer size) {
Page<PvWarningRecord> page = new Page<>();
page.setCurrent(current);
page.setSize(size);
// List<String> gatewayIds = this.getGatewayIds();
LambdaQueryWrapper<PvWarningRecord> lambdaQw = new LambdaQueryWrapper<>();
lambdaQw.eq(PvWarningRecord::getStation, STATION);
lambdaQw.eq(PvWarningRecord::getEquipmentName, EQUIPMENTNAME);
lambdaQw.eq(PvWarningRecord::getDisposotionState, "待确认");
int total = pvWaringRecordMapper.selectCount(lambdaQw);
page.setTotal(total);
lambdaQw.orderByDesc(PvWarningRecord::getTs);
String limit = "LIMIT " + (current - 1) * size + "," + size;
lambdaQw.last(limit);
List<PvWarningRecord> list = pvWaringRecordMapper.selectList(lambdaQw);
// List<PvWarningRecord> maps =
// fanWaringRecordMapper.selectWarningPoint(STATION, EQUIPMENTNAME, (current -
// 1) * size, size, gatewayIds);
page.setRecords(list);
return ResponseHelper.buildResponse(page);
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment