Advertisement
Guest User

Untitled

a guest
Mar 29th, 2017
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 34.20 KB | None | 0 0
  1. package PL;
  2.  
  3. import BL.IBL;
  4. import SharedResources.Shift;
  5. import SharedResources.Worker;
  6.  
  7. import java.io.IOException;
  8. import java.util.List;
  9. import java.util.Scanner;
  10.  
  11.  
  12. public class PLImpl {
  13. static Scanner in=new Scanner(System.in);
  14. private IBL bl;
  15. private boolean showMenu;
  16. private boolean exit;
  17. private String authority;
  18. private boolean firstInsTry;
  19. public PLImpl(IBL bl){
  20. this.bl=bl;
  21. showMenu = true;
  22. firstInsTry=true;
  23. authority="0";
  24. exit=false;
  25. }
  26.  
  27. public void runSystem()
  28. {
  29. while(true)
  30. {
  31. if(showMenu)
  32. {
  33. System.out.println("----- Welcome! ----- \n");
  34. System.out.println("please enter your ID, or press 0 to exit the system:");
  35. }
  36. String choose = in.next();
  37. if(Integer.parseInt(choose)==0){
  38. exit = true;
  39. }
  40. if(!(bl.isValidId(choose))){
  41. System.out.println("invalid ID, enter ID again, or press 0 to exit the system:");
  42. showMenu=false;
  43. break;
  44. }
  45. Worker w = bl.findWorker(choose);
  46. if(w==null){
  47. System.out.println("Worker not found, enter ID again, or press 0 to exit the system:");
  48. showMenu=false;
  49. break;
  50. }
  51. authority = w.getAuthority();
  52. switch (authority)
  53. {
  54. case "0":
  55. System.out.println("To insert hours and days you can work in, press 1");
  56. System.out.println("To watch your shifts starting from some date, press 2");
  57. System.out.println("To change your First name, press 3");
  58. System.out.println("To change your Last name, press 4");
  59. System.out.println("To change your phone number, press 5");
  60. System.out.println("To exit the system, press 20");
  61. case "1":
  62. System.out.println("To insert hours and days you can work in, press 1");
  63. System.out.println("To watch your shifts starting from some date, press 2");
  64. System.out.println("To change your First name, press 3");
  65. System.out.println("To change your Last name, press 4");
  66. System.out.println("To change your phone number, press 5");
  67. System.out.println("To add a worker to a shift, press 6");
  68. System.out.println("To delete a worker from a shift, press 7");
  69. System.out.println("To watch the available workers of some specializtion in a shift, press 8");
  70. System.out.println("To change a worker Bank Name, press 9");
  71. System.out.println("To change a worker Bank Branch code details, press 10");
  72. System.out.println("To change a worker Bank Account Number, press 11");
  73. System.out.println("To watch the workers in some shift, press 12");
  74. System.out.println("To exit the system, press 20");
  75. case "2":
  76. System.out.println("To watch the workers in some shift, press 12");
  77. System.out.println("To insert a new shift, press 13");
  78. System.out.println("To delete a shift, press 14");
  79. System.out.println("To insert a new worker, press 15");
  80. System.out.println("To update a worker, press 16");
  81. System.out.println("To fire a worker/set its end working date, press 17");
  82. System.out.println("To make a worker a shift manager, press 18");
  83. System.out.println("To make a worker an admin, press 19");
  84. System.out.println("To exit the system, press 20");
  85. }
  86. int option=in.nextInt();
  87. switch(option)
  88. {
  89. case 1:
  90. insertHoursDays(w);
  91. showMenu=true;
  92. break;
  93. case 2:
  94. watchShifts(w);
  95. showMenu=true;
  96. break;
  97. case 3:
  98. updateFirstName(w);
  99. showMenu=true;
  100. break;
  101. case 4:
  102. updateLastName(w);
  103. showMenu=true;
  104. break;
  105. case 5:
  106. updatePhoneNumber(w);
  107. showMenu=true;
  108. break;
  109. case 6:
  110. addWorkerToShift();
  111. showMenu=true;
  112. break;
  113. case 7:
  114. deleteWorkerFromShift();
  115. showMenu=true;
  116. break;
  117. case 8:
  118. watchSpecShiftWorkersList();
  119. showMenu=true;
  120. break;
  121. case 9:
  122. updateBankName();
  123. showMenu=true;
  124. break;
  125. case 10:
  126. updateBranchCode();
  127. showMenu=true;
  128. break;
  129. case 11:
  130. updateBankAccountCode();
  131. showMenu=true;
  132. break;
  133. case 12:
  134. getWorkersInShift();
  135. showMenu=true;
  136. break;
  137. case 13:
  138. insertShift();
  139. showMenu=true;
  140. break;
  141. case 14:
  142. deleteShift();
  143. showMenu=true;
  144. break;
  145. case 15:
  146. insertWorker();
  147. showMenu=true;
  148. break;
  149. case 16:
  150. updateAll();
  151. showMenu=true;
  152. break;
  153. case 17:
  154. fireWorker();
  155. showMenu=true;
  156. break;
  157. case 18:
  158. makeShiftManager();
  159. showMenu=true;
  160. break;
  161. case 19:
  162. makeAdmin();
  163. showMenu=true;
  164. break;
  165. case 20:
  166. exit=true;
  167. break;
  168. default:
  169. System.out.println(option+" is not a valid option, please try again");
  170. showMenu=false;
  171. }
  172. if(exit)
  173. break;
  174. }
  175. System.out.println("Bye, See you later! :)");
  176. }
  177. private void updateBankAccountCode(Worker w) {
  178. System.out.println("Please insert the new bank account number");
  179. String accountNum = in.next();
  180. if(bl.isValidBankNumber(accountNum)){
  181. if(bl.updateBankDetails(w.getID(),accountNum, w.getBankName(),w.getBranchCode())){
  182. System.out.println("You have successfully updated your bank account number to "+accountNum);
  183. againExitMenu(26,true,w);
  184. }
  185. else
  186. errMsg("An error occured while trying to update your account number",26,w);
  187. }
  188. else
  189. errMsg("The account number you've entered is not valid",26,w);
  190.  
  191. }
  192.  
  193.  
  194. private void updateBankAccountCode() {
  195. System.out.println("Please enter the worker's ID");
  196. String id = in.next();
  197. if(id==null){
  198. errMsg("Incorrect ID format",11);
  199. }
  200. Worker w=bl.findWorker(id);
  201. if(w==null){
  202. errMsg("User not found",11);
  203. }
  204. System.out.println("Please insert the new bank account number");
  205. String accountNum = in.next();
  206. if(bl.isValidBankNumber(accountNum)){
  207. if(bl.updateBankDetails(w.getID(),accountNum, w.getBankName(),w.getBranchCode())){
  208. System.out.println("You have successfully updated your bank account number to "+accountNum);
  209. againExitMenu(11,true);
  210. }
  211. else
  212. errMsg("An error occured while trying to update your account number",11);
  213. }
  214. else
  215. errMsg("The account number you've entered is not valid",11);
  216.  
  217. }
  218.  
  219. private void updateBranchCode(Worker w) {
  220. System.out.println("Please insert the new bank account number");
  221. String branchCode = in.next();
  222. if(bl.isValidBranchCode(branchCode)){
  223. if(bl.updateBankDetails(w.getID(),w.getBranchCode(), w.getBankName(),branchCode)){
  224. System.out.println("You have successfully updated your bank branch code to "+branchCode);
  225. againExitMenu(25,true,w);
  226. }
  227. else
  228. errMsg("An eror occured while trying to update your bank branch code",25,w);
  229. }
  230. else
  231. errMsg("The bank branch code you've entered is not valid",25,w);
  232.  
  233. }
  234.  
  235. private void updateBranchCode() {
  236. System.out.println("Please enter the worker's ID");
  237. String id = in.next();
  238. if(id==null){
  239. errMsg("Incorrect ID format",10);
  240. }
  241. Worker w=bl.findWorker(id);
  242. if(w==null){
  243. errMsg("User not found",10);
  244. }
  245. System.out.println("Please insert the new bank account number");
  246. String branchCode = in.next();
  247. if(bl.isValidBranchCode(branchCode)){
  248. if(bl.updateBankDetails(w.getID(),w.getBranchCode(), w.getBankName(),branchCode)){
  249. System.out.println("You have successfully updated your bank branch code to "+branchCode);
  250. againExitMenu(10,true);
  251. }
  252. else
  253. errMsg("An eror occured while trying to update your bank branch code",10);
  254. }
  255. else
  256. errMsg("The bank branch code you've entered is not valid",10);
  257.  
  258. }
  259. private void updateBankName(Worker w) {
  260. System.out.println("Please insert the new bank account number");
  261. String bankName = in.next();
  262. if(bl.updateBankDetails(w.getID(),w.getBranchCode(), bankName,w.getBranchCode())){
  263. System.out.println("You have successfully updated your bank name to "+bankName);
  264. againExitMenu(24,true,w);
  265. }
  266. else
  267. errMsg("An eror occured while trying to update your bank name",24,w);
  268. }
  269.  
  270. private void updateBankName() {
  271. System.out.println("Please enter the worker's ID");
  272. String id = in.next();
  273. if(id==null){
  274. errMsg("Incorrect ID format",9);
  275. }
  276. Worker w=bl.findWorker(id);
  277. if(w==null){
  278. errMsg("User not found",9);
  279. }
  280. System.out.println("Please insert the new bank account number");
  281. String bankName = in.next();
  282. if(bl.updateBankDetails(w.getID(),w.getBranchCode(), bankName,w.getBranchCode())){
  283. System.out.println("You have successfully updated your bank name to "+bankName);
  284. againExitMenu(9,true);
  285. }
  286. else
  287. errMsg("An eror occured while trying to update your bank name",9);
  288. }
  289.  
  290. private void updateLastName(Worker w) {
  291. System.out.println("Please insert the new last name");
  292. String lname = in.next();
  293. if(bl.isValidName(lname)){
  294. if(bl.updateName(w.getID(), w.getFirstName(), lname)){
  295. System.out.println("You have successfully updated your last name to "+lname);
  296. againExitMenu(4,true,w);
  297. }
  298. else
  299. errMsg("An eror occured while trying to update your last name",4,w);
  300. }
  301. else
  302. errMsg("The last name you've entered is not valid",4,w);
  303. }
  304.  
  305. private void updateFirstName(Worker w) {
  306. System.out.println("Please insert the new first name");
  307. String fname = in.next();
  308. if(bl.isValidName(fname)){
  309. if(bl.updateName(w.getID(), fname, w.getLastName())){
  310. System.out.println("You have successfully updated your first name to "+fname);
  311. againExitMenu(3,true,w);
  312. }
  313. else
  314. errMsg("An eror occured while trying to update your first name",3,w);
  315. }
  316. else
  317. errMsg("The first name you've entered is not valid",3,w);
  318. }
  319.  
  320. private void getWorkersInShift() {
  321. System.out.println("Please enter the desired date:");
  322. String date = in.next();
  323. System.out.println("Please enter the time of the day:");
  324. String timeAtDay = in.next();
  325. if(bl.isValidDate(date)){
  326. if(bl.isValidShift(timeAtDay)){
  327. List<Worker> ls = bl.getWorkersInShift( date, timeAtDay);
  328. if(ls!=null){
  329. int i=1;
  330. for(Worker w : ls){
  331. System.out.println("Shift number "+i);
  332. System.out.println("Worker ID: "+w.getID());
  333. System.out.println("First Name: "+w.getFirstName());
  334. System.out.println("Last Name: "+w.getLastName());
  335. System.out.println("Phone number: "+w.getPhoneNumber());
  336. i++;
  337. }
  338. againExitMenu(12,true);
  339. }
  340. else
  341. errMsg("There are no workers in this shift",12);
  342. }
  343. else
  344. errMsg("The time of day you entered is not valid", 12);
  345. }
  346. else
  347. errMsg("You have inserted invalid date",12);
  348. }
  349.  
  350. private void watchSpecShiftWorkersList() {
  351. System.out.println("Please enter the desired day:");
  352. String day = in.next();
  353. System.out.println("Please enter the time of the day:");
  354. String timeAtDay = in.next();
  355. System.out.println("Please enter the desired specializtion");
  356. String spec = in.next();
  357. if(bl.isValidDay(day)){
  358. if(bl.isValidShift(timeAtDay)){
  359. List<Worker> ls = bl.getWorkerForShift(spec, day, timeAtDay);
  360. if(ls!=null){
  361. int i=1;
  362. for(Worker w : ls){
  363. System.out.println("Shift number "+i);
  364. System.out.println("Worker ID: "+w.getID());
  365. System.out.println("First Name: "+w.getFirstName());
  366. System.out.println("Last Name: "+w.getLastName());
  367. System.out.println("Phone number: "+w.getPhoneNumber());
  368. i++;
  369. }
  370. againExitMenu(8,true);
  371. }
  372. else
  373. errMsg("The worker is not signed to shifts from this date",8);
  374. }
  375. else
  376. errMsg("The time of day you entered is not valid", 8);
  377. }
  378. else
  379. errMsg("You have inserted invalid day",8);
  380. }
  381.  
  382. private void fireWorker() {
  383. System.out.println("Please enter the worker's ID");
  384. String id = in.next();
  385. if(id==null){
  386. errMsg("Incorrect ID format",17);
  387. }
  388. Worker w=bl.findWorker(id);
  389. if(w==null){
  390. errMsg("User not found",17);
  391. }
  392. System.out.println("Please insert the end date");
  393. String endDate = in.next();
  394. if(bl.isValidDate(endDate)){
  395. if(bl.updateEndDate(w.getID(), endDate)){
  396. System.out.println("You have successfully updated the end date to "+endDate);
  397. againExitMenu(17,true);
  398. }
  399. else
  400. errMsg("An eror occured while trying to update the end date",17);
  401. }
  402. else
  403. errMsg("The end date you've entered is not valid",17);
  404.  
  405. }
  406.  
  407. private void deleteShift() {
  408. System.out.println("Please enter the desired date:");
  409. String date = in.next();
  410. System.out.println("Please enter the time of the day:");
  411. String timeAtDay = in.next();
  412. if(bl.isValidDate(date)){
  413. if(bl.isValidShift(timeAtDay)){
  414. if(bl.deleteShift(date, timeAtDay)){
  415. System.out.println("You have successfully deleted a shift at " +date + ", "+timeAtDay);
  416. againExitMenu(14,true);
  417. }
  418. else
  419. errMsg("No shift at this date and time of day",14);
  420. }
  421. else
  422. errMsg("You have inserted invalid part of day",14);
  423. }
  424. else
  425. errMsg("You have inserted invalid date",14);
  426. }
  427.  
  428. private void insertShift() {
  429. System.out.println("Please enter the desired date:");
  430. String date = in.next();
  431. System.out.println("Please enter the time of the day:");
  432. String timeAtDay = in.next();
  433. if(bl.isValidDate(date)){
  434. if(bl.isValidShift(timeAtDay)){
  435. if(bl.insertShift(date, timeAtDay)){
  436. System.out.println("You have successfully inserted a shift at " +date + ", "+timeAtDay);
  437. againExitMenu(13,true);
  438. }
  439. else
  440. errMsg("You have already inserted this shift",13);
  441. }
  442. else
  443. errMsg("You have inserted invalid part of day",13);
  444. }
  445. else
  446. errMsg("You have inserted invalid date",13);
  447. }
  448.  
  449. private void makeShiftManager() {
  450. System.out.println("Please enter the worker's ID");
  451. String id = in.next();
  452. if(id==null){
  453. errMsg("Incorrect ID format",18);
  454. }
  455. Worker w=bl.findWorker(id);
  456. if(w==null){
  457. errMsg("User not found",18);
  458. }
  459. if(bl.updateStartEmployingDate("1", w.getID())){
  460. System.out.println("You have successfully updated the authority to Shift manager");
  461. againExitMenu(18,true);
  462. }
  463. else
  464. errMsg("An eror occured while trying to update to shift manager",18);
  465. }
  466.  
  467. private void makeAdmin() {
  468. System.out.println("Please enter the worker's ID");
  469. String id = in.next();
  470. if(id==null){
  471. errMsg("Incorrect ID format",19);
  472. }
  473. Worker w=bl.findWorker(id);
  474. if(w==null){
  475. errMsg("User not found",19);
  476. }
  477. if(bl.updateStartEmployingDate("2", w.getID())){
  478. System.out.println("You have successfully updated the authority to admin");
  479. againExitMenu(19,true);
  480. }
  481. else
  482. errMsg("An eror occured while trying to update to admin",19);
  483. }
  484.  
  485. private void deleteWorkerFromShift() {
  486. System.out.println("Please enter the worker ID you want to sign");
  487. String id = in.next();
  488. System.out.println("Please enter the date of the shift");
  489. String date = in.next();
  490. System.out.println("Please enter the time at day of the shift");
  491. String timeAtDay = in.next();
  492. if(bl.isValidId(id)){
  493. if(bl.isValidDate(date)){
  494. if(bl.isValidShift(timeAtDay)){
  495. if(bl.deleteWorkerFromShift(id, date, timeAtDay)){
  496. System.out.println("You have successfully deleted worker with ID" +id + ", from the shift at "+date+" ,"+timeAtDay);
  497. againExitMenu(7,true);
  498. }
  499. else
  500. errMsg("Worker not in this shift",7);
  501. }
  502. else
  503. errMsg("The time of day you entered is not valid", 7);
  504. }
  505. else
  506. errMsg("The date you entered is not valid", 7);
  507. }
  508. else
  509. errMsg("The worker ID you entered is not valid", 7);
  510. }
  511.  
  512. private void addWorkerToShift() {
  513. System.out.println("Please enter the worker ID you want to sign");
  514. String id = in.next();
  515. System.out.println("Please enter the date of the shift");
  516. String date = in.next();
  517. System.out.println("Please enter the time at day of the shift");
  518. String timeAtDay = in.next();
  519. if(bl.isValidId(id)){
  520. if(bl.isValidDate(date)){
  521. if(bl.isValidShift(timeAtDay)){
  522. if(bl.insertShiftToWorker(id, date, timeAtDay)){
  523. System.out.println("You have successfully added worker with ID" +id + ", to the shift at "+date+" ,"+timeAtDay);
  524. againExitMenu(6,true);
  525. }
  526. else
  527. errMsg("Worker already in this shift",6);
  528. }
  529. else
  530. errMsg("The time of day you entered is not valid", 6);
  531. }
  532. else
  533. errMsg("The date you entered is not valid", 6);
  534. }
  535. else
  536. errMsg("The worker ID you entered is not valid", 6);
  537. }
  538.  
  539. private void watchShifts(Worker w) {
  540. System.out.println("Please enter the desired date");
  541. String date = in.next();
  542. if(bl.isValidDate(date)){
  543. List<Shift> ls = bl.getShiftsForWorker(date, w.getID());
  544. if(ls!=null){
  545. int i=1;
  546. for(Shift s : ls){
  547. System.out.println("Shift number "+i);
  548. System.out.println("Date: "+s.getDate());
  549. System.out.println("Time at day: "+s.getTimeAtDay());
  550. i++;
  551. }
  552. againExitMenu(2,true,w);
  553. }
  554. else
  555. errMsg("The worker is not signed to shifts from this date",2,w);
  556. }
  557. else
  558. errMsg("You have inserted invalid date",2,w);
  559. }
  560.  
  561. private void insertHoursDays(Worker w) {
  562. System.out.println("please enter the day you can work in:");
  563. String day = in.next();
  564. System.out.println("Please enter the start hour");
  565. String startHour = in.next();
  566. System.out.println("Please enter the end hour");
  567. String endHour = in.next();
  568. if(bl.isValidDay(day)){
  569. if(bl.isValidHour(startHour)){
  570. if(bl.isValidHour(endHour)){
  571. String dayPart = bl.getTimeAtDay(startHour, endHour);
  572. if(bl.insertAvailableWorker(w.getID(), day, dayPart)){
  573. System.out.println("You have successfully added the option to a shift at " +day + ", "+dayPart);
  574. againExitMenu(1,true,w);
  575. }
  576. else
  577. errMsg("You have already joined this shift",1,w);
  578. }
  579. else
  580. errMsg("You have inserted invalid end hour",1,w);
  581. }
  582. else
  583. errMsg("You have inserted invalid start hour",1,w);
  584. }
  585. else
  586. errMsg("You have inserted invalid day",1,w);
  587. }
  588.  
  589. private void insertWorker(){
  590.  
  591. if(firstInsTry)
  592. System.out.println("Please insert the new worker's details below");
  593. System.out.println("Id:");
  594. String id=in.next();
  595. System.out.println("First Name:");
  596. String fn=in.next();
  597. System.out.println("Last Name:");
  598. String ln=in.next();
  599. System.out.println("Salary:");
  600. int sal=in.nextInt();
  601. System.out.println("Bank account number:");
  602. String accountNumber=in.next();
  603. System.out.println("Bank name:");
  604. String BankName=in.next();
  605. System.out.println("branch Code:");
  606. String branchCode=in.next();
  607. System.out.println("Start Date:");
  608. String sDate=in.next();
  609. System.out.println("Employee Conditions:");
  610. String empCond=in.next();
  611. System.out.println("Phone Number:");
  612. String phone=in.next();
  613. if(bl.isValidId(id))
  614. {
  615. if(bl.isValidName(fn))
  616. {
  617. if(bl.isValidName(ln))
  618. {
  619. if(bl.isValidSalary(sal))
  620. {
  621. if(bl.isValidBankNumber(accountNumber))
  622. {
  623. if(bl.isValidBranchCode(branchCode))
  624. {
  625. if(bl.isValidDate(sDate))
  626. {
  627. if(bl.isValidPhoneNumber(phone))
  628. {
  629. if(bl.insertWorker(id, fn, ln, sal, accountNumber, BankName, sDate, phone, "0", empCond, "", branchCode))
  630. {
  631. System.out.println("You have successfully added "+fn+" "+ln+" to the system");
  632. againExitMenu(15,true);
  633. }
  634. else
  635. errMsg("ID already exists in system",15);
  636. }
  637. else
  638. errMsg("the phone number you entered is not not valid",15);
  639. }
  640. else
  641. errMsg("The start date you've entered is not valid",15);
  642. }
  643. else
  644. errMsg("The bank branch code you've entered is not valid",15);
  645. }
  646. else
  647. errMsg("The bank account number you've entered is not valid",15);
  648. }
  649. else
  650. errMsg("The salary you've entered is not valid",15);
  651. }
  652. else
  653. errMsg("The last name you've entered is not valid",15);
  654. }
  655. else
  656. errMsg("The first name you've entered is not valid",15);
  657. }
  658. else
  659. errMsg("The ID you've entered is not valid",15);
  660. }
  661.  
  662.  
  663. private void updateAll()
  664. {
  665. System.out.println("Please enter the worker's ID");
  666. String id = in.next();
  667. if(id==null){
  668. errMsg("Incorrect ID format",16);
  669. }
  670. Worker w=bl.findWorker(id);
  671. if(w==null){
  672. errMsg("User not found",16);
  673. }
  674. System.out.println("To update first name - press 1");
  675. System.out.println("To update last name - press 2");
  676. System.out.println("To update salary - press 3");
  677. System.out.println("To update employee conditions - press 4");
  678. System.out.println("To update start date - press 5");
  679. System.out.println("To update phone number - press 6");
  680. System.out.println("To update end date - press 7");
  681. System.out.println("To update bank name - press 8");
  682. System.out.println("To update account number - press 9");
  683. System.out.println("To update bank nambranch code - press 10");
  684.  
  685. int ans = in.nextInt();
  686. switch (ans){
  687. case 1:
  688. updateFirstName(w);
  689. case 2:
  690. updateLastName(w);
  691. case 3:
  692. updateSalary(w);
  693. case 4:
  694. updateEmpConditions(w);
  695. case 5:
  696. updateStartDate(w);
  697. case 6:
  698. updatePhoneNumber(w);
  699. case 7:
  700. updateEndDate(w);
  701. case 8:
  702. updateBankName(w);
  703. case 9:
  704. updateBankAccountCode(w);
  705. case 10:
  706. updateBranchCode(w);
  707. default:
  708. againExitMenu(1,false);
  709. }
  710. }
  711.  
  712. private void updateEndDate(Worker w) {
  713. System.out.println("Please insert the end date");
  714. String endDate = in.next();
  715. if(bl.isValidDate(endDate)){
  716. if(bl.updateEndDate(w.getID(), endDate)){
  717. System.out.println("You have successfully updated the end date to "+endDate);
  718. againExitMenu(23,true,w);
  719. }
  720. else
  721. errMsg("An error occured while trying to update the end date",23);
  722. }
  723. else
  724. errMsg("The end date you've entered is not valid",23,w);
  725.  
  726. }
  727.  
  728.  
  729. private void updatePhoneNumber(Worker w) {
  730. System.out.println("Please insert the new phone number");
  731. String phone = in.next();
  732. if(bl.isValidPhoneNumber(phone)){
  733. if(bl.updatePhoneNumber( phone,w.getID())){
  734. System.out.println("You have successfully updated the phone to "+phone);
  735. againExitMenu(5,true,w);
  736. }
  737. else
  738. errMsg("An error occured while trying to update the phone number",5,w);
  739. }
  740. else
  741. errMsg("The phone number you've entered is not valid",5,w);
  742. }
  743.  
  744. private void updateEmpConditions(Worker w) {
  745. System.out.println("Please insert the new employee conditions");
  746. String empCon = in.next();
  747. if(bl.updateEmpConditions(w.getID(), empCon)){
  748. System.out.println("You have successfully updated the employee conditions "+empCon);
  749. againExitMenu(21,true,w);
  750. }
  751. else{
  752. errMsg("An error occured while trying to update the employee conditions",21,w);
  753. }
  754. }
  755.  
  756. private void updateStartDate(Worker w) {
  757. System.out.println("Please insert the new start date");
  758. String stdate = in.next();
  759. if(bl.isValidDate(stdate)){
  760. if(bl.updateStartEmployingDate(stdate, w.getID())){
  761. System.out.println("You have successfully updated the start date to "+stdate);
  762. againExitMenu(22,true,w);
  763. }
  764. else
  765. errMsg("An error occured while trying to update the start date",22,w);
  766. }
  767. else
  768. errMsg("The start date you've entered is not valid",22,w);
  769.  
  770. }
  771.  
  772. private void updateSalary(Worker w) {
  773. System.out.println("Please insert the new start date");
  774. int sal = in.nextInt();
  775. if(bl.isValidSalary(sal)){
  776. if(bl.updateSalary(w.getID(), sal)){
  777. System.out.println("You have successfully updated the salary to "+sal);
  778. againExitMenu(28,true,w);
  779. }
  780. else
  781. errMsg("An error occured while trying to update the salary",28,w);
  782. }
  783. else
  784. errMsg("The salary you've entered is not valid",28,w);
  785.  
  786.  
  787. }
  788.  
  789. private void againExitMenu(int type, boolean suc, Worker w)
  790. {
  791. if(!suc)
  792. System.out.println("To try again, press 2");
  793. System.out.println("To go back to main menu, press 3");
  794. System.out.println("To exit, press 4");
  795. int op=in.nextInt();
  796. switch(op)
  797. {
  798. case 2:
  799. switch(type)
  800. {
  801. case 1:
  802. insertHoursDays(w);
  803. case 2:
  804. watchShifts(w);
  805. case 3:
  806. updateFirstName(w);
  807. case 4:
  808. updateLastName(w);
  809. case 5:
  810. updatePhoneNumber(w);
  811. case 21:
  812. updateEmpConditions(w);
  813. case 22:
  814. updateStartDate(w);
  815. case 23:
  816. updateEndDate(w);
  817. case 24:
  818. updateBankName(w);
  819. case 25:
  820. updateBranchCode(w);
  821. case 26:
  822. updateBankAccountCode(w);
  823. case 28:
  824. updateSalary(w);
  825. }
  826. break;
  827. case 3:
  828. break;
  829. case 4:
  830. exit=true;
  831. break;
  832. default:
  833. System.out.println(op+" is not a valid option, please try again");
  834. againExitMenu(type,suc);
  835. }
  836. }
  837.  
  838. private void againExitMenu(int type, boolean suc)
  839. {
  840. if(!suc)
  841. System.out.println("To try again, press 2");
  842. System.out.println("To go back to main menu, press 3");
  843. System.out.println("To exit, press 4");
  844. int op=in.nextInt();
  845. switch(op)
  846. {
  847. case 2:
  848. switch(type)
  849. {
  850. case 6:
  851. addWorkerToShift();
  852. case 7:
  853. deleteWorkerFromShift();
  854. case 8:
  855. watchSpecShiftWorkersList();
  856. case 9:
  857. updateBankName();
  858. case 10:
  859. updateBranchCode();
  860. case 11:
  861. updateBankAccountCode();
  862. case 12:
  863. getWorkersInShift();
  864. case 13:
  865. insertShift();
  866. case 14:
  867. deleteShift();
  868. case 15:
  869. insertWorker();
  870. case 16:
  871. updateAll();
  872. case 17:
  873. fireWorker();
  874. case 18:
  875. makeShiftManager();
  876. case 19:
  877. makeAdmin();
  878. }
  879. break;
  880. case 3:
  881. break;
  882. case 4:
  883. exit=true;
  884. break;
  885. default:
  886. System.out.println(op+" is not a valid option, please try again");
  887. againExitMenu(type,suc);
  888. }
  889. }
  890.  
  891.  
  892. private void errMsg(String msg,int type)
  893. {
  894. System.out.println(msg);
  895. againExitMenu(type,false);
  896. }
  897.  
  898.  
  899.  
  900. private void errMsg(String msg,int type,Worker w)
  901. {
  902. System.out.println(msg);
  903. againExitMenu(type,false,w);
  904. }
  905.  
  906. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement