|
1 | 1 | package kr.seok.controller.admin; |
2 | 2 |
|
3 | 3 |
|
| 4 | +import kr.seok.domain.dto.ResourcesDto; |
| 5 | +import kr.seok.domain.entity.Resources; |
| 6 | +import kr.seok.domain.entity.Role; |
| 7 | +import kr.seok.domain.repository.RoleRepository; |
| 8 | +import kr.seok.security.metadatasource.UrlFilterInvocationSecurityMetadataSource; |
| 9 | +import kr.seok.service.ResourcesService; |
| 10 | +import kr.seok.service.RoleService; |
| 11 | +import org.modelmapper.ModelMapper; |
| 12 | +import org.springframework.beans.factory.annotation.Autowired; |
4 | 13 | import org.springframework.stereotype.Controller; |
5 | 14 | import org.springframework.ui.Model; |
6 | 15 | import org.springframework.web.bind.annotation.GetMapping; |
| 16 | +import org.springframework.web.bind.annotation.PathVariable; |
| 17 | +import org.springframework.web.bind.annotation.PostMapping; |
| 18 | + |
| 19 | +import java.util.HashSet; |
| 20 | +import java.util.List; |
| 21 | +import java.util.Set; |
7 | 22 |
|
8 | 23 | @Controller |
9 | 24 | public class ResourcesController { |
10 | 25 |
|
11 | | -// @Autowired |
12 | | -// private ResourcesService resourcesService; |
| 26 | + @Autowired |
| 27 | + private ResourcesService resourcesService; |
13 | 28 |
|
14 | | -// @Autowired |
15 | | -// private RoleRepository roleRepository; |
| 29 | + @Autowired |
| 30 | + private RoleRepository roleRepository; |
16 | 31 |
|
17 | | -// @Autowired |
18 | | -// private RoleService roleService; |
| 32 | + @Autowired |
| 33 | + private RoleService roleService; |
19 | 34 |
|
20 | 35 | // @Autowired |
21 | 36 | // private MethodSecurityService methodSecurityService; |
22 | 37 |
|
23 | | -// @Autowired |
24 | | -// private UrlFilterInvocationSecurityMetadataSource filterInvocationSecurityMetadataSource; |
| 38 | + @Autowired |
| 39 | + private UrlFilterInvocationSecurityMetadataSource filterInvocationSecurityMetadataSource; |
25 | 40 |
|
26 | 41 | @GetMapping(value="/admin/resources") |
27 | 42 | public String getResources(Model model) throws Exception { |
28 | 43 |
|
29 | | -// List<Resources> resources = resourcesService.getResources(); |
30 | | -// model.addAttribute("resources", resources); |
| 44 | + List<Resources> resources = resourcesService.getResources(); |
| 45 | + model.addAttribute("resources", resources); |
31 | 46 |
|
32 | 47 | return "admin/resource/list"; |
33 | 48 | } |
34 | 49 |
|
35 | | -// @PostMapping(value="/admin/resources") |
36 | | -// public String createResources(ResourcesDto resourcesDto) throws Exception { |
37 | | -// |
38 | | -// ModelMapper modelMapper = new ModelMapper(); |
39 | | -// Role role = roleRepository.findByRoleName(resourcesDto.getRoleName()); |
40 | | -// Set<Role> roles = new HashSet<>(); |
41 | | -// roles.add(role); |
42 | | -// Resources resources = modelMapper.map(resourcesDto, Resources.class); |
43 | | -// resources.setRoleSet(roles); |
44 | | -// |
45 | | -// resourcesService.createResources(resources); |
46 | | -// |
47 | | -// if("url".equals(resourcesDto.getResourceType())){ |
48 | | -// filterInvocationSecurityMetadataSource.reload(); |
49 | | -// }else{ |
| 50 | + @PostMapping(value="/admin/resources") |
| 51 | + public String createResources(ResourcesDto resourcesDto) throws Exception { |
| 52 | + |
| 53 | + ModelMapper modelMapper = new ModelMapper(); |
| 54 | + Role role = roleRepository.findByRoleName(resourcesDto.getRoleName()); |
| 55 | + Set<Role> roles = new HashSet<>(); |
| 56 | + roles.add(role); |
| 57 | + Resources resources = modelMapper.map(resourcesDto, Resources.class); |
| 58 | + resources.setRoleSet(roles); |
| 59 | + |
| 60 | + resourcesService.createResources(resources); |
| 61 | + |
| 62 | + if("url".equals(resourcesDto.getResourceType())){ |
| 63 | + /* URL 권한 정보 입력시 reload */ |
| 64 | + filterInvocationSecurityMetadataSource.reload(); |
| 65 | + }else{ |
50 | 66 | // methodSecurityService.addMethodSecured(resourcesDto.getResourceName(),resourcesDto.getRoleName()); |
51 | | -// } |
52 | | -// |
53 | | -// return "redirect:/admin/resources"; |
54 | | -// } |
55 | | - |
56 | | -// @GetMapping(value="/admin/resources/register") |
57 | | -// public String viewRoles(Model model) throws Exception { |
58 | | -// |
59 | | -// List<Role> roleList = roleService.getRoles(); |
60 | | -// model.addAttribute("roleList", roleList); |
61 | | -// |
62 | | -// ResourcesDto resources = new ResourcesDto(); |
63 | | -// Set<Role> roleSet = new HashSet<>(); |
64 | | -// roleSet.add(new Role()); |
65 | | -// resources.setRoleSet(roleSet); |
66 | | -// model.addAttribute("resources", resources); |
67 | | -// |
68 | | -// return "admin/resource/detail"; |
69 | | -// } |
70 | | - |
71 | | -// @GetMapping(value="/admin/resources/{id}") |
72 | | -// public String getResources(@PathVariable String id, Model model) throws Exception { |
73 | | -// |
74 | | -// List<Role> roleList = roleService.getRoles(); |
75 | | -// model.addAttribute("roleList", roleList); |
76 | | -// Resources resources = resourcesService.getResources(Long.valueOf(id)); |
77 | | -// |
78 | | -// ModelMapper modelMapper = new ModelMapper(); |
79 | | -// ResourcesDto resourcesDto = modelMapper.map(resources, ResourcesDto.class); |
80 | | -// model.addAttribute("resources", resourcesDto); |
81 | | -// |
82 | | -// return "admin/resource/detail"; |
83 | | -// } |
84 | | - |
85 | | -// @GetMapping(value="/admin/resources/delete/{id}") |
86 | | -// public String removeResources(@PathVariable String id, Model model) throws Exception { |
87 | | -// |
88 | | -// Resources resources = resourcesService.getResources(Long.valueOf(id)); |
89 | | -// resourcesService.deleteResources(Long.valueOf(id)); |
90 | | -// |
91 | | -// if("url".equals(resources.getResourceType())) { |
92 | | -// filterInvocationSecurityMetadataSource.reload(); |
93 | | -// }else{ |
| 67 | + } |
| 68 | + |
| 69 | + return "redirect:/admin/resources"; |
| 70 | + } |
| 71 | + |
| 72 | + @GetMapping(value="/admin/resources/register") |
| 73 | + public String viewRoles(Model model) throws Exception { |
| 74 | + |
| 75 | + List<Role> roleList = roleService.getRoles(); |
| 76 | + model.addAttribute("roleList", roleList); |
| 77 | + |
| 78 | + ResourcesDto resources = new ResourcesDto(); |
| 79 | + Set<Role> roleSet = new HashSet<>(); |
| 80 | + roleSet.add(new Role()); |
| 81 | + resources.setRoleSet(roleSet); |
| 82 | + model.addAttribute("resources", resources); |
| 83 | + |
| 84 | + return "admin/resource/detail"; |
| 85 | + } |
| 86 | + |
| 87 | + @GetMapping(value="/admin/resources/{id}") |
| 88 | + public String getResources(@PathVariable String id, Model model) throws Exception { |
| 89 | + |
| 90 | + List<Role> roleList = roleService.getRoles(); |
| 91 | + model.addAttribute("roleList", roleList); |
| 92 | + Resources resources = resourcesService.getResources(Long.valueOf(id)); |
| 93 | + |
| 94 | + ModelMapper modelMapper = new ModelMapper(); |
| 95 | + ResourcesDto resourcesDto = modelMapper.map(resources, ResourcesDto.class); |
| 96 | + model.addAttribute("resources", resourcesDto); |
| 97 | + |
| 98 | + return "admin/resource/detail"; |
| 99 | + } |
| 100 | + |
| 101 | + @GetMapping(value="/admin/resources/delete/{id}") |
| 102 | + public String removeResources(@PathVariable String id, Model model) throws Exception { |
| 103 | + |
| 104 | + Resources resources = resourcesService.getResources(Long.valueOf(id)); |
| 105 | + resourcesService.deleteResources(Long.valueOf(id)); |
| 106 | + |
| 107 | + if("url".equals(resources.getResourceType())) { |
| 108 | + filterInvocationSecurityMetadataSource.reload(); |
| 109 | + }else{ |
94 | 110 | // methodSecurityService.removeMethodSecured(resources.getResourceName()); |
95 | | -// } |
96 | | -// |
97 | | -// return "redirect:/admin/resources"; |
98 | | -// } |
| 111 | + } |
| 112 | + |
| 113 | + return "redirect:/admin/resources"; |
| 114 | + } |
99 | 115 | } |
0 commit comments