Room allocation software for managing living space and office space at one of Andela's facilities, Amity. Person added to the system can be a fellow or a staff and a room can be an office or a living Space.
Rooms are allocated randomly to person when added to the application. Living space can take a maximum of 4 while office can take 6.
Note: Office is available to Staff and Fellow but Living space is available to only fellows who choose to have one.
The application needs the folloing modules to work
- Docopt
- coverage
- nose
- pytest
You'll need python 3.* to run the application
Activate Virtual enviroment for installing requirements
$ git clone https://github.com/andela-aabdulwahab/checkpoint_one.git
$ cd checkpoint_one
$ pip install -r requirements
$ python app/app.py --help
$ app.py create_room (<room_name> <room_type> [-g=RG])...
$ app.py add_person <first_name> <last_name> <gender> <person_type> [-w=WA]
$ app.py relocate_person <person_identifier> <new_room_name>
$ app.py delete_room <room_name>
$ app.py delete_person <person_id>
$ app.py print_persons
$ app.py print_allocation [-o=FN]
$ app.py print_unallocated [-o=FN]
$ app.py print_room <room_name>
$ app.py save_state [-b=SQLD]
$ app.py load_state <db_path>
option:
-help -h Geting help on using the program
-g RG, --rgender=RG To specify gender of Occupant of a living room
-w WA, --wants_accom=WA An option argument to specify that person want accomodation
-o FN, --option=FN Optional file name when printing to file
-b SQLD --db=SQLD Database to load from the path provided
demo video can be found at checkpoint_one_demo