Advertisement
Guest User

Untitled

a guest
Apr 7th, 2016
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.22 KB | None | 0 0
  1. import java.io.IOException;
  2. import java.sql.Date;
  3. import java.text.ParseException;
  4. import java.text.SimpleDateFormat;
  5. import java.util.ArrayList;
  6. import java.util.InputMismatchException;
  7. import java.util.Iterator;
  8. import java.util.Scanner;
  9. public class Depot{
  10. String name;
  11. int counter = 0;
  12. @SuppressWarnings("deprecation")
  13. Long date3 = 1478217600000L;
  14. Date date1 = new Date(1478217600000L);
  15. Date date2 = new Date(1479217600000L);
  16. Driver driver = new Driver("tom", "tom", false);
  17. Driver driver2 = new Driver("phil2", "phil2", false);
  18. Driver driver3 = new Driver("phil", "phil", true);
  19. Manager manager = new Manager("ben", "ben", true);
  20. Truck vehicle1 = new Truck("audi", "t45", 46, "0000", true, 500);
  21. Tanker vehicle2 = new Tanker("audi", "t45", 32, "0001", true, 350);
  22. Tanker vehicle3 = new Tanker("audi", "t45", 50, "0002", false, 600);
  23. WorkSchedule sche1 = new WorkSchedule("tom", "george", date1, date2, "0001", "Pending");
  24. WorkSchedule sche2 = new WorkSchedule("phil", "george2", date1, date2, "0002", "Pending");
  25. static ArrayList<Driver> driverArray = new ArrayList<Driver>();
  26. static ArrayList<Vehicle> vehicleArray = new ArrayList<Vehicle>();
  27. static ArrayList<WorkSchedule> workSArray = new ArrayList<WorkSchedule>();
  28. public void LogOn(){
  29. Scanner in = new Scanner(System.in);
  30. System.out.println(" Welcome to the depot system \n Enter your Username and Password to continue \n Username: ");
  31. String temp = in.nextLine();
  32. if (counter > 3){
  33. System.out.print("You have entered the incorect details three times the system will now close! \n");
  34. System.exit(0);
  35. }
  36. for (int i = 0; i < driverArray.size(); i++) {
  37. if(driverArray.get(i).CheckUsername(temp)){
  38. System.out.println(" Password: ");
  39. String temp2 = in.nextLine();
  40. if(driverArray.get(i)instanceof Manager){;
  41. if(driverArray.get(i).CheckPassword(temp2)){
  42. System.out.print("\n Notifications: ");
  43. driverArray.get(i).PrintNotifications();
  44. DriverMenu();
  45. }else {
  46. System.out.println("Your details are incorect please try again! \n");
  47. counter++;
  48. LogOn();
  49. }
  50. }else {
  51. if(driverArray.get(i).CheckPassword(temp2)){
  52. System.out.print("\n Notifications: ");
  53. driverArray.get(i).PrintNotifications();
  54.  
  55. System.out.print("\n To view your Work Schedule enter your username");
  56. Scanner keyboard = new Scanner(System.in);
  57. String client = keyboard.nextLine();
  58. PrintSchedUN(client);
  59. System.out.print("\n \n press Enter to Exit.");
  60. keyboard.nextLine();
  61. }else {
  62. System.out.println("Your details are incorect please try again! \n");
  63. counter++;
  64. LogOn();
  65. }
  66. }
  67. }
  68. }
  69. counter++;
  70. }
  71. public static Container GetVehicle(String reg) {
  72. Container b = new Container();
  73. Container c = new Container();
  74. c.SetContainer(false, 0);
  75. for (int i = 0; i < vehicleArray.size(); i++) {
  76. b.SetContainer(true, i);
  77. if (vehicleArray.get(i).CheckRegNo(reg))
  78. return b;
  79. }
  80. return c;
  81. }
  82. public static Container GetDriver(String driver) {
  83. Container b = new Container();
  84. Container c = new Container();
  85. c.SetContainer(false, 0);
  86. for (int i = 0; i < driverArray.size(); i++) {
  87. b.SetContainer(true, i);
  88. if (driverArray.get(i).CheckUsername(driver))
  89. return b;
  90. }
  91. return c;
  92. }
  93. public static void PrintSched(String Sched) {
  94. for (int i = 0; i < workSArray.size(); i++) {
  95. if (workSArray.get(i).CheckClientName(Sched))
  96. workSArray.get(i).PrintSchedule();
  97. else
  98. System.out.println("No Schedule under this name exists \n");
  99. }
  100. }
  101. public static void PrintSchedUN(String Sched) {
  102. for (int i = 0; i < workSArray.size(); i++) {
  103. if (workSArray.get(i).CheckUsername(Sched))
  104. workSArray.get(i).PrintSchedule();
  105. else
  106. System.out.println("No Schedule under this name exists \n");
  107. }
  108. }
  109. public boolean CheckDepotName(String depotName) {
  110. return name.equals(depotName);
  111. }
  112. public static void SetUpWorkSchedule() {
  113. Scanner in = new Scanner(System.in);
  114. int selection = 0;
  115. do {
  116. try {
  117. System.out.println("1. Create new schedule");
  118. System.out.println("2. Remove schedule");
  119. System.out.println("3. Exit");
  120. System.out.print("Please select an option: \n");
  121. selection = in.nextInt();
  122. } catch (InputMismatchException e) {
  123. System.out.println("Enter a valid number from the list!\n");
  124. }
  125. in.nextLine();
  126. switch (selection) {
  127. case 1:
  128. System.out.print("You selected option 1 \n");
  129. System.out.print("Please enter the reg no. of the vehicle \n");
  130. Scanner keyboard2 = new Scanner(System.in);
  131. String reg = keyboard2.nextLine();
  132. if (GetVehicle(reg).isTrue) {
  133. if (vehicleArray.get(GetVehicle(reg).num).IsAvailable()) {
  134. System.out.print("Please enter the drivers username \n");
  135. Scanner keyboard3 = new Scanner(System.in);
  136. String driver = keyboard2.nextLine();
  137. if (GetDriver(driver).isTrue) {
  138. if (driverArray.get(GetDriver(driver).num).IsAvailable()) {
  139. try {
  140. driverArray.get(GetDriver(driver).num).SetSchedule(reg, driver);
  141. } catch (IOException e) {
  142. // TODO Auto-generated catch block
  143. e.printStackTrace();
  144. }
  145. } else {
  146. System.out.println("Driver is unavailable");
  147. break;
  148. }
  149. }
  150. } else {
  151. System.out.println("Vehicle is unavailable");
  152. break;
  153. }
  154. }
  155. break;
  156. case 2:
  157. System.out.print("You selected option 3 \n");
  158. System.out.print("REMOVE SCHEDULE \n");
  159. Scanner keyboard3 = new Scanner(System.in);
  160. System.out.println("Please enter the name of the driver who's schedule you wish to remove");
  161. String removeDriver = keyboard3.nextLine();
  162. Iterator<WorkSchedule> it = workSArray.iterator();
  163. while (it.hasNext()) {
  164. WorkSchedule user = it.next();
  165. if (user.CheckUsername(removeDriver)) {
  166. it.remove();
  167. }
  168. }
  169. System.out.print("You have chosen to remove:" + removeDriver);
  170. break;
  171. case 3:
  172. DriverMenu();
  173. break;
  174. default:
  175. System.out.print("The selection is invalid.");
  176. break;
  177. }
  178. } while (selection != 4);
  179. }
  180. public Depot(String Name) {
  181. this.name = Name;
  182. driverArray.add(driver);
  183. driverArray.add(driver2);
  184. driverArray.add(driver3);
  185. driverArray.add(manager);
  186. vehicleArray.add(vehicle1);
  187. vehicleArray.add(vehicle2);
  188. vehicleArray.add(vehicle3);
  189. workSArray.add(sche1);
  190. workSArray.add(sche2);
  191. }
  192. public Boolean CheckDepotName1(String name) {
  193. return this.name.equals(name);
  194. }
  195. public static void DriverMenu() {
  196. Scanner in = new Scanner(System.in);
  197. int selection = 0;
  198. do {
  199. try {
  200. System.out.println("1. view work schedule");
  201. System.out.println("2. View drivers");
  202. System.out.println("3. Create schedule");
  203. System.out.println("4. Add vehicle");
  204. System.out.println("5. Remove vehicle");
  205. System.out.println("6. View vehicles");
  206. System.out.println("7. Add driver");
  207. System.out.println("8. remove driver");
  208. System.out.println("9. move vehicle");
  209. System.out.println("10. Exit");
  210. System.out.print("Please select an option:");
  211. selection = in.nextInt();
  212. } catch (InputMismatchException e) {
  213. System.out.println("Please enter a valid number from the list!!\n");
  214. }
  215. in.nextLine();
  216. switch (selection)
  217. {
  218. case 1:
  219. System.out.print("VIEW EXISTING SCHEDULE \n Please enter the clients name");
  220. Scanner keyboard = new Scanner(System.in);
  221. String client = keyboard.nextLine();
  222. PrintSched(client);
  223. break;
  224. case 2:
  225. System.out.print("View Drivers \n");
  226. for (int i = 0; i < driverArray.size(); i++) {
  227. driverArray.get(i).printN();
  228. }
  229. break;
  230. case 3:
  231. System.out.print("You selected create schedule \n");
  232. Depot.SetUpWorkSchedule();
  233. break;
  234. case 4:
  235. System.out.print("You selected add vehicle \n");
  236. System.out.print("Please enter the type of vehicle you want to add (truck or tanker) \n ");
  237. Scanner keyboard1 = new Scanner(System.in);
  238. String type = keyboard1.nextLine();
  239. System.out.print("Please enter the vehicle make: ");
  240. String make = keyboard1.nextLine();
  241. System.out.print("Please enter the vehicle model: ");
  242. String model = keyboard1.nextLine();
  243. System.out.print("Please enter the vehicle weight: ");
  244. int weight = 0;
  245. try{
  246. weight = keyboard1.nextInt();
  247. } catch (InputMismatchException e) {
  248. System.out.println("Please enter a valid number for vehicle weight!!\n");
  249. }
  250. String reg;
  251. System.out.print("Please enter the vehicle reg: ");
  252. Scanner keyboard6 = new Scanner(System.in);
  253. reg = keyboard6.nextLine();
  254. if(type.equals("tanker")){
  255. System.out.print("Please enter the max fluid capacity of the vehicle: \n");
  256. int weight1 = 0;
  257. weight1 = keyboard6.nextInt();
  258. Tanker tanker = new Tanker(make, model, weight, reg, true,weight1);
  259. vehicleArray.add(tanker);
  260. DriverMenu();
  261.  
  262. }else if (type.equals("truck")){
  263. System.out.print("Please enter the max cargo capacity of the vehicle: ");
  264. int weight2 = 0;
  265. try{
  266. weight2 = keyboard6.nextInt();
  267. } catch (InputMismatchException e) {
  268. System.out.println("Please enter a valid number for max cargo capacity!!\n");
  269. }
  270.  
  271. Truck truck = new Truck(make, model, weight, reg, true,weight2);
  272. vehicleArray.add(truck);
  273. DriverMenu();
  274. }
  275. break;
  276. case 5:
  277. System.out.print("You selected remove vehicle \n");
  278. Scanner keyboard3 = new Scanner(System.in);
  279. System.out.println("Please enter the Reg No. of the vehicle you wish to remove: \n");
  280. String removeVehicle = keyboard3.nextLine();
  281. Iterator<Vehicle> it = vehicleArray.iterator();
  282. while (it.hasNext()) {
  283. Vehicle user = it.next();
  284. if (user.CheckRegNo(removeVehicle)) {
  285. it.remove();
  286. }
  287. }
  288. System.out.print("You have chosen to remove:" + removeVehicle);
  289. break;
  290. case 6:
  291. System.out.print("You selected View Drivers\n");
  292. for (int i = 0; i < vehicleArray.size(); i++) {
  293. vehicleArray.get(i).printN();
  294. }
  295. break;
  296. case 7:
  297. System.out.print("You selected add Driver \n Is it a new driver or manager? \n");
  298. Scanner keyboard4 = new Scanner(System.in);
  299. String type1 = keyboard4.nextLine();
  300. System.out.print("Please enter the Drivers Username: ");
  301. String username = keyboard4.nextLine();
  302. System.out.print("Please enter the Drivers Password: ");
  303. String password = keyboard4.nextLine();
  304. if(type1.equals("manager")){
  305. Manager manager = new Manager(username, password, false);
  306. driverArray.add(manager);
  307. }else if(type1.equals("driver")){
  308. Driver driver = new Manager(username, password, false);
  309. driverArray.add(driver);
  310. }
  311. break;
  312. case 8:
  313. System.out.print("You selected remove Driver \n");
  314. Scanner keyboard7 = new Scanner(System.in);
  315. System.out.println("Please enter the Username of the driver you wish to remove: \n");
  316. String username2 = keyboard7.nextLine();
  317. Iterator<Driver> it1 = driverArray.iterator();
  318. while (it1.hasNext()) {
  319. Driver user = it1.next();
  320. if (user.CheckUsername(username2)) {
  321. it1.remove();
  322. }
  323. }
  324. break;
  325. case 9:
  326. System.out.print("You selected move Vehicle \n");
  327. Scanner keyboard8 = new Scanner(System.in);
  328. System.out.println("Please enter the Reg No. of the vehicle you wish to move: \n");
  329. String username3 = keyboard8.nextLine();
  330. Iterator<Vehicle> it3 = vehicleArray.iterator();
  331. while (it3.hasNext()) {
  332. Vehicle user = it3.next();
  333. if (user.CheckRegNo(username3)) {
  334. it3.remove();
  335. System.out.println("Please enter the Depot you wish to move the vehicle to: \n");
  336. String name = keyboard8.nextLine();
  337. for (int i = 0; i < system.depotArray.size(); i++) {
  338. if (system.depotArray.get(i).CheckDepotName(name)) {
  339. //system.depotArray.get(i).remove();
  340. system.depotArray.get(i).vehicleArray.add(user);
  341. }
  342. }
  343. }
  344. }
  345. break;
  346. case 10:
  347. System.exit(0);
  348. break;
  349. default:
  350. System.out.print("The selection is invalid.\n");
  351. break;
  352. }
  353. } while (selection != 4);
  354. }
  355. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement