1.全景技术监督数据展示
This commit is contained in:
@@ -1654,7 +1654,8 @@
|
|||||||
</if>
|
</if>
|
||||||
<if test="searchValue!=null and searchValue!='' and type==2">
|
<if test="searchValue!=null and searchValue!='' and type==2">
|
||||||
and (
|
and (
|
||||||
line.NAME like CONCAT('%', #{searchValue}, '%')
|
line.NAME like CONCAT('%',SUBSTRING_INDEX(#{searchValue}, '_', -1), '%')
|
||||||
|
or voltage.NAME like CONCAT('%', SUBSTRING_INDEX(#{searchValue}, '_', 1), '%')
|
||||||
or substation.NAME like CONCAT('%', #{searchValue}, '%')
|
or substation.NAME like CONCAT('%', #{searchValue}, '%')
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
|||||||
@@ -40,4 +40,17 @@ public class GridDiagramVO {
|
|||||||
@ApiModelProperty(value = "技术监督计划")
|
@ApiModelProperty(value = "技术监督计划")
|
||||||
private Integer surveyNum;
|
private Integer surveyNum;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class City {
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "在线监测")
|
||||||
|
private GridDiagramVO onLine;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "用户投诉")
|
||||||
|
private GridDiagramVO user;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "技术监督计划")
|
||||||
|
private GridDiagramVO survey;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -50,4 +50,12 @@ public class GridDiagramController extends BaseController {
|
|||||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, supervisionData, methodDescribe);
|
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, supervisionData, methodDescribe);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||||
|
@PostMapping("/getSupervisionCityDetailsData")
|
||||||
|
@ApiOperation("技术监督市级详细页面展示")
|
||||||
|
public HttpResult<GridDiagramVO.City> getSupervisionCityDetailsData(@RequestBody StatisticsBizBaseParam param) {
|
||||||
|
String methodDescribe = getMethodDescribe("getSupervisionCityDetailsData");
|
||||||
|
GridDiagramVO.City supervisionData = gridDiagramService.getSupervisionCityDetailsData(param);
|
||||||
|
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, supervisionData, methodDescribe);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,4 +20,11 @@ public interface GridDiagramService {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<GridDiagramVO.Info> getSupervisionDetailsData(StatisticsBizBaseParam param);
|
List<GridDiagramVO.Info> getSupervisionDetailsData(StatisticsBizBaseParam param);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 技术监督市级详细页面展示
|
||||||
|
* @param param
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
GridDiagramVO.City getSupervisionCityDetailsData(StatisticsBizBaseParam param);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -83,6 +83,84 @@ public class GridDiagramServiceImpl implements GridDiagramService {
|
|||||||
return info;
|
return info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GridDiagramVO.City getSupervisionCityDetailsData(StatisticsBizBaseParam param) {
|
||||||
|
List<String> deptIds = deptFeignClient.getDepSonIdByDeptId(param.getId()).getData();
|
||||||
|
GridDiagramVO.City City = new GridDiagramVO.City();
|
||||||
|
//在线监测问题
|
||||||
|
List<LineWarning> lineWarningList = lineWarningService.list(new LambdaQueryWrapper<LineWarning>()
|
||||||
|
.in(LineWarning::getDeptId, deptIds)
|
||||||
|
.ge(StrUtil.isNotBlank(param.getStartTime()), LineWarning::getCreateTime, DateUtil.beginOfDay(DateUtil.parse(param.getStartTime())))
|
||||||
|
.le(StrUtil.isNotBlank(param.getEndTime()), LineWarning::getCreateTime, DateUtil.endOfDay(DateUtil.parse(param.getEndTime())))
|
||||||
|
);
|
||||||
|
//用户投诉问题(添加出来就是有问题的)
|
||||||
|
List<SupervisionUserComplaintPO> userComplaintList = userComplaintPOService.list(new LambdaQueryWrapper<SupervisionUserComplaintPO>()
|
||||||
|
.in(SupervisionUserComplaintPO::getDutyOrgId, deptIds)
|
||||||
|
.eq(SupervisionUserComplaintPO::getState, 1)
|
||||||
|
.ge(StrUtil.isNotBlank(param.getStartTime()), SupervisionUserComplaintPO::getCreateTime, DateUtil.beginOfDay(DateUtil.parse(param.getStartTime())))
|
||||||
|
.le(StrUtil.isNotBlank(param.getEndTime()), SupervisionUserComplaintPO::getCreateTime, DateUtil.endOfDay(DateUtil.parse(param.getEndTime())))
|
||||||
|
);
|
||||||
|
//计划问题(有问题的单子)
|
||||||
|
List<SurveyTest> surveyTestList = surveyTestService.list(new LambdaQueryWrapper<SurveyTest>()
|
||||||
|
.in(SurveyTest::getDeptId, deptIds)
|
||||||
|
.eq(SurveyTest::getState, 1)
|
||||||
|
.eq(SurveyTest::getProblemFlag, 1)
|
||||||
|
.ge(StrUtil.isNotBlank(param.getStartTime()), SurveyTest::getCreateTime, DateUtil.beginOfDay(DateUtil.parse(param.getStartTime())))
|
||||||
|
.le(StrUtil.isNotBlank(param.getEndTime()), SurveyTest::getCreateTime, DateUtil.endOfDay(DateUtil.parse(param.getEndTime())))
|
||||||
|
);
|
||||||
|
//根据问题单id查询已关联工单
|
||||||
|
List<String> problemIds = userComplaintList.stream().map(SupervisionUserComplaintPO::getId).collect(Collectors.toList());
|
||||||
|
problemIds.addAll(surveyTestList.stream().map(SurveyTest::getId).collect(Collectors.toList()));
|
||||||
|
problemIds.addAll(lineWarningList.stream().map(LineWarning::getId).collect(Collectors.toList()));
|
||||||
|
List<WarningLeaflet> list =new ArrayList<>();
|
||||||
|
if (CollUtil.isNotEmpty(problemIds)) {
|
||||||
|
list.addAll(warningLeafletService.list(new LambdaQueryWrapper<WarningLeaflet>()
|
||||||
|
.in(WarningLeaflet::getProblemId, problemIds)
|
||||||
|
.in(WarningLeaflet::getState, 1))
|
||||||
|
);
|
||||||
|
}
|
||||||
|
//在线监测问题
|
||||||
|
GridDiagramVO warnVo=new GridDiagramVO();
|
||||||
|
List<WarningLeaflet> warn = list.stream().filter(x -> lineWarningList.stream().map(LineWarning::getId)
|
||||||
|
.collect(Collectors.toList()).contains(x.getProblemId())).collect(Collectors.toList());
|
||||||
|
warnVo.setAbnormalNum(lineWarningList.size());
|
||||||
|
warnVo.setAssociatedNum(warn.size());
|
||||||
|
warnVo.setConversionNum(warnVo.getAbnormalNum() == 0 ? 0.0f : NumberUtil.round(warn.size() * 100.0 / warnVo.getAbnormalNum(), 2).floatValue());
|
||||||
|
List<String> handleList = warn.stream().filter(x -> x.getStatus() == 2).map(WarningLeaflet::getId).collect(Collectors.toList());
|
||||||
|
warnVo.setWorkNum(warn.size());
|
||||||
|
warnVo.setProcessedNum(handleList.size());
|
||||||
|
warnVo.setDisposalNum(warn.size() == 0 ? 0.0f : NumberUtil.round(handleList.size() * 100.0 / warn.size(), 2).floatValue());
|
||||||
|
|
||||||
|
//用户投诉问题(添加出来就是有问题的)
|
||||||
|
GridDiagramVO userVo=new GridDiagramVO();
|
||||||
|
List<WarningLeaflet> user = list.stream().filter(x -> userComplaintList.stream().map(SupervisionUserComplaintPO::getId)
|
||||||
|
.collect(Collectors.toList()).contains(x.getProblemId())).collect(Collectors.toList());
|
||||||
|
userVo.setAbnormalNum(userComplaintList.size());
|
||||||
|
userVo.setAssociatedNum(user.size());
|
||||||
|
userVo.setConversionNum(userVo.getAbnormalNum() == 0 ? 0.0f : NumberUtil.round(user.size() * 100.0 / userVo.getAbnormalNum(), 2).floatValue());
|
||||||
|
List<String> userHandleList = user.stream().filter(x -> x.getStatus() == 2).map(WarningLeaflet::getId).collect(Collectors.toList());
|
||||||
|
userVo.setWorkNum(user.size());
|
||||||
|
userVo.setProcessedNum(userHandleList.size());
|
||||||
|
userVo.setDisposalNum(user.size() == 0 ? 0.0f : NumberUtil.round(userHandleList.size() * 100.0 / user.size(), 2).floatValue());
|
||||||
|
|
||||||
|
//计划问题(有问题的单子)
|
||||||
|
GridDiagramVO surveyVo=new GridDiagramVO();
|
||||||
|
List<WarningLeaflet> survey = list.stream().filter(x -> surveyTestList.stream().map(SurveyTest::getId)
|
||||||
|
.collect(Collectors.toList()).contains(x.getProblemId())).collect(Collectors.toList());
|
||||||
|
surveyVo.setAbnormalNum(surveyTestList.size());
|
||||||
|
surveyVo.setAssociatedNum(survey.size());
|
||||||
|
surveyVo.setConversionNum(surveyVo.getAbnormalNum() == 0 ? 0.0f : NumberUtil.round(survey.size() * 100.0 / surveyVo.getAbnormalNum(), 2).floatValue());
|
||||||
|
List<String> surveyHandleList = survey.stream().filter(x -> x.getStatus() == 2).map(WarningLeaflet::getId).collect(Collectors.toList());
|
||||||
|
surveyVo.setWorkNum(survey.size());
|
||||||
|
surveyVo.setProcessedNum(surveyHandleList.size());
|
||||||
|
surveyVo.setDisposalNum(survey.size() == 0 ? 0.0f : NumberUtil.round(surveyHandleList.size() * 100.0 / survey.size(), 2).floatValue());
|
||||||
|
|
||||||
|
City.setOnLine(warnVo);
|
||||||
|
City.setUser(userVo);
|
||||||
|
City.setSurvey(surveyVo);
|
||||||
|
return City;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param deptDTO 子集部门
|
* @param deptDTO 子集部门
|
||||||
* @param ids 子集下所有部门信息
|
* @param ids 子集下所有部门信息
|
||||||
@@ -133,11 +211,11 @@ public class GridDiagramServiceImpl implements GridDiagramService {
|
|||||||
.in(WarningLeaflet::getState, 1)
|
.in(WarningLeaflet::getState, 1)
|
||||||
);
|
);
|
||||||
gridDiagramVO.setAssociatedNum(list.size());
|
gridDiagramVO.setAssociatedNum(list.size());
|
||||||
gridDiagramVO.setConversionNum(list.size() == 0 ? 0.0f : NumberUtil.round(list.size() * 100.0 / gridDiagramVO.getAbnormalNum(), 2).floatValue());
|
gridDiagramVO.setConversionNum(gridDiagramVO.getAbnormalNum() == 0 ? 0.0f : NumberUtil.round(list.size() * 100.0 / gridDiagramVO.getAbnormalNum(), 2).floatValue());
|
||||||
List<String> handleList = list.stream().filter(x -> x.getStatus() == 2).map(WarningLeaflet::getId).collect(Collectors.toList());
|
List<String> handleList = list.stream().filter(x -> x.getStatus() == 2).map(WarningLeaflet::getId).collect(Collectors.toList());
|
||||||
gridDiagramVO.setWorkNum(list.size());
|
gridDiagramVO.setWorkNum(list.size());
|
||||||
gridDiagramVO.setProcessedNum(handleList.size());
|
gridDiagramVO.setProcessedNum(handleList.size());
|
||||||
gridDiagramVO.setDisposalNum(handleList.size() == 0 ? 0.0f : NumberUtil.round(handleList.size() * 100.0 / list.size(), 2).floatValue());
|
gridDiagramVO.setDisposalNum(list.size() == 0 ? 0.0f : NumberUtil.round(handleList.size() * 100.0 / list.size(), 2).floatValue());
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
gridDiagramVO.setAssociatedNum(0);
|
gridDiagramVO.setAssociatedNum(0);
|
||||||
|
|||||||
Reference in New Issue
Block a user