AuthorityController.java 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package com.izouma.awesomeAdmin.web;
  2. import com.izouma.awesomeAdmin.repo.AuthorityRepo;
  3. import com.izouma.awesomeAdmin.security.Authority;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.security.access.prepost.PreAuthorize;
  6. import org.springframework.web.bind.annotation.*;
  7. import javax.annotation.PostConstruct;
  8. import java.util.List;
  9. @RestController
  10. @RequestMapping("/authority")
  11. public class AuthorityController extends BaseController {
  12. @Autowired
  13. private AuthorityRepo authorityRepo;
  14. @PreAuthorize("hasRole('ADMIN')")
  15. @GetMapping("/all")
  16. public List<Authority> all() {
  17. return authorityRepo.findAll();
  18. }
  19. @PreAuthorize("hasRole('ADMIN')")
  20. @PostMapping("/save")
  21. public Authority save(Authority authority) {
  22. return authorityRepo.save(authority);
  23. }
  24. @PostConstruct
  25. public void init() {
  26. authorityRepo.save(new Authority(Authority.NAMES.ROLE_ADMIN.name()));
  27. authorityRepo.save(new Authority(Authority.NAMES.ROLE_USER.name()));
  28. authorityRepo.save(new Authority(Authority.NAMES.ROLE_DEV.name()));
  29. }
  30. }