forked from Coded/SIPRP
marcacoes h&s passam para shst
git-svn-id: https://svn.coded.pt/svn/SIPRP@1425 bb69d46d-e84e-40c8-a05a-06db0d6337410'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
parent
075f4240c0
commit
54a756a05a
Binary file not shown.
@ -1,45 +0,0 @@
|
||||
/*
|
||||
* CorTecnicoCellRenderer.java
|
||||
*
|
||||
* Created on February 1, 2006, 11:13 PM
|
||||
*
|
||||
* To change this template, choose Tools | Template Manager
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
|
||||
package siprp.higiene.marcacoes;
|
||||
|
||||
import java.awt.Color;
|
||||
import java.awt.Component;
|
||||
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JList;
|
||||
import javax.swing.ListCellRenderer;
|
||||
|
||||
import siprp.higiene.HigieneDataProvider;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fpalma
|
||||
*/
|
||||
public class CorTecnicoCellRenderer extends JLabel implements ListCellRenderer
|
||||
{
|
||||
|
||||
public CorTecnicoCellRenderer()
|
||||
{
|
||||
setOpaque(true);
|
||||
}
|
||||
|
||||
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus)
|
||||
{
|
||||
setText( " " );
|
||||
Color color = HigieneDataProvider.CORES_TECNICOS[ ( ( Integer ) value ).intValue() ];
|
||||
if( cellHasFocus )
|
||||
{
|
||||
color = color.darker().darker();
|
||||
}
|
||||
setBackground( color );
|
||||
|
||||
return this;
|
||||
}
|
||||
}
|
||||
@ -1,353 +0,0 @@
|
||||
package siprp.higiene.marcacoes;
|
||||
|
||||
import info.clearthought.layout.TableLayout;
|
||||
import info.clearthought.layout.TableLayoutConstraints;
|
||||
|
||||
import java.awt.BorderLayout;
|
||||
|
||||
import javax.swing.BorderFactory;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JComboBox;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JScrollPane;
|
||||
|
||||
import siprp.data.outer.MarcacoesEstabelecimentoData;
|
||||
|
||||
import com.evolute.swing.component.EvoDatePicker;
|
||||
import com.evolute.utils.Singleton;
|
||||
import com.evolute.utils.data.IDObject;
|
||||
import com.evolute.utils.data.MappableObject;
|
||||
import com.evolute.utils.dataui.ComponentController;
|
||||
import com.evolute.utils.dataui.ComponentsHashtable;
|
||||
import com.evolute.utils.dataui.DataClassAware;
|
||||
import com.evolute.utils.db.DBManager;
|
||||
import com.evolute.utils.db.SQLExecuter;
|
||||
import com.evolute.utils.ui.panel.RadioButtonFixedPanel;
|
||||
import com.evolute.utils.ui.text.StateTextArea;
|
||||
|
||||
public class MarcacaoVisitaHSTPanel extends JPanel implements DataClassAware<MarcacoesEstabelecimentoData>
|
||||
{
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
private MarcacoesEstabelecimentoData marcacaoEstabelecimentosData;
|
||||
private final ComponentsHashtable components = new ComponentsHashtable();
|
||||
|
||||
protected final SQLExecuter EXECUTER;
|
||||
|
||||
private final JLabel dataLabel = new JLabel( "Data da visita", JLabel.RIGHT );
|
||||
private final EvoDatePicker dataPanel = new EvoDatePicker();
|
||||
private final JButton emailButton = new JButton( "Enviar Email" );
|
||||
private final JLabel dataFichaLabel = new JLabel( "Data do Relat\u00f3rio(externo)", JLabel.RIGHT );
|
||||
private final EvoDatePicker dataFichaPanel = new EvoDatePicker();
|
||||
private final JLabel tecnicoLabel = new JLabel( "T\u00e9cnico", JLabel.RIGHT );
|
||||
private final JLabel tecnicoSuperiorLabel = new JLabel( "T\u00e9cnico Superior", JLabel.RIGHT );
|
||||
private final JComboBox tecnicoList = new JComboBox();
|
||||
private final JComboBox tecnicoSuperiorList = new JComboBox();
|
||||
private RadioButtonFixedPanel estadoList;
|
||||
private final JScrollPane observacoesTextScroll = new JScrollPane();
|
||||
private final StateTextArea observacoesText = new StateTextArea();
|
||||
|
||||
public MarcacaoVisitaHSTPanel()
|
||||
throws Exception
|
||||
{
|
||||
DBManager dbm = ( DBManager )Singleton.getInstance( Singleton.DEFAULT_DBMANAGER );
|
||||
if( dbm != null )
|
||||
{
|
||||
EXECUTER = ( SQLExecuter )dbm.getSharedExecuter( this );
|
||||
}
|
||||
else
|
||||
{
|
||||
EXECUTER = null;
|
||||
}
|
||||
setupComponents();
|
||||
setupComponentsHashtable();
|
||||
place();
|
||||
}
|
||||
|
||||
public void setupComponents()
|
||||
throws Exception
|
||||
{
|
||||
// emailButton.setMinimumSize( new Dimension( 300, 20 ) );
|
||||
// emailButton.setPreferredSize( new Dimension( 200, 20 ) );
|
||||
|
||||
tecnicoList.addItem( new MappableObject( new Integer( -1 ), "" ) );
|
||||
tecnicoList.setSelectedIndex( 0 );
|
||||
|
||||
tecnicoSuperiorList.addItem( new MappableObject( new Integer( -1 ), "" ) );
|
||||
tecnicoSuperiorList.setSelectedIndex( 0 );
|
||||
|
||||
IDObject estadoListOptions[] = new IDObject[]{
|
||||
new MappableObject( new Integer( 0 ), "Por realizar" ),
|
||||
new MappableObject( new Integer( 2 ), "Realizada" ),
|
||||
new MappableObject( new Integer( 3 ), "Desmarcada pela empresa" ),
|
||||
new MappableObject( new Integer( 4 ), "Desmarcada pela SIPRP" ),
|
||||
};
|
||||
estadoList = new RadioButtonFixedPanel( estadoListOptions, 6, 1, RadioButtonFixedPanel.ORIENTATION_VERTICAL, false, null );
|
||||
estadoList.setBorder( BorderFactory.createTitledBorder( BorderFactory.createEtchedBorder(), "Estado" ) );
|
||||
|
||||
observacoesText.setLineWrap( true );
|
||||
observacoesText.setWrapStyleWord( true );
|
||||
observacoesText.setRows( 5 );
|
||||
|
||||
observacoesTextScroll.setHorizontalScrollBarPolicy( JScrollPane.HORIZONTAL_SCROLLBAR_NEVER );
|
||||
observacoesTextScroll.setVerticalScrollBarPolicy( JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED );
|
||||
observacoesTextScroll.setViewportView( observacoesText );
|
||||
|
||||
}
|
||||
|
||||
public void place()
|
||||
{
|
||||
TableLayout layout = new TableLayout(
|
||||
new double[]{ TableLayout.FILL, TableLayout.MINIMUM, TableLayout.MINIMUM, TableLayout.FILL },
|
||||
new double[]{ TableLayout.MINIMUM, TableLayout.MINIMUM, TableLayout.MINIMUM,
|
||||
TableLayout.MINIMUM, TableLayout.MINIMUM, TableLayout.MINIMUM,
|
||||
TableLayout.PREFERRED}
|
||||
);
|
||||
layout.setHGap(5);
|
||||
layout.setVGap(5);
|
||||
this.setLayout( layout );
|
||||
this.add( dataLabel, new TableLayoutConstraints(1,0) );
|
||||
this.add( dataPanel, new TableLayoutConstraints(2,0) );
|
||||
this.add( emailButton, new TableLayoutConstraints(2,1) );
|
||||
this.add( dataFichaLabel, new TableLayoutConstraints(1,2) );
|
||||
this.add( dataFichaPanel, new TableLayoutConstraints(2,2) );
|
||||
this.add( tecnicoLabel, new TableLayoutConstraints(1,3) );
|
||||
this.add( tecnicoList, new TableLayoutConstraints(2,3) );
|
||||
this.add( tecnicoSuperiorLabel, new TableLayoutConstraints(1,4) );
|
||||
this.add( tecnicoSuperiorList, new TableLayoutConstraints(2,4) );
|
||||
this.add( estadoList, new TableLayoutConstraints(1,5,2,5) );
|
||||
JPanel panel = new JPanel( new BorderLayout() );
|
||||
panel.setBorder( BorderFactory.createTitledBorder( BorderFactory.createEtchedBorder(), "Observa\u00e7\u00f5es" ) );
|
||||
panel.add( observacoesTextScroll );
|
||||
this.add( panel, new TableLayoutConstraints(1,6,2,6) );
|
||||
//
|
||||
// JPanel MarcacaoVisitaHSTPanel = this;
|
||||
// GridBagConstraints MarcacaoVisitaHSTPanelGBC = new GridBagConstraints();
|
||||
// MarcacaoVisitaHSTPanelGBC.insets = new Insets( 1, 1, 1, 1 );
|
||||
// GridBagLayout MarcacaoVisitaHSTPanelLayout = new GridBagLayout();
|
||||
// MarcacaoVisitaHSTPanel.setLayout( MarcacaoVisitaHSTPanelLayout );
|
||||
// MarcacaoVisitaHSTPanelGBC.gridx = 0;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridy = 0;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridwidth = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridheight = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.weightx = 0.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.weighty = 0.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.fill = GridBagConstraints.HORIZONTAL;
|
||||
// MarcacaoVisitaHSTPanelLayout.setConstraints( dataLabel, MarcacaoVisitaHSTPanelGBC );
|
||||
// MarcacaoVisitaHSTPanel.add( dataLabel );
|
||||
//
|
||||
// MarcacaoVisitaHSTPanelGBC.gridx = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridy = 0;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridwidth = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridheight = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.weightx = 0.5;
|
||||
// MarcacaoVisitaHSTPanelGBC.weighty = 0.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.fill = GridBagConstraints.HORIZONTAL;
|
||||
// MarcacaoVisitaHSTPanelLayout.setConstraints( dataPanel, MarcacaoVisitaHSTPanelGBC );
|
||||
// MarcacaoVisitaHSTPanel.add( dataPanel );
|
||||
//
|
||||
// MarcacaoVisitaHSTPanelGBC.gridx = 2;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridy = 0;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridwidth = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridheight = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.weightx = 0.5;
|
||||
// MarcacaoVisitaHSTPanelGBC.weighty = 0.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.fill = GridBagConstraints.NONE;
|
||||
// MarcacaoVisitaHSTPanelLayout.setConstraints( emailButton, MarcacaoVisitaHSTPanelGBC );
|
||||
// MarcacaoVisitaHSTPanel.add( emailButton );
|
||||
//
|
||||
// MarcacaoVisitaHSTPanelGBC.gridx = 0;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridy = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridwidth = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridheight = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.weightx = 0.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.weighty = 0.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.fill = GridBagConstraints.HORIZONTAL;
|
||||
// MarcacaoVisitaHSTPanelLayout.setConstraints( dataFichaLabel, MarcacaoVisitaHSTPanelGBC );
|
||||
// MarcacaoVisitaHSTPanel.add( dataFichaLabel );
|
||||
//
|
||||
// MarcacaoVisitaHSTPanelGBC.gridx = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridy = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridwidth = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridheight = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.weightx = 0.5;
|
||||
// MarcacaoVisitaHSTPanelGBC.weighty = 0.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.fill = GridBagConstraints.HORIZONTAL;
|
||||
// MarcacaoVisitaHSTPanelLayout.setConstraints( dataFichaPanel, MarcacaoVisitaHSTPanelGBC );
|
||||
// MarcacaoVisitaHSTPanel.add( dataFichaPanel );
|
||||
//
|
||||
// MarcacaoVisitaHSTPanelGBC.gridx = 0;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridy = 2;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridwidth = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridheight = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.weightx = 0.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.weighty = 0.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.fill = GridBagConstraints.HORIZONTAL;
|
||||
// MarcacaoVisitaHSTPanelLayout.setConstraints( tecnicoLabel, MarcacaoVisitaHSTPanelGBC );
|
||||
// MarcacaoVisitaHSTPanel.add( tecnicoLabel );
|
||||
//
|
||||
// MarcacaoVisitaHSTPanelGBC.gridx = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridy = 2;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridwidth = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridheight = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.weightx = 0.5;
|
||||
// MarcacaoVisitaHSTPanelGBC.weighty = 0.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.fill = GridBagConstraints.HORIZONTAL;
|
||||
// MarcacaoVisitaHSTPanelLayout.setConstraints( tecnicoList, MarcacaoVisitaHSTPanelGBC );
|
||||
// MarcacaoVisitaHSTPanel.add( tecnicoList );
|
||||
//
|
||||
// MarcacaoVisitaHSTPanelGBC.gridx = 0;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridy = 3;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridwidth = 3;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridheight = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.weightx = 1.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.weighty = 0.5;
|
||||
// MarcacaoVisitaHSTPanelGBC.fill = GridBagConstraints.BOTH;
|
||||
// MarcacaoVisitaHSTPanelLayout.setConstraints( estadoList, MarcacaoVisitaHSTPanelGBC );
|
||||
// MarcacaoVisitaHSTPanel.add( estadoList );
|
||||
//
|
||||
// MarcacaoVisitaHSTPanelGBC.gridx = 0;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridy = 4;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridwidth = 3;
|
||||
// MarcacaoVisitaHSTPanelGBC.gridheight = 1;
|
||||
// MarcacaoVisitaHSTPanelGBC.weightx = 1.0;
|
||||
// MarcacaoVisitaHSTPanelGBC.weighty = 0.5;
|
||||
//
|
||||
// MarcacaoVisitaHSTPanelGBC.fill = GridBagConstraints.BOTH;
|
||||
// MarcacaoVisitaHSTPanelLayout.setConstraints( observacoesTextScroll, MarcacaoVisitaHSTPanelGBC );
|
||||
// MarcacaoVisitaHSTPanel.add( observacoesTextScroll );
|
||||
}
|
||||
|
||||
private void setupComponentsHashtable()
|
||||
{
|
||||
components.putComponent( MarcacoesEstabelecimentoData.DATA, dataPanel );
|
||||
components.putComponent( MarcacoesEstabelecimentoData.DATA_RELATORIO, dataFichaPanel );
|
||||
components.putComponent( MarcacoesEstabelecimentoData.TECNICO_HST, tecnicoList );
|
||||
components.putComponent( MarcacoesEstabelecimentoData.TECNICO_SUPERIOR_HST, tecnicoSuperiorList );
|
||||
components.putComponent( MarcacoesEstabelecimentoData.ESTADO, estadoList );
|
||||
components.putComponent( MarcacoesEstabelecimentoData.OBSERVACOES, observacoesText );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fill( MarcacoesEstabelecimentoData toFill )
|
||||
{
|
||||
marcacaoEstabelecimentosData = toFill;
|
||||
// if( toFill == null || !( toFill instanceof PropertyObject ) )
|
||||
// {
|
||||
// return;
|
||||
// }
|
||||
// Map<String,Object> data = null;
|
||||
// if( toFill instanceof PropertyObject )
|
||||
// {
|
||||
// data = ( (PropertyObject) toFill ).getHashData();
|
||||
// if( toFill instanceof MarcacoesEstabelecimentoData )
|
||||
// {
|
||||
// marcacaoEstabelecimentosData = (MarcacoesEstabelecimentoData) toFill;
|
||||
// }
|
||||
// }
|
||||
// else if( toFill instanceof Hashtable )
|
||||
// {
|
||||
// data = (Hashtable) toFill;
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// return;
|
||||
// }
|
||||
// if( marcacaoEstabelecimentosData == null )
|
||||
// {
|
||||
// clear();
|
||||
// marcacaoEstabelecimentosData = new MarcacoesEstabelecimentoData();
|
||||
// marcacaoEstabelecimentosData.setHashData( data );
|
||||
// }
|
||||
// PropertyObject po = (PropertyObject) toFill;
|
||||
// String properties[] = (String[]) components.keySet().toArray( new String[ 0 ] );
|
||||
ComponentController.fillFrom( marcacaoEstabelecimentosData, components );
|
||||
}
|
||||
|
||||
@Override
|
||||
public MarcacoesEstabelecimentoData save()
|
||||
{
|
||||
if( marcacaoEstabelecimentosData == null )
|
||||
{
|
||||
marcacaoEstabelecimentosData = new MarcacoesEstabelecimentoData();
|
||||
}
|
||||
// marcacaoEstabelecimentosData.setHashData( ComponentController.save( components ) );
|
||||
// if( !( marcacaoEstabelecimentosData instanceof PropertyObject ) )
|
||||
// {
|
||||
// return marcacaoEstabelecimentosData;
|
||||
// }
|
||||
return ComponentController.saveTo( marcacaoEstabelecimentosData, components );
|
||||
// marcacaoEstabelecimentosData.setHashData( data );
|
||||
// return marcacaoEstabelecimentosData;
|
||||
}
|
||||
|
||||
public void clear()
|
||||
{
|
||||
marcacaoEstabelecimentosData = null;
|
||||
String properties[] = (String[]) components.keySet().toArray( new String[ 0 ] );
|
||||
ComponentController.clear( properties, components );
|
||||
}
|
||||
|
||||
public void setEnabled( boolean enable )
|
||||
{
|
||||
String properties[] = (String[]) components.keySet().toArray( new String[ 0 ] );
|
||||
ComponentController.setEnabled( properties, enable, components );
|
||||
}
|
||||
|
||||
public Class<MarcacoesEstabelecimentoData> getDataClass()
|
||||
{
|
||||
return MarcacoesEstabelecimentoData.class;
|
||||
}
|
||||
|
||||
public JLabel getDataFichaLabel()
|
||||
{
|
||||
return dataFichaLabel;
|
||||
}
|
||||
|
||||
public EvoDatePicker getDataFichaPanel()
|
||||
{
|
||||
return dataFichaPanel;
|
||||
}
|
||||
|
||||
public JLabel getDataLabel()
|
||||
{
|
||||
return dataLabel;
|
||||
}
|
||||
|
||||
public EvoDatePicker getDataPanel()
|
||||
{
|
||||
return dataPanel;
|
||||
}
|
||||
|
||||
public JButton getEmailButton()
|
||||
{
|
||||
return emailButton;
|
||||
}
|
||||
|
||||
public RadioButtonFixedPanel getEstadoList()
|
||||
{
|
||||
return estadoList;
|
||||
}
|
||||
|
||||
public StateTextArea getObservacoesText()
|
||||
{
|
||||
return observacoesText;
|
||||
}
|
||||
|
||||
public JLabel getTecnicoLabel()
|
||||
{
|
||||
return tecnicoLabel;
|
||||
}
|
||||
|
||||
public JComboBox getTecnicoList()
|
||||
{
|
||||
return tecnicoList;
|
||||
}
|
||||
|
||||
public JComboBox getTecnicoSuperiorList()
|
||||
{
|
||||
return tecnicoSuperiorList;
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,93 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
Document : HolterPanel.xml
|
||||
Created on : 1 de Outubro de 2004, 11:17
|
||||
Author : fpalma
|
||||
Description:
|
||||
Purpose of the document follows.
|
||||
-->
|
||||
|
||||
<!DOCTYPE UICOMPONENT SYSTEM 'http://evolute.dyndns.tv/dtd/uicomponent.dtd' >
|
||||
<UICOMPONENT DATA_CLASS="siprp.data.MarcacaoEstabelecimentoData">
|
||||
<INCLUDE LANGUAGE="JAVA" >siprp.data.*</INCLUDE>
|
||||
<PANEL NAME="MarcacaoVisitaHSTPanel" ROW="0" COLUMN="0">
|
||||
<GRID>
|
||||
<ROW TYPE="MIN"/> <!--R0-->
|
||||
<ROW TYPE="MIN"/> <!--R1-->
|
||||
<ROW TYPE="MIN"/> <!--R2-->
|
||||
<ROW TYPE="MAX"/> <!--R3-->
|
||||
<ROW TYPE="MAX"/> <!--R4-->
|
||||
|
||||
<COL TYPE="MIN" /> <!--C0-->
|
||||
<COL TYPE="MAX" /> <!--C1-->
|
||||
<COL TYPE="MAX" /> <!--C2-->
|
||||
</GRID>
|
||||
|
||||
<!-- ROW 0 -->
|
||||
<LABEL NAME="dataLabel" ROW="0" COLUMN="0">
|
||||
<CAPTION>
|
||||
Data da visita
|
||||
</CAPTION>
|
||||
</LABEL>
|
||||
<EDITOR NAME="dataPanel" ROW="0" COLUMN="1" DATA_FIELD="data">
|
||||
<CONTENT TYPE="DATE" />
|
||||
</EDITOR>
|
||||
<BUTTON NAME="emailButton" ROW="0" COLUMN="2">
|
||||
<CAPTION>
|
||||
Enviar Email
|
||||
</CAPTION>
|
||||
<SIZE>
|
||||
<WIDTH PREFERRED="200" MIN="300" />
|
||||
<HEIGHT PREFERRED="20" MIN="20" />
|
||||
</SIZE>
|
||||
</BUTTON>
|
||||
|
||||
<!-- ROW 1 -->
|
||||
<LABEL NAME="dataFichaLabel" ROW="1" COLUMN="0">
|
||||
<CAPTION>
|
||||
Data do Relat\u00f3rio
|
||||
</CAPTION>
|
||||
</LABEL>
|
||||
<EDITOR NAME="dataFichaPanel" ROW="1" COLUMN="1" DATA_FIELD="data_relatorio">
|
||||
<CONTENT TYPE="DATE" />
|
||||
</EDITOR>
|
||||
|
||||
<!-- ROW 2 -->
|
||||
<LABEL NAME="tecnicoLabel" ROW="2" COLUMN="0">
|
||||
<CAPTION>
|
||||
T\u00e9cnico
|
||||
</CAPTION>
|
||||
</LABEL>
|
||||
<EDITOR NAME="tecnicoList" ROW="2" COLUMN="1" EDITABLE="FALSE" DATA_FIELD="tecnico_hst">
|
||||
<CONTENT TYPE="INTEGER" ISLIST="TRUE">
|
||||
<ROWS>1</ROWS>
|
||||
</CONTENT>
|
||||
<LIST_CONTENT HAS_IDS="TRUE" SELECTABLE="TRUE" DISPLAY_COLUMNS="1">
|
||||
<LIST_OPTION OPTION_ID="-1" DEFAULT="TRUE"> </LIST_OPTION>
|
||||
</LIST_CONTENT>
|
||||
</EDITOR>
|
||||
|
||||
<EDITOR NAME="estadoList" ROW="3" COLUMN="0" COLSPAN="3" EDITABLE="FALSE" DATA_FIELD="estado">
|
||||
<BORDER TYPE="ETCHED">Estado</BORDER>
|
||||
<CONTENT TYPE="INTEGER" ISLIST="TRUE">
|
||||
<ROWS>6</ROWS>
|
||||
</CONTENT>
|
||||
<LIST_CONTENT HAS_IDS="TRUE" SELECTABLE="TRUE" DISPLAY_COLUMNS="1">
|
||||
<LIST_OPTION OPTION_ID="0" DEFAULT="TRUE">Por realizar</LIST_OPTION>
|
||||
<LIST_OPTION OPTION_ID="2">Realizada</LIST_OPTION>
|
||||
<LIST_OPTION OPTION_ID="3">Desmarcada pela empresa</LIST_OPTION>
|
||||
<LIST_OPTION OPTION_ID="4">Desmarcada pela SIPRP</LIST_OPTION>
|
||||
</LIST_CONTENT>
|
||||
</EDITOR>
|
||||
|
||||
<!-- ROW 4 -->
|
||||
<EDITOR NAME="observacoesText" ROW="4" COLUMN="0" COLSPAN="3" DATA_FIELD="observacoes">
|
||||
<BORDER TYPE="ETCHED">Observa\u00e7\u00f5es</BORDER>
|
||||
<SCROLL/>
|
||||
<CONTENT TYPE="CHAR" ACCEPTS_NEGATIVE="FALSE">
|
||||
<ROWS>5</ROWS>
|
||||
</CONTENT>
|
||||
</EDITOR>
|
||||
</PANEL>
|
||||
</UICOMPONENT>
|
||||
@ -1,207 +0,0 @@
|
||||
/*
|
||||
* MarcacoesHigieneUpperPanel.java
|
||||
*
|
||||
* Created on February 2, 2006, 12:40 AM
|
||||
*
|
||||
* To change this template, choose Tools | Template Manager
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
|
||||
package siprp.higiene.marcacoes;
|
||||
|
||||
import java.awt.GridBagConstraints;
|
||||
import java.awt.GridBagLayout;
|
||||
import java.awt.Insets;
|
||||
import java.util.Arrays;
|
||||
import java.util.Vector;
|
||||
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.ListSelectionModel;
|
||||
import javax.swing.event.ListSelectionEvent;
|
||||
import javax.swing.event.ListSelectionListener;
|
||||
|
||||
import siprp.higiene.HigieneDataProvider;
|
||||
|
||||
import com.evolute.utils.dataui.ControllableComponent;
|
||||
import com.evolute.utils.tables.BaseTable;
|
||||
import com.evolute.utils.tables.ColumnizedMappable;
|
||||
import com.evolute.utils.tables.VectorTableModel;
|
||||
import com.evolute.utils.ui.DialogException;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fpalma
|
||||
*/
|
||||
public class MarcacoesHigieneUpperPanel extends JPanel
|
||||
implements ListSelectionListener, ControllableComponent
|
||||
{
|
||||
protected BaseTable empresasTable;
|
||||
protected VectorTableModel empresasModel;
|
||||
protected BaseTable estabelecimentosTable;
|
||||
protected VectorTableModel estabelecimentosModel;
|
||||
|
||||
protected HigieneDataProvider provider;
|
||||
|
||||
protected final Vector listeners;
|
||||
|
||||
/** Creates a new instance of MedicinaUpperPanel */
|
||||
public MarcacoesHigieneUpperPanel()
|
||||
throws Exception
|
||||
{
|
||||
provider = ( HigieneDataProvider ) HigieneDataProvider.getProvider();
|
||||
listeners = new Vector();
|
||||
setupComponents();
|
||||
}
|
||||
|
||||
private void setupComponents()
|
||||
throws Exception
|
||||
{
|
||||
empresasModel = new VectorTableModel( new String[]{ "empresas" } );
|
||||
empresasTable = new BaseTable( empresasModel );
|
||||
empresasTable.setSelectionMode( ListSelectionModel.SINGLE_SELECTION );
|
||||
empresasTable.setNonResizableNorReordable();
|
||||
JScrollPane empresasScroll =
|
||||
new JScrollPane( empresasTable, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
|
||||
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER );
|
||||
empresasTable.getSelectionModel().addListSelectionListener( this );
|
||||
estabelecimentosModel = new VectorTableModel( new String[]{ "estabelecimentos" } );
|
||||
estabelecimentosTable = new BaseTable( estabelecimentosModel );
|
||||
estabelecimentosTable.setSelectionMode( ListSelectionModel.SINGLE_SELECTION );
|
||||
estabelecimentosTable.setNonResizableNorReordable();
|
||||
JScrollPane estabelecimentosScroll =
|
||||
new JScrollPane( estabelecimentosTable, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
|
||||
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER );
|
||||
estabelecimentosTable.getSelectionModel().addListSelectionListener( this );
|
||||
|
||||
GridBagLayout gridbag = new GridBagLayout();
|
||||
setLayout( gridbag );
|
||||
GridBagConstraints constraints = new GridBagConstraints();
|
||||
constraints.insets = new Insets( 1, 1, 1, 1 );
|
||||
constraints.fill = GridBagConstraints.BOTH;
|
||||
constraints.gridwidth = 1;
|
||||
constraints.gridheight = GridBagConstraints.REMAINDER;
|
||||
constraints.weightx = 0.5;
|
||||
constraints.weighty = 1;
|
||||
|
||||
gridbag.setConstraints( empresasScroll, constraints );
|
||||
|
||||
constraints.gridwidth = GridBagConstraints.REMAINDER;
|
||||
gridbag.setConstraints( estabelecimentosScroll, constraints );
|
||||
|
||||
add( empresasScroll );
|
||||
add( estabelecimentosScroll );
|
||||
|
||||
ColumnizedMappable empresas[] = provider.getAllEmpresas();
|
||||
Vector values = empresasModel.getValues();
|
||||
values.addAll( Arrays.asList( empresas ) );
|
||||
empresasModel.setValues( values );
|
||||
}
|
||||
|
||||
public void valueChanged( ListSelectionEvent e )
|
||||
{
|
||||
Object source = e.getSource();
|
||||
if( e.getValueIsAdjusting() )
|
||||
{
|
||||
return;
|
||||
}
|
||||
if( source.equals( empresasTable.getSelectionModel() ) )
|
||||
{
|
||||
carregarEstabelecimentos();
|
||||
}
|
||||
else if( source.equals( estabelecimentosTable.getSelectionModel() ) )
|
||||
{
|
||||
notifyListeners( e );
|
||||
}
|
||||
}
|
||||
|
||||
protected void carregarEstabelecimentos()
|
||||
{
|
||||
estabelecimentosTable.clearSelection();
|
||||
int selected = empresasTable.getSelectedRow();
|
||||
estabelecimentosModel.clearAll();
|
||||
if( selected > -1 )
|
||||
{
|
||||
try
|
||||
{
|
||||
Integer empresaID = ( ( ColumnizedMappable ) empresasModel.getRowAt( selected ) ).getID();
|
||||
ColumnizedMappable estabelecimentos[] = provider.getAllEstabelecimentosForEmpresa( empresaID);
|
||||
Vector values = estabelecimentosModel.getValues();
|
||||
values.addAll( Arrays.asList( estabelecimentos ) );
|
||||
estabelecimentosModel.setValues( values );
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
DialogException.showExceptionMessage( ex, "Erro a carregar os estabelecimentos.", true );
|
||||
estabelecimentosModel.clearAll();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected void notifyListeners( ListSelectionEvent e )
|
||||
{
|
||||
for( int n = 0; n < listeners.size(); n++ )
|
||||
{
|
||||
ListSelectionEvent event =
|
||||
new ListSelectionEvent( this, e.getFirstIndex(), e.getLastIndex(), e.getValueIsAdjusting() );
|
||||
( ( ListSelectionListener ) listeners.elementAt( n ) ).valueChanged( event );
|
||||
}
|
||||
}
|
||||
|
||||
public void addListSelectionListener( ListSelectionListener listener )
|
||||
{
|
||||
listeners.add( listener );
|
||||
}
|
||||
|
||||
public void removeSelectionListener( ListSelectionListener listener )
|
||||
{
|
||||
listeners.remove( listener );
|
||||
}
|
||||
|
||||
public void clear()
|
||||
{
|
||||
// empresasTable.clearSelection();
|
||||
}
|
||||
|
||||
public void fill( Object value )
|
||||
{
|
||||
if( value == null )
|
||||
{
|
||||
clear();
|
||||
}
|
||||
Integer ids[] = ( Integer [] ) value;
|
||||
for( int n = 0; n < empresasTable.getRowCount(); n++ )
|
||||
{
|
||||
if( ( ( ColumnizedMappable ) empresasModel.getRowAt( n ) ).getID().equals( ids[ 0 ] ) )
|
||||
{
|
||||
empresasTable.setRowSelectionInterval( n, n );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
for( int n = 0; n < estabelecimentosTable.getRowCount(); n++ )
|
||||
{
|
||||
if( ( ( ColumnizedMappable ) estabelecimentosModel.getRowAt( n ) ).getID().equals( ids[ 1 ] ) )
|
||||
{
|
||||
estabelecimentosTable.setRowSelectionInterval( n, n );
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public Object save()
|
||||
{
|
||||
int empresaSelected = empresasTable.getSelectedRow();
|
||||
int estabelecimentoSelected = estabelecimentosTable.getSelectedRow();
|
||||
return new Integer[]{
|
||||
empresaSelected == -1 ? null : ( ( ColumnizedMappable ) empresasModel.getRowAt( empresaSelected ) ).getID(),
|
||||
estabelecimentoSelected == -1 ? null : ( ( ColumnizedMappable ) estabelecimentosModel.getRowAt( estabelecimentoSelected ) ).getID()
|
||||
};
|
||||
}
|
||||
|
||||
public void setEnabled( boolean enable )
|
||||
{
|
||||
empresasTable.setEnabled( enable );
|
||||
estabelecimentosTable.setEnabled( enable );
|
||||
}
|
||||
}
|
||||
@ -1,572 +0,0 @@
|
||||
/*
|
||||
* MarcacoesHigieneWindow.java
|
||||
*
|
||||
* Created on January 31, 2006, 11:32 PM
|
||||
*
|
||||
* To change this template, choose Tools | Template Manager
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
|
||||
package siprp.higiene.marcacoes;
|
||||
|
||||
import java.awt.Dimension;
|
||||
import java.awt.GridBagConstraints;
|
||||
import java.awt.GridBagLayout;
|
||||
import java.awt.Insets;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.awt.event.ItemEvent;
|
||||
import java.awt.event.ItemListener;
|
||||
import java.text.DateFormat;
|
||||
import java.util.Date;
|
||||
import java.util.Hashtable;
|
||||
import java.util.Locale;
|
||||
|
||||
import javax.swing.JComboBox;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.event.ListSelectionEvent;
|
||||
import javax.swing.event.ListSelectionListener;
|
||||
|
||||
import shst.SHSTTrackerInterface;
|
||||
import shst.higiene.marcacoes.MarcacoesHigieneInterface;
|
||||
import siprp.SingletonConstants;
|
||||
import siprp.clientes.AvisosPanel;
|
||||
import siprp.companydataloaders.CompanyDataLoader;
|
||||
import siprp.data.AvisoConstants;
|
||||
import siprp.data.Marcacao;
|
||||
import siprp.data.outer.ContactosData;
|
||||
import siprp.data.outer.EstabelecimentosData;
|
||||
import siprp.data.outer.MarcacoesEstabelecimentoData;
|
||||
import siprp.higiene.HigieneDataProvider;
|
||||
import siprp.ui.SIPRPEditorWindow;
|
||||
|
||||
import com.evolute.entity.ProviderInterface;
|
||||
import com.evolute.utils.Singleton;
|
||||
import com.evolute.utils.arrays.Object2DArray;
|
||||
import com.evolute.utils.data.MappableObject;
|
||||
import com.evolute.utils.ui.DialogException;
|
||||
import com.evolute.utils.ui.panel.TableEditorPanel;
|
||||
import com.evolute.utils.ui.text.CopyPasteHandler;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fpalma
|
||||
*/
|
||||
public class MarcacoesHigieneWindow extends SIPRPEditorWindow
|
||||
implements ItemListener, ActionListener, ListSelectionListener, MarcacoesHigieneInterface
|
||||
{
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
public final static String TITLE = "Marca\u00e7\u00f5es de Higiene e Seguran\u00e7a";
|
||||
|
||||
private final static int iPermissionArray[][] =
|
||||
new int[][]{ {}, { NEW_INDEX, EDIT_INDEX, CANCEL_INDEX, SAVE_INDEX, DELETE_INDEX } };
|
||||
|
||||
private static final int INDEX_MAIN = 0;
|
||||
private static final int INDEX_VISITA = 1;
|
||||
|
||||
private static final DateFormat DATE_FORMAT =
|
||||
DateFormat.getDateInstance( DateFormat.SHORT, new Locale( "PT", "pt" ) );
|
||||
|
||||
protected MarcacoesHigieneUpperPanel upperPanel;
|
||||
protected MarcacaoVisitaHSTPanel marcacaoPanel;
|
||||
protected TableEditorPanel marcacaoEditorPanel;
|
||||
|
||||
protected HigieneDataProvider higieneProvider;
|
||||
protected ProviderInterface objectProvider;
|
||||
protected SHSTTrackerInterface tracker;
|
||||
|
||||
private Hashtable<Object, Object[]> tecnicosHash;
|
||||
|
||||
private Integer empresaID;
|
||||
// protected String empresa;
|
||||
private Integer estabelecimentoID;
|
||||
private EstabelecimentosData estabelecimento;
|
||||
|
||||
protected boolean editing = false;
|
||||
|
||||
/** Creates a new instance of MarcacoesHigieneWindow */
|
||||
public MarcacoesHigieneWindow()
|
||||
throws Exception
|
||||
{
|
||||
super( iPermissionArray );
|
||||
|
||||
this.higieneProvider = ( HigieneDataProvider ) HigieneDataProvider.getProvider();
|
||||
this.objectProvider = ( ProviderInterface ) Singleton.getInstance( Singleton.DEFAULT_OBJECT_PROVIDER );
|
||||
|
||||
this.tecnicosHash = new Hashtable<Object, Object[]>();
|
||||
this.setupComponents();
|
||||
this.setSize( 800, 700 );
|
||||
this.setLocationRelativeTo(null);
|
||||
this.setExtendedState( getExtendedState() | MAXIMIZED_BOTH );
|
||||
}
|
||||
|
||||
private void setupComponents()
|
||||
throws Exception
|
||||
{
|
||||
setTitle( TITLE );
|
||||
upperPanel = new MarcacoesHigieneUpperPanel();
|
||||
JPanel panel = new JPanel();
|
||||
|
||||
GridBagLayout gridbag = new GridBagLayout();
|
||||
GridBagConstraints constraints = new GridBagConstraints();
|
||||
getContentPane().setLayout( gridbag );
|
||||
constraints.insets = new Insets( 2, 2, 2, 2 );
|
||||
constraints.fill = GridBagConstraints.BOTH;
|
||||
constraints.gridwidth = GridBagConstraints.REMAINDER;
|
||||
constraints.weightx = 1;
|
||||
constraints.gridheight = 1;
|
||||
|
||||
constraints.weighty = 1;
|
||||
gridbag.setConstraints( upperPanel, constraints );
|
||||
|
||||
constraints.weighty = 0;
|
||||
gridbag.setConstraints( panel, constraints );
|
||||
|
||||
getContentPane().add( upperPanel );
|
||||
getContentPane().add( panel );
|
||||
|
||||
changeGroupName( INDEX_VISITA, "Visitas" );
|
||||
setActionName( INDEX_VISITA, NEW_INDEX, "Nova" );
|
||||
setActionTooltip( INDEX_VISITA, NEW_INDEX, "Nova" );
|
||||
JPanel toolbar = getToolbarPanel( INDEX_VISITA );
|
||||
|
||||
gridbag = new GridBagLayout();
|
||||
// GridBagConstraints constraints = new GridBagConstraints();
|
||||
panel.setLayout( gridbag );
|
||||
constraints.insets = new Insets( 2, 2, 2, 2 );
|
||||
constraints.fill = GridBagConstraints.BOTH;
|
||||
constraints.gridwidth = GridBagConstraints.REMAINDER;
|
||||
constraints.weightx = 1.0;
|
||||
constraints.weighty = 0;
|
||||
|
||||
gridbag.setConstraints( toolbar, constraints );
|
||||
panel.add( toolbar );
|
||||
|
||||
constraints.gridheight = 1;
|
||||
constraints.weighty = 0;
|
||||
try
|
||||
{
|
||||
marcacaoEditorPanel =
|
||||
new TableEditorPanel( new String[]{ "Data",
|
||||
"Estado" },
|
||||
new int[]{0,2}, new int[]{0,0},
|
||||
0.0, 1.0, new Dimension( 350, 100 ) );
|
||||
marcacaoPanel = new MarcacaoVisitaHSTPanel();
|
||||
new CopyPasteHandler( marcacaoPanel.getObservacoesText() );
|
||||
marcacaoEditorPanel.addComponent( marcacaoPanel,
|
||||
new int[]{0,2}, new int[]{1,2},
|
||||
1.0, 1.0 );
|
||||
marcacaoEditorPanel.addListSelectionListener( new ListSelectionListener()
|
||||
{
|
||||
@Override
|
||||
public void valueChanged(javax.swing.event.ListSelectionEvent listSelectionEvent)
|
||||
{
|
||||
if( marcacaoEditorPanel.getID() != null )
|
||||
{
|
||||
reload(INDEX_VISITA);
|
||||
select(INDEX_VISITA);
|
||||
}
|
||||
else
|
||||
{
|
||||
clear( INDEX_VISITA );
|
||||
}
|
||||
}
|
||||
} );
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
DialogException.showException( ex );
|
||||
return;
|
||||
}
|
||||
gridbag.setConstraints( marcacaoEditorPanel, constraints );
|
||||
panel.add( marcacaoEditorPanel );
|
||||
marcacaoPanel.getEmailButton().addActionListener( this );
|
||||
|
||||
fillCombos();
|
||||
upperPanel.addListSelectionListener( this );
|
||||
}
|
||||
|
||||
public void fillCombos()
|
||||
throws Exception
|
||||
{
|
||||
JComboBox tecnicosList = marcacaoPanel.getTecnicoList();
|
||||
JComboBox tecnicosSuperioresList = marcacaoPanel.getTecnicoSuperiorList();
|
||||
tecnicosHash.clear();
|
||||
tecnicosList.removeItemListener( this );
|
||||
tecnicosSuperioresList.removeItemListener( this );
|
||||
fillTecnicos(tecnicosList,false);
|
||||
fillTecnicos(tecnicosSuperioresList,true);
|
||||
tecnicosList.addItemListener( this );
|
||||
tecnicosSuperioresList.addItemListener( this );
|
||||
}
|
||||
|
||||
private void fillTecnicos( JComboBox tecnicosList, boolean superiores ) throws Exception
|
||||
{
|
||||
tecnicosList.removeAllItems();
|
||||
Object tecnicos[][] = higieneProvider.getTecnicosHST( superiores );
|
||||
tecnicosList.addItem( new MappableObject( new Integer( -2 ), " " ) );
|
||||
for( int n = 0; n < tecnicos.length; n++ )
|
||||
{
|
||||
Object tecnico[] = new Object[ 4 ];
|
||||
tecnico[ 0 ] = new Integer( ( (Number)tecnicos[n][0] ).intValue() );
|
||||
tecnico[ 1 ] = tecnicos[ n ][ 1 ];
|
||||
tecnico[ 2 ] = tecnicos[ n ][ 2 ];
|
||||
tecnico[ 3 ] = new Integer( n );
|
||||
tecnicosHash.put( tecnicos[ n ][ 0 ], tecnico );
|
||||
tecnicosList.addItem( new MappableObject( (Integer) tecnico[ 0 ], tecnico[ 1 ] ) );
|
||||
}
|
||||
tecnicosList.setSelectedIndex( 0 );
|
||||
|
||||
tecnicosList.addItem( new MappableObject( new Integer( -1 ), "Novo/Editar" ) );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void itemStateChanged( ItemEvent itemEvent )
|
||||
{
|
||||
JComboBox tecnicos = null;
|
||||
if( itemEvent.getSource().equals( marcacaoPanel.getTecnicoList() ) )
|
||||
{
|
||||
tecnicos = marcacaoPanel.getTecnicoList();
|
||||
}
|
||||
else if( itemEvent.getSource().equals( marcacaoPanel.getTecnicoSuperiorList() ) )
|
||||
{
|
||||
tecnicos = marcacaoPanel.getTecnicoSuperiorList();
|
||||
}
|
||||
if( tecnicos != null && itemEvent.getStateChange() == ItemEvent.SELECTED )
|
||||
{
|
||||
int index = tecnicos.getSelectedIndex();
|
||||
if( index == tecnicos.getItemCount() - 1 )
|
||||
{
|
||||
try
|
||||
{
|
||||
TecnicoEditor te = new TecnicoEditor( this );
|
||||
te.setVisible( true );
|
||||
Integer id = te.getID();
|
||||
if( id == null )
|
||||
{
|
||||
tecnicos.setSelectedIndex( 0 );
|
||||
}
|
||||
else
|
||||
{
|
||||
fillCombos();
|
||||
if( id != null )
|
||||
{
|
||||
Object[] tecnico = tecnicosHash.get( id );
|
||||
tecnicos.setSelectedIndex( ( (Integer)tecnico[ 3 ] ).intValue() + 1 );
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
DialogException.showExceptionMessage( ex, "Erro na janela de edi\u00e7\u00e3o...", true );
|
||||
ex.printStackTrace();
|
||||
tecnicos.setSelectedIndex( 0 );
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean save(int index)
|
||||
{
|
||||
switch( index )
|
||||
{
|
||||
case INDEX_VISITA:
|
||||
MarcacoesEstabelecimentoData visita = ( MarcacoesEstabelecimentoData ) marcacaoPanel.save();
|
||||
Date data = ( Date ) visita.get( MarcacoesEstabelecimentoData.DATA );
|
||||
if( data == null )
|
||||
{
|
||||
JOptionPane.showMessageDialog( this, "Tem de preencher uma data para a visita.",
|
||||
"Erro", JOptionPane.ERROR_MESSAGE );
|
||||
return false;
|
||||
}
|
||||
visita.setToEstabelecimento_id( estabelecimento );
|
||||
try
|
||||
{
|
||||
visita.set( MarcacoesEstabelecimentoData.REALIZADA,
|
||||
( ( Integer )visita.get( MarcacoesEstabelecimentoData.ESTADO ) ).intValue() ==
|
||||
HigieneDataProvider.ESTADO_REALIZADO ? "y" : "n" );
|
||||
System.out.println( "DATA " + visita.get( MarcacoesEstabelecimentoData.DATA ) );
|
||||
Integer tecnico = ( Integer ) visita.get( MarcacoesEstabelecimentoData.TECNICO_HST );
|
||||
if( tecnico != null && tecnico.intValue() < 0 )
|
||||
{
|
||||
visita.set( MarcacoesEstabelecimentoData.TECNICO_HST, null );
|
||||
}
|
||||
Integer tecnicoSup = ( Integer ) visita.get( MarcacoesEstabelecimentoData.TECNICO_SUPERIOR_HST );
|
||||
if( tecnicoSup != null && tecnicoSup.intValue() < 0 )
|
||||
{
|
||||
visita.set( MarcacoesEstabelecimentoData.TECNICO_SUPERIOR_HST, null );
|
||||
}
|
||||
visita.save();
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
DialogException.showExceptionMessage( ex, "Erro a gravar", true );
|
||||
return false;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
reload( INDEX_MAIN );
|
||||
editing = false;
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean delete(int index)
|
||||
{
|
||||
int option = JOptionPane.showConfirmDialog( this, "Tem a certeza que quer apagar a marca\u00e7\u00e3o?",
|
||||
"Apagar", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE );
|
||||
if( option == JOptionPane.OK_OPTION )
|
||||
{
|
||||
switch( index )
|
||||
{
|
||||
case INDEX_VISITA:
|
||||
MarcacoesEstabelecimentoData visita = ( MarcacoesEstabelecimentoData ) marcacaoPanel.save();
|
||||
try
|
||||
{
|
||||
visita.delete();
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
DialogException.showExceptionMessage( ex, "Erro a apagar.", true );
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
}
|
||||
reload( INDEX_MAIN );
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void clear(int index)
|
||||
{
|
||||
switch( index )
|
||||
{
|
||||
case INDEX_MAIN:
|
||||
empresaID = null;
|
||||
estabelecimentoID = null;
|
||||
estabelecimento = null;
|
||||
upperPanel.clear();
|
||||
marcacaoEditorPanel.clear();
|
||||
break;
|
||||
|
||||
case INDEX_VISITA:
|
||||
marcacaoPanel.clear();
|
||||
marcacaoPanel.getEmailButton().setText( "Enviar email" );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public void enableComponents(int index, boolean enable)
|
||||
{
|
||||
switch( index )
|
||||
{
|
||||
case INDEX_MAIN:
|
||||
|
||||
break;
|
||||
|
||||
case INDEX_VISITA:
|
||||
marcacaoPanel.setEnabled( enable );
|
||||
marcacaoPanel.getEmailButton().setEnabled( enable );
|
||||
upperPanel.setEnabled( !enable );
|
||||
editing = enable;
|
||||
break;
|
||||
}
|
||||
if( tracker != null )
|
||||
{
|
||||
( ( AvisosPanel ) tracker.getAvisosPanel() ).setEnabled( ! editing, AvisoConstants.TIPO_ESTABELECIMENTO );
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void enableSelect( int index, boolean select )
|
||||
{
|
||||
switch( index )
|
||||
{
|
||||
case INDEX_VISITA:
|
||||
marcacaoEditorPanel.setEnabled( select );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void reload( int index )
|
||||
{
|
||||
switch( index )
|
||||
{
|
||||
case INDEX_MAIN:
|
||||
try
|
||||
{
|
||||
// EmpresasData empresa = (EmpresasData) objectProvider.load( EmpresasData.class, empresaID );
|
||||
estabelecimento = estabelecimentoID == null ? null : ((EstabelecimentosData) objectProvider.load( EstabelecimentosData.class, estabelecimentoID ));
|
||||
// upperPanel.getEmpresaText().setText( empresa );
|
||||
// upperPanel.getEstabelecimentoText().setText( estabelecimento );
|
||||
// upperPanel.getTrabalhadorText().setText( ( String ) trabalhador.get( TrabalhadoresData.NOME ) );
|
||||
Object visitas[][] = higieneProvider.getVisitasEstabelecimento( estabelecimentoID );
|
||||
if( visitas.length > 0 )
|
||||
{
|
||||
marcacaoEditorPanel.setData( new Object2DArray( visitas ) );
|
||||
}
|
||||
else
|
||||
{
|
||||
marcacaoEditorPanel.clear();
|
||||
}
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
DialogException.showExceptionMessage( ex, "Erro a carregar os dados.", true );
|
||||
}
|
||||
break;
|
||||
|
||||
case INDEX_VISITA:
|
||||
Integer visitaID = marcacaoEditorPanel.getID();
|
||||
if( visitaID == null )
|
||||
{
|
||||
return;
|
||||
}
|
||||
try
|
||||
{
|
||||
MarcacoesEstabelecimentoData visita = (MarcacoesEstabelecimentoData) objectProvider.load( MarcacoesEstabelecimentoData.class, visitaID );
|
||||
marcacaoPanel.fill( visita );
|
||||
Date dataEmailVisita = ( Date ) visita.get( MarcacoesEstabelecimentoData.DATA_EMAIL );
|
||||
if( dataEmailVisita != null )
|
||||
{
|
||||
marcacaoPanel.getEmailButton().setText( "Enviar email (" + DATE_FORMAT.format( dataEmailVisita ) + ")" );
|
||||
}
|
||||
else
|
||||
{
|
||||
marcacaoPanel.getEmailButton().setText( "Enviar email" );
|
||||
}
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
DialogException.showExceptionMessage( ex, "Erro a carregar os dados da visita.", true );
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actionPerformed( ActionEvent e )
|
||||
{
|
||||
Object source = e.getSource();
|
||||
if( source.equals( marcacaoPanel.getEmailButton() ) )
|
||||
{
|
||||
enviarEmailVisita();
|
||||
}
|
||||
}
|
||||
|
||||
protected void enviarEmailVisita()
|
||||
{
|
||||
MarcacoesEstabelecimentoData visita = ( MarcacoesEstabelecimentoData ) marcacaoPanel.save();
|
||||
|
||||
String subject = ( String ) Singleton.getInstance( SingletonConstants.SUBJECT_VISITA );
|
||||
String texto = ( String ) Singleton.getInstance( SingletonConstants.LETTER_VISITA );
|
||||
|
||||
Date today = new Date();
|
||||
marcacaoPanel.getEmailButton().setText( "Enviar email (" + DATE_FORMAT.format( today ) + ")" );
|
||||
|
||||
try
|
||||
{
|
||||
enviarEmail( subject, texto, ( Date )visita.get( MarcacoesEstabelecimentoData.DATA ) );
|
||||
visita.set( Marcacao.DATA_EMAIL, today );
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
DialogException.showExceptionMessage( ex, "Erro a enviar mail", true );
|
||||
}
|
||||
}
|
||||
|
||||
protected void enviarEmail( String subject, String texto, Date data )
|
||||
throws Exception
|
||||
{
|
||||
String sede = ( String )estabelecimento.get( EstabelecimentosData.NOME );
|
||||
String dataStr = DATE_FORMAT.format( data );
|
||||
subject = subject.replaceAll( CompanyDataLoader.NOME, sede );
|
||||
String morada = ( String )estabelecimento.get( EstabelecimentosData.MORADA );
|
||||
|
||||
texto = texto.replaceAll( CompanyDataLoader.DATA, dataStr );
|
||||
texto = texto.replaceAll( CompanyDataLoader.NOME, sede );
|
||||
texto = texto.replaceAll( CompanyDataLoader.MORADA, morada );
|
||||
|
||||
ContactosData contacto = estabelecimento.toContacto_id();
|
||||
String mail = "";
|
||||
if( contacto != null )
|
||||
{
|
||||
mail = ( String )contacto.get( ContactosData.EMAIL );
|
||||
}
|
||||
|
||||
if( System.getProperty( "os.name" ).startsWith( "Windows" ) )
|
||||
{
|
||||
mail = mail.replaceAll( " ", "%20" );
|
||||
subject = subject.replaceAll( " ", "%20" );
|
||||
texto = texto.replaceAll( " ", "%20" );
|
||||
Process proc = Runtime.getRuntime().exec( "cmd.exe /c start mailto:\"" + mail
|
||||
+ "?subject=" + subject + "&body="
|
||||
|
||||
+ texto
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
mail = mail.replaceAll( " ", "%20" );
|
||||
subject = subject.replaceAll( " ", "%20" );
|
||||
texto = texto.replaceAll( " ", "%20" );
|
||||
|
||||
Process proc = Runtime.getRuntime().exec( new String[]{ "/usr/bin/open", "/Applications/Mail.app", "mailto:" + mail
|
||||
+ "?subject=" + subject + "&body="
|
||||
+ texto } );
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void valueChanged( ListSelectionEvent e )
|
||||
{
|
||||
Object source = e.getSource();
|
||||
if( source.equals( upperPanel ) )
|
||||
{
|
||||
Integer ids[] = ( Integer [] ) upperPanel.save();
|
||||
empresaID = ids[ 0 ];
|
||||
estabelecimentoID = ids[ 1 ];
|
||||
if( ids[ 1 ] == null )
|
||||
{
|
||||
clear( INDEX_MAIN );
|
||||
unselect( INDEX_MAIN );
|
||||
}
|
||||
else
|
||||
{
|
||||
reload( INDEX_MAIN );
|
||||
select( INDEX_MAIN );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setEmpresaAndEstabelecimento( Integer empresaID, Integer estabelecimentoID )
|
||||
{
|
||||
if( editing )
|
||||
{
|
||||
JOptionPane.showMessageDialog( this, "Esta janela est\u00e1 em edi\u00e7\u00e3o.", "Erro...",
|
||||
JOptionPane.ERROR_MESSAGE );
|
||||
}
|
||||
else
|
||||
{
|
||||
upperPanel.fill( new Integer[]{ empresaID, estabelecimentoID } );
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTracker( SHSTTrackerInterface tracker )
|
||||
{
|
||||
this.tracker = tracker;
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,323 +0,0 @@
|
||||
package siprp.higiene.marcacoes;
|
||||
|
||||
|
||||
import static com.evolute.utils.strings.UnicodeLatin1Map.eacute;
|
||||
|
||||
import java.awt.Dimension;
|
||||
import java.awt.GridBagConstraints;
|
||||
import java.awt.GridBagLayout;
|
||||
import java.awt.GridLayout;
|
||||
import java.awt.Insets;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.util.Vector;
|
||||
|
||||
import javax.swing.BoxLayout;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JCheckBox;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JRadioButton;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.JTextField;
|
||||
import javax.swing.ListSelectionModel;
|
||||
import javax.swing.event.ListSelectionEvent;
|
||||
import javax.swing.event.ListSelectionListener;
|
||||
|
||||
import siprp.data.outer.MarcacoesTecnicosHstData;
|
||||
import siprp.higiene.HigieneDataProvider;
|
||||
import siprp.ui.SIPRPEditorWindow;
|
||||
|
||||
import com.evolute.entity.ProviderInterface;
|
||||
import com.evolute.utils.Singleton;
|
||||
import com.evolute.utils.tables.BaseTable;
|
||||
import com.evolute.utils.tables.ColumnizedObjectArray;
|
||||
import com.evolute.utils.tables.VectorTableModel;
|
||||
import com.evolute.utils.ui.CustomJDialog;
|
||||
import com.evolute.utils.ui.DialogException;
|
||||
import com.evolute.utils.ui.button.BetterButtonGroup;
|
||||
import com.evolute.utils.ui.text.CopyPasteHandler;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author fpalma
|
||||
*/
|
||||
public class TecnicoEditor extends CustomJDialog
|
||||
implements ActionListener, ListSelectionListener
|
||||
{
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private ProviderInterface JDO;
|
||||
private HigieneDataProvider provider;
|
||||
private BaseTable table;
|
||||
private VectorTableModel<ColumnizedObjectArray> model;
|
||||
private JButton okButton;
|
||||
private JButton cancelarButton;
|
||||
private JButton novoButton;
|
||||
private JTextField nomeText;
|
||||
private JTextField iniciaisText;
|
||||
private JCheckBox checkSuperior;
|
||||
private Integer id;
|
||||
private boolean isNew = false;
|
||||
private BetterButtonGroup corGroup;
|
||||
private JRadioButton cores[];
|
||||
|
||||
/** Creates a new instance of MedicoEditor */
|
||||
public TecnicoEditor( SIPRPEditorWindow owner )
|
||||
throws Exception
|
||||
{
|
||||
super( owner, true );
|
||||
provider = (HigieneDataProvider)HigieneDataProvider.getProvider();
|
||||
JDO = ( ProviderInterface ) Singleton.getInstance( Singleton.DEFAULT_EVO_DATA_PROVIDER );
|
||||
setupComponents();
|
||||
}
|
||||
|
||||
private void setupComponents()
|
||||
throws Exception
|
||||
{
|
||||
setSize( 600, 300 );
|
||||
setResizable( false );
|
||||
setTitle( "Criar/Editar T\u00e9cnico" );
|
||||
centerSuper();
|
||||
|
||||
model = new VectorTableModel<ColumnizedObjectArray>( new String[]{ "Nome", "Iniciais", "Cor", "Superior" } );
|
||||
table = new BaseTable( model );
|
||||
table.setSelectionMode( ListSelectionModel.SINGLE_SELECTION );
|
||||
table.setTableCellRenderer( new TecnicoRenderer() );
|
||||
JScrollPane scp = new JScrollPane();
|
||||
scp.setMinimumSize( new Dimension( 300, 200 ) );
|
||||
scp.setMaximumSize( new Dimension( 300, 200 ) );
|
||||
scp.setPreferredSize( new Dimension( 300, 200 ) );
|
||||
scp.setSize( new Dimension( 300, 200 ) );
|
||||
scp.setViewportView( table );
|
||||
scp.setHorizontalScrollBarPolicy( JScrollPane.HORIZONTAL_SCROLLBAR_NEVER );
|
||||
scp.setVerticalScrollBarPolicy( JScrollPane.VERTICAL_SCROLLBAR_ALWAYS );
|
||||
table.fixColumnWidth( 0, 200 );
|
||||
table.setNonResizableNorReordable();
|
||||
table.getSelectionModel().addListSelectionListener( this );
|
||||
Object obj[][] = provider.getAllTecnicosHST();
|
||||
Vector<ColumnizedObjectArray> tecnicosHST = new Vector<ColumnizedObjectArray>();
|
||||
for( int n = 0; n < obj.length; n++ )
|
||||
{
|
||||
tecnicosHST.add( new ColumnizedObjectArray( obj[ n ], true ) );
|
||||
}
|
||||
model.setValues( tecnicosHST );
|
||||
|
||||
okButton = new JButton( "OK" );
|
||||
cancelarButton = new JButton( "Cancelar" );
|
||||
novoButton = new JButton( "Novo" );
|
||||
okButton.addActionListener( this );
|
||||
cancelarButton.addActionListener( this );
|
||||
novoButton.addActionListener( this );
|
||||
|
||||
nomeText = new JTextField();
|
||||
nomeText.setEnabled( false );
|
||||
iniciaisText = new JTextField();
|
||||
iniciaisText.setEnabled( false );
|
||||
checkSuperior = new JCheckBox( "T" + eacute + "cnico Superior" );
|
||||
checkSuperior.setEnabled( false );
|
||||
JPanel corPanel = new JPanel();
|
||||
corPanel.setLayout( new BoxLayout( corPanel, BoxLayout.Y_AXIS ) );
|
||||
corGroup = new BetterButtonGroup( false );
|
||||
cores = new JRadioButton[ HigieneDataProvider.CORES_TECNICOS.length ];
|
||||
for( int n = 0; n < HigieneDataProvider.CORES_TECNICOS.length; n++ )
|
||||
{
|
||||
cores[ n ] = new JRadioButton( " " );
|
||||
cores[ n ].setBackground( HigieneDataProvider.CORES_TECNICOS[ n ] );
|
||||
corPanel.add( cores[ n ] );
|
||||
corGroup.add( cores[ n ] );
|
||||
}
|
||||
JScrollPane corScroll =
|
||||
new JScrollPane( corPanel, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
|
||||
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER );
|
||||
|
||||
GridBagLayout gridbag = new GridBagLayout();
|
||||
getContentPane().setLayout( gridbag );
|
||||
GridBagConstraints constraints = new GridBagConstraints();
|
||||
constraints.insets = new Insets( 1, 1, 1, 1 );
|
||||
constraints.fill = GridBagConstraints.BOTH;
|
||||
constraints.weighty = 1;
|
||||
constraints.weightx = 1;
|
||||
constraints.gridwidth = GridBagConstraints.REMAINDER;
|
||||
constraints.gridheight = 1;
|
||||
|
||||
JPanel upperPanel = new JPanel();
|
||||
upperPanel.setLayout( new GridLayout( 1, 2 ) );
|
||||
upperPanel.add( scp );
|
||||
JPanel textPanel = new JPanel();
|
||||
upperPanel.add( textPanel );
|
||||
gridbag.setConstraints( upperPanel, constraints );
|
||||
getContentPane().add( upperPanel );
|
||||
|
||||
constraints.fill = GridBagConstraints.HORIZONTAL;
|
||||
constraints.weighty = 0;
|
||||
constraints.weightx = 0.3;
|
||||
constraints.gridwidth = 1;
|
||||
constraints.gridheight = GridBagConstraints.REMAINDER;;
|
||||
|
||||
gridbag.setConstraints( novoButton, constraints );
|
||||
getContentPane().add( novoButton );
|
||||
|
||||
gridbag.setConstraints( okButton, constraints );
|
||||
getContentPane().add( okButton );
|
||||
|
||||
constraints.gridwidth = GridBagConstraints.REMAINDER;
|
||||
gridbag.setConstraints( cancelarButton, constraints );
|
||||
getContentPane().add( cancelarButton );
|
||||
|
||||
gridbag = new GridBagLayout();
|
||||
textPanel.setLayout( gridbag );
|
||||
constraints.weighty = 0;
|
||||
constraints.weightx = 1;
|
||||
constraints.gridwidth = GridBagConstraints.REMAINDER;
|
||||
constraints.gridheight = 1;
|
||||
|
||||
JLabel nomeLabel = new JLabel( "Nome" );
|
||||
gridbag.setConstraints( nomeLabel, constraints );
|
||||
textPanel.add( nomeLabel );
|
||||
|
||||
gridbag.setConstraints( nomeText, constraints );
|
||||
textPanel.add( nomeText );
|
||||
|
||||
JLabel iniciaisLabel = new JLabel( "Iniciais" );
|
||||
gridbag.setConstraints( iniciaisLabel, constraints );
|
||||
textPanel.add( iniciaisLabel );
|
||||
|
||||
gridbag.setConstraints( iniciaisText, constraints );
|
||||
textPanel.add( iniciaisText );
|
||||
|
||||
gridbag.setConstraints( checkSuperior, constraints );
|
||||
textPanel.add( checkSuperior );
|
||||
|
||||
JLabel corLabel = new JLabel( "Cor" );
|
||||
gridbag.setConstraints( corLabel, constraints );
|
||||
textPanel.add( corLabel );
|
||||
|
||||
constraints.weighty = 1;
|
||||
constraints.gridheight = GridBagConstraints.REMAINDER;
|
||||
constraints.fill = GridBagConstraints.BOTH;
|
||||
|
||||
gridbag.setConstraints( corScroll, constraints );
|
||||
textPanel.add( corScroll );
|
||||
|
||||
new CopyPasteHandler( nomeText );
|
||||
new CopyPasteHandler( iniciaisText );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void actionPerformed( ActionEvent e )
|
||||
{
|
||||
if( e.getSource().equals( okButton ) )
|
||||
{
|
||||
if( save() )
|
||||
{
|
||||
close();
|
||||
}
|
||||
}
|
||||
else if( e.getSource().equals( cancelarButton ) )
|
||||
{
|
||||
id = null;
|
||||
close();
|
||||
}
|
||||
if( e.getSource().equals( novoButton ) )
|
||||
{
|
||||
table.getSelectionModel().removeListSelectionListener( this );
|
||||
nomeText.setText( "" );
|
||||
iniciaisText.setText( "" );
|
||||
corGroup.setIntSelected( 0 );
|
||||
nomeText.setEnabled( true );
|
||||
iniciaisText.setEnabled( true );
|
||||
corGroup.setEnabled( true );
|
||||
checkSuperior.setSelected( false );
|
||||
checkSuperior.setEnabled( true );
|
||||
id = null;
|
||||
isNew = true;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void valueChanged( ListSelectionEvent listSelectionEvent )
|
||||
{
|
||||
int selected = table.getSelectedRow();
|
||||
if( selected == -1 )
|
||||
{
|
||||
return;
|
||||
}
|
||||
ColumnizedObjectArray row = model.getRowAt( selected );
|
||||
id = row.getID();
|
||||
String nome = (String) row.getValue( 0 );
|
||||
String iniciais = (String) row.getValue( 1 );
|
||||
Integer cor = ( Integer ) row.getValue( 2 );
|
||||
String superior = ( String) row.getValue( 3 );
|
||||
nomeText.setText( nome );
|
||||
iniciaisText.setText( iniciais );
|
||||
corGroup.setIntSelected( cor.intValue() );
|
||||
nomeText.setEnabled( true );
|
||||
iniciaisText.setEnabled( true );
|
||||
corGroup.setEnabled( true );
|
||||
checkSuperior.setEnabled( true );
|
||||
checkSuperior.setSelected( superior != null && "y".equals(superior) );
|
||||
}
|
||||
|
||||
private void close()
|
||||
{
|
||||
setVisible( false );
|
||||
dispose();
|
||||
}
|
||||
|
||||
public boolean getIsNew()
|
||||
{
|
||||
return isNew;
|
||||
}
|
||||
|
||||
public Integer getID()
|
||||
{
|
||||
return id;
|
||||
}
|
||||
|
||||
private boolean save()
|
||||
{
|
||||
String nome = nomeText.getText().trim();
|
||||
String nomePlain = com.evolute.utils.strings.StringPlainer.convertString( nome );
|
||||
String iniciais = iniciaisText.getText().trim();
|
||||
Integer cor = new Integer( corGroup.getIntSelected() );
|
||||
if( nome.length() == 0 || iniciais.length() == 0 )
|
||||
{
|
||||
JOptionPane.showMessageDialog( this, "O Nome e as iniciais n\u00e3o podem ser vazios.", "Erro...",
|
||||
JOptionPane.ERROR_MESSAGE );
|
||||
return false;
|
||||
}
|
||||
try
|
||||
{
|
||||
MarcacoesTecnicosHstData tecnico;
|
||||
if( id != null )
|
||||
{
|
||||
tecnico = ( MarcacoesTecnicosHstData ) JDO.load( MarcacoesTecnicosHstData.class, id );
|
||||
}
|
||||
else
|
||||
{
|
||||
tecnico = new MarcacoesTecnicosHstData();
|
||||
}
|
||||
tecnico.set( MarcacoesTecnicosHstData.IS_SUPERIOR, checkSuperior.isSelected() ? "y" : "n" );
|
||||
tecnico.set( MarcacoesTecnicosHstData.NOME, nome );
|
||||
tecnico.set( MarcacoesTecnicosHstData.NOME_PLAIN, nomePlain );
|
||||
tecnico.set( MarcacoesTecnicosHstData.INICIAIS, iniciais );
|
||||
tecnico.set( MarcacoesTecnicosHstData.IDENTIFICADOR, cor );
|
||||
tecnico.save();
|
||||
if( id == null )
|
||||
{
|
||||
id = (Integer)tecnico.get( MarcacoesTecnicosHstData.ID );
|
||||
}
|
||||
}
|
||||
catch( Exception ex )
|
||||
{
|
||||
DialogException.showExceptionMessage( ex, "Erro a gravar...", false );
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,61 +0,0 @@
|
||||
/*
|
||||
* DiaRenderer.java
|
||||
*
|
||||
* Created on 8 de Fevereiro de 2006, 21:45
|
||||
*
|
||||
* To change this template, choose Tools | Template Manager
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
|
||||
package siprp.higiene.marcacoes;
|
||||
|
||||
import java.awt.Color;
|
||||
import java.awt.Component;
|
||||
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JTable;
|
||||
import javax.swing.table.TableCellRenderer;
|
||||
|
||||
import siprp.higiene.HigieneDataProvider;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Frederico
|
||||
*/
|
||||
public class TecnicoRenderer
|
||||
implements TableCellRenderer
|
||||
{
|
||||
protected JLabel labels[];
|
||||
protected Color defaultColor;
|
||||
|
||||
/** Creates a new instance of DiaRenderer */
|
||||
public TecnicoRenderer()
|
||||
{
|
||||
labels = new JLabel[ 4 ];
|
||||
for( int n = 0; n < 4; n++ )
|
||||
{
|
||||
labels[ n ] = new JLabel();
|
||||
}
|
||||
defaultColor = labels[ 0 ].getBackground();
|
||||
labels[ 2 ].setOpaque( true );
|
||||
}
|
||||
|
||||
public Component getTableCellRendererComponent( JTable table, Object value,
|
||||
boolean isSelected,
|
||||
boolean hasFocus,
|
||||
int row, int column )
|
||||
{
|
||||
switch( column )
|
||||
{
|
||||
case 2:
|
||||
labels[ 2 ].setText( " " );
|
||||
labels[ 2 ].setBackground( value == null ? defaultColor :
|
||||
HigieneDataProvider.CORES_TECNICOS[ ( ( Integer ) value ).intValue() ] );
|
||||
break;
|
||||
default:
|
||||
labels[ column ].setText( ( String ) value );
|
||||
break;
|
||||
}
|
||||
return labels[ column ];
|
||||
}
|
||||
}
|
||||
Loading…
Reference in new issue