Skip to content
Snippets Groups Projects
Commit f5f4ce80 authored by Matthieu Defretiere's avatar Matthieu Defretiere
Browse files

Début création cas d'utilisation

parent a17e187d
No related branches found
No related tags found
No related merge requests found
...@@ -11,6 +11,7 @@ package com.mycompany.disenosoftwareproject; ...@@ -11,6 +11,7 @@ package com.mycompany.disenosoftwareproject;
public class DisenoSoftwareProject { public class DisenoSoftwareProject {
public static void main(String[] args) { public static void main(String[] args) {
System.out.println("Hello World!"); Sistema s = new Sistema();
s.startApp();
} }
} }
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package com.mycompany.disenosoftwareproject;
import com.mycompany.disenosoftwareproject.negocio.modelos.*;
import java.util.ArrayList;
/**
*
* @author defre
*/
public class Sistema {
ArrayList<TurnoDeOperador> turnosDeOperador = new ArrayList<TurnoDeOperador>();
ArrayList<Operador> operadores = new ArrayList<Operador>();
public void startApp(){
}
/*
public void introduceCredenciales(String login, String password){
boolean correcta = Empleado.compruebaCredenciales(login, password);
if(correcta){
}
}*/
public boolean checkTurno(Fecha fecha){
for(TurnoDeOperador t : turnosDeOperador){
if(t.getFechaTurno().equals(fecha) && t instanceof TurnoDeOperador){
return true;
}
}
return false;
}
public ArrayList<Operador> getOperadoresEnTurno(Fecha fecha){
ArrayList<Operador> list = new ArrayList<Operador>();
for(TurnoDeOperador t : turnosDeOperador){
if(t.getFechaTurno().equals(fecha)){
for(Operador o : t.getOperadores()){
list.add(o);
}
}
}
return list;
}
public ArrayList<Operador> getOperadoresDisponible(Fecha fecha){
ArrayList<Operador> dispo = new ArrayList<Operador>();
////A FAIRE
return dispo;
}
}
...@@ -21,4 +21,12 @@ public class Disponibilidad { ...@@ -21,4 +21,12 @@ public class Disponibilidad {
this.fechaInicio = fechaInicio; this.fechaInicio = fechaInicio;
this.fechaFin = null; this.fechaFin = null;
} }
public Fecha getFechaInicio(){
return fechaInicio;
}
public Fecha getFechaFin(){
return fechaFin;
}
} }
...@@ -4,14 +4,23 @@ ...@@ -4,14 +4,23 @@
*/ */
package com.mycompany.disenosoftwareproject.negocio.modelos; package com.mycompany.disenosoftwareproject.negocio.modelos;
import java.util.ArrayList;
/** /**
* *
* @author defre * @author defre
*/ */
public class Empleado extends Persona{ public class Empleado extends Persona {
private Fecha fechaInicioEnEmpresa; private Fecha fechaInicioEnEmpresa;
private Rol rol; private Rol rol;
private static String login;
private static String password;
private ArrayList<Disponibilidad> historicoDeDisponiblidad = new ArrayList<Disponibilidad>();
public Empleado(String nombre, String apellidos, Fecha fechaNacimiento, String nif, Direccion direccion, String telefono, Fecha fechaInicioEnEmpresa, Rol rol) { public Empleado(String nombre, String apellidos, Fecha fechaNacimiento, String nif, Direccion direccion, String telefono, Fecha fechaInicioEnEmpresa, Rol rol) {
super(nombre, apellidos, fechaNacimiento, nif, direccion, telefono); super(nombre, apellidos, fechaNacimiento, nif, direccion, telefono);
...@@ -26,4 +35,26 @@ public class Empleado extends Persona{ ...@@ -26,4 +35,26 @@ public class Empleado extends Persona{
public Rol obtenerRolActual(){ public Rol obtenerRolActual(){
return rol; return rol;
} }
public static boolean compruebaCredenciales(String l, String p) {
return (password.equals(l) && login.equals(p));
}
public boolean isDisponible(Fecha fecha){
for(Disponibilidad d : historicoDeDisponiblidad){
Fecha inicio = d.getFechaInicio();
Fecha fin = d.getFechaFin();
if(fecha.compareTo(inicio) >= 0 && fin == null){
if(d instanceof Disponible){
return true;
}
}
else{
if(fecha.entreLasDos(inicio, fin) && d instanceof Disponible){
return true;
}
}
}
return false;
}
} }
...@@ -8,8 +8,32 @@ package com.mycompany.disenosoftwareproject.negocio.modelos; ...@@ -8,8 +8,32 @@ package com.mycompany.disenosoftwareproject.negocio.modelos;
* *
* @author defre * @author defre
*/ */
class Fecha { public class Fecha {
private int dia; private int dia;
private int mes; private int mes;
private int ano; private int ano;
public Fecha(int dia, int mes, int ano){
this.dia = dia;
this.mes = mes;
this.ano = ano;
}
public boolean entreLasDos(Fecha f1, Fecha f2){
if ((this.compareTo(f1) >= 0) && (this.compareTo(f2) <= 0)) {
return true;
} else {
return false;
}
}
public int compareTo(Fecha otraFecha) {
if (this.ano != otraFecha.ano) {
return Integer.compare(this.ano, otraFecha.ano);
}
if (this.mes != otraFecha.mes) {
return Integer.compare(this.mes, otraFecha.mes);
}
return Integer.compare(this.dia, otraFecha.dia);
}
} }
...@@ -10,22 +10,26 @@ import java.util.List; ...@@ -10,22 +10,26 @@ import java.util.List;
* *
* @author defre * @author defre
*/ */
public class TurnoDeOperador { public class TurnoDeOperador{
private Fecha fechaCreacion; private Fecha fechaCreacion;
private Fecha fechaTurno; private Fecha fechaTurno;
private TipoDeTurnoOperador tipoDeTurno; private TipoDeTurnoOperador tipoDeTurno;
private List<Empleado> enTurno; private List<Operador> enTurno;
public TurnoDeOperador(Fecha fechaCreacion, Fecha fechaTurno, TipoDeTurnoOperador tipoDeTurno, List<Empleado> e) { public TurnoDeOperador(Fecha fechaCreacion, Fecha fechaTurno, TipoDeTurnoOperador tipoDeTurno, List<Operador> e) {
this.fechaCreacion = fechaCreacion; this.fechaCreacion = fechaCreacion;
this.fechaTurno = fechaTurno; this.fechaTurno = fechaTurno;
this.tipoDeTurno = tipoDeTurno; this.tipoDeTurno = tipoDeTurno;
enTurno = e; enTurno = e;
} }
public List<Empleado> getOperadores(){ public List<Operador> getOperadores(){
return enTurno; return enTurno;
} }
public Fecha getFechaTurno(){
return fechaTurno;
}
} }
...@@ -24,4 +24,8 @@ public class TurnoDeOperativo { ...@@ -24,4 +24,8 @@ public class TurnoDeOperativo {
this.conductorEnTurno = conductorEnTurno; this.conductorEnTurno = conductorEnTurno;
this.medicoEnTurno = medicoEnTurno; this.medicoEnTurno = medicoEnTurno;
} }
public Fecha getFechaTurno(){
return fechaTurno;
}
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment