fork download
  1. package principal;
  2.  
  3. import java.text.ParseException;
  4. import java.util.ArrayList;
  5. import java.util.Scanner;
  6.  
  7.  
  8. /**
  9.  *
  10.  * @author Montse Maqueda
  11.  */
  12. public class Application {
  13.  
  14. static private Clinic[] clinics = new Clinic[4];
  15. static private Integer comptaClinics = 0;
  16. static private Clinic clinicActual = null;
  17.  
  18. /**
  19.   * @param args the command line arguments
  20.   */
  21. public static void main(String[] args) {
  22. menuPrincipal();
  23. }
  24.  
  25. private static void menuPrincipal() {
  26. Integer opcio = 0;
  27. Scanner teclado = new Scanner(System.in);
  28. do {
  29. System.out.println("\nSelecciona una opció");
  30. System.out.println("\n0. Sortir");
  31. System.out.println("\n1. Gestió de clíniques");
  32. System.out.println("\n2. Gestió dels doctors");
  33. System.out.println("\n3. Gestió dels infermers");
  34. System.out.println("\n4. Gestió de pacients");
  35. System.out.println("\n5. Gestió de departaments");
  36. opcio = teclado.nextInt();
  37. switch (opcio) {
  38. case 0:
  39. break;
  40. case 1:
  41. menuClinic();
  42. break;
  43. case 2:
  44. if (clinicActual != null) {
  45. menuDoctors();
  46. } else {
  47. System.out.println("\nPrimer s'ha de fixar la clínica al menú Gestió de clíniques");
  48. }
  49. break;
  50. case 3:
  51. if (clinicActual != null) {
  52. menuNurses();
  53. } else {
  54. System.out.println("\nPrimer s'ha de fixar la clínica al menú Gestió de clíniques");
  55. }
  56. break;
  57. case 4:
  58. if (clinicActual != null) {
  59. menuPatients();
  60. } else {
  61.  
  62. System.out.println("\nPrimer s'ha de fixar la clínica al menú Gestió de clíniques");
  63. }
  64. break;
  65. case 5:
  66. if (clinicActual != null) {
  67. menuDepartments();
  68. } else {
  69. System.out.println("\nPrimer s'ha de fixar la clínica al menú Gestió de clíniques");
  70. }
  71. break;
  72. default:
  73. System.out.println("\nS'ha de seleccionar una opció correcta del menú.");
  74. break;
  75. }
  76. } while (opcio != 0);
  77. }
  78.  
  79. public static void menuClinic() {
  80. Integer opcio = 0;
  81. Scanner teclado = new Scanner(System.in);
  82. do {
  83. Integer indexSel = -1;
  84. System.out.println("\nSelecciona una opció");
  85. System.out.println("\n0. Sortir");
  86. System.out.println("\n1. Alta");
  87. System.out.println("\n2. Fixa Clínica");
  88. System.out.println("\n3. Modificació");
  89. System.out.println("\n4. Afegir un registre");
  90. System.out.println("\n5. Llista de clíniques");
  91. opcio = teclado.nextInt();
  92. switch (opcio) {
  93. case 0:
  94. break;
  95. case 1:
  96. clinics[comptaClinics] = Clinic.addClinic();
  97. comptaClinics++;
  98. break;
  99. case 2:
  100. indexSel = selectClinic();
  101. if (indexSel >= 0) {
  102. clinicActual = clinics[indexSel];
  103. } else {
  104. System.out.println("\nNo existeix aquesta clínica");
  105. }
  106. break;
  107. case 3:
  108. indexSel = selectClinic();
  109. if (indexSel >= 0) {
  110. clinics[indexSel].updateClinic();
  111. } else {
  112. System.out.println("\nNo existeix aquesta clínica");
  113. }
  114. break;
  115. case 4:
  116. indexSel = selectClinic();
  117. if (indexSel >= 0) {
  118. clinics[indexSel].addTrack();
  119. } else {
  120. System.out.println("\nNo existeix aquesta clínica");
  121. }
  122. break;
  123. case 5:
  124. for (int i = 0; i < comptaClinics; i++) {
  125. clinics[i].showClinic();
  126. }
  127. break;
  128. default:
  129. System.out.println("\nS'ha de seleccionar una opció correcta del menú.");
  130. break;
  131. }
  132. } while (opcio != 0);
  133. }
  134.  
  135.  
  136. public static void menuDoctors() {
  137. /*
  138.   TODO Heu de desenvolupar el menú doctors amb les opcions que podeu veure.
  139.   Nota: penseu que quan arribem aquí, la propietat clinicActual no és null
  140.  
  141.   Opció 1. Alta --> Crea un doctor en la clínica actual. Penseu que Clinic sap crear doctors
  142.   Opció 2. Modificació -> Permet modificar un doctor que ha d'existir a la clínica actual
  143.   (per comprovar l'existència tenim un mètode que ens ajuda a la classe Clinic)
  144.   Opció 3. Llista de doctors
  145.   -> Imprimeix les dades dels doctors de la clínica actual
  146.  
  147.   A més, heu de fer un bucle per tornar a mostrar el menú sempre que no es premi l'opció 0 de sortida
  148.   Recomanacions:
  149.   - estructura de control switch case per bifurcar les opcions
  150.   - si no s'ha introduït cap opció de les de la llista, s'ha de mostrar el missatge
  151.   "S'ha de seleccionar una opció correcta del menú."
  152.   - per a l'entrada de dades, millor fer servir la classe Scanner
  153.   - definiu una variable Integer opcio
  154.   Nota important:
  155.   no controlem que l'usuari introdueixi una opció numèrica, doncs això ho farem amb la
  156.   tècnica de les excepcions que veurem més endavant
  157.   */
  158. Integer opcio = 0;
  159. Scanner teclado = new Scanner(System.in);
  160. do {
  161. Integer indexSel = -1;
  162. System.out.println("\nSelecciona una opció");
  163. System.out.println("\n0. Sortir");
  164. System.out.println("\n1. Alta");
  165. System.out.println("\n2. Modificació");
  166. System.out.println("\n3. Llista de doctors");
  167.  
  168. opcio = teclado.nextInt();
  169. switch (opcio) {
  170. case 0:
  171. break;
  172. case 1:
  173. System.out.println("has escollit Alta");
  174. Doctor.addDoctor();
  175. break;
  176. case 2:
  177. System.out.println("has escollit modificar");
  178. Doctor.addDoctor().updateDoctor();
  179. break;
  180. case 3:
  181. System.out.println("has escollit visualitzar:");
  182. Doctor.addDoctor().showDoctor();
  183. break;
  184. default:
  185. System.out.println("\nS'ha de seleccionar una opció correcta del menú.");
  186. break;
  187. }
  188. } while (opcio != 0);
  189. }
  190.  
  191.  
  192. public static void menuNurses() {
  193. /*
  194.   TODO Heu de desenvolupar el menú infermers amb les opcions que podeu veure.
  195.   Nota: penseu que quan arribem aquí, la propietat clinicActual no és null
  196.  
  197.   Opció 1. Alta --> Crea un infermer en la clínica actual. Penseu que Clinic sap crear infermers
  198.   Opció 2. Modificació -> Permet modificar un infermer que ha d'existir a la clínica actual
  199.   (per comprovar l'existència tenim un mètode que ens ajuda a la classe Clinic)
  200.   Opció 3. Llista d' infermers
  201.   -> Imprimeix les dades dels infermers de la clínica actual
  202.  
  203.   A més, heu de fer un bucle per tornar a mostrar el menú sempre que no es premi l'opció 0 de sortida
  204.   Recomanacions:
  205.   - estructura de control switch case per bifurcar les opcions
  206.   - si no s'ha introduït cap opció de les de la llista, s'ha de mostrar el missatge
  207.   "S'ha de seleccionar una opció correcta del menú."
  208.   - per a l'entrada de dades, millor fer servir la classe Scanner
  209.   - definiu una variable Integer opcio
  210.   Nota important:
  211.   no controlem que l'usuari introdueixi una opció numèrica, doncs això ho farem amb la
  212.   tècnica de les excepcions que veurem més endavant
  213.   */
  214. Integer opcio = 0;
  215. Scanner teclado = new Scanner(System.in);
  216. do {
  217. System.out.println("\nSelecciona una opció");
  218. System.out.println("\n0. Sortir");
  219. System.out.println("\n1. Alta");
  220. System.out.println("\n2. Modificació");
  221. System.out.println("\n3. Llista d'infermers");
  222. opcio = teclado.nextInt();
  223. switch (opcio) {
  224. case 0:
  225. break;
  226. case 1:
  227. System.out.println("has escollit Alta");
  228. ArrayList <Nurse> NurseArrayList= new ArrayList <Nurse> ();
  229. for(int a = 0; a < 10; a++){
  230. NurseArrayList.add(Nurse.addNurse());
  231. Nurse.addNurse();}
  232. break;
  233. case 2:
  234. System.out.println("has escollit modificar");
  235. Nurse.addNurse().updateNurse();
  236. break;
  237. case 3:
  238. System.out.println("has escollit visualitzar:");
  239. Nurse.addNurse().showNurse();
  240. break;
  241. default:
  242. System.out.println("\nS'ha de seleccionar una opció correcta del menú.");
  243. break;
  244. }
  245. } while (opcio != 0);
  246.  
  247. }
  248.  
  249.  
  250.  
  251.  
  252. public static void menuPatients() throws ParseException {
  253. /*
  254.   TODO Heu de desenvolupar el menú pacients amb les opcions que podeu veure.
  255.   Nota: penseu que quan arribem aquí, la propietat clinicActual no és null
  256.  
  257.   Opció 1. Alta --> Crea un pacient en la clínica actual. Penseu que Clinic sap crear pacients
  258.   Opció 2. Modificació -> Permet modificar un pacient que ha d'existir a la clínica actual
  259.   (per comprovar l'existència tenim un mètode que ens ajuda a la classe Clinic)
  260.   Opció 3. Llista de pacients
  261.   -> Imprimeix les dades dels pacients de la clínica actual
  262.  
  263.   A més, heu de fer un bucle per tornar a mostrar el menú sempre que no es premi l'opció 0 de sortida
  264.   Recomanacions:
  265.   - estructura de control switch case per bifurcar les opcions
  266.   - si no s'ha introduït cap opció de les de la llista, s'ha de mostrar el missatge
  267.   "S'ha de seleccionar una opció correcta del menú."
  268.   - per a l'entrada de dades, millor fer servir la classe Scanner
  269.   - definiu una variable Integer opcio
  270.   Nota important:
  271.   no controlem que l'usuari introdueixi una opció numèrica, doncs això ho farem amb la
  272.   tècnica de les excepcions que veurem més endavant
  273.   */
  274. Integer opcio = 0;
  275. Scanner teclado = new Scanner(System.in);
  276. do {
  277. System.out.println("\nSelecciona una opció");
  278. System.out.println("\n0. Sortir");
  279. System.out.println("\n1. Alta");
  280. System.out.println("\n2. Modificació");
  281. System.out.println("\n3. Llista de pacients");
  282.  
  283. opcio = teclado.nextInt();
  284. switch (opcio) {
  285. case 0:
  286. break;
  287. case 1:
  288. System.out.println("has escollit Alta");
  289. Patient.addPatient();
  290. break;
  291. case 2:
  292. System.out.println("has escollit modificar");
  293. Patient.addPatient().updatePatient();
  294. break;
  295. case 3:
  296. System.out.println("has escollit visualitzar:");
  297. Patient.addPatient().showPatient();
  298. break;
  299. default:
  300. System.out.println("\nS'ha de seleccionar una opció correcta del menú.");
  301. break;
  302. }
  303. } while (opcio != 0);
  304.  
  305.  
  306. }
  307.  
  308.  
  309.  
  310. public static void menuDepartments() {
  311. /*
  312.   TODO Heu de desenvolupar el menú departaments amb les opcions que podeu veure.
  313.   Nota: penseu que quan arribem aquí, la propietat clínicActual no és null
  314.   Nota: no farem modificació de departaments per abast de l'EAC
  315.  
  316.   Opció 1. Alta --> Crea una departament en la clínica actual. Penseu que Clinic sap crear departaments
  317.   Nota: crear una departament, només és el codi i el nom, hi ha opcions específiques
  318.   per afegir doctors, infermers i pacients
  319.   Opció 2. Afegeix doctor
  320.   -> Afegeix un doctor a la llista de doctors del departament, però
  321.   penseu que Clinic en sap fer-ho
  322.   Opció 3. Afegeix infermer
  323.   -> Afegeix un infermer a la llista d'infermers del departament, però
  324.   penseu que Clinic en sap fer-ho
  325.   Opció 4. Afegeix pacient
  326.   -> Afegeix un pacient a la llista de pacients del departament, però
  327.   penseu que Clinic en sap fer-ho
  328.   Opció 5. Llista de departaments
  329.   -> Mostra les dades de les departaments de la clínica actual
  330.  
  331.   A més, heu de fer un bucle per tornar a mostrar el menú sempre que no es premi l'opció 0 de sortida
  332.   Recomanacions:
  333.   - estructura de control switch case per bifurcar les opcions
  334.   - si no s'ha introduït cap opció de les de la llista, s'ha de mostrar el missatge
  335.   "S'ha de seleccionar una opció correcta del menú."
  336.   - per a l'entrada de dades, millor fer servir la classe Scanner
  337.   - definiu una variable Integer opcio
  338.   Nota important:
  339.   no controlem que l'usuari introdueixi una opció numèrica, doncs això ho farem amb la
  340.   tècnica de les excepcions que veurem més endavant
  341.   */ Integer opcio = 0;
  342. Scanner teclado = new Scanner(System.in);
  343. do {
  344. System.out.println("\nSelecciona una opció");
  345. System.out.println("\n0. Sortir");
  346. System.out.println("\n1. Alta");
  347. System.out.println("\n2. Afegir doctor");
  348. System.out.println("\n3. Afegir infermer");
  349. System.out.println("\n4. Afegir pacient");
  350. System.out.println("\n5. Llista de departaments");
  351. opcio = teclado.nextInt();
  352. switch (opcio) {
  353. case 0:
  354. break;
  355. case 1:
  356. System.out.println("has escollit Alta");
  357. Clinic.addClinic().addDepartment();
  358. break;
  359. case 2:
  360. System.out.println("Afegir doctor.");
  361. Clinic.addClinic().addDoctorDepartment();
  362. break;
  363. case 3:
  364. System.out.println("Afegir infermer");
  365. Clinic.addClinic().addNurseDepartment();
  366. break;
  367. case 4:
  368. System.out.println("Afegir pacient");
  369. Clinic.addClinic().addPatientDepartment();
  370. break;
  371. case 5:
  372. System.out.println("llista de departaments:");
  373. Department.addDepartment().showDepartment();
  374. default:
  375. System.out.println("\nS'ha de seleccionar una opció correcta del menú.");
  376. break;
  377. }
  378. } while (opcio != 0);
  379.  
  380. }
  381.  
  382. public static Integer selectClinic() {
  383. Scanner teclado = new Scanner(System.in);
  384. System.out.println("\nCodi de clínica?:");
  385. Integer codeSel = teclado.nextInt();
  386. Integer indexSel = -1;
  387. for (int i = 0; i < comptaClinics; i++) {
  388. if (clinics[i].getCode() == codeSel) {
  389. indexSel = i;
  390. break;
  391. }
  392. }
  393. return indexSel;
  394. }
  395.  
  396. }
  397.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:12: error: class Application is public, should be declared in a file named Application.java
