no message

git-svn-id: https://svn.coded.pt/svn/SIPRP@23 bb69d46d-e84e-40c8-a05a-06db0d633741
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
Frederico Palma 22 years ago
parent 341d61df2b
commit 143752dfdc

@ -70,6 +70,7 @@ public class FichaDataProvider extends MetaProvider implements SearchExecuter {
public static final String LOCAL_TRABALHO = "local_trabalho"; public static final String LOCAL_TRABALHO = "local_trabalho";
public static final String FUNCAO_PROPOSTA = "funcao_proposta"; public static final String FUNCAO_PROPOSTA = "funcao_proposta";
public static final String DATA_ADMISSAO_FUNCAO = "data_admissao_funcao"; public static final String DATA_ADMISSAO_FUNCAO = "data_admissao_funcao";
public static final String OBSERVACOES = "observacoes";
public static final String ESTABELECIMENTO_ID = "estabelecimento_id"; public static final String ESTABELECIMENTO_ID = "estabelecimento_id";
// INACTIVO // INACTIVO
@ -79,13 +80,12 @@ public class FichaDataProvider extends MetaProvider implements SearchExecuter {
NACIONALIDADE, NUMERO_MECANOGRAFICO, NACIONALIDADE, NUMERO_MECANOGRAFICO,
DATA_ADMISSAO, CATEGORIA, LOCAL_TRABALHO, DATA_ADMISSAO, CATEGORIA, LOCAL_TRABALHO,
FUNCAO_PROPOSTA, DATA_ADMISSAO_FUNCAO, FUNCAO_PROPOSTA, DATA_ADMISSAO_FUNCAO,
ESTABELECIMENTO_ID }, OBSERVACOES, ESTABELECIMENTO_ID, INACTIVO },
ID ); ID );
// exames // exames
public static final String T_EXAMES = "exames"; public static final String T_EXAMES = "exames";
// ID // ID
public static final String OBSERVACOES = "observacoes";
public static final String DATA = "data"; public static final String DATA = "data";
public static final String TIPO = "tipo"; public static final String TIPO = "tipo";
public static final String OCASIONAL = "ocasional"; public static final String OCASIONAL = "ocasional";
@ -126,6 +126,7 @@ public class FichaDataProvider extends MetaProvider implements SearchExecuter {
"R_ESTABELECIMENTOS_EMPRESAS" ); "R_ESTABELECIMENTOS_EMPRESAS" );
EMPRESAS.disableSave( INACTIVO ); EMPRESAS.disableSave( INACTIVO );
ESTABELECIMENTOS.disableSave( INACTIVO ); ESTABELECIMENTOS.disableSave( INACTIVO );
TRABALHADORES.disableSave( INACTIVO );
} }
catch( Exception e ) catch( Exception e )
{ {

@ -16,7 +16,7 @@ public class Main
throws Exception throws Exception
{ {
Insert.setDefaultKeyRetriever( JDBCAutoKeyRetriever.DEFAULT ); Insert.setDefaultKeyRetriever( JDBCAutoKeyRetriever.DEFAULT );
String server = "192.168.0.12"; String server = "localhost";
String dbase = "test"; String dbase = "test";
String user = "admin"; String user = "admin";
String passwd = ""; String passwd = "";

@ -170,6 +170,8 @@ public class EmpresaPanel extends JPanel
public void fill(Object value) public void fill(Object value)
{ {
clear(); clear();
empresa = null;
estabelecimento = null;
if( value != null ) if( value != null )
{ {
Integer empresaID = (Integer)((Object[])value)[0]; Integer empresaID = (Integer)((Object[])value)[0];
@ -259,8 +261,6 @@ public class EmpresaPanel extends JPanel
estabelecimento.setProperty( name, hash.get( name ) ); estabelecimento.setProperty( name, hash.get( name ) );
} }
estabelecimento.setProperty( provider.R_ESTABELECIMENTO_EMPRESA, empresa ); estabelecimento.setProperty( provider.R_ESTABELECIMENTO_EMPRESA, empresa );
empresa.save();
estabelecimento.save();
return estabelecimento; return estabelecimento;
} }
catch( Exception ex ) catch( Exception ex )

@ -134,9 +134,9 @@ public class FichaAptidaoEditorManager extends EditorManager
else if( state == STATE_EDIT ) else if( state == STATE_EDIT )
{ {
editor.reload( index ); editor.reload( index );
editor.enableComponents( index, false ); editor.enableComponents( index, true );
// new, edit, cancel, save, delete, select // new, edit, cancel, save, delete, select
editor.actions( index, true, true, false, false, true, true ); editor.actions( index, true, true, true, true, true, true );
state = STATE_EDIT; state = STATE_EDIT;
} }
} }
@ -148,8 +148,9 @@ public class FichaAptidaoEditorManager extends EditorManager
{ {
return; return;
} }
editor.enableComponents( index, false );
// new, edit, cancel, save, delete, select // new, edit, cancel, save, delete, select
editor.actions( index, true, true, false, true, true, true ); editor.actions( index, true, true, false, false, true, true );
state = STATE_EDIT; state = STATE_EDIT;
} }
@ -193,7 +194,7 @@ public class FichaAptidaoEditorManager extends EditorManager
public void editItem() public void editItem()
{ {
throw new RuntimeException( "editItem cannot be called on FichaAptidaoEditorManager" ); state = STATE_EDIT;
} }
public void lock(boolean direction) public void lock(boolean direction)

@ -11,6 +11,8 @@ import siprp.*;
import java.awt.*; import java.awt.*;
import javax.swing.*; import javax.swing.*;
import com.evolute.utils.metadb.*;
import com.evolute.utils.ui.*;
import com.evolute.utils.ui.search.*; import com.evolute.utils.ui.search.*;
import com.evolute.utils.ui.window.*; import com.evolute.utils.ui.window.*;
@ -104,7 +106,20 @@ public class FichaWindow extends TabbedWindow
new Runnable(){ new Runnable(){
public void run() public void run()
{ {
empresaPanel.save(); MetaObject estabelecimento = (MetaObject)empresaPanel.save();
try
{
estabelecimento.save();
MetaObject trabalhador = (MetaObject)trabalhadorPanel.save();
trabalhador.setProperty( fdpProvider.R_TRABALHADOR_ESTABELECIMENTO, estabelecimento );
trabalhador.setProperty( fdpProvider.OBSERVACOES, observacoesPanel.save() );
trabalhador.save();
}
catch( Exception ex )
{
DialogException.showExceptionMessage( ex, "Erro a guardar", true );
}
} }
}); });
return true; return true;
@ -128,7 +143,7 @@ public class FichaWindow extends TabbedWindow
return false; return false;
} }
} }
fdpProvider.setSearch( FichaDataProvider.SEARCH_ESTABELECIMENTOS ); fdpProvider.setSearch( FichaDataProvider.SEARCH_ESTABELECIMENTOS );
fdpProvider.setSearchID( FichaDataProvider.SEARCH_EMPRESAS, empresaID.intValue() ); fdpProvider.setSearchID( FichaDataProvider.SEARCH_EMPRESAS, empresaID.intValue() );
search = new SearchDialog( fdpProvider, null, true, null, true ); search = new SearchDialog( fdpProvider, null, true, null, true );
@ -156,7 +171,6 @@ public class FichaWindow extends TabbedWindow
{ {
if( search.getIsNew() ) if( search.getIsNew() )
{ {
System.out.println( "FichaWindow: newItem: CRIAR TRABALHADOR" );
reload(0); reload(0);
return true; return true;
} }
@ -178,15 +192,21 @@ System.out.println( "FichaWindow: newItem: CRIAR TRABALHADOR" );
{ {
Object empresaData[] = new Object[]{ empresaID, estabelecimentoID }; Object empresaData[] = new Object[]{ empresaID, estabelecimentoID };
empresaPanel.fill( empresaData ); empresaPanel.fill( empresaData );
trabalhadorPanel.fill( trabalhadorID );
observacoesPanel.fill( trabalhadorID );
} }
public void enableComponents( int index, boolean enable ) public void enableComponents( int index, boolean enable )
{ {
empresaPanel.setEnabled( enable ); empresaPanel.setEnabled( enable );
trabalhadorPanel.setEnabled( enable );
observacoesPanel.setEnabled( enable );
} }
public void clear( int index ) public void clear( int index )
{ {
empresaPanel.clear(); empresaPanel.clear();
trabalhadorPanel.clear();
observacoesPanel.clear();
} }
} }

@ -10,19 +10,25 @@ import java.awt.*;
import javax.swing.*; import javax.swing.*;
import com.evolute.utils.dataui.*; import com.evolute.utils.dataui.*;
import com.evolute.utils.metadb.*;
import siprp.*;
/** /**
* *
* @author fpalma * @author fpalma
*/ */
public class ObservacoesPanel extends JPanel public class ObservacoesPanel extends JPanel
implements FillerSaverWrapper implements ControllableComponent
{ {
private JTextArea observacoesText; private JTextArea observacoesText;
private FichaDataProvider provider;
/** Creates a new instance of ObservacoesPanel */ /** Creates a new instance of ObservacoesPanel */
public ObservacoesPanel() public ObservacoesPanel()
throws Exception
{ {
provider = (FichaDataProvider)FichaDataProvider.getProvider();
setupComponents(); setupComponents();
} }
@ -46,10 +52,39 @@ public class ObservacoesPanel extends JPanel
public void fill(Object value) public void fill(Object value)
{ {
clear();
Integer trabalhadorID = (Integer)value;
if( trabalhadorID != null )
{
try
{
MetaObject trabalhador = provider.load( provider.TRABALHADORES, new DBKey( trabalhadorID ) );
String observacoes = (String) trabalhador.getProperty( provider.OBSERVACOES );
if( observacoes != null )
{
observacoesText.setText( observacoes );
}
}
catch( Exception ex )
{
ex.printStackTrace();
}
}
} }
public Object save() public Object save()
{ {
return null; return observacoesText.getText();
}
public void clear()
{
observacoesText.setText( "" );
}
public void setEnabled( boolean enable )
{
observacoesText.setEnabled( enable );
} }
} }

@ -12,15 +12,17 @@ import java.util.*;
import com.evolute.utils.data.*; import com.evolute.utils.data.*;
import com.evolute.utils.dataui.*; import com.evolute.utils.dataui.*;
import com.evolute.utils.metadb.*;
import com.evolute.utils.ui.*; import com.evolute.utils.ui.*;
import com.evolute.utils.ui.panel.*; import com.evolute.utils.ui.panel.*;
import siprp.*;
/** /**
* *
* @author fpalma * @author fpalma
*/ */
public class TrabalhadorPanel extends JPanel public class TrabalhadorPanel extends JPanel
implements FillerSaverWrapper implements ControllableComponent
{ {
private JTextField nomeText; private JTextField nomeText;
private RadioButtonFixedPanel sexoPanel; private RadioButtonFixedPanel sexoPanel;
@ -33,12 +35,20 @@ public class TrabalhadorPanel extends JPanel
private JTextField funcaoText; private JTextField funcaoText;
private JCalendarPanel dataAdmissaoFuncaoPanel; private JCalendarPanel dataAdmissaoFuncaoPanel;
private ComponentsHashtable components;
private FichaDataProvider provider;
private MetaObject trabalhador;
/** Creates a new instance of TrabalhadorPanel */ /** Creates a new instance of TrabalhadorPanel */
public TrabalhadorPanel() public TrabalhadorPanel()
throws Exception
{ {
provider = (FichaDataProvider)FichaDataProvider.getProvider();
setupComponents(); setupComponents();
setupComponentsHashtable();
} }
private void setupComponents() private void setupComponents()
{ {
@ -99,12 +109,6 @@ public class TrabalhadorPanel extends JPanel
gridbag.setConstraints( sexoPanel, constraints ); gridbag.setConstraints( sexoPanel, constraints );
add( sexoPanel ); add( sexoPanel );
// constraints.weightx = 1;
// constraints.gridwidth = GridBagConstraints.REMAINDER;
// JPanel pad = new JPanel();
// gridbag.setConstraints( pad, constraints );
// add( pad );
constraints.weightx = 0; constraints.weightx = 0;
constraints.gridwidth = 2; constraints.gridwidth = 2;
gridbag.setConstraints( nacionalidadeLabel, constraints ); gridbag.setConstraints( nacionalidadeLabel, constraints );
@ -185,12 +189,132 @@ public class TrabalhadorPanel extends JPanel
add( dataAdmissaoFuncaoPanel ); add( dataAdmissaoFuncaoPanel );
} }
private void setupComponentsHashtable()
{
components = new ComponentsHashtable();
components.putComponent( provider.T_TRABALHADORES + "." + provider.NOME, nomeText );
components.putComponent( provider.T_TRABALHADORES + "." + provider.DATA_NASCIMENTO, dataNascimentoPanel );
components.putComponent( provider.T_TRABALHADORES + "." + provider.NACIONALIDADE, nacionalidadeText );
components.putComponent( provider.T_TRABALHADORES + "." + provider.NUMERO_MECANOGRAFICO, numeroMecanograficoText );
components.putComponent( provider.T_TRABALHADORES + "." + provider.DATA_ADMISSAO, dataAdmissaoPanel );
components.putComponent( provider.T_TRABALHADORES + "." + provider.CATEGORIA, categoriaText );
components.putComponent( provider.T_TRABALHADORES + "." + provider.LOCAL_TRABALHO, localText );
components.putComponent( provider.T_TRABALHADORES + "." + provider.FUNCAO_PROPOSTA, funcaoText );
components.putComponent( provider.T_TRABALHADORES + "." + provider.DATA_ADMISSAO_FUNCAO, dataAdmissaoFuncaoPanel );
components.putDummy( provider.T_TRABALHADORES + "." + provider.ESTABELECIMENTO_ID );
components.putDummy( provider.T_TRABALHADORES + "." + provider.OBSERVACOES );
components.putComponent( provider.T_TRABALHADORES + "." + provider.SEXO,
new ControllableComponent()
{
public void fill( Object value )
{
if( value != null && value.equals( "f" ) )
{
sexoPanel.fill( new Integer(2) );
}
else
{
sexoPanel.fill( new Integer(1) );
}
}
public Object save()
{
Integer id = (Integer)sexoPanel.save();
if( id != null && id.intValue() == 2 )
{
return "m";
}
return "f";
}
public void clear()
{
sexoPanel.clear();
}
public void setEnabled( boolean enable )
{
sexoPanel.setEnabled( enable );
}
} );
}
public void fill(Object value) public void fill(Object value)
{ {
clear();
trabalhador = null;
if( value != null )
{
Integer trabalhadorID = (Integer)value;
if( trabalhadorID != null )
{
try
{
trabalhador = provider.load( provider.TRABALHADORES, new DBKey( trabalhadorID ) );
DBField fields[] = provider.TRABALHADORES.getInsertFields();
String trabalhadorFields[] = new String[ fields.length ];
Hashtable data = new Hashtable();
for( int i = 0; i < trabalhadorFields.length; ++i )
{
trabalhadorFields[ i ] = fields[ i ].FULL_NAME;
Object fieldValue = trabalhador.getProperty( trabalhadorFields[ i ] );
if( fieldValue != null )
{
data.put( trabalhadorFields[ i ], fieldValue );
}
}
ComponentController.fill( trabalhadorFields, data, components );
}
catch( Exception ex )
{
DialogException.showExceptionMessage( ex, "Erro a carregar os dados do trabalhador", true );
}
}
}
} }
public Object save() public Object save()
{ {
try
{
if( trabalhador == null )
{
trabalhador = provider.createObject( provider.TRABALHADORES );
}
DBField fields[] = provider.TRABALHADORES.getInsertFields();
String trabalhadorFields[] = new String[ fields.length ];
for( int i = 0; i < trabalhadorFields.length; ++i )
{
trabalhadorFields[ i ] = fields[ i ].FULL_NAME;
}
Hashtable hash = new Hashtable();
ComponentController.save( trabalhadorFields, hash, components );
Enumeration enum = hash.keys();
while( enum.hasMoreElements() )
{
String name = ( String )enum.nextElement();
trabalhador.setProperty( name, hash.get( name ) );
}
return trabalhador;
}
catch( Exception ex )
{
ex.printStackTrace();
}
return null; return null;
} }
public void clear()
{
String names[] = (String[])components.keySet().toArray( new String[0] );
ComponentController.clear( names, components );
}
public void setEnabled( boolean enable )
{
String names[] = (String[])components.keySet().toArray( new String[0] );
ComponentController.setEnabled( names, enable, components );
}
} }

Loading…
Cancel
Save