8-12 施工规模(风机数量)下放至任务中管理,可以计算任务进度,项目总进度

This commit is contained in:
郝彬 2025-08-12 11:33:58 +08:00
parent 36958212f0
commit 181cbfec80
5 changed files with 22 additions and 3 deletions

View File

@ -89,7 +89,7 @@ public class ProjectEntity extends AuditableEntity implements Serializable {
@ExcelProperty("项目规模")
@ApiModelProperty("项目规模")
@TableField("scale")
private String scale;
private Integer scale;
@ExcelProperty("总工期,单位天")
@ApiModelProperty("总工期,单位天")

View File

@ -85,5 +85,13 @@ public class ProjectTaskEntity extends AuditableEntity implements Serializable {
@ApiModelProperty("项目id")
@TableField("project_id")
private String projectId;
@ApiModelProperty("任务规模")
@TableField("scales")
private Integer scales;
@ApiModelProperty("已完成数")
@TableField("finished")
private Integer finished;
}

View File

@ -38,4 +38,7 @@ public class ProjectInitTaskReq {
@Size(groups = {ValidationGroup.Insert.class, ValidationGroup.Update.class}, max = 100, message = "任务负责人id长度不能超过100字符")
@ApiModelProperty("任务负责人id")
private String mainUserId;
@ApiModelProperty("任务规模")
private Integer scales;
}

View File

@ -137,7 +137,11 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, ProjectEntity
this.save(entity);
for (ProjectInitTaskReq taskReq : req.getTasks()) {
ProjectTaskEntity taskEntity = BeanUtil.copyProperties(taskReq, ProjectTaskEntity.class);
if (taskEntity.getScales() == null) {
taskEntity.setScales(entity.getScale());
}
taskEntity.setProjectId(entity.getProjectId());
taskEntity.setFinished(0);
projectTaskService.save(taskEntity);
}
}

View File

@ -118,10 +118,14 @@ public class ProjectTaskController {
@GetMapping("/{projectId}/tasks")
public Result<ProjectTasksDetailResp> getTaskByProjectId(@PathVariable String projectId) {
ProjectTasksDetailResp resp = new ProjectTasksDetailResp();
resp.setTotal(0);
resp.setFinished(0);
resp.setProjectName(projectService.getById(projectId).getProjectName());
resp.setList(projectTaskService.getTaskByProjectId(projectId));
resp.setTotal(resp.getList().size());
resp.setFinished((int) resp.getList().stream().filter(projectTaskResp -> projectTaskResp.getStatus() == 2).count());
for (ProjectTaskResp projectTaskResp : resp.getList()) {
resp.setTotal(resp.getTotal() + projectTaskResp.getScales());
resp.setFinished(resp.getFinished() + projectTaskResp.getFinished());
}
return Result.ok(resp);
}
}