fix:项目完成进度改成后端计算百分比
This commit is contained in:
@@ -130,5 +130,9 @@ public class SpdmNodeVo extends BaseEntity {
|
||||
* 已闭环任务数
|
||||
*/
|
||||
private Integer taskClosedLoopCount;
|
||||
/**
|
||||
* 完成进度 (已完成任务数+已闭环任务数)/ 任务总数
|
||||
*/
|
||||
private String progressNum;
|
||||
|
||||
}
|
||||
|
||||
@@ -766,6 +766,17 @@ public class NodeServiceImpl extends ServiceImpl<SimulationNodeMapper, Simulatio
|
||||
node.setTaskTotalCount(totalCountMap.getOrDefault(uuid, 0));
|
||||
node.setTaskCompletedCount(completedCountMap.getOrDefault(uuid, 0));
|
||||
node.setTaskClosedLoopCount(closedLoopCountMap.getOrDefault(uuid, 0));
|
||||
// 计算进度百分比:(已闭环+已完成)/总数,小数进一位
|
||||
int taskTotal = node.getTaskTotalCount() != null ? node.getTaskTotalCount() : 0;
|
||||
int taskCompleted = node.getTaskCompletedCount() != null ? node.getTaskCompletedCount() : 0;
|
||||
int taskClosedLoop = node.getTaskClosedLoopCount() != null ? node.getTaskClosedLoopCount() : 0;
|
||||
if (taskTotal > 0) {
|
||||
double progress = (double) (taskClosedLoop + taskCompleted) / taskTotal * 100;
|
||||
int progressPercent = (int) Math.ceil(progress);
|
||||
node.setProgressNum(progressPercent + "%");
|
||||
} else {
|
||||
node.setProgressNum("0%");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user