backend/services/license_service.py (30 lines of code) (raw):

from backend.models.dtos.licenses_dto import LicenseDTO, LicenseListDTO from backend.models.postgis.licenses import License from backend.models.postgis.utils import NotFound class LicenseService: @staticmethod def get_license(license_id: int) -> License: """ Get task from DB :raises: NotFound """ map_license = License.get_by_id(license_id) if map_license is None: raise NotFound() return map_license @staticmethod def get_license_as_dto(license_id: int) -> LicenseDTO: """ Get License from DB """ map_license = LicenseService.get_license(license_id) return map_license.as_dto() @staticmethod def create_licence(license_dto: LicenseDTO) -> int: """ Create License in DB """ new_licence_id = License.create_from_dto(license_dto) return new_licence_id @staticmethod def update_licence(license_dto: LicenseDTO) -> LicenseDTO: """ Create License in DB """ map_license = LicenseService.get_license(license_dto.license_id) map_license.update_license(license_dto) return map_license.as_dto() @staticmethod def delete_license(license_id: int): """ Delete specified license""" map_license = LicenseService.get_license(license_id) map_license.delete() @staticmethod def get_all_licenses() -> LicenseListDTO: """ Get all licenses in DB """ return License.get_all()