From 18aac5b8781135b3bbdc4f2befaa5358a6e24326 Mon Sep 17 00:00:00 2001 From: Viido Kaur Lutsar <ohganot@ut.ee> Date: Sat, 11 Dec 2021 02:24:48 +0200 Subject: [PATCH] Add api endpoint for list of all accounts --- .../bank/api/account/AccountController.java | 18 ++++++++++++------ .../bank/api/account/AccountService.java | 4 ++++ 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/backend/src/main/java/ut/sysmod/bank/api/account/AccountController.java b/backend/src/main/java/ut/sysmod/bank/api/account/AccountController.java index 6f14be2..a1a7048 100644 --- a/backend/src/main/java/ut/sysmod/bank/api/account/AccountController.java +++ b/backend/src/main/java/ut/sysmod/bank/api/account/AccountController.java @@ -1,16 +1,15 @@ package ut.sysmod.bank.api.account; import lombok.RequiredArgsConstructor; +import org.apache.catalina.connector.Response; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; import ut.sysmod.bank.api.account.dto.AccountDTO; +import java.util.List; + @RestController @RequiredArgsConstructor @RequestMapping(value = "api/v1/accounts") @@ -34,4 +33,11 @@ public class AccountController { public ResponseEntity<Account> addMoney(@PathVariable("id") long id, @RequestBody int amount) { return new ResponseEntity<>(accountService.addMoney(id, amount), HttpStatus.OK); } + + + @GetMapping("/") + @PreAuthorize("hasAuthority('ROLE_ADMIN')") + public ResponseEntity<List<Account>> getAccounts(){ + return new ResponseEntity<>(accountService.getAccounts(), HttpStatus.OK); + } } diff --git a/backend/src/main/java/ut/sysmod/bank/api/account/AccountService.java b/backend/src/main/java/ut/sysmod/bank/api/account/AccountService.java index 67ad465..936c5ba 100644 --- a/backend/src/main/java/ut/sysmod/bank/api/account/AccountService.java +++ b/backend/src/main/java/ut/sysmod/bank/api/account/AccountService.java @@ -52,4 +52,8 @@ public class AccountService { return account; } + + public List<Account> getAccounts() { + return accountRepository.findAll(); + } } -- GitLab