From 365710d7158978c930309c4240a70e2011caa4a5 Mon Sep 17 00:00:00 2001 From: Diogo Neves Date: Tue, 7 Sep 2010 10:30:32 +0000 Subject: [PATCH] git-svn-id: https://svn.coded.pt/svn/SIPRP@1474 bb69d46d-e84e-40c8-a05a-06db0d633741 --- trunk/SIPRPSoft/lib/shst.jar | Bin 1907761 -> 1914385 bytes trunk/SIPRPSoft/src/siprp/Main.java | 5 +- trunk/SIPRPSoft/src/siprp/ORMInitializer.java | 82 ------------- .../src/siprp/SIPRPSpellChecker.java | 35 ------ trunk/SIPRPSoft/src/siprp/SIPRPTracker.java | 2 +- .../ClinicaAvenidaDataLoader.java | 93 -------------- .../companydataloaders/CompanyDataLoader.java | 20 --- .../companydataloaders/IBookDataLoader.java | 105 ---------------- .../SIPRPPropertiesLoader.java | 116 ------------------ .../src/siprp/ficha/FichaWindow.java | 2 +- .../SIPRPSoft/src/siprp/printer/Printer.java | 61 --------- 11 files changed, 5 insertions(+), 516 deletions(-) delete mode 100644 trunk/SIPRPSoft/src/siprp/ORMInitializer.java delete mode 100644 trunk/SIPRPSoft/src/siprp/SIPRPSpellChecker.java delete mode 100644 trunk/SIPRPSoft/src/siprp/companydataloaders/ClinicaAvenidaDataLoader.java delete mode 100644 trunk/SIPRPSoft/src/siprp/companydataloaders/CompanyDataLoader.java delete mode 100644 trunk/SIPRPSoft/src/siprp/companydataloaders/IBookDataLoader.java delete mode 100644 trunk/SIPRPSoft/src/siprp/companydataloaders/SIPRPPropertiesLoader.java delete mode 100644 trunk/SIPRPSoft/src/siprp/printer/Printer.java diff --git a/trunk/SIPRPSoft/lib/shst.jar b/trunk/SIPRPSoft/lib/shst.jar index 1d8fe57b04af0d05d3ecd85e223b2fe2efda1d63..0d7c8b4cf838598f962a9805448e13f37f987819 100644 GIT binary patch delta 49366 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 delta 42463 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 provider = ProviderRegistry.getDefaultProvider( conn ); - - Singleton.setInstance( Singleton.DEFAULT_OBJECT_PROVIDER, provider ); - Singleton.setInstance( Singleton.DEFAULT_EVO_DATA_PROVIDER, provider ); - - } -} diff --git a/trunk/SIPRPSoft/src/siprp/SIPRPSpellChecker.java b/trunk/SIPRPSoft/src/siprp/SIPRPSpellChecker.java deleted file mode 100644 index c52b7e12..00000000 --- a/trunk/SIPRPSoft/src/siprp/SIPRPSpellChecker.java +++ /dev/null @@ -1,35 +0,0 @@ -package siprp; - -import javax.swing.text.JTextComponent; - -import com.evolute.modules.spellchecker.EvoSpellChecker; -import com.evolute.modules.spellchecker.EvoSpellChecker.Dictionary; - - -public class SIPRPSpellChecker -{ - - private static SIPRPSpellChecker instance = null; - - private final EvoSpellChecker spellChecker; - - private SIPRPSpellChecker() - { - this.spellChecker = new EvoSpellChecker( Dictionary.PT_PT ); - } - - public static SIPRPSpellChecker getInstance() - { - if( instance == null ) - { - instance = new SIPRPSpellChecker(); - } - return instance; - } - - public void attachSpellCheckToComponent( JTextComponent fieldText ) - { - spellChecker.attachSpellCheckToComponent( fieldText ); - } - -} diff --git a/trunk/SIPRPSoft/src/siprp/SIPRPTracker.java b/trunk/SIPRPSoft/src/siprp/SIPRPTracker.java index 0985514a..f7d288b3 100644 --- a/trunk/SIPRPSoft/src/siprp/SIPRPTracker.java +++ b/trunk/SIPRPSoft/src/siprp/SIPRPTracker.java @@ -14,6 +14,7 @@ import javax.swing.tree.DefaultMutableTreeNode; import shst.SHSTPropertiesConstants; import shst.SHSTTrackerInterface; +import shst.companydataloaders.SIPRPPropertiesLoader; import shst.cursos.CursosWindowAdapter; import shst.higiene.gestao.GestaoRelatorioWindow; import shst.higiene.mapa.MapaHigieneWindow; @@ -31,7 +32,6 @@ import shst.medicina.multi.MultiMarcacoesWindow; import shst.medicina.presencas.RegistarPresencasWindow; import shst.medicina.prestadores.PrestadoresWindow; import siprp.clientes.AvisosPanel; -import siprp.companydataloaders.SIPRPPropertiesLoader; import siprp.cursos.SIPRPCursosInit; import siprp.estatistica.EstatisticaWindow; import siprp.ficha.FichaWindow; diff --git a/trunk/SIPRPSoft/src/siprp/companydataloaders/ClinicaAvenidaDataLoader.java b/trunk/SIPRPSoft/src/siprp/companydataloaders/ClinicaAvenidaDataLoader.java deleted file mode 100644 index 9e00b775..00000000 --- a/trunk/SIPRPSoft/src/siprp/companydataloaders/ClinicaAvenidaDataLoader.java +++ /dev/null @@ -1,93 +0,0 @@ -/* - * ClinicaAvenidaDtaLoader.java - * - * Created on 25 de Janeiro de 2005, 13:27 - */ - -package siprp.companydataloaders; - -import shst.SHSTPropertiesConstants; - -import com.evolute.utils.Singleton; - -/** - * - * @author fpalma - */ -public class ClinicaAvenidaDataLoader implements CompanyDataLoader -{ - - /** Creates a new instance of ClinicaAvenidaDtaLoader */ - public ClinicaAvenidaDataLoader() - { - } - - public void load() - { - Singleton.setInstance( SHSTPropertiesConstants.SOFTWARE_NAME, "SHSTSoft" ); - Singleton.setInstance( SHSTPropertiesConstants.COMPANY_NAME, "Centro Cl\u00ednico Avenida" ); - Singleton.setInstance( SHSTPropertiesConstants.COMPANY_LOGO, "logo_evo.jpg" ); - Singleton.setInstance( SHSTPropertiesConstants.COMPANY_ACRONYM, "CCA" ); - Singleton.setInstance( SHSTPropertiesConstants.SUBJECT_CONSULTA_VACINAS, "" ); - Singleton.setInstance( SHSTPropertiesConstants.LETTER_CONSULTA_VACINAS, "" ); - Singleton.setInstance( SHSTPropertiesConstants.SUBJECT_CONSULTA, "Centro Cl\u00ednico da Avenida - Marca\u00e7\u00e3o de consulta m\u00e9dica" ); - Singleton.setInstance( SHSTPropertiesConstants.LETTER_CONSULTA, "Vimos por este meio informar que " + NOME + " " - + "dever\u00e1 comparecer no Centro Cl\u00ednico da Avenida para a realiza\u00e7\u00e3o da " - + "consulta de Medicina do Trabalho, no dia " + DATA + ".\n" - + "Caso n\u00e3o seja poss\u00edvel a compar\u00eancia do referido colaborador na " - + "data indicada, agradecemos que nos informem atrav\u00e9s do telefone 214928612 " - + "ou respondendo a esta mensagem.\n\n" - + "Departamento de Seguran\u00e7a e Higiene do Trabalho\n" - + "Centro Cl\u00ednico da Avenida\n" - + "Av. General Humberto Delgado 128 R/C D\n" - + "2700-419 Amadora" ); - Singleton.setInstance( SHSTPropertiesConstants.SUBJECT_EXAMES, "Centro Cl\u00ednico da Avenida - Marca\u00e7\u00e3o de exames de Medicina do Trabalho" ); - Singleton.setInstance( SHSTPropertiesConstants.LETTER_EXAMES, "Vimos por este meio informar que " + NOME + " " - + "dever\u00e1 comparecer no Centro Cl\u00ednico da Avenida para a realiza\u00e7\u00e3o " - + "de exames relativos \u00e0 Medicina do Trabalho, no dia " + DATA + ".\n" - + "Caso n\u00e3o seja poss\u00edvel a compar\u00eancia do referido colaborador na " - + "data indicada, agradecemos que nos informem atrav\u00e9s do telefone 214928612 " - + "ou respondendo a esta mensagem.\n\n" - + "Departamento de Seguran\u00e7a e Higiene do Trabalho\n" - + "Centro Cl\u00ednico da Avenida\n" - + "Av. General Humberto Delgado 128 R/C D\n" - + "2700-419 Amadora" ); - Singleton.setInstance( SHSTPropertiesConstants.SUBJECT_VISITA, "Centro Cl\u00ednico da Avenida - Marca\u00e7\u00e3�o da Auditoria de Seguran\u00e7a e Higiene do Trabalho" ); - Singleton.setInstance( SHSTPropertiesConstants.LETTER_VISITA, "Vimos por este meio informar que pretendemos " - + "realizar a auditoria de Seguran\u00e7a e Higiene do Trabalho \u00e0s vossas " - + "instala��es em " + MORADA + ", no dia " + DATA + ".\n" - + "Agradecemos que confirmem a vossa disponibilidade para a realiza\u00e7\u00e3o " - + "da visita na data indicada, atrav\u00e9s do telefone 214928612 ou " - + "respondendo a esta mensagem.\n\n" - + "Departamento de Seguran\u00e7a e Higiene do Trabalho\n" - + "Centro Cl\u00ednico da Avenida\n" - + "Av. General Humberto Delgado 128 R/C D\n" - + "2700-419 Amadora\n" - + "Tel.: 214928612" ); - Singleton.setInstance( SHSTPropertiesConstants.USES_HOUR, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.CODIGO_EMPRESA_FORMAT, "15" ); - Singleton.setInstance( SHSTPropertiesConstants.FICHA_MARCA_EXAMES, Boolean.FALSE ); - Singleton.setInstance( SHSTPropertiesConstants.EXCEL_FORMAT, new int[]{ 0, 2, 3, 1, 4, 5, 6, 9, 7, 8 } ); - - Singleton.setInstance( SHSTPropertiesConstants.MODULE_FICHA, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.MODULE_CLIENTES, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_AWARE, Boolean.FALSE ); - Singleton.setInstance( SHSTPropertiesConstants.MODULE_RELATORIO, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.MODULE_LISTAGENS, Boolean.FALSE ); - - Singleton.setInstance( SHSTPropertiesConstants.WEB_USER, "" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_PASSWORD, "" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_URL_PREFIX, "" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_URL, "" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_DB_NAME, "" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_DRIVER_NAME, "" ); - - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_USER, "postgres" ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_PASSWORD, "Typein" ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_URL_PREFIX, "jdbc:postgresql://" ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_URL, "localhost" ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_DB_NAME, "shst" ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_DRIVER_NAME, "org.postgresql.Driver" ); - } - -} diff --git a/trunk/SIPRPSoft/src/siprp/companydataloaders/CompanyDataLoader.java b/trunk/SIPRPSoft/src/siprp/companydataloaders/CompanyDataLoader.java deleted file mode 100644 index 195a568c..00000000 --- a/trunk/SIPRPSoft/src/siprp/companydataloaders/CompanyDataLoader.java +++ /dev/null @@ -1,20 +0,0 @@ -/* - * CompanyDataLoader.java - * - * Created on 25 de Janeiro de 2005, 13:18 - */ - -package siprp.companydataloaders; - -/** - * - * @author fpalma - */ -public interface CompanyDataLoader -{ - public static final String DATA = "XDATAX"; - public static final String NOME = "XNOMEX"; - public static final String MORADA = "XMORADAX"; - public static final String HORA = "XHORAX"; - public void load(); -} diff --git a/trunk/SIPRPSoft/src/siprp/companydataloaders/IBookDataLoader.java b/trunk/SIPRPSoft/src/siprp/companydataloaders/IBookDataLoader.java deleted file mode 100644 index f6b67425..00000000 --- a/trunk/SIPRPSoft/src/siprp/companydataloaders/IBookDataLoader.java +++ /dev/null @@ -1,105 +0,0 @@ -/* - * SIPRPDataLoader.java - * - * Created on 25 de Janeiro de 2005, 13:19 - */ - -package siprp.companydataloaders; - -import shst.SHSTPropertiesConstants; - -import com.evolute.utils.Singleton; - -/** - * - * @author fpalma - */ -public class IBookDataLoader implements CompanyDataLoader -{ - - /** Creates a new instance of SIPRPDataLoader */ - public IBookDataLoader() - { - } - - public void load() - { - Singleton.setInstance( SHSTPropertiesConstants.SOFTWARE_NAME, "SHSTSoft" ); - Singleton.setInstance( SHSTPropertiesConstants.COMPANY_NAME, "SHST" ); - Singleton.setInstance( SHSTPropertiesConstants.COMPANY_LOGO, "logo_evo.jpg" ); - Singleton.setInstance( SHSTPropertiesConstants.COMPANY_ACRONYM, "SHST" ); - Singleton.setInstance( SHSTPropertiesConstants.SUBJECT_CONSULTA, "SHST - Marca\u00E7\u00E3o de consulta"); - Singleton.setInstance( SHSTPropertiesConstants.LETTER_CONSULTA, "Vimos pelo presente informar que '" + NOME + "' dever\u00E1 comparecer " - + "nas nossas instala\u00E7\u00F5es para a realiza\u00E7\u00E3o da consulta de Medicina " - + "do Trabalho, no dia '" + DATA + "', pelas 08H30." - + "%0A%0A" - + "%0A%0A" - + "Solicitamos, tamb\u00E9m, que o colaborador seja portador do Boletim de Vacinas e " - + "dos \u00FAltimos exames complementares realizados." - + "%0A%0A" - + "%0A%0A" - + "Caso n\u00E3o seja poss\u00EDvel a compar\u00EAncia deste colaborador na data " - + "indicada, contacte-nos, por favor, atrav\u00E9s do telefone 21 212 12 12 " - + "ou respondendo ao remetente desta mensagem." - + "%0A%0A%0A" - + "Cumprimentos," - + "%0A%0ASHST" ); - Singleton.setInstance( SHSTPropertiesConstants.SUBJECT_EXAMES, "SHST - Marca\u00E7\u00E3o de exame"); - Singleton.setInstance( SHSTPropertiesConstants.LETTER_EXAMES, "Vimos pelo presente informar que '" + NOME + "' dever\u00E1 comparecer " - + "nas nossas instala\u00E7\u00F5es para a realiza\u00E7\u00E3o dos exames de Medicina " - + "do Trabalho, no dia '" + DATA + "', pelas 08H30." - + "%0A%0A" - + "Relembramos que o colaborador dever\u00E1 comparecer em jejum." - + "%0A%0A" - + "Caso n\u00E3o seja poss\u00EDvel a compar\u00EAncia deste colaborador na data " - + "indicada, contacte-nos, por favor, atrav\u00E9s do telefone 21 212 12 12 " - + "ou respondendo ao remetente desta mensagem." - + "%0A%0A%0A" - + "Cumprimentos,%0A%0ASHST" ); - Singleton.setInstance( SHSTPropertiesConstants.SUBJECT_VISITA, "SHST - Marca\u00E7\u00E3o de visita de higiene e seguran\u00E7a"); - Singleton.setInstance( SHSTPropertiesConstants.LETTER_VISITA, "Vimos pelo presente informar que iremos efectuar a auditoria de Higiene e " - + "Seguran\u00E7a \u00E0s vossas instala\u00E7\u00F5es de '" + NOME + "', no dia '" + DATA + "'." - + "%0A%0A" - + "Agradecemos que nos confirme, pela mesma via, o nome do representante " - + "da empresa que nos ir\u00E1 acompanhar e a vossa disponibilidade para a " - + "realiza\u00E7\u00E3o da visita na data indicada." - + "%0A%0A" - + "Caso necessite de qualquer esclarecimento, contacte-nos, por favor, " - + "atrav\u00E9s do telefone 21 212 12 12 " - + "ou responda ao remetente desta mensagem." - + "%0A%0A%0A" - + "Cumprimentos,%0A%0ASHST" ); - Singleton.setInstance( SHSTPropertiesConstants.USES_HOUR, Boolean.FALSE ); - Singleton.setInstance( SHSTPropertiesConstants.CODIGO_EMPRESA_FORMAT, "2 6 / 2" ); - Singleton.setInstance( SHSTPropertiesConstants.FICHA_MARCA_EXAMES, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.EXCEL_FORMAT, new int[]{ 0, 2, 3, 1, -1, 4, 5, 7, 6, -1 } ); - - Singleton.setInstance( SHSTPropertiesConstants.MODULE_FICHA, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.MODULE_CLIENTES, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_AWARE, Boolean.FALSE ); - Singleton.setInstance( SHSTPropertiesConstants.MODULE_RELATORIO, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.MODULE_LISTAGENS, Boolean.TRUE ); - - Singleton.setInstance( SHSTPropertiesConstants.WEB_USER, "" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_PASSWORD, "" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_URL_PREFIX, "" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_URL, "" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_DB_NAME, "" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_DRIVER_NAME, "" ); - -// Singleton.setInstance( SingletonConstants.LOCAL_USER, "postgres" ); -// Singleton.setInstance( SingletonConstants.LOCAL_PASSWORD, "Typein" ); -// Singleton.setInstance( SingletonConstants.LOCAL_URL_PREFIX, "jdbc:postgresql://" ); -// Singleton.setInstance( SingletonConstants.LOCAL_URL, "192.168.1.1:5432" ); -// Singleton.setInstance( SingletonConstants.LOCAL_DB_NAME, "siprp_local" ); -// Singleton.setInstance( SingletonConstants.LOCAL_DRIVER_NAME, "org.postgresql.Driver" ); - - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_USER, "postgres" ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_PASSWORD, "Typein" ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_URL_PREFIX, "jdbc:postgresql://" ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_URL, "localhost:5432" ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_DB_NAME, "siprp_local" ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_DRIVER_NAME, "org.postgresql.Driver" ); - } - -} diff --git a/trunk/SIPRPSoft/src/siprp/companydataloaders/SIPRPPropertiesLoader.java b/trunk/SIPRPSoft/src/siprp/companydataloaders/SIPRPPropertiesLoader.java deleted file mode 100644 index e516a0c7..00000000 --- a/trunk/SIPRPSoft/src/siprp/companydataloaders/SIPRPPropertiesLoader.java +++ /dev/null @@ -1,116 +0,0 @@ -package siprp.companydataloaders; - -import shst.SHSTPropertiesConstants; - -import com.evolute.properties.EvoAbstractPropertiesLoader; -import com.evolute.properties.EvoPropertyKey; -import com.evolute.properties.PropertiesException; -import com.evolute.utils.Singleton; - -public class SIPRPPropertiesLoader extends EvoAbstractPropertiesLoader -{ - private static SIPRPPropertiesLoader instance; - - private SIPRPPropertiesLoader() - { - this(null,null,null,null); - } - - public synchronized static SIPRPPropertiesLoader getInstance() - { - if (instance == null) - { - instance = new SIPRPPropertiesLoader(); - } - return instance; - } - - public SIPRPPropertiesLoader( - String[] mandatorySystemProperties, - String[] mandatorySingletonProperties, - String[] mandatoryJNLPProperties, - String[] mandatoryAPPProperties) - { - super(mandatorySystemProperties, mandatorySingletonProperties, mandatoryJNLPProperties, mandatoryAPPProperties); - } - - @Override - protected void postLoad() throws PropertiesException - { - Singleton.setInstance( SHSTPropertiesConstants.SOFTWARE_NAME, "SIPRPSoft" ); - Singleton.setInstance( SHSTPropertiesConstants.COMPANY_NAME, "SIPRP - Sociedade Ib\u00e9rica de Preven\u00e7\u00e3o de Riscos Profissionais" ); - Singleton.setInstance( SHSTPropertiesConstants.COMPANY_LOGO, "logo_combo.jpg" ); - Singleton.setInstance( SHSTPropertiesConstants.COMPANY_ACRONYM, "SIPRP" ); - Singleton.setInstance( SHSTPropertiesConstants.SUBJECT_CONSULTA, "SIPRP - Marca\u00E7\u00E3o de consulta de '" + CompanyDataLoader.NOME + "'"); - Singleton.setInstance( SHSTPropertiesConstants.LETTER_CONSULTA, "Vimos pelo presente informar que '" + CompanyDataLoader.NOME + "' dever\u00E1 comparecer " - + "nas nossas instala\u00E7\u00F5es para a realiza\u00E7\u00E3o da consulta de Medicina " - + "do Trabalho, no dia '" + CompanyDataLoader.DATA + "', pelas 08H30." - + "%0A%0A" - + "%0A%0A" - + "Solicitamos, tamb\u00E9m, que o colaborador seja portador do Boletim de Vacinas e " - + "dos \u00FAltimos exames complementares realizados." - + "%0A%0A" - + "%0A%0A" - + "Caso n\u00E3o seja poss\u00EDvel a compar\u00EAncia deste colaborador na data " - + "indicada, contacte-nos, por favor, atrav\u00E9s do telefone 21 350 45 40 " - + "ou respondendo ao remetente desta mensagem." - + "%0A%0A%0A" - + "Cumprimentos," - + "%0A%0ASIPRP" - + "%0A%0AATRIUM SALDANHA" - + "%0A%0APra\u00e7a Duque de Saldanha, 1 - 9\u00BAG" - + "%0A%0A1050-094 Lisboa" ); - Singleton.setInstance( SHSTPropertiesConstants.SUBJECT_EXAMES, "SIPRP - Marca\u00E7\u00E3o de exame de '" + CompanyDataLoader.NOME + "'"); - Singleton.setInstance( SHSTPropertiesConstants.LETTER_EXAMES, "Vimos pelo presente informar que '" + CompanyDataLoader.NOME + "' dever\u00E1 comparecer " - + "nas nossas instala\u00E7\u00F5es para a realiza\u00E7\u00E3o dos exames de Medicina " - + "do Trabalho, no dia '" + CompanyDataLoader.DATA + "', pelas 08H30." - + "%0A%0A" - + "Relembramos que o colaborador dever\u00E1 comparecer em jejum." - + "%0A%0A" - + "Caso n\u00E3o seja poss\u00EDvel a compar\u00EAncia deste colaborador na data " - + "indicada, contacte-nos, por favor, atrav\u00E9s do telefone 21 350 45 40 " - + "ou respondendo ao remetente desta mensagem." - + "%0A%0A%0A" - + "Cumprimentos,%0A%0ASIPRP" ); - Singleton.setInstance( SHSTPropertiesConstants.SUBJECT_VISITA, "SIPRP - Marca\u00E7\u00E3o de visita de higiene e seguran\u00E7a a '" + CompanyDataLoader.NOME + "'" ); - Singleton.setInstance( SHSTPropertiesConstants.LETTER_VISITA, "Vimos pelo presente informar que iremos efectuar a auditoria de Higiene e " - + "Seguran\u00E7a \u00E0s vossas instala\u00E7\u00F5es de '" + CompanyDataLoader.NOME + "', no dia '" + CompanyDataLoader.DATA + "'." - + "%0A%0A" - + "Agradecemos que nos confirme, pela mesma via, o nome do representante " - + "da empresa que nos ir\u00E1 acompanhar e a vossa disponibilidade para a " - + "realiza\u00E7\u00E3o da visita na data indicada." - + "%0A%0A" - + "Caso necessite de qualquer esclarecimento, contacte-nos, por favor, " - + "atrav\u00E9s dos telefones 21 350 45 43 (Pedro Vieira), 21 350 45 44 " - + "(Catarina Leonardo) ou responda ao remetente desta mensagem." - + "%0A%0A%0A" - + "Cumprimentos,%0A%0ASIPRP" ); - Singleton.setInstance( SHSTPropertiesConstants.USES_HOUR, Boolean.FALSE ); - Singleton.setInstance( SHSTPropertiesConstants.CODIGO_EMPRESA_FORMAT, "2 6 / 2" ); - Singleton.setInstance( SHSTPropertiesConstants.FICHA_MARCA_EXAMES, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.EXCEL_FORMAT, new int[]{ 0, 2, 3, 1, -1, 4, 5, 7, 6, -1 } ); - Singleton.setInstance( SHSTPropertiesConstants.EXCEL_FORMAT_DEMISSAO, new int[]{ 0, 1 } ); - - Singleton.setInstance( SHSTPropertiesConstants.MODULE_FICHA, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.MODULE_CLIENTES, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_AWARE, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.MODULE_RELATORIO, Boolean.TRUE ); - Singleton.setInstance( SHSTPropertiesConstants.MODULE_LISTAGENS, Boolean.TRUE ); - - Singleton.setInstance( SHSTPropertiesConstants.WEB_USER, "siprp" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_PASSWORD, "rg2h-opksiprp" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_URL_PREFIX, "jdbc:postgresql://" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_URL, "www.evolute.pt:5436" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_DB_NAME, "siprp" ); - Singleton.setInstance( SHSTPropertiesConstants.WEB_DRIVER_NAME, "org.postgresql.Driver" ); - - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_USER, Singleton.getInstance( EvoPropertyKey.DB.USER ) ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_PASSWORD, Singleton.getInstance( EvoPropertyKey.DB.PASSWORD ) ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_URL_PREFIX, Singleton.getInstance( EvoPropertyKey.DB.CONNECTION.PREFIX ) ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_URL, - Singleton.getInstance( EvoPropertyKey.DB.CONNECTION.HOSTNAME ) + ":" + Singleton.getInstance( EvoPropertyKey.DB.CONNECTION.PORT ) - ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_DB_NAME, Singleton.getInstance( EvoPropertyKey.DB.NAME ) ); - Singleton.setInstance( SHSTPropertiesConstants.LOCAL_DRIVER_NAME, Singleton.getInstance( EvoPropertyKey.DB.CONNECTION.DRIVER_NAME ) ); - } -} diff --git a/trunk/SIPRPSoft/src/siprp/ficha/FichaWindow.java b/trunk/SIPRPSoft/src/siprp/ficha/FichaWindow.java index b27d036e..7ef858e6 100644 --- a/trunk/SIPRPSoft/src/siprp/ficha/FichaWindow.java +++ b/trunk/SIPRPSoft/src/siprp/ficha/FichaWindow.java @@ -37,9 +37,9 @@ import shst.data.outer.MedicosData; import shst.data.outer.TrabalhadoresData; import shst.importer.Importer; import shst.medicina.MarcacoesMedicinaHandler; +import shst.printer.Printer; import siprp.FichaDataProvider; import siprp.lembretes.LembretesDataProvider; -import siprp.printer.Printer; import siprp.ui.SIPRPTabbedWindow; import com.evolute.entity.ProviderInterface; diff --git a/trunk/SIPRPSoft/src/siprp/printer/Printer.java b/trunk/SIPRPSoft/src/siprp/printer/Printer.java deleted file mode 100644 index 788cd162..00000000 --- a/trunk/SIPRPSoft/src/siprp/printer/Printer.java +++ /dev/null @@ -1,61 +0,0 @@ -package siprp.printer; - -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; - -import siprp.ficha.ExamePDF; -import siprp.ficha.FichaAptidaoCreator; -import siprp.ficha.PDFFilePrinter; - -public class Printer -{ - public static void printFO( byte fo[] ) throws Exception - { - if( fo != null ) - { - byte pdf[] = FichaAptidaoCreator.getCreator().createPDF( fo ); - new PDFFilePrinter( pdf, true ); - } - } - - public static void printPDF( byte[] pdf, String tempFileName, String printerName ) throws Exception - { - ExamePDF ePDF = new ExamePDF(); - ePDF.printSilent( pdf, tempFileName, printerName ); - } - - public static void printFoToFile( byte[] fo, String fileName, boolean deleteIfExists ) throws Exception - { - if( fo != null ) - { - byte pdf[] = FichaAptidaoCreator.getCreator().createPDF( fo ); - printToFile( pdf, fileName, deleteIfExists ); - } - } - - public static void printPDFToFile( byte[] pdf, String fileName, boolean deleteIfExists ) throws Exception - { - if( pdf != null ) - { - printToFile( pdf, fileName, deleteIfExists ); - } - } - - private static void printToFile( byte[] array, String fileName, boolean deleteIfExists ) throws IOException - { - File outFile = new File( fileName ); - if(outFile.exists() && deleteIfExists) - { - outFile.delete(); - } - if( !outFile.exists() ) - { - outFile.createNewFile(); - FileOutputStream fos = new FileOutputStream( outFile ); - fos.write( array ); - fos.close(); - } - } - -}