|
|
Línea 132: |
Línea 132: |
| </source> | | </source> |
| }} | | }} |
− |
| |
− | ===Gestión de personal de un ambulatorio===
| |
− | Siguiendo el ejemplo planteado en el apartado de herencia, implementamos las clases
| |
− | ;Clase PersonalAmbulatorio
| |
− | <source lang=php>
| |
− | <?php
| |
− | /**
| |
− | * Description of personalAmbulatorio
| |
− | * @author manuel
| |
− | */
| |
− | class PersonalAmbulatorio {
| |
− | //put your code here
| |
− | protected $nombre;
| |
− | protected $apellido;
| |
− | protected $direccion;
| |
− | protected $edad;
| |
− |
| |
− | public function __construct($n,$a, $d,$e){
| |
− | $this->nombre = $n;
| |
− | $this->apellido=$a;
| |
− | $this->direccion=$d;
| |
− | $this->edad=$e;
| |
− | }
| |
− | public function hacerTurno($turno){
| |
− | return "turno de esta semana es $turno<br />";
| |
− |
| |
− | }
| |
− | public function hacerIncidencia($msg){
| |
− | $incidencia ="Persona que crea incidencia $this->apellido, $this->nombre <br />";
| |
− | $incidencia .="incidencia creada con fecha ".date("d-m-y", time())."<hr />";
| |
− | $incidencia .="<strong>$msg</strong>";
| |
− | }
| |
− | }
| |
− | </source>
| |
− | ;Clase Medica
| |
− | <source lang=php>
| |
− | <?php
| |
− |
| |
− | /**
| |
− | * Description of Medica
| |
− | * @author manuel
| |
− | */
| |
− | class Medica extends PersonalAmbulatorio {
| |
− |
| |
− | //put your code here
| |
− |
| |
− | private $especialidad;
| |
− | private $visitas = [];
| |
− | private $consultas = [];
| |
− |
| |
− | public function __construct($n, $a, $d, $e, $esp) {
| |
− | parent::__construct($n, $a, $d,$e);
| |
− | $this->especialidad = $esp;
| |
− | }
| |
− |
| |
− | /* public function pasarConsulta($enfermera, $mensaje) {
| |
− |
| |
− | $msj = "<div style=margin-left:5em> Fecha : " . date("d-m-y", time()) . "</div>";
| |
− | $msj.="<div style=margin-left:5em>Enfermera $enfermera</div>";
| |
− | $msj.="<div style=margin-left:5em>Tipo de consulta " . $mensaje ."</div>";
| |
− | $this->consultas[] =$msj;
| |
− |
| |
− | }
| |
− | *
| |
− | */
| |
− | public function pasarConsulta($enfermera, $mensaje) {
| |
− |
| |
− | $msj = "Fecha : " . date("d-m-y H:i:s", time()) ;
| |
− | $msj.=". Enfermero/a : $enfermera";
| |
− | $msj.=". Tipo de consulta <strong>" . $mensaje."</strong>" ;
| |
− | $this->consultas[] =$msj;
| |
− |
| |
− | }
| |
− |
| |
− | public function realizarVisita($ordenante, $aviso) {
| |
− |
| |
− | $msj = "Fecha : " . date("d-m-y H:i:s", time()) . "";
| |
− | $msj.=". Envía <strong> $ordenante</strong>";
| |
− | $msj.=". Aviso: <strong>$aviso</strong>";
| |
− | $this->visitas[] = $msj;
| |
− | }
| |
− |
| |
− | public function __toString() {
| |
− | $msj = "<div class='medico'> Medico : <strong>$this->apellido, $this->nombre</strong> de $this->edad años de edad";
| |
− | $msj.=". Especialidad <strong>$this->especialidad</strong>";
| |
− | $msj.="<div class='tituloAcciones'>Consultas realizadas " . count($this->consultas) . " consultas :</div>";
| |
− | $msj.="<div class='contenidoAcciones'>";
| |
− | foreach ($this->consultas as $num => $consulta) {
| |
− | $msj.="Consulta $num: ";
| |
− | $msj.= "$consulta<br />";
| |
− | }
| |
− | $msj.="</div>";
| |
− | $msj.="<div class='tituloAcciones'>Visitas realizadas : " . count($this->visitas) . " visitas.</div>";
| |
− | $msj.="<div class='contenidoAcciones'>";
| |
− | foreach ($this->visitas as $num => $visita) {
| |
− | $msj.=" Visita $num: ";
| |
− | $msj.= " $visita <br />";
| |
− | }
| |
− | $msj.="</div>" ;
| |
− | $msj.="</div>" ;
| |
− | return $msj;
| |
− | }
| |
− |
| |
− | }
| |
− | </source>
| |
− | ;Clase Enfermera
| |
− | <source lang=php>
| |
− | class Enfermera extends PersonalAmbulatorio {
| |
− | //put your code here
| |
− | private $anyoTitulacion;
| |
− | private $curas=[];
| |
− |
| |
− | public function __construct($n, $a, $d, $e, $aT){
| |
− | parent::__construct($n,$a,$d,$e);
| |
− | $this->anyoTitulacion=$aT;
| |
− | }
| |
− | public function avisoMedico(Medica $medico, $mensaje){
| |
− | $medico->pasarConsulta($this->apellido, $mensaje, 1);
| |
− | }
| |
− |
| |
− | public function hacerCura($ordenante, $tipoCura){
| |
− | $msj="Fecha : ".date("d-m-y", time())."<br/>";
| |
− | $msj.="Ordenante $ordenante<br />";
| |
− | $msj.="Tipo de cura $cura <hr />";
| |
− | $this->curas[]=$msj;
| |
− | }
| |
− | }
| |
− |
| |
− | </source>
| |
− | ;Clase Conserje
| |
− | <source lang=php>
| |
− | class Conserje extends PersonalAmbulatorio {
| |
− | //put your code here
| |
− | private $ubicacion;
| |
− |
| |
− | public function __construct($n, $a, $d, $e, $u){
| |
− | parent::__construct($n,$a,$d);
| |
− | $this->ubicacion=$u;
| |
− | }
| |
− |
| |
− | public function avisoMedico(Medica $medico, $mensaje,$tipoAviso){
| |
− | if ($tipoAviso=="Consulta")
| |
− | $medico->pasarConsulta($this->apellido, $mensaje, 2);
| |
− | if ($tipoAviso =="Visita")
| |
− | $medico->realizarVisita($this->apellido, $mensaje);
| |
− | }
| |
− | public function avisoEnfermera(Enfermera $enfermera, $mensaje){
| |
− | $enfermera->hacerCura($this->apellido, $mensaje);
| |
− | }
| |
− | }
| |
− | </source>
| |