后台功能调整
This commit is contained in:
parent
8f51445110
commit
94953eb330
|
|
@ -10,6 +10,8 @@ import org.apache.commons.lang3.StringUtils;
|
|||
import org.jeecg.common.api.vo.Result;
|
||||
import org.jeecg.common.constant.PollutionConstants;
|
||||
import org.jeecg.common.constant.enums.DeviceDeployEnum;
|
||||
import org.jeecg.common.constant.enums.PollutionEnum;
|
||||
import org.jeecg.common.entity.ScEquZhibiao;
|
||||
import org.jeecg.common.entity.SurvDeviceDeploy;
|
||||
import org.jeecg.common.entity.SurvStationInfo;
|
||||
import org.jeecg.common.vo.*;
|
||||
|
|
@ -21,9 +23,7 @@ import org.springframework.web.bind.annotation.RequestParam;
|
|||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.*;
|
||||
|
||||
@Api(tags="后台首页统计接口")
|
||||
@RestController
|
||||
|
|
@ -40,8 +40,6 @@ public class IndexAnalysisController {
|
|||
@Autowired
|
||||
private IScEquZhibiaoService zhibiaoService;
|
||||
|
||||
@Autowired
|
||||
private ISurvPestlightInfoService pestlightInfoService;
|
||||
|
||||
@Autowired
|
||||
private IUserInfoService userInfoService;
|
||||
|
|
@ -210,11 +208,13 @@ public class IndexAnalysisController {
|
|||
if(stationList!=null&&stationList.size()>0) {
|
||||
// Map<String,List<String>> deviceMap = new HashMap<>();
|
||||
for (SurvStationInfo survStationInfo : stationList) {
|
||||
if (survStationInfo.getDeviceList() != null && survStationInfo.getDeviceList().size() > 0) {
|
||||
if (survStationInfo.getDeviceList() != null && !survStationInfo.getDeviceList().isEmpty()) {
|
||||
List<String> airList = new ArrayList<>();
|
||||
List<String> soilList = new ArrayList<>();
|
||||
List<String> orientList = new ArrayList<>();
|
||||
List<String> orientIdList = new ArrayList<>();
|
||||
List<String> liveList = new ArrayList<>();
|
||||
List<String> liveIdList = new ArrayList<>();
|
||||
for (SurvDeviceDeploy survDeviceDeploy : survStationInfo.getDeviceList()) {
|
||||
if(PollutionConstants.SOIL_SURV.equals(survDeviceDeploy.getDeployType())){//土壤设备
|
||||
soilList.add(survDeviceDeploy.getDeployCode());
|
||||
|
|
@ -222,12 +222,22 @@ public class IndexAnalysisController {
|
|||
airList.add(survDeviceDeploy.getDeployCode());
|
||||
}else if(PollutionConstants.WATER_ORIENT.equals(survDeviceDeploy.getDeployType())) {//面源
|
||||
orientList.add(survDeviceDeploy.getDeployCode());
|
||||
orientIdList.add(survDeviceDeploy.getId());
|
||||
}else if(PollutionConstants.WATER_LIVE.equals(survDeviceDeploy.getDeployType())) {//畜禽
|
||||
liveList.add(survDeviceDeploy.getDeployCode());
|
||||
liveIdList.add(survDeviceDeploy.getId());
|
||||
}else if(PollutionConstants.CAMERA.equals(survDeviceDeploy.getDeployType())) {//摄像头
|
||||
}
|
||||
}
|
||||
if(orientList.size()>0) {
|
||||
List<ScEquZhibiao> zhibiaoList = zhibiaoService.getAllChemical(orientIdList);
|
||||
Map<String,String> zhibiaoMap = new HashMap<>();
|
||||
if(zhibiaoList!=null&& !zhibiaoList.isEmpty()){
|
||||
for (ScEquZhibiao scEquZhibiao : zhibiaoList) {
|
||||
zhibiaoMap.put(scEquZhibiao.getEntityField(),scEquZhibiao.getName());
|
||||
}
|
||||
}
|
||||
|
||||
List<OrientDataTrans> orientSummry = orientwaterService.getMonthSummry(orientList, chooseYear);
|
||||
List<Double> avgTN = new ArrayList<>();
|
||||
List<Double> avgTP = new ArrayList<>();
|
||||
|
|
@ -241,21 +251,37 @@ public class IndexAnalysisController {
|
|||
avgTP.add(orientDataTrans.getAvgTP());
|
||||
avgNO.add(orientDataTrans.getAvgNO());
|
||||
|
||||
avgNH.add(0D);
|
||||
avgCOD.add(0D);
|
||||
avgNH.add(orientDataTrans.getAvgNH());
|
||||
avgCOD.add(orientDataTrans.getAvgCod());
|
||||
}
|
||||
}
|
||||
StationSummry stationSummry = new StationSummry();
|
||||
stationSummry.setTNSummry(avgTN);
|
||||
if(zhibiaoMap.get(PollutionEnum.dataWaterTpSy.getCode())!=null){
|
||||
stationSummry.setTPSummry(avgTP);
|
||||
}
|
||||
if(zhibiaoMap.get(PollutionEnum.dataWaterTnSy.getCode())!=null){
|
||||
stationSummry.setTNSummry(avgTN);
|
||||
}
|
||||
if(zhibiaoMap.get(PollutionEnum.dataWaterNoSy.getCode())!=null){
|
||||
stationSummry.setNOSummry(avgNO);
|
||||
}
|
||||
if(zhibiaoMap.get(PollutionEnum.dataWaterCodSy.getCode())!=null){
|
||||
stationSummry.setCODSummry(avgCOD);
|
||||
}
|
||||
if(zhibiaoMap.get(PollutionEnum.dataWaterNhSy.getCode())!=null){
|
||||
stationSummry.setNHSummry(avgNH);
|
||||
}
|
||||
|
||||
stationSummry.setCODSummry(avgNH);
|
||||
stationSummry.setNHSummry(avgCOD);
|
||||
returnArrs.add(JSONObject.parseObject(JSONObject.toJSONString(stationSummry, SerializerFeature.WriteNullStringAsEmpty)));
|
||||
returnArrs.add(JSONObject.parseObject(JSONObject.toJSONString(stationSummry, SerializerFeature.WriteMapNullValue,SerializerFeature.WriteNullStringAsEmpty)));
|
||||
}
|
||||
if(liveList.size()>0){
|
||||
|
||||
List<ScEquZhibiao> zhibiaoList = zhibiaoService.getAllChemical(liveIdList);
|
||||
Map<String,String> zhibiaoMap = new HashMap<>();
|
||||
if(zhibiaoList!=null&& !zhibiaoList.isEmpty()){
|
||||
for (ScEquZhibiao scEquZhibiao : zhibiaoList) {
|
||||
zhibiaoMap.put(scEquZhibiao.getEntityField(),scEquZhibiao.getName());
|
||||
}
|
||||
}
|
||||
List<LiveDataTrans> liveSummary = livestockwaterService.getMonthSummry(liveList,chooseYear);
|
||||
|
||||
List<Double> avgTN = new ArrayList<>();
|
||||
|
|
@ -271,17 +297,26 @@ public class IndexAnalysisController {
|
|||
avgNH.add(liveDataTrans.getAvgNH());
|
||||
avgCOD.add(liveDataTrans.getAvgCOD());
|
||||
|
||||
avgNO.add(0D);
|
||||
avgNO.add(liveDataTrans.getAvgNO());
|
||||
}
|
||||
}
|
||||
StationSummry stationSummry = new StationSummry();
|
||||
stationSummry.setTNSummry(avgTN);
|
||||
if(zhibiaoMap.get(PollutionEnum.dataWaterTpSy.getCode())!=null){
|
||||
stationSummry.setTPSummry(avgTP);
|
||||
stationSummry.setNHSummry(avgNH);
|
||||
stationSummry.setCODSummry(avgCOD);
|
||||
|
||||
}
|
||||
if(zhibiaoMap.get(PollutionEnum.dataWaterTnSy.getCode())!=null){
|
||||
stationSummry.setTNSummry(avgTN);
|
||||
}
|
||||
if(zhibiaoMap.get(PollutionEnum.dataWaterNoSy.getCode())!=null){
|
||||
stationSummry.setNOSummry(avgNO);
|
||||
returnArrs.add(JSONObject.parseObject(JSONObject.toJSONString(stationSummry, SerializerFeature.WriteNullStringAsEmpty)));
|
||||
}
|
||||
if(zhibiaoMap.get(PollutionEnum.dataWaterCodSy.getCode())!=null){
|
||||
stationSummry.setCODSummry(avgCOD);
|
||||
}
|
||||
if(zhibiaoMap.get(PollutionEnum.dataWaterNhSy.getCode())!=null){
|
||||
stationSummry.setNHSummry(avgNH);
|
||||
}
|
||||
returnArrs.add(JSONObject.parseObject(JSONObject.toJSONString(stationSummry, SerializerFeature.WriteMapNullValue,SerializerFeature.WriteNullStringAsEmpty)));
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,21 +14,28 @@ import org.apache.commons.lang3.StringUtils;
|
|||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||
import org.jeecg.common.api.vo.Result;
|
||||
import org.jeecg.common.aspect.annotation.AutoLog;
|
||||
import org.jeecg.common.config.TenantContext;
|
||||
import org.jeecg.common.constant.enums.PollutionEnum;
|
||||
import org.jeecg.common.entity.ScEquZhibiao;
|
||||
import org.jeecg.common.entity.SurvDeviceDeploy;
|
||||
import org.jeecg.common.system.base.controller.JeecgController;
|
||||
import org.jeecg.common.system.query.QueryGenerator;
|
||||
import org.jeecg.common.system.util.JwtUtil;
|
||||
import org.jeecg.common.tenant.TenantContextHolder;
|
||||
import org.jeecg.common.vo.PolutionVo;
|
||||
import org.jeecg.modules.appmana.service.IScEquZhibiaoService;
|
||||
import org.jeecg.modules.appmana.service.ISurvDeviceDeployService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
/**
|
||||
|
|
@ -44,7 +51,8 @@ import java.util.Date;
|
|||
public class ScEquZhibiaoController extends JeecgController<ScEquZhibiao, IScEquZhibiaoService> {
|
||||
@Autowired
|
||||
private IScEquZhibiaoService scEquZhibiaoService;
|
||||
|
||||
@Autowired
|
||||
private ISurvDeviceDeployService deviceDeployService;
|
||||
/**
|
||||
* 分页列表查询
|
||||
*
|
||||
|
|
@ -61,9 +69,39 @@ public class ScEquZhibiaoController extends JeecgController<ScEquZhibiao, IScEqu
|
|||
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||
HttpServletRequest req) {
|
||||
String tenantId = TenantContext.getTenant();
|
||||
List<String> deploys = new ArrayList<>();
|
||||
if(!"0".equals(tenantId)){
|
||||
List<SurvDeviceDeploy> deployList = deviceDeployService.lambdaQuery()
|
||||
.eq(SurvDeviceDeploy::getTenantId, tenantId)
|
||||
.list()
|
||||
;
|
||||
if(!deployList.isEmpty()){
|
||||
deploys = deployList.stream().map(SurvDeviceDeploy::getId).collect(Collectors.toList());
|
||||
}else{
|
||||
deploys.add("x");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
QueryWrapper<ScEquZhibiao> queryWrapper = QueryGenerator.initQueryWrapper(scEquZhibiao, req.getParameterMap());
|
||||
|
||||
if(StringUtils.isNotBlank(scEquZhibiao.getStationCode())){
|
||||
List<SurvDeviceDeploy> deployList2 = deviceDeployService.lambdaQuery()
|
||||
.eq(SurvDeviceDeploy::getStationCode, scEquZhibiao.getStationCode())
|
||||
.list()
|
||||
;
|
||||
if(!deployList2.isEmpty()){
|
||||
deploys = deployList2.stream().map(SurvDeviceDeploy::getId).collect(Collectors.toList());
|
||||
}else{
|
||||
deploys.add("y");
|
||||
}
|
||||
}
|
||||
queryWrapper.in("equ_id", deploys);
|
||||
Page<ScEquZhibiao> page = new Page<ScEquZhibiao>(pageNo, pageSize);
|
||||
IPage<ScEquZhibiao> pageList = scEquZhibiaoService.page(page, queryWrapper.orderByAsc("sort_no").orderByDesc("create_time"));
|
||||
scEquZhibiaoService.fills(pageList.getRecords());
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -18,4 +18,6 @@ public interface IScEquZhibiaoService extends IService<ScEquZhibiao> {
|
|||
Integer getALlZhiBiaoCount();
|
||||
|
||||
List<ScEquZhibiao> getListByEquid(String deployId);
|
||||
|
||||
void fills(List<ScEquZhibiao> records);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,11 +4,17 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.jeecg.common.entity.ScEquZhibiao;
|
||||
import org.jeecg.common.entity.SurvDeviceDeploy;
|
||||
import org.jeecg.common.entity.SurvStationInfo;
|
||||
import org.jeecg.modules.appmana.mapper.ScEquZhibiaoMapper;
|
||||
import org.jeecg.modules.appmana.service.IScEquZhibiaoService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Description: sc_equ_zhibiao
|
||||
|
|
@ -18,6 +24,12 @@ import java.util.List;
|
|||
*/
|
||||
@Service
|
||||
public class ScEquZhibiaoServiceImpl extends ServiceImpl<ScEquZhibiaoMapper, ScEquZhibiao> implements IScEquZhibiaoService {
|
||||
@Lazy
|
||||
@Autowired
|
||||
private SurvDeviceDeployServiceImpl deviceDeployService;
|
||||
@Lazy
|
||||
@Autowired
|
||||
private SurvStationInfoServiceImpl survStationInfoService;
|
||||
|
||||
@Override
|
||||
public List<ScEquZhibiao> getAllChemical(List<String> deviceList) {
|
||||
|
|
@ -45,5 +57,39 @@ public class ScEquZhibiaoServiceImpl extends ServiceImpl<ScEquZhibiaoMapper, ScE
|
|||
return this.list(queryWrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fills(List<ScEquZhibiao> records) {
|
||||
if(records!=null && !records.isEmpty()){
|
||||
List<String> equIds = records.stream().map(ScEquZhibiao::getEquId).collect(Collectors.toList());
|
||||
Map<String,SurvStationInfo> stationMap = new HashMap<>();
|
||||
Map<String,SurvDeviceDeploy> deployMap = new HashMap<>();
|
||||
if(!equIds.isEmpty()){
|
||||
List<SurvDeviceDeploy> deploys = deviceDeployService.listByIds(equIds);
|
||||
if(deploys!=null && !deploys.isEmpty()){
|
||||
List<String> stations = deploys.stream().map(SurvDeviceDeploy::getStationCode).collect(Collectors.toList());
|
||||
List<SurvStationInfo> stationInfos = survStationInfoService.getStationByCode(stations);
|
||||
if(stationInfos!=null && !stationInfos.isEmpty()){
|
||||
for (SurvStationInfo stationInfo : stationInfos) {
|
||||
stationMap.put(stationInfo.getStationCode(),stationInfo);
|
||||
}
|
||||
}
|
||||
for (SurvDeviceDeploy deploy : deploys) {
|
||||
deployMap.put(deploy.getId(),deploy);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
for (ScEquZhibiao record : records) {
|
||||
SurvDeviceDeploy deploy = deployMap.get(record.getEquId());
|
||||
record.setDeployName(deploy!=null?deploy.getDeployDes():"");
|
||||
if(deploy!=null){
|
||||
SurvStationInfo stationInfo = stationMap.get(deploy.getStationCode());
|
||||
record.setStationName(stationInfo!=null?stationInfo.getStationName():"");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -93,4 +93,12 @@ public class ScEquZhibiao implements Serializable {
|
|||
@ApiModelProperty(value = "字典key")
|
||||
private String eleKey;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String deployName;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String stationName;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String stationCode;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,5 +18,7 @@ public class LiveDataTrans {
|
|||
private double avgNH;
|
||||
|
||||
private double avgCOD;
|
||||
|
||||
private double avgNO;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue