Add PermissionRepository and update PermissionService

Introduced PermissionRepository for managing User entities and refactored PermissionService to use this new repository instead of UserRepository. This change streamlines permission-related operations and improves code organization.
dev-pending-01-01-2026
Naeem Ullah 4 weeks ago
parent cf224e3f85
commit 6225454d51

@ -0,0 +1,7 @@
package com.mfsys.aconnect.usermanagement.repository;
import com.mfsys.aconnect.usermanagement.model.User;
import org.springframework.data.jpa.repository.JpaRepository;
public interface PermissionRepository extends JpaRepository<User, String> {
}

@ -3,6 +3,7 @@ package com.mfsys.aconnect.usermanagement.service;
import com.mfsys.aconnect.usermanagement.dto.PermissionDTO; import com.mfsys.aconnect.usermanagement.dto.PermissionDTO;
import com.mfsys.aconnect.usermanagement.dto.UserDTOs; import com.mfsys.aconnect.usermanagement.dto.UserDTOs;
import com.mfsys.aconnect.usermanagement.model.User; import com.mfsys.aconnect.usermanagement.model.User;
import com.mfsys.aconnect.usermanagement.repository.PermissionRepository;
import com.mfsys.aconnect.usermanagement.repository.UserRepository; import com.mfsys.aconnect.usermanagement.repository.UserRepository;
import com.mfsys.common.configuration.service.PasswordEncryptionService; import com.mfsys.common.configuration.service.PasswordEncryptionService;
import jakarta.persistence.EntityNotFoundException; import jakarta.persistence.EntityNotFoundException;
@ -11,30 +12,26 @@ import org.springframework.transaction.annotation.Transactional;
@Service @Service
public class PermissionService { public class PermissionService {
private final UserRepository userRepository; private final PermissionRepository permissionRepository;
private final PasswordEncryptionService passwordEncryptionService;
public PermissionService(UserRepository userRepository, PasswordEncryptionService passwordEncryptionService) { public PermissionService(PermissionRepository permissionRepository) {
this.userRepository = userRepository; this.permissionRepository = permissionRepository;
this.passwordEncryptionService = passwordEncryptionService;
} }
@Transactional @Transactional
public UserDTOs.UserResponse saveUserPermissions(PermissionDTO permissionDTO) { public UserDTOs.UserResponse saveUserPermissions(PermissionDTO permissionDTO) {
User user = userRepository.findById(permissionDTO.getUserId()) User user = permissionRepository.findById(permissionDTO.getUserId())
.orElseThrow(() -> new EntityNotFoundException("User not found with ID: " + permissionDTO.getUserId())); .orElseThrow(() -> new EntityNotFoundException("User not found with ID: " + permissionDTO.getUserId()));
// Convert list of permissions to comma-separated string
String permissions = String.join(",", permissionDTO.getPermissions()); String permissions = String.join(",", permissionDTO.getPermissions());
user.setPermissions(permissions); user.setPermissions(permissions);
User updatedUser = userRepository.save(user); User updatedUser = permissionRepository.save(user);
return mapToResponseDTO(updatedUser); return mapToResponseDTO(updatedUser);
} }
public PermissionDTO getUserPermissions(String userId) { public PermissionDTO getUserPermissions(String userId) {
User user = userRepository.findById(userId) User user = permissionRepository.findById(userId)
.orElseThrow(() -> new EntityNotFoundException("User not found with ID: " + userId)); .orElseThrow(() -> new EntityNotFoundException("User not found with ID: " + userId));
PermissionDTO dto = new PermissionDTO(); PermissionDTO dto = new PermissionDTO();

Loading…
Cancel
Save