package com.mattrixwv.raidbuilder.service; import java.util.List; import java.util.UUID; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.mattrixwv.raidbuilder.entity.RaidGroupPermission; import com.mattrixwv.raidbuilder.repository.raid_group_permission.RaidGroupPermissionRepository; import lombok.RequiredArgsConstructor; @Service @Transactional(rollbackFor = Exception.class) @RequiredArgsConstructor public class RaidGroupPermissionService{ private final RaidGroupPermissionRepository raidGroupPermissionRepository; //Write public void deleteByAccountId(UUID accountId){ raidGroupPermissionRepository.deleteAllByAccountId(accountId); } public void deleteByRaidGroupId(UUID raidGroupId){ raidGroupPermissionRepository.deleteAllByRaidGroupId(raidGroupId); } public void deleteByAccountIdAndRaidGroupId(UUID accountId, UUID raidGroupId){ raidGroupPermissionRepository.deleteByAccountIdAndRaidGroupId(accountId, raidGroupId); } public void deleteByRaidGroupIds(Iterable raidGroupIds){ raidGroupPermissionRepository.deleteAllByRaidGroupIdIn(raidGroupIds); } //Read public RaidGroupPermission createRaidGroupPermission(RaidGroupPermission raidGroupPermission){ return raidGroupPermissionRepository.save(raidGroupPermission); } public List getByAccountId(UUID accountId){ return raidGroupPermissionRepository.findAllByAccountId(accountId); } public RaidGroupPermission getByAccountIdAndRaidGroupId(UUID accountId, UUID raidGroupId){ return raidGroupPermissionRepository.findByAccountIdAndRaidGroupId(accountId, raidGroupId); } }