Asignaciòn Automàtica de Php-Residence

 

Descripciòn de la Asignaciòn Automàtica

  Que php-residence puede asignar automaticamente las reservas significa que se puede insertar una reserva dàndole una lista de apartamentos, màs bien que uno fijo, y php-residence le asignarà un apartamento de la lista considerando las caracterìsticas de los apartamentos y maximizando la disponibilidad.
  La caracterìsticas de los apartamentos que son consideradas son el màximo nùmero de personas que puede acoger y la prioridad, valores que son insertados a la creaciòn de la base de datos y pueden ser modificados desde la tabla con todos los apartamentos. El màximo nùmero de personas es considerado en que no puede ser màs bajo del nùmero de personas de la reserva. Se puede igualmente insertar una reserva con màs personas del màximo del apartamento en el que es insertada utilizando un coste añadido que sea considerado como nùmero de camas extras. La prioridad es considerada en que los apartmentos que tengan la màs baja son asignados los primeros. Por ùltimo, si se insertan màs reservas contemporaneamente, se pueden insertar en apartamentos cercanos entre ellos.
  Para maximizar la disponibilidad php-residence desplazarà las reservas entre sus apartamentos asignados si es necesario para liberar un apartamento en el perìodo pedido. Asumamos por ejemplo que tenemos esta situaciòn en una residencia con 4 apartamentos:

  01
---
02
02
---
03
03
---
04
04
---
05
05
---
06
06
---
07
07
---
08
08
---
09
09
---
10
10
---
11
11
---
12
12
---
13
1
10

12
   
2
11
 1  2  
4
 13 
3
  8
7

5
 
4
    9
  3    6      

donde por simplicidad hay solo reservas que pueden ser asignadas a cualquiera de los 4 apartamentos, en verde, y reservas que son asignadas a un solo apartamento fijo, en rojo. Si ahora se inserta una nueva reserva, la nùmero 14, en el perìodo desde el dìa 8 al 10, php-residence moverà las reservas 10, 1, 2 y 7 para liberar un apartamento y esta serà la nueva situaciòn:

  01
---
02
02
---
03
03
---
04
04
---
05
05
---
06
06
---
07
07
---
08
08
---
09
09
---
10
10
---
11
11
---
12
12
---
13
1     1 12    
2   11   7 4
13
3     8
  2   14 5
 
4   10 9
  3   6    

Si se hubiese intentado insertar la reserva 14 en un apartamento diferente del nùmero 3 php-residence habrìa respondido que no era posible insertar la reserva en los apartamentos pedidos. Naturalmente las reservas que ya han empezado no seràn movidas del apartamento donde estàn, a menos que no se las desplaze manualmente una por una. Asì en el ejemplo anterior si hoy fuese el dìa 2 no se habrìa podido insertar la reserva 14 a menos que no se hubiese desplazado antes la reserva 10 en el apartamento 4.
  Al insertar una reserva se puede escoger la lista de apartamentos directamente, especificando los nùmeros o las caracterìsticas (casa, piso, nùmero de personas), o escogiendo la tarifa con la regla de asignaciòn 2. Esta regla asigna a cada tarifa una lista de apartamentos que son automaticamente seleccionados cuando se escoge la tarifa y no se dà otra lista directamente. Con la regla de asignaciòn 2 se puede por ejemplo asociar la tarifa "doble" a todos los apartamentos que pueden acoger 2 personas.
  La regla de asignaciòn 1 en cambio se puede utilizar para reservar algunos perìodos de un apartamento a agencias. De esta manera php-residence intentarà no utilizar estos perìodos hasta que no sea necesario, y entonces avisarà antes de insertar una reserva en uno de ellos.