package siprp.medicina.processo.ui; import static com.evolute.utils.strings.UnicodeLatin1Map.atilde; import static com.evolute.utils.strings.UnicodeLatin1Map.ccedil; import static com.evolute.utils.strings.UnicodeLatin1Map.iacute; import static com.evolute.utils.strings.UnicodeLatin1Map.otilde; import static info.clearthought.layout.TableLayoutConstants.FILL; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA_MARCACAO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA_MARCACAO_EMAIL; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_CONSULTA_MARCACAO_OBSERVACOES; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_EXAME; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_EXAME_MARCACAO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_EXAME_MARCACAO_EMAIL; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_EXAME_MARCACAO_OBSERVACOES; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.CREATE_PROCESSO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.LOAD_TRABALHADOR; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SAVE_CONSULTA; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SAVE_CONSULTA_MARCACAO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SAVE_CONSULTA_MARCACAO_EMAIL; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SAVE_CONSULTA_MARCACAO_OBSERVACOES; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SAVE_EXAME; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SAVE_EXAME_MARCACAO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SAVE_EXAME_MARCACAO_EMAIL; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SAVE_EXAME_MARCACAO_OBSERVACOES; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_CONSULTA; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_CONSULTA_MARCACAO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_CONSULTA_MARCACAO_EMAIL; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_CONSULTA_MARCACAO_OBSERVACAO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_EXAME; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_EXAME_MARCACAO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_EXAME_MARCACAO_EMAIL; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_EXAME_MARCACAO_OBSERVACAO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_PROCESSO; import static siprp.medicina.processo.logic.MedicinaProcessoLogic.SELECT_TRABALHADOR; import info.clearthought.layout.TableLayout; import info.clearthought.layout.TableLayoutConstraints; import java.awt.CardLayout; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.swing.BorderFactory; import javax.swing.JComponent; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import siprp.database.cayenne.objects.PrtGruposProtocolo; import siprp.database.cayenne.objects.Trabalhadores; import siprp.database.cayenne.objects.TrabalhadoresConsultas; import siprp.database.cayenne.objects.TrabalhadoresConsultasDatas; import siprp.database.cayenne.objects.TrabalhadoresConsultasDatasEmails; import siprp.database.cayenne.objects.TrabalhadoresConsultasDatasObservacoes; import siprp.database.cayenne.objects.TrabalhadoresEcds; import siprp.database.cayenne.objects.TrabalhadoresEcdsDatas; import siprp.database.cayenne.objects.TrabalhadoresEcdsDatasEmails; import siprp.database.cayenne.objects.TrabalhadoresEcdsDatasObservacoes; import siprp.database.cayenne.objects.TrabalhadoresProcesso; import siprp.logic.SIPRPLogic.LeafUIActionBinding; import siprp.medicina.MedicinaConstants; import siprp.medicina.processo.mail.MailDialog; import siprp.ui.SIPRPWindow; import siprp.ui.SIPRPWindow.ActionActivation; public class ProcessoDadosPanel extends JPanel { private static final long serialVersionUID = 1L; private final SIPRPWindow parentWindow; private static final String PANEL_START_NAME = "START_PANEL"; private static final String PANEL_TRABALHADOR_NAME = "TRABALHADOR_PANEL"; private static final String PANEL_PROCESSO_NAME = "PROCESSO_PANEL"; private static final String PANEL_CONSULTA_NAME = "PANEL_CONSULTA_NAME"; private static final String PANEL_CONSULTA_MARCACAO_NAME = "PANEL_CONSULTA_MARCACAO_NAME"; private static final String PANEL_CONSULTA_MARCACAO_EMAIL_NAME = "PANEL_CONSULTA_MARCACAO_EMAIL_NAME"; private static final String PANEL_CONSULTA_MARCACAO_OBSERVACOES_NAME = "PANEL_CONSULTA_MARCACAO_OBSERVACOES_NAME"; private static final String PANEL_EXAME_NAME = "EXAME_PANEL"; private static final String PANEL_EXAME_MARCACAO_NAME = "PANEL_EXAME_MARCACAO_NAME"; private static final String PANEL_EXAME_MARCACAO_EMAIL_NAME = "PANEL_EXAME_MARCACAO_EMAIL_NAME"; private static final String PANEL_EXAME_MARCACAO_OBSERVACAO_NAME = "PANEL_EXAME_MARCACAO_OBSERVACAO_NAME"; private final CardLayout cardLayout = new CardLayout(); // panels private final JPanel panelExame = new JPanel(); private final JPanel panelExameMarcacao = new JPanel(); private final JPanel panelExameMarcacaoEmail = new JPanel(); private final JPanel panelExameMarcacaoObservacao = new JPanel(); private final JPanel panelConsulta = new JPanel(); private final JPanel panelConsultaMarcacao = new JPanel(); private final JPanel panelConsultaMarcacaoEmail = new JPanel(); private final JPanel panelConsultaMarcacaoObservacao = new JPanel(); private final JPanel panelProcesso = new JPanel(); private final JPanel panelTrabalhador = new JPanel(); private final JPanel panelStart = new JPanel(); // trabalhador private final JLabel labelTrabalhadorNome = new JLabel( "Nome" ); private final JLabel labelTrabalhadorSexo = new JLabel( "Sexo" ); private final JLabel labelTrabalhadorDataNascimento = new JLabel( "Data de Nascimento" ); private final JLabel labelTrabalhadorNacionalidade = new JLabel( "Nacionalidade" ); private final JLabel labelTrabalhadorObservacoes = new JLabel( "Observa" + ccedil + otilde + "es" ); public final LeafInputField inputTrabalhadorNome = new LeafInputField(); public final LeafInputField> inputTrabalhadorSexo = new LeafInputField>(); public final LeafInputField inputTrabalhadorDataNascimento = new LeafInputField(); public final LeafInputField inputTrabalhadorNacionalidade = new LeafInputField(); public final LeafInputField inputTrabalhadorObservacoes = new LeafInputField(); // processo private final JLabel labelProcessoEstado = new JLabel( "Estado" ); private final JLabel labelProcessoDataInicio = new JLabel( "In" + iacute + "cio" ); private final JLabel labelProcessoDataFim = new JLabel( "Fim" ); private final JLabel labelProcessoMotivo = new JLabel( "Motivo" ); public final LeafInputField> inputProcessoEstado = new LeafInputField>(); public final LeafInputField inputProcessoDataInicio = new LeafInputField(); public final LeafInputField inputProcessoDataFim = new LeafInputField(); public final LeafInputField> inputProcessoMotivo = new LeafInputField>(); // consulta private final JLabel labelConsultaEstado = new JLabel( "Estado" ); private final JLabel labelConsultaData = new JLabel( "Data" ); private final JLabel labelConsultaPrestador = new JLabel( "Prestador" ); public final LeafInputField> inputConsultaEstado = new LeafInputField>(); public final LeafInputField inputConsultaData = new LeafInputField(); public final LeafInputField inputConsultaPrestador = new LeafInputField(); // marcacao consulta private final JLabel labelConsultaMarcacaoEstado = new JLabel( "Estado" ); private final JLabel labelConsultaMarcacaoData = new JLabel( "Data" ); private final JLabel labelConsultaMarcacaoPrestador = new JLabel( "Prestador" ); public final LeafInputField> inputConsultaMarcacaoEstado = new LeafInputField>(); public final LeafInputField inputConsultaMarcacaoData = new LeafInputField(); public final LeafInputField inputConsultaMarcacaoPrestador = new LeafInputField(); // email marcacao consulta private final JLabel labelConsultaMarcacaoEmailData = new JLabel( "Data" ); private final JLabel labelConsultaMarcacaoEmailSubject = new JLabel( "Assunto" ); private final JLabel labelConsultaMarcacaoEmailBody = new JLabel( "Mensagem" ); public final LeafInputField inputConsultaMarcacaoEmailData = new LeafInputField(); public final LeafInputField inputConsultaMarcacaoEmailSubject = new LeafInputField(); public final LeafInputField inputConsultaMarcacaoEmailBody = new LeafInputField(); // observacao marcacao consulta @ActionActivation(onSelect = "", onChange = SAVE_CONSULTA_MARCACAO_OBSERVACOES) public final LeafInputField inputConsultaMarcacaoObsMensagem = new LeafInputField(); // exame private final JLabel labelExameEstado = new JLabel( "Estado" ); private final JLabel labelExameData = new JLabel( "Data" ); private final JLabel labelExameGruposEcds = new JLabel( "ECDs" ); public final LeafInputField> inputExameEstado = new LeafInputField>(); public final LeafInputField> inputExameGruposEcds = new LeafInputField>(); public final LeafInputField inputExameData = new LeafInputField(); // marcacao exame private final JLabel labelExameMarcacaoEstado = new JLabel( "Estado" ); private final JLabel labelExameMarcacaoData = new JLabel( "Data" ); private final JLabel labelExameMarcacaoGruposEcds = new JLabel( "ECDs" ); private final JLabel labelExameMarcacaoPrestador = new JLabel( "Prestador" ); private final JLabel labelExameMarcacaoAnalisador = new JLabel( "Analisador" ); public final LeafInputField> inputExameMarcacaoEstado = new LeafInputField>(); public final LeafInputField inputExameMarcacaoData = new LeafInputField(); public final LeafInputField> inputExameMarcacaoGruposEcds = new LeafInputField>(); public final LeafInputField inputExameMarcacaoPrestador = new LeafInputField(); public final LeafInputField inputExameMarcacaoAnalisador = new LeafInputField(); // email marcacao exame private final JLabel labelExameMarcacaoEmailData = new JLabel( "Data" ); private final JLabel labelExameMarcacaoEmailSubject = new JLabel( "Assunto" ); private final JLabel labelExameMarcacaoEmailBody = new JLabel( "Mensagem" ); public final LeafInputField inputExameMarcacaoEmailData = new LeafInputField(); public final LeafInputField inputExameMarcacaoEmailSubject = new LeafInputField(); public final LeafInputField inputExameMarcacaoEmailBody = new LeafInputField(); // observacao marcacao exame public final LeafInputField inputExameMarcacaoObsMensagem = new LeafInputField(); public ProcessoDadosPanel(SIPRPWindow parentWindow) { this.parentWindow = parentWindow; setupLayout(); setupComponents(); placeComponents(); } private void setupLayout() { this.setLayout( cardLayout ); } private void setupComponents() { setupStartPanel(); setupTrabalhadorPanel(); setupProcessoPanel(); setupConsultaPanel(); setupConsultaMarcacaoPanel(); setupConsultaMarcacaoEmailPanel(); setupConsultaMarcacaoObservacoesPanel(); setupExamePanel(); setupExameMarcacaoPanel(); setupExameMarcacaoEmailPanel(); setupExameMarcacaoObservacoesPanel(); } private void placeComponents() { add( panelStart, PANEL_START_NAME ); add( panelTrabalhador, PANEL_TRABALHADOR_NAME ); add( panelProcesso, PANEL_PROCESSO_NAME ); add( panelConsulta, PANEL_CONSULTA_NAME ); add( panelConsultaMarcacao, PANEL_CONSULTA_MARCACAO_NAME ); add( panelConsultaMarcacaoEmail, PANEL_CONSULTA_MARCACAO_EMAIL_NAME ); add( panelConsultaMarcacaoObservacao, PANEL_CONSULTA_MARCACAO_OBSERVACOES_NAME ); add( panelExame, PANEL_EXAME_NAME ); add( panelExameMarcacao, PANEL_EXAME_MARCACAO_NAME ); add( panelExameMarcacaoEmail, PANEL_EXAME_MARCACAO_EMAIL_NAME ); add( panelExameMarcacaoObservacao, PANEL_EXAME_MARCACAO_OBSERVACAO_NAME ); } @LeafUIActionBinding(action = { LOAD_TRABALHADOR, SELECT_TRABALHADOR }) public void setForTrabalhador( Trabalhadores trabalhador ) { if( trabalhador != null ) { inputTrabalhadorDataNascimento.setObject( trabalhador.getDataNascimento() ); inputTrabalhadorSexo.setObject( trabalhador.getSexos(), trabalhador.getSexo() ); inputTrabalhadorNome.setObject( trabalhador.getNome() ); inputTrabalhadorNacionalidade.setObject( trabalhador.getNacionalidade() ); inputTrabalhadorObservacoes.setObject( trabalhador.getObservacoes() ); cardLayout.show( this, PANEL_TRABALHADOR_NAME ); } else { cardLayout.show( this, PANEL_START_NAME ); } } @LeafUIActionBinding(action = SELECT_PROCESSO) public void setForProcesso( TrabalhadoresProcesso processo ) { if( processo != null ) { inputProcessoDataFim.setObject( processo.getDataFim() ); inputProcessoDataInicio.setObject( processo.getDataInicio() ); inputProcessoEstado.setObject( processo.getEstados(), processo.getEstado() ); inputProcessoMotivo.setObject( processo.getMotivos(), processo.getMotivo() ); cardLayout.show( this, PANEL_PROCESSO_NAME ); } else { cardLayout.show( this, PANEL_TRABALHADOR_NAME ); } } @LeafUIActionBinding(action = SELECT_CONSULTA) public void setForConsulta( TrabalhadoresConsultas consulta ) { if( consulta != null ) { inputConsultaEstado.setObject( consulta.getConsultaEstados(), consulta.getEstado() ); inputConsultaData.setObject( consulta.getData() == null ? new Date( 0 ) : consulta.getData() ); inputConsultaPrestador.setObject( (consulta.getToPrestadores() == null || consulta.getToPrestadores().getNome() == null )? " " : consulta.getToPrestadores().getNome() ); cardLayout.show( this, PANEL_CONSULTA_NAME ); } else { cardLayout.show( this, PANEL_TRABALHADOR_NAME ); } } @LeafUIActionBinding(action = SELECT_CONSULTA_MARCACAO) public void setForConsultaMarcacao( TrabalhadoresConsultasDatas marcacao ) { if( marcacao != null ) { inputConsultaMarcacaoData.setObject( marcacao.getData() ); inputConsultaMarcacaoEstado.setObject( marcacao.getConsultaEstados(), marcacao.getEstado() ); inputConsultaMarcacaoPrestador.setObject( (marcacao.getToPrestadores() == null || marcacao.getToPrestadores().getNome() == null )? " " : marcacao.getToPrestadores().getNome() ); cardLayout.show( this, PANEL_CONSULTA_MARCACAO_NAME ); } else { cardLayout.show( this, PANEL_TRABALHADOR_NAME ); } } @LeafUIActionBinding(action = SELECT_CONSULTA_MARCACAO_EMAIL) public void setForConsultaMarcacaoEmail( TrabalhadoresConsultasDatasEmails email ) { if( email != null ) { inputConsultaMarcacaoEmailBody.setObject( email.getBody() ); inputConsultaMarcacaoEmailSubject.setObject( email.getSubject() ); inputConsultaMarcacaoEmailData.setObject( email.getData() ); cardLayout.show( this, PANEL_CONSULTA_MARCACAO_EMAIL_NAME ); } else { cardLayout.show( this, PANEL_TRABALHADOR_NAME ); } } @LeafUIActionBinding(action = SELECT_CONSULTA_MARCACAO_OBSERVACAO) public void setForConsultaMarcacaoObs( TrabalhadoresConsultasDatasObservacoes obs ) { if( obs != null ) { inputConsultaMarcacaoObsMensagem.setEditable( true ); inputConsultaMarcacaoObsMensagem.setObject( obs.getObservacao() == null ? "" : obs.getObservacao() ); cardLayout.show( this, PANEL_CONSULTA_MARCACAO_OBSERVACOES_NAME ); } else { cardLayout.show( this, PANEL_TRABALHADOR_NAME ); } } @LeafUIActionBinding(action = SELECT_EXAME) public void setForExame( TrabalhadoresEcds exame ) { if( exame != null ) { inputExameData.setObject( exame.getData() ); inputExameEstado.setObject( exame.getEstados(), exame.getEstado() ); OrderedMap grupos = exame.getGruposExamesForPerfil(); inputExameGruposEcds.setCollapseOptions( false ); inputExameGruposEcds.setObject( grupos, grupos.getFirst() ); cardLayout.show( this, PANEL_EXAME_NAME ); } else { cardLayout.show( this, PANEL_TRABALHADOR_NAME ); } } @LeafUIActionBinding(action = SELECT_EXAME_MARCACAO) public void setForExameMarcacao( TrabalhadoresEcdsDatas exameMarcacao ) { if( exameMarcacao != null ) { inputExameMarcacaoData.setObject( exameMarcacao.getData() ); inputExameMarcacaoEstado.setObject( exameMarcacao.getEstados(), exameMarcacao.getEstado() ); OrderedMap grupos = exameMarcacao.getStatesForeGruposExames(); inputExameMarcacaoGruposEcds.setCollapseOptions( false ); inputExameMarcacaoGruposEcds.setObject( grupos, grupos.getFirst() ); inputExameMarcacaoPrestador.setObject( (exameMarcacao.getToPrestadores() == null || exameMarcacao.getToPrestadores().getNome() == null )? " " : exameMarcacao.getToPrestadores().getNome() ); inputExameMarcacaoAnalisador.setObject( (exameMarcacao.getToAnalisador() == null || exameMarcacao.getToAnalisador().getNome() == null )? " " : exameMarcacao.getToAnalisador().getNome() ); cardLayout.show( this, PANEL_EXAME_MARCACAO_NAME ); } else { cardLayout.show( this, PANEL_TRABALHADOR_NAME ); } } @LeafUIActionBinding(action = SELECT_EXAME_MARCACAO_EMAIL) public void setForExameMarcacaoEmail( TrabalhadoresEcdsDatasEmails email ) { if( email != null ) { inputExameMarcacaoEmailBody.setObject( email.getBody() ); inputExameMarcacaoEmailSubject.setObject( email.getSubject() ); inputExameMarcacaoEmailData.setObject( email.getData() ); cardLayout.show( this, PANEL_EXAME_MARCACAO_EMAIL_NAME ); } else { cardLayout.show( this, PANEL_TRABALHADOR_NAME ); } } @LeafUIActionBinding(action = SELECT_EXAME_MARCACAO_OBSERVACAO) public void setForExameMarcacaoObs( TrabalhadoresEcdsDatasObservacoes obs ) { if( obs != null ) { inputExameMarcacaoObsMensagem.setObject( obs.getObservacao() == null ? "" : obs.getObservacao() ); cardLayout.show( this, PANEL_EXAME_MARCACAO_OBSERVACAO_NAME ); } else { cardLayout.show( this, PANEL_TRABALHADOR_NAME ); } } @LeafUIActionBinding(action = CREATE_PROCESSO) public void setForNewProcesso( TrabalhadoresProcesso processo ) { HashMap tipos = processo.getMotivos(); LeafOptionDialog option = new LeafOptionDialog( tipos, "Escolha o tipo de processo:" ); Integer chosen = option.getOption(); if( chosen != null ) { processo.setMotivo( chosen ); } } @LeafUIActionBinding(action = CREATE_CONSULTA) public void setForNewConsulta( TrabalhadoresConsultas consulta ) { } @LeafUIActionBinding(action = CREATE_CONSULTA_MARCACAO) public void setForNewConsultaMarcacao( TrabalhadoresConsultasDatas marcacao ) { LeafCalendarDialog calendar = new LeafCalendarDialog( getParentFrame(), this, false, false ); Date date = calendar.getDate(); marcacao.setData( date ); } @LeafUIActionBinding(action = CREATE_CONSULTA_MARCACAO_EMAIL) public void setForNewConsultaMarcacaoEmail( TrabalhadoresConsultasDatasEmails email ) { try { MailDialog mailDialog = new MailDialog( getParentFrame() ); email.setSubject( mailDialog.getSubject() ); email.setBody( mailDialog.getMessage() ); } catch( Exception e ) { e.printStackTrace(System.out); } } @LeafUIActionBinding(action = CREATE_CONSULTA_MARCACAO_OBSERVACOES) public void setForNewConsultaMarcacaoObservacoes( TrabalhadoresConsultasDatasObservacoes observacoes ) { LeafTextDialog textDialog = new LeafTextDialog( getParentFrame(), this, "", true); String text = textDialog.getText(); observacoes.setObservacao( text ); inputConsultaMarcacaoObsMensagem.setEditable( true ); } @LeafUIActionBinding(action = CREATE_EXAME) public void setForNewExame( TrabalhadoresEcds exame ) { } @LeafUIActionBinding(action = CREATE_EXAME_MARCACAO) public void setForNewExameMarcacao( TrabalhadoresEcdsDatas marcacao ) { LeafCalendarDialog calendar = new LeafCalendarDialog( getParentFrame(), this, false, false ); Date date = calendar.getDate(); marcacao.setData( date ); OrderedMap allGrupos = marcacao.getToTrabalhadoresEcds().getGruposExamesForPerfil(); OrderedMap grupos = new OrderedMap(); Map gruposSelected = new HashMap(); for(int row = 0; row < allGrupos.rows(); ++row) { List grupo = allGrupos.getValuesAt( row ); if( grupo != null && grupo.size() > 1) { String estado = grupo.get( 1 ).toString(); if(MedicinaConstants.ESTADOS_EXAME_STR[MedicinaConstants.ESTADO_POR_MARCAR].equals( estado )) { PrtGruposProtocolo key = allGrupos.getKeyForValue( grupo ); gruposSelected.put( key , true ); grupos.addRow( key, grupo); } } } LeafOptionDialog gruposChosen = new LeafOptionDialog( grupos, gruposSelected, null, "Escolha os ECDs para esta marca" +ccedil + atilde + "o" , "Marcar >>" ); for( PrtGruposProtocolo grupo : gruposChosen.getSelected() ) { marcacao.marcarGrupoExames( grupo ); } } @LeafUIActionBinding(action = CREATE_EXAME_MARCACAO_EMAIL) public void setForNewExameMarcacaoEmail( TrabalhadoresEcdsDatasEmails email ) { try { MailDialog mailDialog = new MailDialog( getParentFrame() ); email.setSubject( mailDialog.getSubject() ); email.setBody( mailDialog.getMessage() ); } catch( Exception e ) { e.printStackTrace(); } } @LeafUIActionBinding(action = CREATE_EXAME_MARCACAO_OBSERVACOES) public void setForNewExameMarcacaoObservacoes( TrabalhadoresEcdsDatasObservacoes observacoes ) { LeafTextDialog textDialog = new LeafTextDialog( getParentFrame(), this, "", true ); String text = textDialog.getText(); observacoes.setObservacao( text ); inputExameMarcacaoObsMensagem.setEditable( true ); } @LeafUIActionBinding(action = SAVE_CONSULTA) public void updateToSaveConsulta( TrabalhadoresConsultas consulta ) { } @LeafUIActionBinding(action = SAVE_CONSULTA_MARCACAO) public void updateToSaveConsultaMarcacao( TrabalhadoresConsultasDatas marcacao ) { } @LeafUIActionBinding(action = SAVE_CONSULTA_MARCACAO_EMAIL) public void updateToSaveConsultaMarcacaoEmail( TrabalhadoresConsultasDatasEmails email ) { } @LeafUIActionBinding(action = SAVE_CONSULTA_MARCACAO_OBSERVACOES) public void updateToSaveConsultaMarcacaoObservacoes( TrabalhadoresConsultasDatasObservacoes observacoes ) { observacoes.setObservacao( inputConsultaMarcacaoObsMensagem.getObject() ); } @LeafUIActionBinding(action = SAVE_EXAME) public void updateToSaveExame( TrabalhadoresEcds exame ) { } @LeafUIActionBinding(action = SAVE_EXAME_MARCACAO) public void updateToSaveExameMarcacao( TrabalhadoresEcdsDatas marcacao ) { } @LeafUIActionBinding(action = SAVE_EXAME_MARCACAO_EMAIL) public void updateToSaveExameMarcacaoEmail( TrabalhadoresEcdsDatasEmails email ) { } @LeafUIActionBinding(action = SAVE_EXAME_MARCACAO_OBSERVACOES) public void updateToSaveExameMarcacaoObservacoes( TrabalhadoresEcdsDatasObservacoes observacoes ) { observacoes.setObservacao( inputExameMarcacaoObsMensagem.getObject() ); } private void setupStartPanel() { } private void setupSimpleDataPanel( JPanel panel, String name, JComponent... field ) { double[] cols = new double[] { FILL }; double[] rows = new double[field.length]; for( int i = 0; i < field.length; rows[i++] = TableLayout.PREFERRED ) ; rows[rows.length - 1] = FILL; TableLayout layout = new TableLayout( cols, rows ); layout.setHGap( 5 ); layout.setVGap( 5 ); panel.setLayout( layout ); if( name != null ) { panel.setBorder( BorderFactory.createTitledBorder( BorderFactory.createEtchedBorder(), name ) ); } for( int i = 0; i < field.length; ++i ) { panel.add( field[i], new TableLayoutConstraints( 0, i ) ); } } private void setupTrabalhadorPanel() { setupSimpleDataPanel( panelTrabalhador, "Trabalhador", labelTrabalhadorNome, inputTrabalhadorNome, labelTrabalhadorSexo, inputTrabalhadorSexo, labelTrabalhadorNacionalidade, inputTrabalhadorNacionalidade, labelTrabalhadorDataNascimento, inputTrabalhadorDataNascimento, labelTrabalhadorObservacoes, inputTrabalhadorObservacoes ); } private void setupProcessoPanel() { setupSimpleDataPanel( panelProcesso, "Processo", labelProcessoEstado, inputProcessoEstado, labelProcessoDataInicio, inputProcessoDataInicio, labelProcessoDataFim, inputProcessoDataFim, labelProcessoMotivo, inputProcessoMotivo, new JPanel() ); } private void setupConsultaPanel() { setupSimpleDataPanel( panelConsulta, "Consulta", labelConsultaEstado, inputConsultaEstado, labelConsultaData, inputConsultaData, labelConsultaPrestador, inputConsultaPrestador, new JPanel() ); } private void setupConsultaMarcacaoPanel() { setupSimpleDataPanel( panelConsultaMarcacao, "Marca" + ccedil + atilde + "o de Consulta", labelConsultaMarcacaoEstado, inputConsultaMarcacaoEstado, labelConsultaMarcacaoData, inputConsultaMarcacaoData, labelConsultaMarcacaoPrestador, inputConsultaMarcacaoPrestador, new JPanel() ); } private void setupConsultaMarcacaoEmailPanel() { setupSimpleDataPanel( panelConsultaMarcacaoEmail, "Email", labelConsultaMarcacaoEmailData, inputConsultaMarcacaoEmailData, labelConsultaMarcacaoEmailSubject, inputConsultaMarcacaoEmailSubject, labelConsultaMarcacaoEmailBody, inputConsultaMarcacaoEmailBody ); } private void setupConsultaMarcacaoObservacoesPanel() { setupSimpleDataPanel( panelConsultaMarcacaoObservacao, "Observa" + ccedil + otilde + "es", inputConsultaMarcacaoObsMensagem ); } private void setupExamePanel() { setupSimpleDataPanel( panelExame, "Exame", labelExameEstado, inputExameEstado, labelExameData, inputExameData, labelExameGruposEcds, inputExameGruposEcds, new JPanel() ); } private void setupExameMarcacaoPanel() { setupSimpleDataPanel( panelExameMarcacao, "Marca" + ccedil + atilde + "o de Exame", labelExameMarcacaoEstado, inputExameMarcacaoEstado, labelExameMarcacaoData, inputExameMarcacaoData, labelExameMarcacaoGruposEcds, inputExameMarcacaoGruposEcds, labelExameMarcacaoPrestador, inputExameMarcacaoPrestador, labelExameMarcacaoAnalisador, inputExameMarcacaoAnalisador, new JPanel() ); } private void setupExameMarcacaoEmailPanel() { setupSimpleDataPanel( panelExameMarcacaoEmail, "Email", labelExameMarcacaoEmailData, inputExameMarcacaoEmailData, labelExameMarcacaoEmailSubject, inputExameMarcacaoEmailSubject, labelExameMarcacaoEmailBody, inputExameMarcacaoEmailBody ); } private void setupExameMarcacaoObservacoesPanel() { setupSimpleDataPanel( panelExameMarcacaoObservacao, "Observa" + ccedil + otilde + "es", inputExameMarcacaoObsMensagem ); } private JFrame getParentFrame() { if( getRootPane() != null && getRootPane().getParent() instanceof JFrame ) { return (JFrame) getRootPane().getParent(); } return null; } }