From a4f2cf2fcb09a557b61212749b5bc685dd26e1e2 Mon Sep 17 00:00:00 2001 From: Anton Romanov Date: Wed, 26 Feb 2025 12:03:11 +0400 Subject: [PATCH] #6 -- Check permissions to the fuzzy rule --- .../ru/ulstu/fc/rule/service/FuzzyRuleService.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/java/ru/ulstu/fc/rule/service/FuzzyRuleService.java b/src/main/java/ru/ulstu/fc/rule/service/FuzzyRuleService.java index 8093133..bde8fb2 100644 --- a/src/main/java/ru/ulstu/fc/rule/service/FuzzyRuleService.java +++ b/src/main/java/ru/ulstu/fc/rule/service/FuzzyRuleService.java @@ -11,15 +11,18 @@ public class FuzzyRuleService { private final FuzzyRuleRepository ruleRepository; private final ProjectService projectService; - public FuzzyRuleService(FuzzyRuleRepository ruleRepository, ProjectService projectService) { + public FuzzyRuleService(FuzzyRuleRepository ruleRepository, + ProjectService projectService) { this.ruleRepository = ruleRepository; this.projectService = projectService; } public FuzzyRule getById(Integer id) { - return ruleRepository + FuzzyRule fuzzyRule = ruleRepository .findById(id) .orElseThrow(() -> new RuntimeException("Rule not found by id")); + checkIsCurrentUserFuzzyRuleWithThrow(fuzzyRule); + return fuzzyRule; } public FuzzyRule save(FuzzyRuleForm ruleForm) { @@ -35,7 +38,10 @@ public class FuzzyRuleService { } public void delete(FuzzyRuleForm ruleForm) { - getById(ruleForm.getId()); - ruleRepository.deleteById(ruleForm.getId()); + ruleRepository.delete(getById(ruleForm.getId())); + } + + public void checkIsCurrentUserFuzzyRuleWithThrow(FuzzyRule fuzzyRule) { + projectService.checkIsCurrentUserProjectWithThrow(fuzzyRule.getProject()); } }