diff --git a/trunk/SIPRPSoft/lib/evolute.jar b/trunk/SIPRPSoft/lib/evolute.jar index e36c9894..20967ce9 100644 Binary files a/trunk/SIPRPSoft/lib/evolute.jar and b/trunk/SIPRPSoft/lib/evolute.jar differ diff --git a/trunk/SIPRPSoft/lib/shst.jar b/trunk/SIPRPSoft/lib/shst.jar index 2e98a2b8..51cd85b6 100644 Binary files a/trunk/SIPRPSoft/lib/shst.jar and b/trunk/SIPRPSoft/lib/shst.jar differ diff --git a/trunk/SIPRPSoft/src/siprp/SIPRPTracker.java b/trunk/SIPRPSoft/src/siprp/SIPRPTracker.java index 90eac178..c07ed10c 100644 --- a/trunk/SIPRPSoft/src/siprp/SIPRPTracker.java +++ b/trunk/SIPRPSoft/src/siprp/SIPRPTracker.java @@ -10,11 +10,11 @@ import java.util.Hashtable; import javax.swing.tree.DefaultMutableTreeNode; -import shst.MedicinaTrackerInterface; +import shst.SHSTTrackerInterface; +import shst.higiene.marcacoes.MarcacoesHigieneInterface; import shst.medicina.MedicinaWindowInterface; import shst.medicina.multi.MultiMarcacoesWindow; import siprp.clientes.AvisosPanel; -import siprp.clientes.ClientesWindow; import siprp.estatistica.EstatisticaWindow; import siprp.ficha.FichaWindow; import siprp.higiene.gestao.GestaoRelatorioWindow; @@ -40,7 +40,7 @@ import com.evolute.utils.tracker.WindowTracker; * * @author fpalma */ -public class SIPRPTracker extends WindowTracker implements MedicinaTrackerInterface +public class SIPRPTracker extends WindowTracker implements SHSTTrackerInterface { public static final String FICHA_APTIDAO = "Ficha de Aptid\u00e3o"; public static final String CRIACAO_FICHA_APTIDAO = "Cria\u00e7\u00e3o de Fichas de Aptid\u00e3o"; @@ -56,11 +56,11 @@ public class SIPRPTracker extends WindowTracker implements MedicinaTrackerInterf public static final String LISTAGENS = "Listagens"; private final AvisosPanel avisos; - private ClientesWindow clientesWindow; + private shst.clientes.ClientesWindow clientesWindow; private MedicinaWindowInterface medicinaWindow; private MultiMarcacoesWindow multiMarcacoesWindow; private MedicinaProcessoWindow medicinaProcessoWindow; - private MarcacoesHigieneWindow higieneWindow; + private MarcacoesHigieneInterface higieneWindow; /** Creates a new instance of SIPRPTracker */ public SIPRPTracker( AvisosPanel avisosP ) @@ -81,7 +81,7 @@ public class SIPRPTracker extends WindowTracker implements MedicinaTrackerInterf { try { - clientesWindow = new ClientesWindow( avisos ); + clientesWindow = new shst.clientes.ClientesWindow( avisos ); clientesWindow.setTracker( this ); medicinaWindow = new MedicinaWindow(); medicinaWindow.setTracker( this ); @@ -137,7 +137,7 @@ public class SIPRPTracker extends WindowTracker implements MedicinaTrackerInterf return getClientesWindow(); } } ); - + rootNode.add( new DefaultMutableTreeNode( LembretesWindow.TITLE ) ); creators.put( LembretesWindow.TITLE, new WindowCreator() { public TrackableWindow create() @@ -292,16 +292,27 @@ public class SIPRPTracker extends WindowTracker implements MedicinaTrackerInterf setCreators( creators ); } - public ClientesWindow getClientesWindow() throws Exception + public shst.clientes.ClientesWindow getClientesWindow() throws Exception { if( clientesWindow == null ) { - clientesWindow = new ClientesWindow( avisos ); + clientesWindow = new shst.clientes.ClientesWindow( avisos ); clientesWindow.setTracker( SIPRPTracker.this ); } return clientesWindow; } + private shst.clientes.ClientesWindow clientesWindow2 = null; + public shst.clientes.ClientesWindow getClientesWindow2() throws Exception + { + if( clientesWindow2 == null ) + { + clientesWindow2 = new shst.clientes.ClientesWindow( avisos ); + clientesWindow2.setTracker( SIPRPTracker.this ); + } + return clientesWindow2; + } + public MedicinaWindowInterface getMedicinaWindow() throws Exception { if( medicinaWindow == null ) @@ -337,7 +348,7 @@ public class SIPRPTracker extends WindowTracker implements MedicinaTrackerInterf return medicinaProcessoWindow; } - public MarcacoesHigieneWindow getHigieneWindow() throws Exception + public MarcacoesHigieneInterface getHigieneWindow() throws Exception { if( higieneWindow == null ) { diff --git a/trunk/SIPRPSoft/src/siprp/clientes/AvisosPanel.java b/trunk/SIPRPSoft/src/siprp/clientes/AvisosPanel.java index e4691d98..6e0ae256 100644 --- a/trunk/SIPRPSoft/src/siprp/clientes/AvisosPanel.java +++ b/trunk/SIPRPSoft/src/siprp/clientes/AvisosPanel.java @@ -27,6 +27,7 @@ import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; +import shst.clientes.AvisosPanelInterface; import siprp.FichaDataProvider; import siprp.SIPRPTracker; import siprp.data.AvisoConstants; @@ -44,8 +45,7 @@ import com.evolute.utils.ui.DialogException; * * @author fpalma */ -public class AvisosPanel extends JPanel - implements ActionListener, ControllableComponent +public class AvisosPanel extends JPanel implements ActionListener, ControllableComponent, AvisosPanelInterface { private static final DateFormat DATE_FORMAT = DateFormat.getDateInstance( DateFormat.SHORT ); private ProviderInterface JDO; @@ -547,7 +547,7 @@ public class AvisosPanel extends JPanel case AvisoConstants.TIPO_EMPRESA: empresa = aviso.toEmpresa_id(); aviso.delete(); - ClientesWindow clientesWindow = tracker.getClientesWindow(); + shst.clientes.ClientesWindow clientesWindow = tracker.getClientesWindow(); clientesWindow.setVisible( true ); clientesWindow.setJDOObject( empresa ); break; diff --git a/trunk/SIPRPSoft/src/siprp/higiene/marcacoes/MarcacoesHigieneWindow.java b/trunk/SIPRPSoft/src/siprp/higiene/marcacoes/MarcacoesHigieneWindow.java index bb767e3d..50e0b313 100644 --- a/trunk/SIPRPSoft/src/siprp/higiene/marcacoes/MarcacoesHigieneWindow.java +++ b/trunk/SIPRPSoft/src/siprp/higiene/marcacoes/MarcacoesHigieneWindow.java @@ -28,9 +28,11 @@ import javax.swing.JPanel; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; +import shst.SHSTTrackerInterface; +import shst.higiene.marcacoes.MarcacoesHigieneInterface; import siprp.CompanyDataLoader; -import siprp.SIPRPTracker; import siprp.SingletonConstants; +import siprp.clientes.AvisosPanel; import siprp.data.AvisoConstants; import siprp.data.Marcacao; import siprp.data.outer.ContactosData; @@ -52,7 +54,7 @@ import com.evolute.utils.ui.window.EditorWindow; * @author fpalma */ public class MarcacoesHigieneWindow extends EditorWindow - implements ItemListener, ActionListener, ListSelectionListener + implements ItemListener, ActionListener, ListSelectionListener, MarcacoesHigieneInterface { private static final long serialVersionUID = 1L; @@ -74,7 +76,7 @@ public class MarcacoesHigieneWindow extends EditorWindow protected HigieneDataProvider provider; protected ProviderInterface JDO; - protected SIPRPTracker tracker; + protected SHSTTrackerInterface tracker; private Hashtable tecnicosHash; @@ -372,8 +374,7 @@ public class MarcacoesHigieneWindow extends EditorWindow } if( tracker != null ) { - tracker.getAvisosPanel().setEnabled( !editing, - AvisoConstants.TIPO_ESTABELECIMENTO ); + ( ( AvisosPanel ) tracker.getAvisosPanel() ).setEnabled( ! editing, AvisoConstants.TIPO_ESTABELECIMENTO ); } } @@ -550,7 +551,7 @@ public class MarcacoesHigieneWindow extends EditorWindow } } - public void setTracker( SIPRPTracker tracker ) + public void setTracker( SHSTTrackerInterface tracker ) { this.tracker = tracker; } diff --git a/trunk/SIPRPSoft/src/siprp/medicina/MedicinaWindow.java b/trunk/SIPRPSoft/src/siprp/medicina/MedicinaWindow.java index 42082a8a..fa4df806 100644 --- a/trunk/SIPRPSoft/src/siprp/medicina/MedicinaWindow.java +++ b/trunk/SIPRPSoft/src/siprp/medicina/MedicinaWindow.java @@ -27,7 +27,7 @@ import javax.swing.JPanel; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; -import shst.MedicinaTrackerInterface; +import shst.SHSTTrackerInterface; import shst.medicina.MedicinaWindowInterface; import siprp.CompanyDataLoader; import siprp.FichaDataProvider; @@ -77,7 +77,7 @@ public class MedicinaWindow extends TabbedWindow protected MedicinaDataProvider provider; protected FichaDataProvider fichaProvider; protected ProviderInterface JDO; - protected MedicinaTrackerInterface tracker; + protected SHSTTrackerInterface tracker; protected MedicinaUpperPanel upperPanel; protected MarcacaoConsultaPanel marcacaoConsultaPanel; @@ -698,7 +698,7 @@ public class MedicinaWindow extends TabbedWindow } } - public void setTracker( MedicinaTrackerInterface tracker ) + public void setTracker( SHSTTrackerInterface tracker ) { this.tracker = tracker; diff --git a/trunk/SIPRPSoft/src/siprp/update/UpdateList.java b/trunk/SIPRPSoft/src/siprp/update/UpdateList.java index 036bd0fd..fa7e2ca3 100644 --- a/trunk/SIPRPSoft/src/siprp/update/UpdateList.java +++ b/trunk/SIPRPSoft/src/siprp/update/UpdateList.java @@ -36,6 +36,9 @@ import siprp.update.updates.V12_3_To_V12_4; import siprp.update.updates.V12_4_To_V12_5; import siprp.update.updates.V12_5_To_V12_6; import siprp.update.updates.V12_6_To_V12_7; +import siprp.update.updates.V12_7_To_V12_8; +import siprp.update.updates.V12_8_To_V12_9; +import siprp.update.updates.V12_9_To_V13_0; import siprp.update.updates.V6_1_To_V7_0; import siprp.update.updates.V7_0_To_V7_2; import siprp.update.updates.V7_2_To_V7_4; @@ -104,7 +107,9 @@ public class UpdateList new V11_9_To_V12_0(), new V12_0_To_V12_1(), new V12_1_To_V12_2(), new V12_2_To_V12_3(), new V12_3_To_V12_4(), new V12_4_To_V12_5(), - new V12_5_To_V12_6(), new V12_6_To_V12_7() + new V12_5_To_V12_6(), new V12_6_To_V12_7(), + new V12_7_To_V12_8(), new V12_8_To_V12_9(), + new V12_9_To_V13_0() }; // // protected static Executer EXECUTER; diff --git a/trunk/SIPRPSoft/src/siprp/update/updates/V12_4_To_V12_5.java b/trunk/SIPRPSoft/src/siprp/update/updates/V12_4_To_V12_5.java index 06c8861c..711981c7 100644 --- a/trunk/SIPRPSoft/src/siprp/update/updates/V12_4_To_V12_5.java +++ b/trunk/SIPRPSoft/src/siprp/update/updates/V12_4_To_V12_5.java @@ -32,12 +32,7 @@ public class V12_4_To_V12_5 extends AbstractUpdate "); " + "insert into empresa_preco_servico_tipo(id,nome) values(1,'Medicina'); " + "insert into empresa_preco_servico_tipo(id,nome) values(2,'Higiene e Seguran\\\\u00e7a'); " + - "insert into empresa_preco_servico_tipo(id,nome) values(3,'Forma\\\\u00e7\\\\u00e3o'); " + - "insert into empresa_preco_servico_tipo(id,nome) values(4,'Planos de Emergencia'); " + - "insert into empresa_preco_servico_tipo(id,nome) values(5,'Avalia\\\\u00e7\\\\u00f5es de Risco'); " + - "insert into empresa_preco_servico_tipo(id,nome) values(6,'Avalia\\\\u00e7\\\\u00f5es de Qualidade de Ar'); " + - "insert into empresa_preco_servico_tipo(id,nome) values(7,'Ru\\\\u00eddo Laboral'); " + - "insert into empresa_preco_servico_tipo(id,nome) values(8,'Outro'); " + + "insert into empresa_preco_servico_tipo(id,nome) values(3,'Outro'); " + "create table empresa_preco_servico( " + " id serial primary key, " + " empresa_preco_servico_tipo_id int4 not null references empresa_preco_servico_tipo(id), " + diff --git a/trunk/SIPRPSoft/src/siprp/update/updates/V12_7_To_V12_8.java b/trunk/SIPRPSoft/src/siprp/update/updates/V12_7_To_V12_8.java new file mode 100644 index 00000000..fa3bb2f8 --- /dev/null +++ b/trunk/SIPRPSoft/src/siprp/update/updates/V12_7_To_V12_8.java @@ -0,0 +1,23 @@ +package siprp.update.updates; + +import com.evolute.module.updater.AbstractUpdate; +import com.evolute.utils.sql.Update; + +public class V12_7_To_V12_8 extends AbstractUpdate +{ + + public V12_7_To_V12_8() + { + super( 12.7, 12.8, "Adicionar campo departamento em contactos." ); + } + + @Override + public void doUpdate() throws Exception + { + Update update = new Update( + "ALTER TABLE contactos ADD COLUMN departamento character varying( 256 );" + ); + executeQuery( update ); + } + +} diff --git a/trunk/SIPRPSoft/src/siprp/update/updates/V12_8_To_V12_9.java b/trunk/SIPRPSoft/src/siprp/update/updates/V12_8_To_V12_9.java new file mode 100644 index 00000000..1e40273f --- /dev/null +++ b/trunk/SIPRPSoft/src/siprp/update/updates/V12_8_To_V12_9.java @@ -0,0 +1,69 @@ +package siprp.update.updates; + +import com.evolute.module.updater.AbstractUpdate; +import com.evolute.utils.db.DBException; +import com.evolute.utils.sql.EvoQuery; +import com.evolute.utils.sql.Insert; +import com.evolute.utils.sql.Select; +import com.evolute.utils.tables.ColumnizedIDObject; + +public class V12_8_To_V12_9 extends AbstractUpdate +{ + + public V12_8_To_V12_9() + { + super( 12.8, 12.9, "A converter valores de pagamentos antigos" ); + } + + @Override + public void doUpdate() throws Exception + { + EvoQuery select = new EvoQuery( getExecuter(), new Select( + "SELECT id, preco_medicina, " + + "CASE " + + "WHEN preco_medicina IS NULL THEN false " + + "ELSE true " + + "END AS preco_medicina_activo, " + + "preco_higiene, " + + "CASE " + + "WHEN preco_higiene IS NULL THEN false " + + "ELSE true " + + "END AS preco_higiene_activo " + + "FROM empresas" + )); + for( ColumnizedIDObject row : select ) + { + Integer empresaId = row.getID(); + +// Number precoFormacao = row.getValue( 0 ); +// Boolean activeFormacao = row.getValue( 1 ); + + Number precoMedicina = row.getValue( 0 ); +// Boolean activeMedicina = row.getValue( 1 ); + Boolean activeMedicina = true; + + Number precoHigiene = row.getValue( 2 ); +// Boolean activeHigiene = row.ge + Boolean activeHigiene = true; + + insertPreco( empresaId, /*precoFormacao, activeFormacao == null ? false : activeFormacao, */precoMedicina, activeMedicina == null ? false : activeMedicina, precoHigiene, activeHigiene == null ? false : activeHigiene); + } + + } + + private void insertPreco(Integer empresaId, /*Number precoFormacao, boolean activeFormacao,*/ Number precoMedicina, boolean activeMedicina, Number precoHigiene, boolean activeHigiene) throws DBException + { + Insert insert = new Insert("insert into empresa_preco_servico(" + + "empresa_preco_servico_tipo_id,empresa_id,valor,activo) " + + "values("+1+","+empresaId+", round( "+precoMedicina+", 3 ),"+activeMedicina+"); "); + getExecuter().executeQuery(insert); + insert = new Insert("insert into empresa_preco_servico(" + + "empresa_preco_servico_tipo_id,empresa_id,valor,activo) " + + "values("+2+","+empresaId+", round( "+precoHigiene+", 3 ),"+activeHigiene+"); "); + getExecuter().executeQuery(insert); +// insert = new Insert("insert into empresa_preco_servico(" + +// "empresa_preco_servico_tipo_id,empresa_id,valor,activo) " + +// "values("+3+","+empresaId+","+precoFormacao+","+activeFormacao+"); "); +// getExecuter().executeQuery(insert); + } +} diff --git a/trunk/SIPRPSoft/src/siprp/update/updates/V12_9_To_V13_0.java b/trunk/SIPRPSoft/src/siprp/update/updates/V12_9_To_V13_0.java new file mode 100644 index 00000000..304858ad --- /dev/null +++ b/trunk/SIPRPSoft/src/siprp/update/updates/V12_9_To_V13_0.java @@ -0,0 +1,28 @@ +package siprp.update.updates; + +import com.evolute.module.updater.AbstractUpdate; +import com.evolute.utils.sql.Update; + +public class V12_9_To_V13_0 extends AbstractUpdate +{ + + public V12_9_To_V13_0() + { + super( 12.9, 13.0, "A remover valores de pagamentos antigos" ); + } + + @Override + public void doUpdate() throws Exception + { + Update update = new Update( + //"alter table empresas drop column preco_formacao; " + + //"alter table empresas drop column preco_formacao_activo; " + + "alter table empresas drop column preco_higiene; " + + //"alter table empresas drop column preco_higiene_activo; " + + "alter table empresas drop column preco_medicina; " + //"alter table empresas drop column preco_medicina_activo; " + ); + getExecuter().executeQuery( update ); + } + +}