feat(oa): 优化项目进度统计逻辑并完善VO字段
- 移除XML中冗余的关联查询与计算逻辑 - 新增三个统计字段:totalCount、unFinishCount、delayCount - 通过子查询方式实现更准确的进度统计 - 在Java实体类中添加对应的统计属性 - 修复OaProjectScheduleStepServiceImpl中的空指针判断逻辑
This commit is contained in:
@@ -95,4 +95,14 @@ public class OaProjectScheduleVo {
|
||||
|
||||
//进度负责人
|
||||
private String steward;
|
||||
|
||||
|
||||
//"总数量"
|
||||
private Long totalCount;
|
||||
|
||||
//"未完成数量"
|
||||
private Long unFinishCount;
|
||||
|
||||
//"延迟数量"
|
||||
private Long delayCount;
|
||||
}
|
||||
|
||||
@@ -8,6 +8,8 @@ import com.ruoyi.oa.domain.vo.OaProjectScheduleVo;
|
||||
import com.ruoyi.common.core.mapper.BaseMapperPlus;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 项目进度Mapper接口
|
||||
*
|
||||
|
||||
@@ -191,7 +191,7 @@ public class OaProjectScheduleStepServiceImpl implements IOaProjectScheduleStepS
|
||||
}
|
||||
|
||||
// 3. 处理结束时间逻辑(此时 original 一定非 null,可安全调用方法)
|
||||
if (original.getEndTime() == null) {
|
||||
if (original.getEndTime() == null && bo.getEndTime() != null) {
|
||||
// 首次修改:设置结束时间和原始结束时间
|
||||
update.setEndTime(bo.getEndTime());
|
||||
update.setOriginalEndTime(bo.getEndTime());
|
||||
|
||||
Reference in New Issue
Block a user