{"id":28383638,"url":"https://github.com/spookyless/pz1-hotel","last_synced_at":"2025-10-07T21:10:48.076Z","repository":{"id":205879668,"uuid":"715242488","full_name":"Spookyless/pz1-hotel","owner":"Spookyless","description":"Project for \"Programowanie Zaawansowane 1\" course at AGH University of Krakow","archived":false,"fork":false,"pushed_at":"2024-01-15T13:39:30.000Z","size":33,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-21T17:05:06.992Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Spookyless.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-11-06T18:48:09.000Z","updated_at":"2023-11-06T22:09:40.000Z","dependencies_parsed_at":"2024-01-15T15:34:07.740Z","dependency_job_id":"1a7c7fd2-7f56-4f98-a4bd-21627ce039d1","html_url":"https://github.com/Spookyless/pz1-hotel","commit_stats":null,"previous_names":["spookyless/pz1-hotel"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Spookyless/pz1-hotel","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Spookyless%2Fpz1-hotel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Spookyless%2Fpz1-hotel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Spookyless%2Fpz1-hotel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Spookyless%2Fpz1-hotel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Spookyless","download_url":"https://codeload.github.com/Spookyless/pz1-hotel/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Spookyless%2Fpz1-hotel/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265327760,"owners_count":23747761,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-05-30T06:47:33.359Z","updated_at":"2025-10-07T21:10:43.027Z","avatar_url":"https://github.com/Spookyless.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pz1-hotel\n\n[![Build Status](https://drone.spookyless.net/api/badges/Spookyless/pz1-hotel/status.svg)](https://drone.spookyless.net/Spookyless/pz1-hotel)\n[![Quality Gate Status](https://sonar.spookyless.net/api/project_badges/measure?project=Spookyless_pz1-hotel_AYumlzOy6v4EdcFC8vRC\u0026metric=alert_status)](https://sonar.spookyless.net/dashboard?id=Spookyless_pz1-hotel_AYumlzOy6v4EdcFC8vRC)\n[![Coverage](https://sonar.spookyless.net/api/project_badges/measure?project=Spookyless_pz1-hotel_AYumlzOy6v4EdcFC8vRC\u0026metric=coverage)](https://sonar.spookyless.net/dashboard?id=Spookyless_pz1-hotel_AYumlzOy6v4EdcFC8vRC)\n\nProject created for [Programowanie Zaawansowane 1](https://sylabusy.agh.edu.pl/en/1/2/18/1/4/16/140) course at AGH University of Krakow.\n\n## Project description\n\n### Hotel management\nCreate a simple CLI program that manages a hotel. Rooms are numbered using whole numbers, where the first digit signifies the floor of the room (i.e. room number 101 is located on the first floor).\n\nProgram should allow to use the following commands (case-insensitive):\n- `list` - lists all the rooms\n- `view` - prompts for room number, then displays information about the room and the guest, if any is staying there. If the room doesn't exist shows an error\n- `checkin` - prompts for room number, then asks for guest's details and assigns him to the room. If the room is occupied or not valid, shows an error\n- `checkout` - reverse of `checkin`, prompts for room number and removes the quest. If the room is not occupied or not valid, shows an error\n- (bonus) `save` - saves current state to CSV/XLSX file\n- `exit` - self-explanatory\n\n### Implementation of Map\nYou are also required to write your own implementation of a generic class `MyMap`, which implements the `Map` interface with (at least) these methods:\n```Java\npublic interface Map\u003cK, V\u003e {\n    boolean put(K key, V value);\n    boolean remove(K key);\n    V get(K key);\n    List\u003cK\u003e keys();\n}\n```\n\n\nYou can use the following classes to implement it: `java.util.List`, `java.util.LinkedList`, `java.util.ArrayList`.\nYour implementation should be based on two lists: keys and values.\n\n### Bonus\nThe initial configuration of the hotel should be read from a CSV/XLSX file with the following structure:\n\n| room number | description | price | (optional) guest |\n|-------------|-------------|-------|------------------|\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspookyless%2Fpz1-hotel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspookyless%2Fpz1-hotel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspookyless%2Fpz1-hotel/lists"}