From 47bef7b81f6dcc57cb54820df7471da8750f81be Mon Sep 17 00:00:00 2001 From: ye1023 <12588209+ye1023@user.noreply.gitee.com> Date: Wed, 29 Jul 2026 10:59:14 +0800 Subject: [PATCH] =?UTF-8?q?yxk-20260729=20=E6=94=B9=E5=96=84=E6=8F=90?= =?UTF-8?q?=E6=A1=88=20Task=5Fimprove005=20=E4=B8=8D=E6=98=BE=E7=A4=BA=20T?= =?UTF-8?q?askHandleInnerContent=E3=80=82=E8=AF=84=E5=A7=94=E9=80=89?= =?UTF-8?q?=E6=8B=A9=E2=80=9C=E6=8A=95=E7=A5=A8=E9=80=9A=E8=BF=87=E2=80=9D?= =?UTF-8?q?=E6=88=96=E2=80=9C=E6=8A=95=E7=A5=A8=E5=8F=8D=E5=AF=B9=E2=80=9D?= =?UTF-8?q?=E5=90=8E=E5=BC=B9=E5=87=BA=E7=A1=AE=E8=AE=A4=E6=A1=86=EF=BC=9B?= =?UTF-8?q?=E7=A1=AE=E8=AE=A4=E5=8D=B3=E9=94=81=E5=AE=9A=E4=B8=AA=E4=BA=BA?= =?UTF-8?q?=E6=8A=95=E7=A5=A8=E5=B9=B6=E7=9B=B4=E6=8E=A5=E5=AE=8C=E6=88=90?= =?UTF-8?q?=E5=BD=93=E5=89=8D=E6=B5=81=E7=A8=8B=E4=BB=BB=E5=8A=A1=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ImprovementProposalController.java | 6 ++-- .../service/IImprovementProposalService.java | 4 +++ .../impl/ImprovementProposalServiceImpl.java | 36 +++++++++++++++++-- 3 files changed, 40 insertions(+), 6 deletions(-) diff --git a/jeecg-module-supervision/src/main/java/org/jeecg/modules/improvementproposal/controller/ImprovementProposalController.java b/jeecg-module-supervision/src/main/java/org/jeecg/modules/improvementproposal/controller/ImprovementProposalController.java index 16af363..8bfe805 100644 --- a/jeecg-module-supervision/src/main/java/org/jeecg/modules/improvementproposal/controller/ImprovementProposalController.java +++ b/jeecg-module-supervision/src/main/java/org/jeecg/modules/improvementproposal/controller/ImprovementProposalController.java @@ -226,9 +226,9 @@ public class ImprovementProposalController { } @PostMapping(value = "/bpm/submitInstituteVote") - @Operation(summary = "锁定所级评委投票并汇总结果") - public Result submitInstituteVote(@RequestBody ImprovementProposalBpmActionDTO action) { - return handleBpmAction(() -> improvementProposalService.submitInstituteVote(action, currentUser())); + @Operation(summary = "确认所级评委投票并直接完成流程任务") + public Result submitInstituteVote(@RequestBody ImprovementProposalBpmActionDTO action, HttpServletRequest request) { + return handleBpmAction(() -> improvementProposalService.submitInstituteVoteAndComplete(action, currentUser(), request)); } private LoginUser currentUser() { diff --git a/jeecg-module-supervision/src/main/java/org/jeecg/modules/improvementproposal/service/IImprovementProposalService.java b/jeecg-module-supervision/src/main/java/org/jeecg/modules/improvementproposal/service/IImprovementProposalService.java index fa800f1..b02b44c 100644 --- a/jeecg-module-supervision/src/main/java/org/jeecg/modules/improvementproposal/service/IImprovementProposalService.java +++ b/jeecg-module-supervision/src/main/java/org/jeecg/modules/improvementproposal/service/IImprovementProposalService.java @@ -8,6 +8,7 @@ import org.jeecg.modules.improvementproposal.dto.ImprovementInstituteVoteCandida import org.jeecg.modules.improvementproposal.dto.ImprovementProposalBpmActionDTO; import org.jeecg.common.system.vo.LoginUser; import com.baomidou.mybatisplus.extension.service.IService; +import javax.servlet.http.HttpServletRequest; import java.io.Serializable; import java.util.Collection; import java.util.List; @@ -91,6 +92,9 @@ public interface IImprovementProposalService extends IService() .eq(ImprovementInstituteVote::getId, vote.getId()) .eq(ImprovementInstituteVote::getVoteStatus, "pending") + .set(ImprovementInstituteVote::getVoteResult, action.getVoteResult()) .set(ImprovementInstituteVote::getVoteStatus, "voted") .set(ImprovementInstituteVote::getVoteTime, new Date()) .set(ImprovementInstituteVote::getProcessTaskId, action.getTaskId())); @@ -457,6 +467,26 @@ public class ImprovementProposalServiceImpl extends ServiceImpl processParams = new HashMap<>(4); + processParams.put("taskId", action.getTaskId()); + processParams.put("processModel", "1"); + processParams.put("nextCodeCount", "1"); + // Task5 只有正常流转分支;通用办理服务以 end + 单分支执行 taskService.complete。 + processParams.put("nextnode", "end"); + Result result = extActTaskCcService.processComplete(processParams, request); + if (result == null || !result.isSuccess()) { + throw new IllegalStateException(result == null || oConvertUtils.isEmpty(result.getMessage()) + ? "投票已确认,但流程办理失败" + : result.getMessage()); + } + } + private ImprovementInstituteVote findInstituteVote(String mainId, String voterId) { return improvementInstituteVoteMapper.selectByMainId(mainId).stream() .filter(item -> voterId.equals(item.getVoterId()))