09-22-巡检-试验管理-纪录搁置

This commit is contained in:
2025-09-22 10:15:40 +08:00
parent f83c10a9ca
commit 1e16cfd54e
2 changed files with 12 additions and 27 deletions

View File

@ -105,11 +105,16 @@ public class OpsInspectionTestTaskController extends BaseController {
return toAjax(opsInspectionTestTaskService.deleteWithValidByIds(List.of(ids), true));
}
@SaCheckPermission("inspection:testTask:record")
@GetMapping("/record")
public R<Object> record(@RequestParam Long projectId){
return opsInspectionTestTaskService.record(projectId);
}
/**
* 获取运维-巡检-试验任务记录
*
* @param projectId 项目ID
*/
// @SaCheckPermission("inspection:testTask:record")
// @GetMapping("/record")
// public R<Object> record(@RequestParam Long projectId){
// return opsInspectionTestTaskService.record(projectId);
// }

View File

@ -243,32 +243,12 @@ public class OpsInspectionTestTaskServiceImpl implements IOpsInspectionTestTaskS
Date finalEndDate = Date.from(firstDay.atStartOfDay(ZoneId.systemDefault()).toInstant());
Date finalStartDate = Date.from(lastDay.atTime(23, 59, 59).atZone(ZoneId.systemDefault()).toInstant());
List<OpsInspectionTestTaskVo> lastMounth = list.stream().filter(testTaskVo -> testTaskVo.getPlanBeginTime().before(finalEndDate) && testTaskVo.getPlanFinishTime().after(finalStartDate))
//上月数据列表
List<OpsInspectionTestTaskVo> lastMonth = list.stream().filter(testTaskVo -> testTaskVo.getPlanBeginTime().before(finalEndDate) && testTaskVo.getPlanFinishTime().after(finalStartDate))
.toList();
//完成实验数
finishCount = 0L;
//待分析记录
failCount = 0L;
//总共完成时间
totalTestTime = 0L;
for (OpsInspectionTestTaskVo opsInspectionTestTaskVo : lastMounth) {
if (opsInspectionTestTaskVo.getPlanFinishTime().after(startDate) && opsInspectionTestTaskVo.getPlanFinishTime().before(endDate) && opsInspectionTestTaskVo.getStatus().equals("5")){
finishCount++;
totalTestTime += opsInspectionTestTaskVo.getPlanFinishTime().getTime() - opsInspectionTestTaskVo.getPlanBeginTime().getTime();
}
}
Long finishCount1 = totalTestTime/ finishCount;
//完成数增长率
record.setFinishCountAdd(BigDecimal.valueOf(finishCount / record.getFinishCount()).multiply(new BigDecimal("100")));
//通过率
record.setPassValueAdd(BigDecimal.valueOf(finishCount).divide(BigDecimal.valueOf(lastMounth.size()), 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).divide(record.getPassValue(),2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")));
//时长增长率
record.setAverageTestTimeAdd(BigDecimal.valueOf((totalTestTime/finishCount) / record.getAverageTestTime()));
return R.ok(record);
}