package io.gmss.fiscad.interfaces.infocad.metier;

import io.gmss.fiscad.entities.infocad.metier.Parcelle;
import io.gmss.fiscad.exceptions.BadRequestException;
import io.gmss.fiscad.exceptions.NotFoundException;
import io.gmss.fiscad.paylaods.request.ParcellePayLoad;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Optional;

public interface ParcelleService {


    Parcelle createParcelle(ParcellePayLoad parcellePayLoad) throws BadRequestException;

    Parcelle updateParcelle(ParcellePayLoad parcellePayLoad) throws NotFoundException;

    void deleteParcelle(Long id) throws NotFoundException;

    Page<Parcelle> getParcelleList(Pageable pageable);

    List<Parcelle> getParcelleList();

    Optional<Parcelle> getParcelleById(Long id);
}
