Changes between Initial Version and Version 1 of Transactions


Ignore:
Timestamp:
09/24/25 23:24:29 (3 weeks ago)
Author:
226026
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Transactions

    v1 v1  
     1= Транзакции
     2== Прифаќање на пријава и зачувување на приложениот feedback
     3{{{
     4@Transactional
     5    public void accept(BBUser creator, Integer reqId) {
     6        ProjectRequests prReq = getRequestById(reqId);
     7        prReq.setStatus(Status.ACCEPTED);
     8
     9        feedbackService.create(creator,FeedbackFor.P,prReq);
     10        projectService.addDeveloperToProject(prReq.getProject(), prReq.getCreator());
     11        prReqRepo.save(prReq);
     12    }
     13}}}
     14
     15== Одбивање на пријава и зачувување на прилоѓениот feedback
     16{{{
     17@Transactional
     18    public void deny(Integer reqId, String desc, BBUser creator) {
     19        ProjectRequests prReq = getRequestById(reqId);
     20        prReq.setStatus(Status.DENIED);
     21        feedbackService.create(desc,creator,FeedbackFor.P,prReq);
     22        prReqRepo.save(prReq);
     23    }
     24}}}
     25
     26== Ажурирање на постоечка улога
     27{{{
     28@Transactional
     29    public void updateRole(Integer id, AddRoleDTOEntities addRoleDTO) {
     30
     31        ProjectRole existingRole = projectRoleRepository.findById(id).orElseThrow(() -> new IllegalArgumentException("bad role id"));
     32        projectRolePermissionRepository.deleteAllByIdRole(existingRole);
     33
     34        existingRole.setName(addRoleDTO.getName());
     35        existingRole.setOverrideType(addRoleDTO.getProjectResourcePermissionOverrideType().toString());
     36
     37        projectRoleRepository.save(existingRole);
     38
     39        List<ProjectRolePermission> newGlobalPermissions = mapGlobalsToProjectRolePermissions(existingRole, addRoleDTO.getGlobalPermissions());
     40        List<ProjectRolePermission> newPerResourcePermissions = mapPerResourceToProjectRolePermissions(existingRole,addRoleDTO.getPermissionsResourceWrappers());
     41        List<ProjectRolePermissionResourceOverride> resourceOverrides = mapToResourceOverrides(getResources(addRoleDTO.getPermissionsResourceWrappers()),newPerResourcePermissions);
     42
     43
     44        projectRolePermissionRepository.saveAll(newGlobalPermissions);
     45        projectRolePermissionRepository.saveAll(newPerResourcePermissions);
     46        projectRolePermissionResourceOverrideRepository.saveAll(resourceOverrides);
     47
     48    }
     49
     50}}}
     51=== Додавање на нова улога во проект
     52{{{
     53    @Transactional
     54    public void addRole(AddRoleDTOEntities addRoleDTO) {
     55        ProjectRole role = projectRoleRepository.save(
     56                new ProjectRole(
     57                        addRoleDTO.getProject(),
     58                        addRoleDTO.getName(),
     59                        addRoleDTO.getProjectResourcePermissionOverrideType().toString()
     60                )
     61        );
     62
     63        List<ProjectRolePermission> entities = mapPerResourceToProjectRolePermissions(role, addRoleDTO.getPermissionsResourceWrappers());
     64        projectRolePermissionRepository.saveAll(mapGlobalsToProjectRolePermissions(role, addRoleDTO.getGlobalPermissions()));
     65        projectRolePermissionRepository.saveAll(entities);
     66        projectRolePermissionResourceOverrideRepository.saveAll(mapToResourceOverrides(
     67                getResources(addRoleDTO.getPermissionsResourceWrappers()),
     68                entities
     69        ));
     70}}}
     71