public class Application {
       ^
Main.java:14: error: cannot find symbol
    static private Clinic[] clinics = new Clinic[4];
                   ^
  symbol:   class Clinic
  location: class Application
Main.java:16: error: cannot find symbol
    static private Clinic clinicActual = null;
                   ^
  symbol:   class Clinic
  location: class Application
Main.java:14: error: cannot find symbol
    static private Clinic[] clinics = new Clinic[4];
                                          ^
  symbol:   class Clinic
  location: class Application
Main.java:96: error: cannot find symbol
                    clinics[comptaClinics] = Clinic.addClinic();
                                             ^
  symbol:   variable Clinic
  location: class Application
Main.java:174: error: cannot find symbol
                    Doctor.addDoctor();
                    ^
  symbol:   variable Doctor
  location: class Application
Main.java:178: error: cannot find symbol
                    Doctor.addDoctor().updateDoctor();
                    ^
  symbol:   variable Doctor
  location: class Application
Main.java:182: error: cannot find symbol
                    Doctor.addDoctor().showDoctor();
                    ^
  symbol:   variable Doctor
  location: class Application
Main.java:228: error: cannot find symbol
                    ArrayList <Nurse> NurseArrayList= new ArrayList <Nurse> ();
                               ^
  symbol:   class Nurse
  location: class Application
Main.java:228: error: cannot find symbol
                    ArrayList <Nurse> NurseArrayList= new ArrayList <Nurse> ();
                                                                     ^
  symbol:   class Nurse
  location: class Application
Main.java:230: error: cannot find symbol
                     NurseArrayList.add(Nurse.addNurse());
                                        ^
  symbol:   variable Nurse
  location: class Application
Main.java:231: error: cannot find symbol
                    Nurse.addNurse();}
                    ^
  symbol:   variable Nurse
  location: class Application
