diff --git a/trunk/PlanosActuacao/src/java/db/providers/CreatePlanosDataProvider.java b/trunk/PlanosActuacao/src/java/db/providers/CreatePlanosDataProvider.java index ed1dcbda..020578eb 100644 --- a/trunk/PlanosActuacao/src/java/db/providers/CreatePlanosDataProvider.java +++ b/trunk/PlanosActuacao/src/java/db/providers/CreatePlanosDataProvider.java @@ -67,14 +67,15 @@ public class CreatePlanosDataProvider { } } - public List getPlanosOnline() throws Exception + public List getPlanosOnline( Integer estabelecimentoID ) throws Exception { - GregorianCalendar xmas = new GregorianCalendar(1990, 11, 25); - Date dummyDate = xmas.getTime(); - ArrayList list = new ArrayList(); - list.add(dummyDate); + ArrayList list = new ArrayList(); Statement st = createStatement(); - String sql = "select data_visita from planos_actuacao"; + String sql = "select data_visita from planos_actuacao "; + if( estabelecimentoID != null ) + { + sql += "where estabelecimento_id = " + estabelecimentoID; + } ResultSet rs = st.executeQuery(sql); if(rs.isBeforeFirst()) @@ -90,6 +91,23 @@ public class CreatePlanosDataProvider { } return list; } + + public List getEstabelecimentosWithPlanos() + { + List result = new ArrayList(); + Statement st = createStatement(); + String sql = "select estabelecimento_id from planos_actuacao where deleted_date is not null;"; + ResultSet rs = st.executeQuery(sql); + if(rs.isBeforeFirst()) + { + rs.first(); + do + { + result.add( rs.getInt("estabelecimento_id") ); + }while(rs.next()); + } + return result; + } diff --git a/trunk/PlanosActuacao/src/java/db/providers/PlanosDataProvider.java b/trunk/PlanosActuacao/src/java/db/providers/PlanosDataProvider.java index 3a153eef..fc52b70f 100644 --- a/trunk/PlanosActuacao/src/java/db/providers/PlanosDataProvider.java +++ b/trunk/PlanosActuacao/src/java/db/providers/PlanosDataProvider.java @@ -363,29 +363,29 @@ public class PlanosDataProvider extends GenericDataProvider{ st.execute(sql); } - public List getPlanosOnline() throws Exception - { - GregorianCalendar xmas = new GregorianCalendar(1990, 11, 25); - Date dummyDate = xmas.getTime(); - ArrayList list = new ArrayList(); - list.add(dummyDate); - Statement st = createStatement(); - String sql = "select data_visita from planos_actuacao"; - ResultSet rs = st.executeQuery(sql); - - if(rs.isBeforeFirst()) - { - rs.first(); - do - { - java.sql.Date sqlDate = rs.getDate("data_visita"); - java.util.Date data_visita = new java.util.Date(sqlDate.getTime()); - System.out.println("DATA PLANO : " + data_visita.toString()); - list.add(data_visita); - }while(rs.next()); - } - return list; - } +// public List getPlanosOnline() throws Exception +// { +// GregorianCalendar xmas = new GregorianCalendar(1990, 11, 25); +// Date dummyDate = xmas.getTime(); +// ArrayList list = new ArrayList(); +// list.add(dummyDate); +// Statement st = createStatement(); +// String sql = "select data_visita from planos_actuacao"; +// ResultSet rs = st.executeQuery(sql); +// +// if(rs.isBeforeFirst()) +// { +// rs.first(); +// do +// { +// java.sql.Date sqlDate = rs.getDate("data_visita"); +// java.util.Date data_visita = new java.util.Date(sqlDate.getTime()); +// System.out.println("DATA PLANO : " + data_visita.toString()); +// list.add(data_visita); +// }while(rs.next()); +// } +// return list; +// } public ArrayList getPlanosActivos(Utilizador u) throws Exception { diff --git a/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java b/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java index 62c70290..4985a326 100644 --- a/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java +++ b/trunk/PlanosActuacao/src/java/planosactuacao/PlanosActuacao.java @@ -56,10 +56,10 @@ public class PlanosActuacao { // { // estabelecimentoId = u.getEstabelecimento_id(); // } - - List planosOnlineList = getPlanosOnline(); - System.out.println("PLANOS ONLINE LIST : " + planosOnlineList.size()); - List listRelatorios = getRelatorios(planosOnlineList, estabelecimentoId); +// +// List planosOnlineList = getPlanosOnline(null); +// System.out.println("PLANOS ONLINE LIST : " + planosOnlineList.size()); + List listRelatorios = initRelatorios(null,null); System.out.println("LIST RELATORIOS : " + listRelatorios.size()); putPlanosOnline(listRelatorios); } @@ -78,11 +78,9 @@ public class PlanosActuacao { { estabelecimentoId = u.getEstabelecimento_id(); } - List planosOnlineList = getPlanosOnline(); + List planosOnlineList = getPlanosOnline(estabelecimentoId); System.out.println("PLANOS ONLINE LIST : " + planosOnlineList.size()); - List listRelatorios = getRelatorios(planosOnlineList, estabelecimentoId); - System.out.println("LIST RELATORIOS : " + listRelatorios.size()); - putPlanosOnline(listRelatorios); + List listRelatorios = initRelatorios(planosOnlineList, estabelecimentoId); } catch(Exception ex) { @@ -90,13 +88,15 @@ public class PlanosActuacao { } } - private List getPlanosOnline() + private List getPlanosOnline(Integer estabelecimentoId) { - List list = null; + List list = new ArrayList(); try { - list = cpdp.getPlanosOnline(); - + if( estabelecimentoId != null ) + { + list = cpdp.getPlanosOnline(estabelecimentoId); + } } catch(Exception ex) { @@ -105,10 +105,20 @@ public class PlanosActuacao { return list; } - private List getRelatorios(List list, Integer estabelecimentoId) + private void initRelatorios(List list, Integer estabelecimentoId) { - List listRelatorios = pa.getRelatoriosNotIn(list, estabelecimentoId); - return listRelatorios; + if( estabelecimentoId == null ) + { + List estabelecimentos = cpdp.getEstabelecimentosWithPlanos(); + for( Integer estabelecimentoID : estabelecimentos ) + { + putPlanosOnline(pa.getRelatoriosNotIn(cpdp.getPlanosOnline(estabelecimentoID), estabelecimentoID)); + } + } + else + { + putPlanosOnline(pa.getRelatoriosNotIn(list, estabelecimentoId)); + } } private void putPlanosOnline(List listRelatorios)