From 19d41454dcc43ea8312c32b37596e78281d1bf02 Mon Sep 17 00:00:00 2001 From: liuyaxin Date: Fri, 26 Jun 2026 15:11:08 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ProcurementPlanController.java | 16 ++++++++- .../service/IProcurementPlanService.java | 8 +++++ .../impl/ProcurementPlanServiceImpl.java | 35 ++++++++++++++----- 3 files changed, 50 insertions(+), 9 deletions(-) diff --git a/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/controller/ProcurementPlanController.java b/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/controller/ProcurementPlanController.java index 1073aae..9ec6342 100644 --- a/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/controller/ProcurementPlanController.java +++ b/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/controller/ProcurementPlanController.java @@ -132,11 +132,25 @@ public class ProcurementPlanController extends BladeController { return R.status(procurementPlanService.submit(procurementPlanVO)); } + /** + * 保存草稿(不触发流程引擎) + */ + @PostMapping("/draft/save") + @ApiOperationSupport(order = 7) + @Operation(summary = "保存草稿", description = "传入procurementPlan,不触发流程引擎") + public R saveDraft(@RequestBody ProcurementPlanVO procurementPlanVO) { + boolean result = procurementPlanService.saveDraft(procurementPlanVO); + if (result) { + return R.data(procurementPlanVO.getId()); + } + return R.fail("保存草稿失败"); + } + /** * 删除 */ @PostMapping("/remove") - @ApiOperationSupport(order = 7) + @ApiOperationSupport(order = 8) @Operation(summary = "逻辑删除", description = "传入ids") public R remove(@Parameter(name = "ids", description = "主键集合", in = ParameterIn.QUERY, schema = @Schema(type = "string")) @RequestParam String ids) { boolean temp = procurementPlanService.deleteLogic(Func.toLongList(ids)); diff --git a/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/service/IProcurementPlanService.java b/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/service/IProcurementPlanService.java index 17a4054..68300e4 100644 --- a/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/service/IProcurementPlanService.java +++ b/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/service/IProcurementPlanService.java @@ -62,4 +62,12 @@ public interface IProcurementPlanService extends BaseService { */ boolean submit(ProcurementPlanVO procurementPlanVO); + /** + * 保存草稿(新增或修改,含明细,不触发流程引擎) + * + * @param procurementPlanVO 招采计划VO + * @return 是否成功 + */ + boolean saveDraft(ProcurementPlanVO procurementPlanVO); + } diff --git a/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/service/impl/ProcurementPlanServiceImpl.java b/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/service/impl/ProcurementPlanServiceImpl.java index 4aac3f7..8ae3879 100644 --- a/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/service/impl/ProcurementPlanServiceImpl.java +++ b/blade-service/blade-zhaocai/src/main/java/org/springblade/zhaocai/service/impl/ProcurementPlanServiceImpl.java @@ -93,9 +93,35 @@ public class ProcurementPlanServiceImpl extends BaseServiceImpl result = flowClient.startProcessInstanceById( + // processDefinitionId, + // FlowUtil.getBusinessKey("zc_procurement_plan", String.valueOf(planId)), + // variables + // ); + + return result; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public boolean saveDraft(ProcurementPlanVO procurementPlanVO) { + // 草稿状态 + procurementPlanVO.setFlowStatus("DRAFT"); + return this.saveProcurementPlan(procurementPlanVO); + } + + /** + * 公共保存逻辑(提交和草稿复用) + */ + private boolean saveProcurementPlan(ProcurementPlanVO procurementPlanVO) { // 新建时生成单据号 if (procurementPlanVO.getId() == null && !StringUtils.hasText(procurementPlanVO.getBillNo())) { - String billNo = billCodeService.generateBillCode("PROCUREMENT_PLAN"); + String billNo = billCodeService.generateBillCode("PROCUREMENT_PLAN" ,"NDZC"); procurementPlanVO.setBillNo(billNo); } @@ -143,13 +169,6 @@ public class ProcurementPlanServiceImpl extends BaseServiceImpl result = flowClient.startProcessInstanceById( - // processDefinitionId, - // FlowUtil.getBusinessKey("zc_procurement_plan", String.valueOf(planId)), - // variables - // ); - return result; }