Main.java:235: error: cannot find symbol
                   Nurse.addNurse().updateNurse();
                   ^
  symbol:   variable Nurse
  location: class Application
Main.java:239: error: cannot find symbol
                    Nurse.addNurse().showNurse();
                    ^
  symbol:   variable Nurse
  location: class Application
Main.java:289: error: cannot find symbol
                    Patient.addPatient();
                    ^
  symbol:   variable Patient
  location: class Application
Main.java:293: error: cannot find symbol
                   Patient.addPatient().updatePatient();
                   ^
  symbol:   variable Patient
  location: class Application
Main.java:297: error: cannot find symbol
                    Patient.addPatient().showPatient();
                    ^
  symbol:   variable Patient
  location: class Application
Main.java:357: error: cannot find symbol
                    Clinic.addClinic().addDepartment();
                    ^
  symbol:   variable Clinic
  location: class Application
Main.java:361: error: cannot find symbol
                   Clinic.addClinic().addDoctorDepartment();
                   ^
  symbol:   variable Clinic
  location: class Application
Main.java:365: error: cannot find symbol
                    Clinic.addClinic().addNurseDepartment();
                    ^
  symbol:   variable Clinic
  location: class Application
Main.java:369: error: cannot find symbol
                    Clinic.addClinic().addPatientDepartment();
                    ^
  symbol:   variable Clinic
  location: class Application
Main.java:373: error: cannot find symbol
                    Department.addDepartment().showDepartment();
                    ^
  symbol:   variable Department
  location: class Application
22 errors
stdout
Standard output is empty