From 525d324bdfe4be76c52527423b6f56579797493a Mon Sep 17 00:00:00 2001 From: nafasrezae Date: Fri, 10 May 2024 21:53:52 +0430 Subject: [PATCH 1/2] done --- Answers/LibraryManagement/.gitignore | 38 ++++++ Answers/LibraryManagement/.idea/.gitignore | 3 + Answers/LibraryManagement/.idea/encodings.xml | 7 + Answers/LibraryManagement/.idea/misc.xml | 14 ++ .../LibraryManagement/.idea/uiDesigner.xml | 124 ++++++++++++++++++ Answers/LibraryManagement/pom.xml | 17 +++ .../src/main/java/org/example/Admin.java | 35 +++++ .../src/main/java/org/example/Book.java | 45 +++++++ .../src/main/java/org/example/CLI.java | 117 +++++++++++++++++ .../src/main/java/org/example/Library.java | 97 ++++++++++++++ .../src/main/java/org/example/MyApp.java | 10 ++ .../src/main/java/org/example/NormalUser.java | 39 ++++++ .../src/main/java/org/example/Rent.java | 37 ++++++ .../src/main/java/org/example/User.java | 33 +++++ 14 files changed, 616 insertions(+) create mode 100644 Answers/LibraryManagement/.gitignore create mode 100644 Answers/LibraryManagement/.idea/.gitignore create mode 100644 Answers/LibraryManagement/.idea/encodings.xml create mode 100644 Answers/LibraryManagement/.idea/misc.xml create mode 100644 Answers/LibraryManagement/.idea/uiDesigner.xml create mode 100644 Answers/LibraryManagement/pom.xml create mode 100644 Answers/LibraryManagement/src/main/java/org/example/Admin.java create mode 100644 Answers/LibraryManagement/src/main/java/org/example/Book.java create mode 100644 Answers/LibraryManagement/src/main/java/org/example/CLI.java create mode 100644 Answers/LibraryManagement/src/main/java/org/example/Library.java create mode 100644 Answers/LibraryManagement/src/main/java/org/example/MyApp.java create mode 100644 Answers/LibraryManagement/src/main/java/org/example/NormalUser.java create mode 100644 Answers/LibraryManagement/src/main/java/org/example/Rent.java create mode 100644 Answers/LibraryManagement/src/main/java/org/example/User.java diff --git a/Answers/LibraryManagement/.gitignore b/Answers/LibraryManagement/.gitignore new file mode 100644 index 0000000..5ff6309 --- /dev/null +++ b/Answers/LibraryManagement/.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/LibraryManagement/.idea/.gitignore b/Answers/LibraryManagement/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/Answers/LibraryManagement/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/Answers/LibraryManagement/.idea/encodings.xml b/Answers/LibraryManagement/.idea/encodings.xml new file mode 100644 index 0000000..aa00ffa --- /dev/null +++ b/Answers/LibraryManagement/.idea/encodings.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/Answers/LibraryManagement/.idea/misc.xml b/Answers/LibraryManagement/.idea/misc.xml new file mode 100644 index 0000000..82dbec8 --- /dev/null +++ b/Answers/LibraryManagement/.idea/misc.xml @@ -0,0 +1,14 @@ + + + + + + + + + + \ No newline at end of file diff --git a/Answers/LibraryManagement/.idea/uiDesigner.xml b/Answers/LibraryManagement/.idea/uiDesigner.xml new file mode 100644 index 0000000..2b63946 --- /dev/null +++ b/Answers/LibraryManagement/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Answers/LibraryManagement/pom.xml b/Answers/LibraryManagement/pom.xml new file mode 100644 index 0000000..bcaed17 --- /dev/null +++ b/Answers/LibraryManagement/pom.xml @@ -0,0 +1,17 @@ + + + 4.0.0 + + org.example + LibraryManagement + 1.0-SNAPSHOT + + + 17 + 17 + UTF-8 + + + \ No newline at end of file diff --git a/Answers/LibraryManagement/src/main/java/org/example/Admin.java b/Answers/LibraryManagement/src/main/java/org/example/Admin.java new file mode 100644 index 0000000..6f6579a --- /dev/null +++ b/Answers/LibraryManagement/src/main/java/org/example/Admin.java @@ -0,0 +1,35 @@ +package org.example; + +public class Admin { + private static int firstId; + private String Id; + private static String Name; + private static String PhoneNumber; + + static String idgenerator() { + String ID = "Admin Id is " + firstId; + firstId += firstId; + return (ID); + } + + public Admin(String Id, String Name, String PhoneNumber) { + this.Id = idgenerator(); + this.Name = Name; + this.PhoneNumber = PhoneNumber; + } + + public String getId() { + return Id; + } + + public String getName() { + return Name; + } + + public String getPhoneNumber() { + return PhoneNumber; + } + public static void Login(String password){ + + } +} diff --git a/Answers/LibraryManagement/src/main/java/org/example/Book.java b/Answers/LibraryManagement/src/main/java/org/example/Book.java new file mode 100644 index 0000000..465be54 --- /dev/null +++ b/Answers/LibraryManagement/src/main/java/org/example/Book.java @@ -0,0 +1,45 @@ +package org.example; + +public class Book { + private static int firstId = 1; + private String Id; + private static String Title; + private static String Author; + private static Boolean status; + private static String Description; + + public Book(String Id, String Title, String Author, boolean status, String Description){ + this.Id = idgenerator(); + this.Title = Title; + this.Author = Author; + this.status = true; + this.Description = Description; + + } + + public void setStatus(boolean status){ + this.status = status; + } + + static String idgenerator(){ + String ID = "book number" + firstId; + firstId+=firstId; + return(ID); + } + public String getId() { + return Id; + } + + public static String getTitle() { + return Title; + } + + public static String getAuthor() { + return Author; + } + + public static boolean isAvailable() { + return status; + } + +} \ No newline at end of file diff --git a/Answers/LibraryManagement/src/main/java/org/example/CLI.java b/Answers/LibraryManagement/src/main/java/org/example/CLI.java new file mode 100644 index 0000000..539eebc --- /dev/null +++ b/Answers/LibraryManagement/src/main/java/org/example/CLI.java @@ -0,0 +1,117 @@ +package org.example; + +import java.util.Scanner; + +public class CLI { + private static Library library; + public CLI(Library library) { + this.library = library; + } + private static void pcommand() { + System.out.println("commands are:"); + System.out.println("lib add book : Add a new book to the library."); + System.out.println("lib get hrs: Retrieve library operating hours."); + System.out.println("lib rent : Rent a book from the library."); + System.out.println("lib add member : Add a new member to the library (admin privilege required)."); + System.out.println("lib rent : Rent a book for a specific member."); + System.out.println("lib get available books: View available books for rental."); + System.out.println("lib remove member : Remove a member from the library (admin privilege required)."); + System.out.println("lib return : Return a rented book to the library."); + System.out.println("Exit; to exit."); + } + + private static void Perform(String input) { + String[] parts = input.split(" ", 2); + if (parts.length == 0) { + System.out.println("command not found. Type 'command' to see available commands."); + return; + } + String command = parts[0].toLowerCase(); + String arguments = parts.length > 1 ? parts[1] : ""; + + switch (command) { + case "lib": + commandControl(arguments); + break; + case "exit": + System.out.println("Exiting Library CLI. Goodbye!"); + break; + case "command": + pcommand(); + break; + default: + System.out.println("command not founf. Type 'command' to see available commands."); + break; + } + } + + public static void start() { + System.out.println("Type *command* to see available commands."); + + while (true) { + Scanner scanner = new Scanner(System.in); + String input = scanner.nextLine(); + + if (input.equals("exit")) { + System.out.println("program is finished"); + return; + } + + Perform(input); + } + } + + public static void commandControl(String arguments) { + String[] parts = arguments.split(" ", 2); + if (parts.length == 0) { + System.out.println("command NOT FOUND. Type 'command' to see available commands."); + return; + } + + String subCommand = parts[0].toLowerCase(); + String subArguments = parts.length > 1 ? parts[1] : ""; + + switch (subCommand) { + case "add": + addCMD(subArguments); + break; + case "get": + handleGetCommand(subArguments); + break; + case "rent": + break; + case "remove": + break; + case "return": + break; + default: + System.out.println("command not found. Type 'command' to see commands."); + break; + } + } + + private static void addCMD(String arguments) { + String[] parts = arguments.split(" ", 4); + if (parts.length < 3) { + System.out.println("Invalid command format. Usage: lib add book "); + return; + } + + String name = parts[1]; + String author = parts[2]; + String subtitle = parts.length > 3 ? parts[3] : ""; + library.addbook(new Book(Book.idgenerator(), Book.getTitle(), Book.getAuthor(), Book.isAvailable(), " ")); + System.out.println("Book added successfully."); + } + + private static void handleGetCommand(String arguments) { + if (arguments.equalsIgnoreCase("hrs")) { + System.out.println("Operating hours: " + library.getOperatingHours()); + } else { + System.out.println("Invalid 'get' command. Type 'help' to see available commands."); + } + } + + + +} diff --git a/Answers/LibraryManagement/src/main/java/org/example/Library.java b/Answers/LibraryManagement/src/main/java/org/example/Library.java new file mode 100644 index 0000000..8fd9545 --- /dev/null +++ b/Answers/LibraryManagement/src/main/java/org/example/Library.java @@ -0,0 +1,97 @@ +package org.example; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.ArrayList; + +public class Library { + + private static String name; + private static int capacity; + private static String OperatingHours; + private static ArrayList bookRepository; + private static HashMap UserRegistery; + private static ArrayList RentalRegistery; + + public Library(String name, int capacity, String OperatingHours) { + this.name = name; + this.capacity = capacity; + this.OperatingHours = OperatingHours; + this.bookRepository = new ArrayList<>(); + this.UserRegistery = new HashMap<>(); + this.RentalRegistery = new ArrayList<>(); + } + public void addbook(Book book){ + if (bookRepository.size() > capacity){ + bookRepository.add(book); + System.out.println("The book: " + Book.getTitle() + "added to book repository."); + } + else { + System.out.println("the book repository is full."); + } + } + public void adduser(NormalUser normalUser){ + UserRegistery.put(NormalUser.getId(), normalUser); + System.out.println("The user " + NormalUser.getName() + "has been added to the library."); + } + public void removebook(Book book){ + if (bookRepository.contains(book)){ + bookRepository.remove(book); + System.out.println("book has been removed sucssesfully."); + } + else { + System.out.println("we didnt find the book."); + } + } + public void removeuser(NormalUser normalUser){ + if (UserRegistery.containsValue(normalUser)){ + UserRegistery.remove(normalUser); + System.out.println("User removed from the library."); + } + else{ + System.out.println("user not found."); + } + } + public void rentbook(NormalUser normalUser, Book book, String RentalId){ + Rent newrent = new Rent(book, normalUser, RentalId, Rent.getRentalDate()); + RentalRegistery.add(newrent); + System.out.println("book added sucssesfully."); + } + public void returnbook(NormalUser normalUser, Book book){ + for (int i = 0; i getbookRepository(){ + return bookRepository; + } + public static String getOperatingHours(){ + return OperatingHours; + } + public static HashMap getUserRegistery(){ + return UserRegistery; + } + public static ArrayList getRentalRegistery(){ + return RentalRegistery; + } +} + + + + + + + diff --git a/Answers/LibraryManagement/src/main/java/org/example/MyApp.java b/Answers/LibraryManagement/src/main/java/org/example/MyApp.java new file mode 100644 index 0000000..e349e7c --- /dev/null +++ b/Answers/LibraryManagement/src/main/java/org/example/MyApp.java @@ -0,0 +1,10 @@ +package org.example; + +public class MyApp{ + + public static void main(String[] args) { + Library library = new Library(Library.getname(), Library.getcapacity(), Library.getOperatingHours()); + CLI cli = new CLI(library); + cli.start(); + } +} \ No newline at end of file diff --git a/Answers/LibraryManagement/src/main/java/org/example/NormalUser.java b/Answers/LibraryManagement/src/main/java/org/example/NormalUser.java new file mode 100644 index 0000000..d6184f8 --- /dev/null +++ b/Answers/LibraryManagement/src/main/java/org/example/NormalUser.java @@ -0,0 +1,39 @@ +package org.example; + +public class NormalUser { + private static int firstId; + private static String Id; + private static String Name; + private static String PhoneNumber; + private static String Date; + + static String idgenerator() { + String ID = "Normal User Id is " + firstId; + firstId += firstId; + return (ID); + } + + public NormalUser(String Id, String Name, String PhoneNumber, String Date) { + this.Id = idgenerator(); + this.Name = Name; + this.PhoneNumber = PhoneNumber; + this.Date = Date; + + } + + public static String getId() { + return Id; + } + + public static String getName() { + return Name; + } + + public String getPhoneNumber() { + return PhoneNumber; + } + public String getDate() { + return Date; + } + +} diff --git a/Answers/LibraryManagement/src/main/java/org/example/Rent.java b/Answers/LibraryManagement/src/main/java/org/example/Rent.java new file mode 100644 index 0000000..3a9df65 --- /dev/null +++ b/Answers/LibraryManagement/src/main/java/org/example/Rent.java @@ -0,0 +1,37 @@ +package org.example; +import java.time.LocalDate; + +public class Rent { + private static int firstId = 1; + private static Book book; + private static NormalUser normalUser; + private static String RentalId; + private static LocalDate RentalDate; + + static String idgenerator() { + String ID = "Rental Id is " + firstId; + firstId += firstId; + return (ID); + } + + public Rent(Book book, NormalUser normalUser,String RentalId,LocalDate RentalDate){ + this.book = book; + this.normalUser = normalUser; + this.RentalId = idgenerator(); + this.RentalDate = RentalDate; + } + + public static Book getBook(){ + return book; + } + public static NormalUser getNormalUser(){ + return normalUser; + } + public static String getRentalId(){ + return RentalId; + } + public static LocalDate getRentalDate(){ + return RentalDate; + } + +} \ No newline at end of file diff --git a/Answers/LibraryManagement/src/main/java/org/example/User.java b/Answers/LibraryManagement/src/main/java/org/example/User.java new file mode 100644 index 0000000..08238e6 --- /dev/null +++ b/Answers/LibraryManagement/src/main/java/org/example/User.java @@ -0,0 +1,33 @@ +package org.example; + +public class User { + + private static int firstId; + private static String Id; + private static String Name; + private static String PhoneNumber; + + static String idgenerator() { + String ID = "User Id is " + firstId; + firstId += firstId; + return (ID); + } + + public User(String Id, String Name, String PhoneNumber) { + this.Id = idgenerator(); + this.Name = Name; + this.PhoneNumber = PhoneNumber; + } + + public static String getId() { + return Id; + } + + public static String getName() { + return Name; + } + + public static String getPhoneNumber() { + return PhoneNumber; + } +} \ No newline at end of file From 0308d829196541737ecc8ddd333d36f42c956f0d Mon Sep 17 00:00:00 2001 From: nafasrezae Date: Thu, 16 May 2024 20:55:55 +0430 Subject: [PATCH 2/2] done --- Answers/LibraryManagement/.idea/vcs.xml | 6 + .../src/main/java/org/example/Book.java | 9 +- .../src/main/java/org/example/CLI.java | 131 +++++++++++------- .../src/main/java/org/example/Library.java | 21 +-- .../src/main/java/org/example/Rent.java | 19 ++- 5 files changed, 114 insertions(+), 72 deletions(-) create mode 100644 Answers/LibraryManagement/.idea/vcs.xml diff --git a/Answers/LibraryManagement/.idea/vcs.xml b/Answers/LibraryManagement/.idea/vcs.xml new file mode 100644 index 0000000..b2bdec2 --- /dev/null +++ b/Answers/LibraryManagement/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Answers/LibraryManagement/src/main/java/org/example/Book.java b/Answers/LibraryManagement/src/main/java/org/example/Book.java index 465be54..7094062 100644 --- a/Answers/LibraryManagement/src/main/java/org/example/Book.java +++ b/Answers/LibraryManagement/src/main/java/org/example/Book.java @@ -2,13 +2,13 @@ public class Book { private static int firstId = 1; - private String Id; + private static String Id; private static String Title; private static String Author; private static Boolean status; private static String Description; - public Book(String Id, String Title, String Author, boolean status, String Description){ + public Book(String Title, String Author, String Description){ this.Id = idgenerator(); this.Title = Title; this.Author = Author; @@ -26,7 +26,7 @@ static String idgenerator(){ firstId+=firstId; return(ID); } - public String getId() { + public static String getId() { return Id; } @@ -42,4 +42,7 @@ public static boolean isAvailable() { return status; } + public static String getDescription(){ + return Description; + } } \ No newline at end of file diff --git a/Answers/LibraryManagement/src/main/java/org/example/CLI.java b/Answers/LibraryManagement/src/main/java/org/example/CLI.java index 539eebc..af3af1d 100644 --- a/Answers/LibraryManagement/src/main/java/org/example/CLI.java +++ b/Answers/LibraryManagement/src/main/java/org/example/CLI.java @@ -4,114 +4,145 @@ public class CLI { private static Library library; + public CLI(Library library) { this.library = library; } - private static void pcommand() { - System.out.println("commands are:"); - System.out.println("lib add book : Add a new book to the library."); - System.out.println("lib get hrs: Retrieve library operating hours."); - System.out.println("lib rent : Rent a book from the library."); - System.out.println("lib add member : Add a new member to the library (admin privilege required)."); - System.out.println("lib rent : Rent a book for a specific member."); - System.out.println("lib get available books: View available books for rental."); - System.out.println("lib remove member : Remove a member from the library (admin privilege required)."); - System.out.println("lib return : Return a rented book to the library."); - System.out.println("Exit; to exit."); + + public static void start() { + System.out.println("Type 'command' to see available commands."); + + try (Scanner scanner = new Scanner(System.in)) { + while (true) { + String input = scanner.nextLine().trim(); + if (input.equals("exit")) { + System.out.println("Exiting..."); + return; + } else { + perform(input); + } + } + } } - private static void Perform(String input) { + public static void perform(String input) { String[] parts = input.split(" ", 2); if (parts.length == 0) { - System.out.println("command not found. Type 'command' to see available commands."); + System.out.println("Command not found."); return; } String command = parts[0].toLowerCase(); - String arguments = parts.length > 1 ? parts[1] : ""; + String arguments = (parts.length > 1) ? parts[1] : ""; switch (command) { case "lib": - commandControl(arguments); + edame(arguments); break; case "exit": - System.out.println("Exiting Library CLI. Goodbye!"); + System.out.println("Exiting..."); break; case "command": - pcommand(); + commands(); break; default: - System.out.println("command not founf. Type 'command' to see available commands."); + System.out.println("Command not found. Type 'command' to see available commands."); break; } } - public static void start() { - System.out.println("Type *command* to see available commands."); - - while (true) { - Scanner scanner = new Scanner(System.in); - String input = scanner.nextLine(); - - if (input.equals("exit")) { - System.out.println("program is finished"); - return; - } - - Perform(input); - } - } - - public static void commandControl(String arguments) { + public static void edame(String arguments) { String[] parts = arguments.split(" ", 2); if (parts.length == 0) { - System.out.println("command NOT FOUND. Type 'command' to see available commands."); + System.out.println("Command NOT FOUND. Type 'command' to see available commands."); return; } String subCommand = parts[0].toLowerCase(); - String subArguments = parts.length > 1 ? parts[1] : ""; - + String subArguments = (parts.length > 1) ? parts[1] : ""; switch (subCommand) { case "add": - addCMD(subArguments); + addBook(subArguments); break; case "get": - handleGetCommand(subArguments); + handleGet(subArguments); break; case "rent": + rentBook(subArguments); break; case "remove": + removeMember(subArguments); break; case "return": + returnBook(subArguments); break; default: - System.out.println("command not found. Type 'command' to see commands."); + System.out.println("Command not found. Type 'command' to see commands."); break; } } - private static void addCMD(String arguments) { - String[] parts = arguments.split(" ", 4); + public static void addBook(String arguments) { + String[] parts = arguments.split(" ", 3); if (parts.length < 3) { System.out.println("Invalid command format. Usage: lib add book "); return; } - - String name = parts[1]; - String author = parts[2]; - String subtitle = parts.length > 3 ? parts[3] : ""; - library.addbook(new Book(Book.idgenerator(), Book.getTitle(), Book.getAuthor(), Book.isAvailable(), " ")); + String name = parts[0]; + String author = parts[1]; + String subtitle = (parts.length > 2) ? parts[2] : ""; + library.addbook(new Book(name, author, subtitle)); System.out.println("Book added successfully."); } - private static void handleGetCommand(String arguments) { + public static void handleGet(String arguments) { if (arguments.equalsIgnoreCase("hrs")) { System.out.println("Operating hours: " + library.getOperatingHours()); } else { - System.out.println("Invalid 'get' command. Type 'help' to see available commands."); + System.out.println(library.getbookRepository()); + } + } + + public static void rentBook(String arguments) { + String[] parts = arguments.split(" ", 3); + if (parts.length < 3) { + System.out.println("Invalid command format."); + return; } + String bookName = parts[0]; + String memberName = parts[1]; + String memberID = parts[2]; + library.rentbook(bookName, memberName, memberID); + System.out.println("Book rented successfully."); } + public static void removeMember(String arguments) { + if (arguments.isEmpty()) { + System.out.println("Invalid command format."); + return; + } + library.removeuser(arguments); + System.out.println("Member removed successfully."); + } + public static void returnBook(String arguments) { + if (arguments.isEmpty()) { + System.out.println("Invalid command format."); + return; + } + library.returnbook(arguments); + System.out.println("Book returned successfully."); + } + public static void commands() { + System.out.println("Choose a command:"); + System.out.println("lib add book : Add a new book to the library."); + System.out.println("lib get hrs: Retrieve library operating hours."); + System.out.println("lib rent : Rent a book from the library."); + System.out.println("lib add member : Add a new member to the library (admin privilege required)."); + System.out.println("lib rent : Rent a book for a specific member."); + System.out.println("lib get available books: See available books for rental."); + System.out.println("lib remove member : Remove a member from the library (admin privilege required)."); + System.out.println("lib return : Return a rented book to the library."); + System.out.println("Exit: Exit the program."); + } } diff --git a/Answers/LibraryManagement/src/main/java/org/example/Library.java b/Answers/LibraryManagement/src/main/java/org/example/Library.java index 8fd9545..077816c 100644 --- a/Answers/LibraryManagement/src/main/java/org/example/Library.java +++ b/Answers/LibraryManagement/src/main/java/org/example/Library.java @@ -31,7 +31,7 @@ public void addbook(Book book){ } } public void adduser(NormalUser normalUser){ - UserRegistery.put(NormalUser.getId(), normalUser); + UserRegistery.put(NormalUser.getName(), normalUser); System.out.println("The user " + NormalUser.getName() + "has been added to the library."); } public void removebook(Book book){ @@ -43,24 +43,25 @@ public void removebook(Book book){ System.out.println("we didnt find the book."); } } - public void removeuser(NormalUser normalUser){ - if (UserRegistery.containsValue(normalUser)){ - UserRegistery.remove(normalUser); + public void removeuser(String normalUsername){ + if (UserRegistery.containsValue(normalUsername)){ + UserRegistery.remove(normalUsername); System.out.println("User removed from the library."); } else{ System.out.println("user not found."); } } - public void rentbook(NormalUser normalUser, Book book, String RentalId){ - Rent newrent = new Rent(book, normalUser, RentalId, Rent.getRentalDate()); + public void rentbook(String bookname, String normalUsername, String RentalId){ + Rent newrent = new Rent(Rent.getBookname(), Rent.getNormalUsername(), Rent.getRentalId()); RentalRegistery.add(newrent); System.out.println("book added sucssesfully."); } - public void returnbook(NormalUser normalUser, Book book){ + public void returnbook(String bookname){ for (int i = 0; i getbookRepository(){ return bookRepository; } diff --git a/Answers/LibraryManagement/src/main/java/org/example/Rent.java b/Answers/LibraryManagement/src/main/java/org/example/Rent.java index 3a9df65..22085fc 100644 --- a/Answers/LibraryManagement/src/main/java/org/example/Rent.java +++ b/Answers/LibraryManagement/src/main/java/org/example/Rent.java @@ -3,8 +3,8 @@ public class Rent { private static int firstId = 1; - private static Book book; - private static NormalUser normalUser; + private static String bookname; + private static String normalUsername; private static String RentalId; private static LocalDate RentalDate; @@ -14,18 +14,17 @@ static String idgenerator() { return (ID); } - public Rent(Book book, NormalUser normalUser,String RentalId,LocalDate RentalDate){ - this.book = book; - this.normalUser = normalUser; + public Rent(String bookname, String normalUsername,String RentalId){ + this.bookname = bookname; + this.normalUsername = normalUsername; this.RentalId = idgenerator(); - this.RentalDate = RentalDate; } - public static Book getBook(){ - return book; + public static String getBookname(){ + return bookname; } - public static NormalUser getNormalUser(){ - return normalUser; + public static String getNormalUsername(){ + return normalUsername; } public static String getRentalId(){ return RentalId;