fix: 校验商业可行性论证模块

main
陈沅 3 days ago
parent a216204de3
commit 97408f590d

@ -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<BusinessFeasibilityStepOneValidationRequest.CostItem> costs) {

@ -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();

Loading…
Cancel
Save