From 3cf0ba7d0591953872ac010b76d288adfeff46cc Mon Sep 17 00:00:00 2001 From: chenhao <852066789@qq.com> Date: Mon, 31 Mar 2025 10:56:53 +0800 Subject: [PATCH] =?UTF-8?q?feat(demand):=20=E4=BC=98=E5=8C=96=E9=9C=80?= =?UTF-8?q?=E6=B1=82=E7=AE=A1=E7=90=86=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修改需求插入接口,返回插入的需求对象 - 更新需求删除逻辑,采用逻辑删除方式- 优化查询接口,只返回状态为 0 的需求 - 调整工作日志查询,移除冗余的项目状态判断 --- .../business/demand/ProjectDemandController.java | 2 +- .../demand/mapper/ProjectDemandMapper.java | 1 + .../demand/service/IProjectDemandService.java | 2 +- .../service/impl/ProjectDemandServiceImpl.java | 12 ++++++------ .../ProjectDemand/ProjectDemandMapper.xml | 15 +++++++++++---- .../business/WorkLogger/WorkLoggerMapper.xml | 2 +- 6 files changed, 21 insertions(+), 13 deletions(-) diff --git a/pms-admin/src/main/java/tech/unissense/pms/web/controller/business/demand/ProjectDemandController.java b/pms-admin/src/main/java/tech/unissense/pms/web/controller/business/demand/ProjectDemandController.java index 40a8d99..b44e0ce 100644 --- a/pms-admin/src/main/java/tech/unissense/pms/web/controller/business/demand/ProjectDemandController.java +++ b/pms-admin/src/main/java/tech/unissense/pms/web/controller/business/demand/ProjectDemandController.java @@ -48,7 +48,7 @@ public class ProjectDemandController extends BaseController { @PostMapping("/insert") @Log(title = "需求管理", businessType = BusinessType.INSERT) public AjaxResult add(@RequestBody ProjectDemand projectDemand) { - return toAjax(projectDemandService.insert(projectDemand)); + return AjaxResult.success(projectDemandService.insert(projectDemand)); } diff --git a/pms-business/src/main/java/tech/unissense/pms/business/demand/mapper/ProjectDemandMapper.java b/pms-business/src/main/java/tech/unissense/pms/business/demand/mapper/ProjectDemandMapper.java index 969adf0..a543941 100644 --- a/pms-business/src/main/java/tech/unissense/pms/business/demand/mapper/ProjectDemandMapper.java +++ b/pms-business/src/main/java/tech/unissense/pms/business/demand/mapper/ProjectDemandMapper.java @@ -40,6 +40,7 @@ public interface ProjectDemandMapper { * 通过主键删除数据 */ int deleteById(Integer id); + int logicDeleteByIds(Integer[] ids); /** * 通过id批量删除 diff --git a/pms-business/src/main/java/tech/unissense/pms/business/demand/service/IProjectDemandService.java b/pms-business/src/main/java/tech/unissense/pms/business/demand/service/IProjectDemandService.java index d980f13..2280a7d 100644 --- a/pms-business/src/main/java/tech/unissense/pms/business/demand/service/IProjectDemandService.java +++ b/pms-business/src/main/java/tech/unissense/pms/business/demand/service/IProjectDemandService.java @@ -25,7 +25,7 @@ public interface IProjectDemandService { /** * 新增数据 */ - int insert(ProjectDemand projectDemand); + ProjectDemand insert(ProjectDemand projectDemand); /** * 修改数据 diff --git a/pms-business/src/main/java/tech/unissense/pms/business/demand/service/impl/ProjectDemandServiceImpl.java b/pms-business/src/main/java/tech/unissense/pms/business/demand/service/impl/ProjectDemandServiceImpl.java index 0538e9a..83aaaa8 100644 --- a/pms-business/src/main/java/tech/unissense/pms/business/demand/service/impl/ProjectDemandServiceImpl.java +++ b/pms-business/src/main/java/tech/unissense/pms/business/demand/service/impl/ProjectDemandServiceImpl.java @@ -1,5 +1,6 @@ package tech.unissense.pms.business.demand.service.impl; +import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUtil; import tech.unissense.pms.business.demand.domain.ProjectDemand; import tech.unissense.pms.business.demand.mapper.ProjectDemandMapper; @@ -50,7 +51,7 @@ public class ProjectDemandServiceImpl implements IProjectDemandService { @Override - public int insert(ProjectDemand projectDemand) { + public ProjectDemand insert(ProjectDemand projectDemand) { verifyProjectState(projectDemand); if (projectDemand.getEndTime() == null) { //根据当前时间向上取整 @@ -64,7 +65,8 @@ public class ProjectDemandServiceImpl implements IProjectDemandService { throw new ServiceException("结束时间不能早于当前时间"); } } - return projectDemandMapper.insert(projectDemand); + int insert = projectDemandMapper.insert(projectDemand); + return projectDemand; } private void verifyProjectState(ProjectDemand projectDemand) { @@ -105,9 +107,7 @@ public class ProjectDemandServiceImpl implements IProjectDemandService { @Override public int deleteById(Integer id) { - ProjectDemand projectDemand = queryById(id); - verifyProjectState(projectDemand); - return projectDemandMapper.deleteById(id); + return projectDemandMapper.logicDeleteByIds(new Integer[]{id}); } /** @@ -115,7 +115,7 @@ public class ProjectDemandServiceImpl implements IProjectDemandService { */ @Override public int batchRemove(Integer[] ids) { - return projectDemandMapper.batchRemove(ids); + return projectDemandMapper.logicDeleteByIds(ids); } @Override diff --git a/pms-business/src/main/resources/mapper/business/ProjectDemand/ProjectDemandMapper.xml b/pms-business/src/main/resources/mapper/business/ProjectDemand/ProjectDemandMapper.xml index 5d36587..458ff19 100644 --- a/pms-business/src/main/resources/mapper/business/ProjectDemand/ProjectDemandMapper.xml +++ b/pms-business/src/main/resources/mapper/business/ProjectDemand/ProjectDemandMapper.xml @@ -30,6 +30,7 @@ left join pms_project_version t2 on t1.version_id = t2.id left join sys_user t3 on t1.responsible_person = t3.user_id + state='0' and t1.id = #{id} @@ -96,7 +97,7 @@ select from pms_project_demand - where version_id in + where state='0' and version_id in #{versionId} @@ -172,12 +173,10 @@ UPDATE pms_project_demand + version_id = #{versionId}, title = #{title}, - - version_id = #{versionId}, - demand_status = #{demandStatus}, @@ -204,6 +203,14 @@ set demand_status = '3' where end_time now() + + update pms_project_demand + set state = 1 + where id in + + #{id} + + diff --git a/pms-business/src/main/resources/mapper/business/WorkLogger/WorkLoggerMapper.xml b/pms-business/src/main/resources/mapper/business/WorkLogger/WorkLoggerMapper.xml index 104b1a0..1988d9c 100644 --- a/pms-business/src/main/resources/mapper/business/WorkLogger/WorkLoggerMapper.xml +++ b/pms-business/src/main/resources/mapper/business/WorkLogger/WorkLoggerMapper.xml @@ -59,7 +59,7 @@ ,t3.project_name,t4.title ,t5.version_number,t4.version_id from pms_work_logger t1 left join sys_user t2 on t1.user_id=t2.user_id - inner join pms_project t3 on (t1.project_id=t3.project_id and t3.state=0) + left join pms_project t3 on t1.project_id=t3.project_id left join pms_project_demand t4 on t1.demand_id=t4.id left join pms_project_version t5 on t4.version_id=t5.id