diff --git a/Answers/Yas_HasssanPour_40231712003/.gitignore b/Answers/Yas_HasssanPour_40231712003/.gitignore new file mode 100644 index 0000000..5ff6309 --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/.gitignore @@ -0,0 +1,38 @@ +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### IntelliJ IDEA ### +.idea/modules.xml +.idea/jarRepositories.xml +.idea/compiler.xml +.idea/libraries/ +*.iws +*.iml +*.ipr + +### Eclipse ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ + +### Mac OS ### +.DS_Store \ No newline at end of file diff --git a/Answers/Yas_HasssanPour_40231712003/.idea/.gitignore b/Answers/Yas_HasssanPour_40231712003/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/Answers/Yas_HasssanPour_40231712003/.idea/encodings.xml b/Answers/Yas_HasssanPour_40231712003/.idea/encodings.xml new file mode 100644 index 0000000..aa00ffa --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/.idea/encodings.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/Answers/Yas_HasssanPour_40231712003/.idea/misc.xml b/Answers/Yas_HasssanPour_40231712003/.idea/misc.xml new file mode 100644 index 0000000..f346f33 --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/.idea/misc.xml @@ -0,0 +1,14 @@ + + + + + + + + + + \ No newline at end of file diff --git a/Answers/Yas_HasssanPour_40231712003/.idea/vcs.xml b/Answers/Yas_HasssanPour_40231712003/.idea/vcs.xml new file mode 100644 index 0000000..b2bdec2 --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Answers/Yas_HasssanPour_40231712003/pom.xml b/Answers/Yas_HasssanPour_40231712003/pom.xml new file mode 100644 index 0000000..ba51b4a --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/pom.xml @@ -0,0 +1,17 @@ + + + 4.0.0 + + org.example + Yas_HasssanPour_40231712003 + 1.0-SNAPSHOT + + + 22 + 22 + UTF-8 + + + \ No newline at end of file diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Admin.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Admin.java new file mode 100644 index 0000000..5c27414 --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Admin.java @@ -0,0 +1,19 @@ +package org.example; + +public class Admin extends User{ + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + private String password; + public Admin (String name, int ID, int phoneNuM, String password) + { + super(name, ID, phoneNuM); + this.password= password; + } + +} diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Book.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Book.java new file mode 100644 index 0000000..9baefe1 --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Book.java @@ -0,0 +1,53 @@ +package org.example; + +import java.util.HashMap; + +public class Book { + private int Unique_bookID; + private String title; + private String author; + private boolean Availability_status; + String Description; + + public int getUnique_bookID() { + return Unique_bookID; + } + + public void setUnique_bookID(int unique_bookID) { + Unique_bookID = unique_bookID; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getAuthor() { + return author; + } + + public void setAuthor(String author) { + this.author = author; + } + + public boolean isAvailability_status() { + return Availability_status; + } + + public void setAvailability_status(boolean availability_status) { + Availability_status = availability_status; + } + + + public Book (String title, int bookID, String author, String description) { + Unique_bookID = bookID; + this.title = title; + this.author = author; + this.Availability_status = true; + this.Description= description; + } +} + diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/CLI.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/CLI.java new file mode 100644 index 0000000..152e7ef --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/CLI.java @@ -0,0 +1,14 @@ +package org.example; + +import java.util.Scanner; + +public class CLI { + Scanner scanner = new Scanner(System.in); + System.out.println("Welcom to our library! What can we do for you?\n lib add book: add a new book to the library\n lib get hrs: Retrieve library opening hours\n lib rent: Rent a book from the library\nlib add member : Add a new member to the library (admin privilege reqiuered\nlib rent "); + String input = scanner.nextLine(); + + while (true) { + System.out.println("Enter a command (type 'help' for available commands):"); + String command = scanner.nextLine(); +} + diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Library.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Library.java new file mode 100644 index 0000000..968b70b --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Library.java @@ -0,0 +1,70 @@ +package org.example; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +public class Library { + public String getLibraryName() { + return LibraryName; + } + + public void setLibraryName(String libraryName) { + LibraryName = libraryName; + } + + public int getCapacity() { + return capacity; + } + + public void setCapacity(int capacity) { + this.capacity = capacity; + } + + public int getOperatingHours() { + return operatingHours; + } + + public void setOperatingHours(int operatingHours) { + this.operatingHours = operatingHours; + } + + private String LibraryName; + private int capacity; + private int operatingHours; + private ArrayListbookRepo; + private ListuserRegistries; + private ListrentalRegistries; + public Library (String LibraryName,int capacity, int operatingHours) + { + this.LibraryName= LibraryName; + this.capacity= capacity; + this.operatingHours= operatingHours; + this.bookRepo= new ArrayList<>(); + this.userRegistries= new ArrayList<>(); + this.rentalRegistries= new ArrayList<>(); + } + public void addBook(Book book) + { + bookRepo.add(book); + } + public void addUser(User user) + { + userRegistries.add(user); + } + public void rentBook(Book book, NormalUser user, int rentalID, Date rentalDate) + { + Rent rent = new Rent(book, user, rentalID, rentalDate); + rentalRegistries.add(rent); + book.setAvailability_status(false); + } + public void returnBook(Book book) + { + book.setAvailability_status(true); + } + public void removeUser (User user) + { + userRegistries.remove(user); + } + +} diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/MyApp.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/MyApp.java new file mode 100644 index 0000000..6752680 --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/MyApp.java @@ -0,0 +1,25 @@ +package org.example; + +import java.util.Date; + +public class MyApp { + public static void main(String[] args) { + + Library library = new Library("My Library", 100, 9_5); + + Book book1 = new Book("Book2", 82734,"author1", "Description1"); + Book book2 = new Book("Book2", 23984,"author2", "Description2"); + library.addBook(book1); + library.addBook(book2); + + NormalUser user1 = new NormalUser("User1", 1234567890,"09112143646", new Date()); + library.addUser(user1); + + + library.rentBook(book1, user1, 1, new Date()); + library.returnBook(book1); + library.removeUser(user1); + } + + + } diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/NormalUser.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/NormalUser.java new file mode 100644 index 0000000..7f0d310 --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/NormalUser.java @@ -0,0 +1,21 @@ +package org.example; + +import java.util.Date; + +public class NormalUser extends User{ + private Date registrationDate; + + public Date getRegistrationDate() { + return registrationDate; + } + + public void setRegistrationDate(Date registrationDate) { + this.registrationDate = registrationDate; + } + + public NormalUser(String name, int ID, String phoneNum, Date registrationDate) + { + super(name,ID,phoneNum); + this.registrationDate= registrationDate; + } +} diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Rent.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Rent.java new file mode 100644 index 0000000..f84756f --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/Rent.java @@ -0,0 +1,54 @@ +package org.example; + +import java.util.Date; + +public class Rent { + public void setBook(Book book) { + this.book = book; + } + + public void setNormalUser(NormalUser normalUser) { + this.normalUser = normalUser; + } + + public void setRentalID(int rentalID) { + this.rentalID = rentalID; + } + + public void setRentalDate(Date rentalDate) { + this.rentalDate = rentalDate; + } + + private Book book; + private NormalUser normalUser; + private int rentalID; + + public Book getBook() { + return book; + } + + public NormalUser getNormalUser() { + return normalUser; + } + + public int getRentalID() { + return rentalID; + } + + public Date getRentalDate() { + return rentalDate; + } + + private Date rentalDate; + public Rent (Book book, NormalUser normalUser, int rentalID, Date rentalDate) + { + this.book = book; + this.normalUser= normalUser; + this.rentalID = rentalID; + this.rentalDate= rentalDate; + } + + + + +} diff --git a/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/User.java b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/User.java new file mode 100644 index 0000000..331700f --- /dev/null +++ b/Answers/Yas_HasssanPour_40231712003/src/main/java/org/example/User.java @@ -0,0 +1,41 @@ +package org.example; + +import java.util.HashMap; + +public class User { + private String name; + private int ID; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getID() { + return ID; + } + + public void setID(int ID) { + this.ID = ID; + } + + public String getPhoneNum() { + return phoneNum; + } + + public void setPhoneNum(String phoneNum) { + this.phoneNum = phoneNum; + } + + private String phoneNum; + public User(String name, int ID, String PhoneNum) { + this.name = name; + this.ID = ID; + this.phoneNum = phoneNum; + } + +} +