From 97408f590d66aaead1285c002b5ac4929bd4a037 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=B2=85?= <907037276@qq.com> Date: Wed, 26 Aug 2026 17:59:30 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=A0=A1=E9=AA=8C=E5=95=86=E4=B8=9A?= =?UTF-8?q?=E5=8F=AF=E8=A1=8C=E6=80=A7=E8=AE=BA=E8=AF=81=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/BusinessFeasibilityStepOneServiceImpl.java | 1 + .../impl/BusinessFeasibilityStepOneServiceImplTest.java | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/src/main/java/com/sztzjy/linkCommerce/service/impl/BusinessFeasibilityStepOneServiceImpl.java b/src/main/java/com/sztzjy/linkCommerce/service/impl/BusinessFeasibilityStepOneServiceImpl.java index 4ec8e85..ac9bc1c 100644 --- a/src/main/java/com/sztzjy/linkCommerce/service/impl/BusinessFeasibilityStepOneServiceImpl.java +++ b/src/main/java/com/sztzjy/linkCommerce/service/impl/BusinessFeasibilityStepOneServiceImpl.java @@ -71,6 +71,7 @@ public class BusinessFeasibilityStepOneServiceImpl implements BusinessFeasibilit for (BusinessFeasibilityStepOneValidationRequest.BusinessModel model : models) { if (model == null || isBlank(model.getModule()) || isBlank(model.getStrategy()) || isBlank(model.getExplanation()) || !modules.add(StringUtils.trim(model.getModule()))) throw badRequest("请完整填写商业模式梳理"); } + if (!modules.equals(new LinkedHashSet<>(Arrays.asList("产品销售渠道", "增值服务")))) throw badRequest("请填写产品销售渠道和增值服务两项商业模式"); } private BigDecimal validateAndSumCosts(List costs) { diff --git a/src/test/java/com/sztzjy/linkCommerce/service/impl/BusinessFeasibilityStepOneServiceImplTest.java b/src/test/java/com/sztzjy/linkCommerce/service/impl/BusinessFeasibilityStepOneServiceImplTest.java index cbc212d..419405a 100644 --- a/src/test/java/com/sztzjy/linkCommerce/service/impl/BusinessFeasibilityStepOneServiceImplTest.java +++ b/src/test/java/com/sztzjy/linkCommerce/service/impl/BusinessFeasibilityStepOneServiceImplTest.java @@ -34,6 +34,14 @@ class BusinessFeasibilityStepOneServiceImplTest { assertThrows(ServiceException.class, () -> new BusinessFeasibilityStepOneServiceImpl().validate(lossMaking, student())); } + @Test + void rejectsBusinessModelModulesOutsideThePrototypeRows() { + BusinessFeasibilityStepOneValidationRequest request = completedRequest(); + request.getBusinessModels().get(0).setModule("订阅收入"); + ServiceException error = assertThrows(ServiceException.class, () -> new BusinessFeasibilityStepOneServiceImpl().validate(request, student())); + assertEquals("请填写产品销售渠道和增值服务两项商业模式", error.getMessage()); + } + private BusinessFeasibilityStepOneValidationRequest completedRequest() { BusinessFeasibilityStepOneValidationRequest request = new BusinessFeasibilityStepOneValidationRequest(); BusinessFeasibilityStepOneValidationRequest.ProjectOverview overview = new BusinessFeasibilityStepOneValidationRequest.ProjectOverview();