diff --git a/trunk/PlanosActuacao/src/java/db/providers/CreatePlanosDataProvider.java b/trunk/PlanosActuacao/src/java/db/providers/CreatePlanosDataProvider.java index 19cf22f4..c9cdc119 100644 --- a/trunk/PlanosActuacao/src/java/db/providers/CreatePlanosDataProvider.java +++ b/trunk/PlanosActuacao/src/java/db/providers/CreatePlanosDataProvider.java @@ -481,7 +481,7 @@ public class CreatePlanosDataProvider { { Statement st = createStatement(); Integer newId = getMaxTableId("planos_actuacao"); - String sql = "insert into planos_actuacao (id, estabelecimento_id, fase, data_visita, data_relatorio, nome_estabelecimento, empresa_id, nome_empresa, data_controlo, tecnico_hs_id, tecnico_hs_nome, tecnico_superior_hs_id, tecnico_superior_hs_nome, data_desactivacao) values ("; + String sql = "insert into planos_actuacao (id, estabelecimento_id, fase, data_visita, data_relatorio, nome_estabelecimento, empresa_id, nome_empresa, data_controlo, tecnico_hs_id, tecnico_hs_nome, tecnico_superior_hs_id, tecnico_superior_hs_nome, concluido_por_desactivacao, data_desactivacao) values ("; sql += newId + ", "; sql += p.getEstabelecimento_id() + ", "; sql += p.getFase() + ", '"; @@ -512,9 +512,23 @@ public class CreatePlanosDataProvider { sql += p.getTecnico_superior_hs_id() + ", "; sql += p.getTecnico_superior_hs_nome() == null ? null : "'" + p.getTecnico_superior_hs_nome() + "'"; + //concluido_por_desactivacao + sql += ", "; + sql += p.getConcluidoPorDesactivacao() == null ? "false" : p.getConcluidoPorDesactivacao(); + //data_desactivacao sql += ", "; - sql += "null"; + + java.sql.Date deactiveDate = null; + if ( p.getDataDesactivacao() != null ) + { + deactiveDate = new java.sql.Date( p.getDataDesactivacao().getTime() ); + } + else if ( p.getConcluidoPorDesactivacao() != null && p.getConcluidoPorDesactivacao() ) + { + deactiveDate = new java.sql.Date( new Date().getTime() ); + } + sql += deactiveDate == null ? "null" : "'" + deactiveDate + "'"; sql += ")"; diff --git a/trunk/PlanosActuacao/src/java/db/providers/PlanosDataProvider.java b/trunk/PlanosActuacao/src/java/db/providers/PlanosDataProvider.java index 96a8b3da..e603e72f 100644 --- a/trunk/PlanosActuacao/src/java/db/providers/PlanosDataProvider.java +++ b/trunk/PlanosActuacao/src/java/db/providers/PlanosDataProvider.java @@ -70,7 +70,18 @@ public class PlanosDataProvider extends GenericDataProvider{ sql += p.getConcluidoPorDesactivacao(); if ( p.getConcluidoPorDesactivacao() ) { - sql += ", now()"; + if ( p.getDataDesactivacao() == null ) + { + sql += ", now()"; + } + else + { + sql += ", '" + new java.sql.Date( p.getDataDesactivacao().getTime() ) + "'"; + } + } + else + { + sql += ", null"; } } @@ -139,8 +150,8 @@ public class PlanosDataProvider extends GenericDataProvider{ sql += "obs_correcao = '" + p.getObs_correcao() + "', "; sql += "correcao = '" + p.getCorrecao() + "', "; sql += "fase_antes_correcao = " + p.getFase_antes_correcao() + ", "; - sql += "concluido_por_desactivacao = " + p.getConcluidoPorDesactivacao() + ", "; - sql += "data_desactivacao = " + new java.sql.Date( p.getDataDesactivacao().getTime() ) + ", "; + sql += "concluido_por_desactivacao = " + ( p.getConcluidoPorDesactivacao() == null ? "false" : p.getConcluidoPorDesactivacao() ) + ", "; + sql += "data_desactivacao = " + ( p.getDataDesactivacao() == null ? null : "'" + new java.sql.Date( p.getDataDesactivacao().getTime() ) + "'" ) + ", "; if(p.getData_validacao_dir_loja() == null) { diff --git a/trunk/PlanosActuacao/src/java/planosactuacao/ListaPlanos.java b/trunk/PlanosActuacao/src/java/planosactuacao/ListaPlanos.java index 6f706830..4d615afb 100644 --- a/trunk/PlanosActuacao/src/java/planosactuacao/ListaPlanos.java +++ b/trunk/PlanosActuacao/src/java/planosactuacao/ListaPlanos.java @@ -548,6 +548,7 @@ public class ListaPlanos extends AbstractPageBean { { p.setFase( Global.FASE_CONCLUIDO ); p.setConcluidoPorDesactivacao( Boolean.TRUE ); + p.setDataDesactivacao( new Date() ); try { pdp.updatePlano( p );