Class FolderController
java.lang.Object
org.qubership.atp.itf.lite.backend.controllers.FolderController
@RestController
@RequestMapping("/atp-itf-lite/api/v1/folders")
public class FolderController
extends Object
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.springframework.http.ResponseEntity<Void> copyFolders(@Valid FolderCopyRequest request) Copy folder.org.springframework.http.ResponseEntity<Long> countFolderHeirs(@Valid FolderDeleteRequest request) Find folders heirs.org.springframework.http.ResponseEntity<Folder> createFolder(@Valid FolderUpsetRequest request) Create folder.voiddataBindings(org.springframework.web.bind.WebDataBinder binder) Bind validators.org.springframework.http.ResponseEntity<Void> deleteFolders(@Valid FolderDeleteRequest request) Delete folders.org.springframework.http.ResponseEntity<Void> editFolder(UUID folderId, FolderEditRequest request) Update folder.org.springframework.http.ResponseEntity<Collection<Folder>> getAllFolders(UUID projectId) Get all folders under project.org.springframework.http.ResponseEntity<GroupResponse> getFolderRequestsTree(Boolean onlyFolders, @Valid FolderTreeSearchRequest request) Get all folders and requests for a specific level under a project.org.springframework.http.ResponseEntity<Settings> getFolderSettings(UUID folderId) Get folder settings.moveFolders(@Valid FolderMoveRequest request) Move folder.org.springframework.http.ResponseEntity<Void> order(UUID folderId, FolderOrderChangeRequest request)
-
Constructor Details
-
FolderController
public FolderController()
-
-
Method Details
-
dataBindings
@InitBinder public void dataBindings(org.springframework.web.bind.WebDataBinder binder) Bind validators.- Parameters:
binder- binder
-
getAllFolders
@PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.itf.lite.backend.utils.UserManagementEntities).FOLDER.getName(),#projectId,\'READ\')") @GetMapping public org.springframework.http.ResponseEntity<Collection<Folder>> getAllFolders(@RequestParam(required=false) UUID projectId) Get all folders under project.- Parameters:
projectId- project identifier- Returns:
- number of folders
-
getFolderSettings
@PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.itf.lite.backend.utils.UserManagementEntities).FOLDER.getName(),@folderService.getFolder(#folderId).getProjectId(), \'READ\')") @GetMapping("/{id}/settings") public org.springframework.http.ResponseEntity<Settings> getFolderSettings(@PathVariable("id") UUID folderId) Get folder settings.- Parameters:
folderId- folder identifier.- Returns:
- folder settings
-
createFolder
@PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.itf.lite.backend.utils.UserManagementEntities).FOLDER.getName(),#request.getProjectId(),#request.getParentId() != null ? @folderService.getFolder(#request.getParentId()).getPermissionFolderId() : null,\'CREATE\')") @PostMapping public org.springframework.http.ResponseEntity<Folder> createFolder(@RequestBody @Valid @Valid FolderUpsetRequest request) throws Exception Create folder.- Parameters:
request- create folder request entity- Returns:
- created folder entity
- Throws:
Exception
-
editFolder
@PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.itf.lite.backend.utils.UserManagementEntities).FOLDER.getName(),#request.getProjectId(), @folderService.getFolder(#folderId).getPermissionFolderId(), \'UPDATE\')") @PutMapping("/{id}") public org.springframework.http.ResponseEntity<Void> editFolder(@PathVariable("id") UUID folderId, @RequestBody FolderEditRequest request) throws Exception Update folder.- Parameters:
request- update folder request entity.- Returns:
- update folder entity
- Throws:
Exception
-
copyFolders
@PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.itf.lite.backend.utils.UserManagementEntities).FOLDER.getName(),#request.getProjectId(),#request.getToFolderId() != null ? @folderService.getFolder(#request.getToFolderId()).getPermissionFolderId() : null,\'CREATE\')") @PostMapping("/copy") public org.springframework.http.ResponseEntity<Void> copyFolders(@RequestBody @Valid @Valid FolderCopyRequest request) Copy folder.- Parameters:
request- copy folder request entity.- Returns:
- operation confirmation status success
-
moveFolders
@PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.itf.lite.backend.utils.UserManagementEntities).FOLDER.getName(),#request.getProjectId(),#request.getToFolderId() != null ? @folderService.getFolder(#request.getToFolderId()).getPermissionFolderId() : null,\'CREATE\')") @PostMapping("/move") public org.springframework.http.ResponseEntity<List<UUID>> moveFolders(@RequestBody @Valid @Valid FolderMoveRequest request) Move folder.- Parameters:
request- move folder request entity.- Returns:
- operation confirmation status success
-
deleteFolders
@PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.itf.lite.backend.utils.UserManagementEntities).FOLDER.getName(),#request.getProjectId(),@folderService.getPermissionFolderIdsByFolderIds(#request.getIds()),\'DELETE\')") @DeleteMapping public org.springframework.http.ResponseEntity<Void> deleteFolders(@RequestBody @Valid @Valid FolderDeleteRequest request) Delete folders.- Parameters:
request- delete folders request
-
countFolderHeirs
@PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.itf.lite.backend.utils.UserManagementEntities).FOLDER.getName(),#request.getProjectId(),\'READ\')") @PostMapping("/countHeirs") public org.springframework.http.ResponseEntity<Long> countFolderHeirs(@RequestBody @Valid @Valid FolderDeleteRequest request) Find folders heirs.- Parameters:
request- delete folders request
-
getFolderRequestsTree
@PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.itf.lite.backend.utils.UserManagementEntities).FOLDER.getName(),#request.getProjectId(),\'READ\')") @PostMapping("/tree") public org.springframework.http.ResponseEntity<GroupResponse> getFolderRequestsTree(@RequestParam(required=false,defaultValue="false") Boolean onlyFolders, @RequestBody @Valid @Valid FolderTreeSearchRequest request) Get all folders and requests for a specific level under a project. Also, should be used for requests search.- Parameters:
request- tree search request
-
order
@PreAuthorize("@entityAccess.checkAccess(T(org.qubership.atp.itf.lite.backend.utils.UserManagementEntities).FOLDER.getName(),#request.getProjectId(),@folderService.getFolder(#folderId).getPermissionFolderId(),\'UPDATE\')") @PostMapping("/{id}/order") public org.springframework.http.ResponseEntity<Void> order(@PathVariable("id") UUID folderId, @RequestBody FolderOrderChangeRequest request)
-