diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/ErpProjectChange.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/ErpProjectChange.java index 74a25485..7921a1d5 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/ErpProjectChange.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/ErpProjectChange.java @@ -31,6 +31,11 @@ public class ErpProjectChange extends TenantEntity { @TableId(value = "project_change_id", type = IdType.ASSIGN_ID) private Long projectChangeId; + /** + * 项目变更编号 + */ + private String projectChangeCode; + /** * 项目ID */ diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpProjectChangeBo.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpProjectChangeBo.java index 209fb1d1..e47ceaa0 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpProjectChangeBo.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/bo/ErpProjectChangeBo.java @@ -34,6 +34,11 @@ public class ErpProjectChangeBo extends BaseEntity { @NotNull(message = "项目变更ID不能为空", groups = { EditGroup.class }) private Long projectChangeId; + /** + * 项目变更编号 + */ + private String projectChangeCode; + /** * 项目ID */ diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/vo/ErpProjectChangeVo.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/vo/ErpProjectChangeVo.java index c548b6ca..c2a65f33 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/vo/ErpProjectChangeVo.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/domain/vo/ErpProjectChangeVo.java @@ -41,6 +41,12 @@ public class ErpProjectChangeVo implements Serializable { @ExcelProperty(value = "项目变更ID") private Long projectChangeId; + /** + * 项目变更编号 + */ + @ExcelProperty(value = "项目变更编号") + private String projectChangeCode; + /** * 项目ID */ diff --git a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpProjectChangeServiceImpl.java b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpProjectChangeServiceImpl.java index b29a493b..1e08b71b 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpProjectChangeServiceImpl.java +++ b/ruoyi-modules/ruoyi-oa/src/main/java/org/dromara/oa/erp/service/impl/ErpProjectChangeServiceImpl.java @@ -152,6 +152,7 @@ public class ErpProjectChangeServiceImpl implements IErpProjectChangeService { .selectAll(ErpProjectChange.class) .eq(ErpProjectChange::getDelFlag, "0") .eq(bo.getProjectId() != null, ErpProjectChange::getProjectId, bo.getProjectId()) + .eq(StringUtils.isNotBlank(bo.getProjectChangeCode()), ErpProjectChange::getProjectChangeCode, bo.getProjectChangeCode()) .eq(StringUtils.isNotBlank(bo.getProjectCode()), ErpProjectChange::getProjectCode, bo.getProjectCode()) .like(StringUtils.isNotBlank(bo.getProjectName()), ErpProjectChange::getProjectName, bo.getProjectName()) .eq(StringUtils.isNotBlank(bo.getProjectCategory()), ErpProjectChange::getProjectCategory, bo.getProjectCategory()) @@ -376,12 +377,8 @@ public class ErpProjectChangeServiceImpl implements IErpProjectChangeService { } vo.setBudgetList(budgetList); - // 查询上一次变更的进度变更明细作为参考 - List lastProgressList = changeProgressMapper.selectList( - Wrappers.lambdaQuery() - .eq(ErpProjectChangeProgress::getProjectChangeId, lastChange.getProjectChangeId()) - .orderByAsc(ErpProjectChangeProgress::getSortOrder) - ); + // 查询上一次变更的进度变更明细作为参考(连表查询项目计划阶段,带出 projectPhases 字段) + List lastProgressList = changeProgressMapper.selectProgressWithStageInfo(lastChange.getProjectChangeId()); List progressList = new ArrayList<>(); // 将上一次的变更后时间作为本次的原计划时间 diff --git a/ruoyi-modules/ruoyi-oa/src/main/resources/mapper/oa/erp/ErpProjectChangeMapper.xml b/ruoyi-modules/ruoyi-oa/src/main/resources/mapper/oa/erp/ErpProjectChangeMapper.xml index 9db0fd87..1a7d3f96 100644 --- a/ruoyi-modules/ruoyi-oa/src/main/resources/mapper/oa/erp/ErpProjectChangeMapper.xml +++ b/ruoyi-modules/ruoyi-oa/src/main/resources/mapper/oa/erp/ErpProjectChangeMapper.xml @@ -7,7 +7,7 @@ - select t.project_change_id, t.tenant_id, t.project_id, t.project_code, t.project_name, t.project_category, + select t.project_change_id, t.project_change_code, t.tenant_id, t.project_id, t.project_code, t.project_name, t.project_category, t.change_type, t.change_number, t.project_manager_id, t.dept_head_id, t.responsible_vp_id, t.apply_change_date, t.contract_amount, t.contract_net_amount, t.current_status, t.change_reason, t.follow_up_work, t.project_change_status, t.flow_status, t.remark, t.active_flag, t.del_flag, @@ -45,7 +45,7 @@ - select project_change_id, tenant_id, project_id, project_code, project_name, project_category, change_type, change_number, project_manager_id, project_manager_name, dept_head_id, dept_head_name, responsible_vp_id, responsible_vp_name, apply_change_date, contract_amount, contract_net_amount, current_status, change_reason, follow_up_work, project_change_status, flow_status, remark, active_flag, del_flag, create_dept, create_by, create_time, update_by, update_time + select project_change_id, project_change_code, tenant_id, project_id, project_code, project_name, project_category, change_type, change_number, project_manager_id, project_manager_name, dept_head_id, dept_head_name, responsible_vp_id, responsible_vp_name, apply_change_date, contract_amount, contract_net_amount, current_status, change_reason, follow_up_work, project_change_status, flow_status, remark, active_flag, del_flag, create_dept, create_by, create_time, update_by, update_time from erp_project_change t ${ew.getCustomSqlSegment} @@ -73,6 +73,8 @@ project_id, + project_change_code, + project_code, project_name, @@ -135,6 +137,8 @@ #{item.projectId}, + #{item.projectChangeCode}, + #{item.projectCode}, #{item.projectName}, @@ -204,6 +208,9 @@ project_id = #{item.projectId}, + + project_change_code = #{item.projectChangeCode}, + project_code = #{item.projectCode},