From 66488ddc5d7a949065986aae8997a2121f13be4b Mon Sep 17 00:00:00 2001 From: Frederico Palma Date: Thu, 3 May 2007 16:37:29 +0000 Subject: [PATCH] no message git-svn-id: https://svn.coded.pt/svn/SIPRP@356 bb69d46d-e84e-40c8-a05a-06db0d633741 --- .../medicina/processo/ProcessoController.java | 273 +++++++++++++++++- .../medicina/processo/ProcessoEvent.java | 38 +-- .../estrutura/EstruturaProcessoPanel.java | 11 +- 3 files changed, 297 insertions(+), 25 deletions(-) diff --git a/trunk/siprp/medicina/processo/ProcessoController.java b/trunk/siprp/medicina/processo/ProcessoController.java index 6967d505..a67b2bb6 100644 --- a/trunk/siprp/medicina/processo/ProcessoController.java +++ b/trunk/siprp/medicina/processo/ProcessoController.java @@ -9,6 +9,7 @@ package siprp.medicina.processo; +import siprp.medicina.processo.data.MarcacoesProcessoData; import siprp.medicina.processo.detalhes.DetalhesProcessoPanel; import siprp.medicina.processo.estrutura.EstruturaProcessoPanel; @@ -22,19 +23,289 @@ public class ProcessoController protected EstruturaProcessoPanel estruturaProcessoPanel; protected ProcessoPanel processoPanel; protected DetalhesProcessoPanel detalhesProcessoPanel; + protected ProcessoDataProvider provider; + + protected Integer idProcesso; + protected Integer idMarcacao; + protected Integer idData; /** Creates a new instance of ProcessoController */ public ProcessoController( EstruturaProcessoPanel estruturaProcessoPanel, ProcessoPanel processoPanel, DetalhesProcessoPanel detalhesProcessoPanel ) + throws Exception { this.estruturaProcessoPanel = estruturaProcessoPanel; this.processoPanel = processoPanel; this.detalhesProcessoPanel = detalhesProcessoPanel; + provider = ProcessoDataProvider.getProvider(); } - public void processoStateChenged(ProcessoEvent e) + public void processoStateChanged(ProcessoEvent e) + { + int accao = e.getAccao(); + switch( accao ) + { + case ProcessoEvent.ACCAO_RECARREGAR_TRABALHADOR: + recarregarTrabalhador( e ); + break; + + case ProcessoEvent.ACCAO_ESCOLHER_PROCESSO: + escolherProcesso( e ); + break; + + case ProcessoEvent.ACCAO_ESCOLHER_CONSULTA: + escolherConsulta( e ); + break; + + case ProcessoEvent.ACCAO_ESCOLHER_ECDS: + escolherECDs( e ); + break; + + case ProcessoEvent.ACCAO_ESCOLHER_FA: + escolherFichaAptidao( e ); + break; + + case ProcessoEvent.ACCAO_ESCOLHER_DATA: + escolherData( e ); + break; + + case ProcessoEvent.ACCAO_ESCOLHER_OBSERVACOES: + escolherObservacoes( e ); + break; + + case ProcessoEvent.ACCAO_ESCOLHER_MAIL: + escolherMail( e ); + break; + + case ProcessoEvent.ACCAO_ESCOLHER_MOTIVO: + escolherMotivo( e ); + break; + + case ProcessoEvent.ACCAO_MARCAR_CONSULTA: + marcarConsulta( e ); + break; + + case ProcessoEvent.ACCAO_MARCAR_ECDS: + marcarECDs( e ); + break; + + case ProcessoEvent.ACCAO_EMITIR_FA: + emitirFichaAptidao( e ); + break; + + case ProcessoEvent.ACCAO_FECHAR: + fecharProcesso( e ); + break; + + case ProcessoEvent.ACCAO_MUDAR_ESTADO_MARCACAO: + mudarEstadoMarcacao( e ); + break; + + case ProcessoEvent.ACCAO_ESCREVER_OBSERVACOES: + escreverObservacoes( e ); + break; + + case ProcessoEvent.ACCAO_ESCREVER_MAIL: + escreverMail( e ); + break; + + } + } + + public void recarregarTrabalhador( ProcessoEvent e ) + { + idProcesso = null; + estruturaProcessoPanel.reload(); + } + + public void escolherProcesso( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + } + catch( Exception ex ) + { + } + } + + public void escolherConsulta( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + idMarcacao = e.getObjecto( ProcessoEvent.TIPO_CONSULTA ); + } + catch( Exception ex ) + { + } + } + + public void escolherECDs( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + idMarcacao = e.getObjecto( ProcessoEvent.TIPO_CONSULTA ); + } + catch( Exception ex ) + { + } + } + + public void escolherFichaAptidao( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + Integer idFichaAptidao = e.getObjecto( ProcessoEvent.TIPO_FICHA_APTIDAO ); + } + catch( Exception ex ) + { + } + } + + public void escolherData( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + Integer idConsulta = e.getObjecto( ProcessoEvent.TIPO_CONSULTA ); + Integer idECDs = e.getObjecto( ProcessoEvent.TIPO_ECDS ); + idMarcacao = idConsulta != null ? idConsulta : idECDs; + Integer idData = e.getObjecto( ProcessoEvent.TIPO_DATA ); + } + catch( Exception ex ) + { + } + } + + public void escolherObservacoes( ProcessoEvent e ) { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + Integer idConsulta = e.getObjecto( ProcessoEvent.TIPO_CONSULTA ); + Integer idECDs = e.getObjecto( ProcessoEvent.TIPO_ECDS ); + idMarcacao = idConsulta != null ? idConsulta : idECDs; + Integer idData = e.getObjecto( ProcessoEvent.TIPO_DATA ); + Integer idObservacoes = e.getObjecto( ProcessoEvent.TIPO_OBSERVACOES ); + } + catch( Exception ex ) + { + } } + public void escolherMail( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + Integer idConsulta = e.getObjecto( ProcessoEvent.TIPO_CONSULTA ); + Integer idECDs = e.getObjecto( ProcessoEvent.TIPO_ECDS ); + idMarcacao = idConsulta != null ? idConsulta : idECDs; + Integer idData = e.getObjecto( ProcessoEvent.TIPO_DATA ); + Integer idMail = e.getObjecto( ProcessoEvent.TIPO_MAIL ); + } + catch( Exception ex ) + { + } + } + public void escolherMotivo( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + } + catch( Exception ex ) + { + } + } + + public void marcarConsulta( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + } + catch( Exception ex ) + { + } + } + + public void marcarECDs( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + } + catch( Exception ex ) + { + } + } + + public void emitirFichaAptidao( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + } + catch( Exception ex ) + { + } + } + + public void fecharProcesso( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + } + catch( Exception ex ) + { + } + } + + public void mudarEstadoMarcacao( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + Integer idConsulta = e.getObjecto( ProcessoEvent.TIPO_CONSULTA ); + Integer idECDs = e.getObjecto( ProcessoEvent.TIPO_ECDS ); + idMarcacao = idConsulta != null ? idConsulta : idECDs; + } + catch( Exception ex ) + { + } + } + + public void escreverObservacoes( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + Integer idConsulta = e.getObjecto( ProcessoEvent.TIPO_CONSULTA ); + Integer idECDs = e.getObjecto( ProcessoEvent.TIPO_ECDS ); + idMarcacao = idConsulta != null ? idConsulta : idECDs; + } + catch( Exception ex ) + { + } + } + + public void escreverMail( ProcessoEvent e ) + { + try + { + idProcesso = e.getObjecto( ProcessoEvent.TIPO_PROCESSO ); + Integer idConsulta = e.getObjecto( ProcessoEvent.TIPO_CONSULTA ); + Integer idECDs = e.getObjecto( ProcessoEvent.TIPO_ECDS ); + idMarcacao = idConsulta != null ? idConsulta : idECDs; + } + catch( Exception ex ) + { + } + } } diff --git a/trunk/siprp/medicina/processo/ProcessoEvent.java b/trunk/siprp/medicina/processo/ProcessoEvent.java index d14ed592..d6b7888b 100644 --- a/trunk/siprp/medicina/processo/ProcessoEvent.java +++ b/trunk/siprp/medicina/processo/ProcessoEvent.java @@ -9,6 +9,8 @@ package siprp.medicina.processo; +import java.util.HashMap; + /** * * @author Frederico @@ -23,7 +25,7 @@ public class ProcessoEvent public static final int ACCAO_ESCOLHER_DATA = 5; public static final int ACCAO_ESCOLHER_OBSERVACOES = 6; public static final int ACCAO_ESCOLHER_MAIL = 7; - public static final int ACCAO_ESCOLHER_TIPO = 8; + public static final int ACCAO_ESCOLHER_MOTIVO = 8; public static final int ACCAO_MARCAR_CONSULTA = 9; public static final int ACCAO_MARCAR_ECDS = 10; public static final int ACCAO_EMITIR_FA = 11; @@ -32,23 +34,22 @@ public class ProcessoEvent public static final int ACCAO_ESCREVER_OBSERVACOES = 14; public static final int ACCAO_ESCREVER_MAIL = 15; - public static final int OBJECTO_ANY = 0; - public static final int OBJECTO_PROCESSO = 1; - public static final int OBJECTO_CONSULTA = 2; - public static final int OBJECTO_ECDS = 3; - public static final int OBJECTO_DATA = 4; - public static final int OBJECTO_OBSERVACOES = 5; - public static final int OBJECTO_MAIL = 6; + public static final Integer TIPO_ANY = new Integer( 0 ); + public static final Integer TIPO_PROCESSO = new Integer( 1 ); + public static final Integer TIPO_CONSULTA = new Integer( 2 ); + public static final Integer TIPO_ECDS = new Integer( 3 ); + public static final Integer TIPO_DATA = new Integer( 4 ); + public static final Integer TIPO_OBSERVACOES = new Integer( 5 ); + public static final Integer TIPO_MAIL = new Integer( 6 ); + public static final Integer TIPO_FICHA_APTIDAO = new Integer( 7 ); protected final int accao; - protected final int tiposObjectos[]; - protected final int idsObjectos[]; + protected final HashMap idsObjectos; /** Creates a new instance of ProcessoEvent */ - public ProcessoEvent( int accao, int tiposObjectos[], int idsObjectos[] ) + public ProcessoEvent( int accao, HashMap idsObjectos ) { this.accao = accao; - this.tiposObjectos = tiposObjectos; this.idsObjectos = idsObjectos; } @@ -57,18 +58,9 @@ public class ProcessoEvent return accao; } - public int[] getUltimoObjecto() - { - return new int[]{ tiposObjectos[ tiposObjectos.length - 1 ], idsObjectos[ idsObjectos.length - 1 ] }; - } - - public int[] getObjecto( int nivel ) + public Integer getObjecto( Integer tipo ) { - if( nivel >= tiposObjectos.length ) - { - return null; - } - return new int[]{ tiposObjectos[ nivel ], idsObjectos[ nivel ] }; + return idsObjectos.get( tipo ); } } diff --git a/trunk/siprp/medicina/processo/estrutura/EstruturaProcessoPanel.java b/trunk/siprp/medicina/processo/estrutura/EstruturaProcessoPanel.java index 4169f9c5..f29cb362 100644 --- a/trunk/siprp/medicina/processo/estrutura/EstruturaProcessoPanel.java +++ b/trunk/siprp/medicina/processo/estrutura/EstruturaProcessoPanel.java @@ -74,7 +74,7 @@ public class EstruturaProcessoPanel extends JPanel public void setTrabalhador( IDObject trabalhador ) { -// this.trabalhador = trabalhador; + this.trabalhador = trabalhador; // rootNode.removeAllChildren(); // PROCESSOS_POR_ID.clear(); // rootNode.setUserObject( trabalhador ); @@ -183,4 +183,13 @@ public class EstruturaProcessoPanel extends JPanel { PROCESSO_LISTENERS.add( listener ); } + + public IDObject getTrabalhador() + { + return trabalhador; + } + + public void reload() + { + } }