This repository has been archived on 2021-09-15. You can view files and clone it, but cannot push or open issues or pull requests.
L3GestionParking/src/m/Place.py

83 lines
1.8 KiB
Python

import datetime
import random
import string
__author__ = 'sidya'
class Place:
"""
Representation d'une place
"""
def __init__(self, numero, niveau, longueur,hauteur):
"""
Creer une place.
Les dimensions doivent etre données en cm (longueur, hauteur)
:param numero: int
:param niveau: int
:param longueur: int
:param hauteur: int
:return:
"""
self.__numero = numero
self.__niveau = niveau
self.__longueur = longueur
self.__hauteur = hauteur
self.__estLibre = True
self.__estSuperAbo = False
self.__Placement = None
@property
def estLibre(self):
return self.__estLibre
@property
def estReserver(self):
return self.__estSuperAbo
def dimValide(self, h, l):
"""
Retourn si un element de hauteur (cm) h et de longueur(cm) l passe dans la place
:param h: int
:param l: int
:return: bool
"""
return h < self.__hauteur and l < self.__longueur
def superAbo(self):
"""
Renvoit si la place est une place superAbo
:return: bool
"""
if (self.__estSuperAbo == True):
raise Exception("Place déjà reservé")
self.__estSuperAbo = True
def prendre(self):
"""
Rend la place indisponible
:param Placement:
:return:
"""
if (self.__estLibre == False):
raise Exception("Place déjà prise")
self.__estLibre = False
def liberer(self):
"""
Libere une place non dispo
:return:
"""
if (self.__estLibre == True):
raise Exception("Impossible de liberer une place vide")
self.__estLibre = True