1.全景技术监督数据展示
This commit is contained in:
@@ -50,4 +50,12 @@ public class GridDiagramController extends BaseController {
|
||||
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
|
||||
*/
|
||||
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;
|
||||
}
|
||||
|
||||
@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 ids 子集下所有部门信息
|
||||
@@ -133,11 +211,11 @@ public class GridDiagramServiceImpl implements GridDiagramService {
|
||||
.in(WarningLeaflet::getState, 1)
|
||||
);
|
||||
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());
|
||||
gridDiagramVO.setWorkNum(list.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 {
|
||||
gridDiagramVO.setAssociatedNum(0);
|
||||
|
||||
Reference in New Issue
Block a user