Wao-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
April 2010
- 4 participants
- 73 discussions
[Suiviobsmer-commits] r433 - in trunk: . wao-business wao-business/src/main/java/fr/ifremer/wao/bean wao-business/src/main/java/fr/ifremer/wao/service wao-ui
by fdesbois@users.labs.libre-entreprise.org 08 Apr '10
by fdesbois@users.labs.libre-entreprise.org 08 Apr '10
08 Apr '10
Author: fdesbois
Date: 2010-04-08 10:16:35 +0000 (Thu, 08 Apr 2010)
New Revision: 433
Modified:
trunk/changelog.txt
trunk/pom.xml
trunk/wao-business/pom.xml
trunk/wao-business/src/main/java/fr/ifremer/wao/bean/BoatFilterImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/bean/ContactFilterImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceBoatImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSynthesisImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java
trunk/wao-ui/pom.xml
Log:
- Change version to 1.2
- Use nuiton-utils, eugene and topia last snapshots
- Use getProperty method from TopiaQuery in filters implementations
- Change service implementation for ServiceTransformer last version
Modified: trunk/changelog.txt
===================================================================
--- trunk/changelog.txt 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/changelog.txt 2010-04-08 10:16:35 UTC (rev 433)
@@ -3,8 +3,8 @@
Historique des versions
-1.1.2
------
+1.2
+---
Evolutions
++++++++++
@@ -16,6 +16,13 @@
Anomalies
+++++++++
+Dépendances
++++++++++++
+
+- **Nuiton-utils** 1.2.1 -> 1.2.2 [http://maven-site.nuiton.org/nuiton-utils]
+- **EUGene** 2.0 -> 2.0.1 [http://maven-site.nuiton.org/eugene]
+- **ToPIA** 2.3.2.1 -> 2.3.3 [http://maven-site.nuiton.org/topia]
+
1.1.1 (patch)
-------------
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/pom.xml 2010-04-08 10:16:35 UTC (rev 433)
@@ -15,7 +15,7 @@
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>1.1.2-SNAPSHOT</version>
+ <version>1.2-SNAPSHOT</version>
<modules>
<module>wao-ui</module>
@@ -216,9 +216,9 @@
<!-- libraries version -->
<i18n.version>1.2.1</i18n.version>
- <nuitonutils.version>1.2.1</nuitonutils.version>
- <topia.version>2.3.2.1</topia.version>
- <eugene.version>2.0</eugene.version>
+ <nuitonutils.version>1.2.2-SNAPSHOT</nuitonutils.version>
+ <topia.version>2.3.3-SNAPSHOT</topia.version>
+ <eugene.version>2.0.1-SNAPSHOT</eugene.version>
<tapestry.version>5.1.0.5</tapestry.version>
</properties>
Modified: trunk/wao-business/pom.xml
===================================================================
--- trunk/wao-business/pom.xml 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-business/pom.xml 2010-04-08 10:16:35 UTC (rev 433)
@@ -10,7 +10,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>1.1.2-SNAPSHOT</version>
+ <version>1.2-SNAPSHOT</version>
</parent>
<groupId>fr.ifremer.wao</groupId>
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/bean/BoatFilterImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/bean/BoatFilterImpl.java 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/bean/BoatFilterImpl.java 2010-04-08 10:16:35 UTC (rev 433)
@@ -46,26 +46,28 @@
query = prepareQueryForLimit(query);
if (StringUtils.isNotEmpty(getBoatName())) {
- query.add(boat + "." + Boat.NAME, Op.LIKE, getBoatName().trim() + "%");
+ String nameProperty = TopiaQuery.getProperty(boat, Boat.NAME);
+ query.add(nameProperty, Op.LIKE, getBoatName().trim() + "%");
}
if (StringUtils.isNotEmpty(getBoatDistrictCode())) {
- query.add(boat + "." + Boat.DISTRICT_CODE, getBoatDistrictCode().trim());
+ String districtCodeProperty =
+ TopiaQuery.getProperty(boat, Boat.DISTRICT_CODE);
+ query.add(districtCodeProperty, getBoatDistrictCode().trim());
}
if (getBoatImmatriculation() != null) {
- query.add(boat + "." + Boat.IMMATRICULATION, getBoatImmatriculation());
+ String immatriculationProperty =
+ TopiaQuery.getProperty(boat, Boat.IMMATRICULATION);
+ query.add(immatriculationProperty, getBoatImmatriculation());
}
return query;
}
@Override
public boolean isBoatFiltered() {
- return StringUtils.isNotEmpty(getBoatName()) || StringUtils.isNotEmpty(getBoatDistrictCode()) || getBoatImmatriculation() != null;
+ return StringUtils.isNotEmpty(getBoatName()) ||
+ StringUtils.isNotEmpty(getBoatDistrictCode()) ||
+ getBoatImmatriculation() != null;
}
-
-// @Override
-// public boolean isFiltered() {
-// return super.isFiltered() || isBoatFiltered();
-// }
}
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/bean/ContactFilterImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/bean/ContactFilterImpl.java 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/bean/ContactFilterImpl.java 2010-04-08 10:16:35 UTC (rev 433)
@@ -46,29 +46,42 @@
String contact = query.getMainAlias();
+ // OBSERVER
if (getObserver() != null) {
- query.add(contact + "." + Contact.OBSERVER, getObserver());
+ String observerProperty =
+ TopiaQuery.getProperty(contact, Contact.OBSERVER);
+ query.add(observerProperty, getObserver());
}
+
// Company filter is managed by SamplingFilter because the company is
// linked with the sampleRow instead of contact user
+ if (isSamplingFiltered() || getFromDate() != null || getCompany() != null) {
+ String sampleRowProperty =
+ TopiaQuery.getProperty(contact, Contact.SAMPLE_ROW);
- if (isSamplingFiltered() || getFromDate() != null || getCompany() != null) {
- // Seems to be necessary to have distinct on sampleRows in case of
- // fishingZone join. Otherwise multiple contacts for sames sampleRow
- // will be returned (Bad count).
- query = prepareQueryForSampling(query, contact + "." + Contact.SAMPLE_ROW);
+ query = prepareQueryForSampling(query, sampleRowProperty);
}
- query = prepareQueryForBoat(query, contact + "." + Contact.BOAT);
+ String boatProperty = TopiaQuery.getProperty(contact, Contact.BOAT);
+ query = prepareQueryForBoat(query, boatProperty);
+
+ // MAMMALS_OBSERVATION and MAMMALS_CAPTURE
+ String mammalsObsProperty =
+ TopiaQuery.getProperty(contact, Contact.MAMMALS_OBSERVATION);
+ String mammalsCaptProperty =
+ TopiaQuery.getProperty(contact, Contact.MAMMALS_CAPTURE);
+
if (getMammalsObservation() && getMammalsCapture()) {
- query.add(contact + "." + Contact.MAMMALS_OBSERVATION + " = :mammals OR " + contact + "." + Contact.MAMMALS_CAPTURE + " = :mammals").
- addParam("mammals", Boolean.TRUE);
+ query.add(mammalsObsProperty + " = :mammals OR "
+ + mammalsCaptProperty + " = :mammals").
+ addParam("mammals", Boolean.TRUE);
} else if (getMammalsObservation()) {
- query.add(contact + "." + Contact.MAMMALS_OBSERVATION, Boolean.TRUE);
+ query.add(mammalsObsProperty, Boolean.TRUE);
} else if (getMammalsCapture()) {
- query.add(contact + "." + Contact.MAMMALS_CAPTURE, Boolean.TRUE);
+ query.add(mammalsCaptProperty, Boolean.TRUE);
}
+ // VALIDATION_PROGRAM
List<Object> programValidValues = new ArrayList<Object>();
if (getProgramAccepted()) {
programValidValues.add(Boolean.TRUE);
@@ -78,10 +91,12 @@
}
if (getProgramUndefined()) {
programValidValues.add(null);
- }
- query.add(contact + "." + Contact.VALIDATION_PROGRAM,
- programValidValues.toArray());
+ }
+ String programValidProperty =
+ TopiaQuery.getProperty(contact, Contact.VALIDATION_PROGRAM);
+ query.add(programValidProperty, programValidValues.toArray());
+ // VALIDATION_COMPANY
List<Object> companyValidValues = new ArrayList<Object>();
if (getCompanyAccepted()) {
companyValidValues.add(Boolean.TRUE);
@@ -92,18 +107,27 @@
if (getCompanyUndefined()) {
companyValidValues.add(null);
}
- query.add(contact + "." + Contact.VALIDATION_COMPANY,
- companyValidValues.toArray());
+ String companyValidProperty =
+ TopiaQuery.getProperty(contact, Contact.VALIDATION_COMPANY);
+ query.add(companyValidProperty, companyValidValues.toArray());
+ // STATE
if (getState() != null) {
- query.add(contact + "." + Contact.STATE, getState().ordinal());
+ String stateProperty =
+ TopiaQuery.getProperty(contact, Contact.STATE);
+ query.add(stateProperty, getState().ordinal());
}
+ // FROM_DATE
if (getFromDate() != null) {
- String tideBeginDate = contact + "." + Contact.TIDE_BEGIN_DATE;
- String createDate = contact + "." + TopiaEntity.TOPIA_CREATE_DATE;
- query.add("(" + tideBeginDate + " IS NOT NULL AND " + tideBeginDate + " >= :fromDate)" +
- " OR (" + tideBeginDate + " IS NULL AND " + createDate + " >= :fromDate)");
+ String tideBeginDateProperty =
+ TopiaQuery.getProperty(contact, Contact.TIDE_BEGIN_DATE);
+ String createDateProperty =
+ TopiaQuery.getProperty(contact, TopiaEntity.TOPIA_CREATE_DATE);
+ query.add("(" + tideBeginDateProperty + " IS NOT NULL AND "
+ + tideBeginDateProperty + " >= :fromDate)" +
+ " OR (" + tideBeginDateProperty + " IS NULL AND "
+ + createDateProperty + " >= :fromDate)");
query.addParam("fromDate", getFromDate());
}
@@ -112,10 +136,17 @@
@Override
public boolean isFiltered() {
- return isBoatFiltered() || isSamplingFiltered() || getObserver() != null ||
- getMammalsObservation() || getMammalsCapture() ||
- getProgramAccepted() || getProgramRefused() || getProgramUndefined() ||
- getCompanyAccepted() || getCompanyRefused() || getCompanyUndefined() ||
+ return isBoatFiltered() ||
+ isSamplingFiltered() ||
+ getObserver() != null ||
+ getMammalsObservation() ||
+ getMammalsCapture() ||
+ getProgramAccepted() ||
+ getProgramRefused() ||
+ getProgramUndefined() ||
+ getCompanyAccepted() ||
+ getCompanyRefused() ||
+ getCompanyUndefined() ||
getState() != null;
}
}
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java 2010-04-08 10:16:35 UTC (rev 433)
@@ -54,12 +54,16 @@
* @since 1.1.2
*/
protected TopiaQuery prepareQueryForFishingZone(TopiaQuery query,
- String main) {
+ String sampleRow) {
if (StringUtils.isNotEmpty(getSectorName())) {
- query.add(main + "." + FishingZone.SECTOR_NAME, getSectorName());
+ String sectorNameProperty =
+ TopiaQuery.getProperty(sampleRow, FishingZone.SECTOR_NAME);
+ query.add(sectorNameProperty, getSectorName());
} else if (StringUtils.isNotEmpty(getFacadeName())) {
- query.add(main + "." + FishingZone.FACADE_NAME, getFacadeName());
+ String facadeNameProperty =
+ TopiaQuery.getProperty(sampleRow, FishingZone.FACADE_NAME);
+ query.add(facadeNameProperty, getFacadeName());
}
return query;
@@ -74,8 +78,8 @@
* @return the query with filtered elements added
*/
@Override
- public TopiaQuery prepareQueryForSampling(TopiaQuery query, String main) {
- query = prepareQueryForSampling(query, main, null);
+ public TopiaQuery prepareQueryForSampling(TopiaQuery query, String sampleRow) {
+ query = prepareQueryForSampling(query, sampleRow, null);
return query;
}
@@ -90,13 +94,13 @@
* @return the query with filtered elements added
*/
@Override
- public TopiaQuery prepareQueryForSampling(TopiaQuery query, String main,
+ public TopiaQuery prepareQueryForSampling(TopiaQuery query, String sampleRow,
String zoneAlias) {
// SampleRow filter depends on SampleRow OR sectorName OR facadeName
// sectorName and facadeName are the two FishingZone filters known
if (getSampleRow() != null) {
- query.add(main, getSampleRow());
+ query.add(sampleRow, getSampleRow());
// FishingZone filter (sectorName OR facadeName)
} else if (StringUtils.isNotEmpty(getSectorName()) ||
StringUtils.isNotEmpty(getFacadeName())) {
@@ -108,41 +112,54 @@
} else {
// Otherwise, create a subquery to retrieve sampleRows
// corresponding to fishingZone filters
+ String fishingZoneProperty =
+ TopiaQuery.getProperty("SR", SampleRow.FISHING_ZONE);
TopiaQuery subquery = new TopiaQuery(SampleRow.class, "SR").
addFrom(FishingZone.class, "F").
- add("F IN elements(SR." + SampleRow.FISHING_ZONE + ")");
+ add("F IN elements(" + fishingZoneProperty + ")");
subquery = prepareQueryForFishingZone(subquery, "F");
- query.add(main + " IN (" + subquery.fullQuery() + ")").
+ query.add(sampleRow + " IN (" + subquery.fullQuery() + ")").
addParams(subquery.getParams());
}
}
// CodeDCF5 filter
if (getCodeDCF5() != null) {
- String pProfession = main + "." + SampleRow.PROFESSION + "." +
- Profession.CODE_DCF5;
- query.add(pProfession, getCodeDCF5());
+ String codeDCF5Prop =
+ TopiaQuery.getProperty(sampleRow,
+ SampleRow.PROFESSION,
+ Profession.CODE_DCF5);
+ query.add(codeDCF5Prop, getCodeDCF5());
}
// Program filter
if (getProgramName() != null) {
- query.add(main + "." + SampleRow.PROGRAM_NAME, getProgramName());
+ String programProperty =
+ TopiaQuery.getProperty(sampleRow, SampleRow.PROGRAM_NAME);
+ query.add(programProperty, getProgramName());
}
+ String periodEndProperty =
+ TopiaQuery.getProperty(sampleRow, SampleRow.PERIOD_END);
+ String periodBeginProperty =
+ TopiaQuery.getProperty(sampleRow, SampleRow.PERIOD_BEGIN);
+
// Period filter on sampleRow dates
if (getPeriod() != null) {
getPeriod().initDayOfMonthExtremities();
- query.add(main + "." + SampleRow.PERIOD_BEGIN, Op.LT, getPeriod().getThruDate()).
- add(main + "." + SampleRow.PERIOD_END, Op.GT, getPeriod().getFromDate());
+ query.add(periodBeginProperty, Op.LT, getPeriod().getThruDate()).
+ add(periodEndProperty, Op.GT, getPeriod().getFromDate());
} else if (getFromDate() != null) {
- query.add(main + "." + SampleRow.PERIOD_END, Op.GE, getFromDate());
+ query.add(periodEndProperty, Op.GE, getFromDate());
}
// Company
if (getCompany() != null) {
- query.add(main + "." + SampleRow.COMPANY, getCompany());
+ String companyProperty =
+ TopiaQuery.getProperty(sampleRow, SampleRow.COMPANY);
+ query.add(companyProperty, getCompany());
}
if (getNbMonthFinishedFromToday() != null) {
@@ -150,7 +167,7 @@
Calendar calendar = new GregorianCalendar();
calendar.setTime(WaoUtils.getCurrentDate());
calendar.add(Calendar.MONTH, getNbMonthFinishedFromToday());
- query.add(main + "." + SampleRow.PERIOD_END, Op.GE, calendar.getTime());
+ query.add(periodEndProperty, Op.GE, calendar.getTime());
}
return query;
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceBoatImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceBoatImpl.java 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceBoatImpl.java 2010-04-08 10:16:35 UTC (rev 433)
@@ -82,28 +82,22 @@
}
@Override
+ protected TopiaContext beginTransaction() throws TopiaException {
+ return context.beginTransaction();
+ }
+
+ @Override
protected void treateError(TopiaContext transaction, Exception eee,
String message, Object... args) throws WaoException {
context.treateError(transaction, eee, message, args);
}
@Override
- protected void treateError(Exception eee, String message,
- Object... args) throws WaoException {
- context.treateError(eee, message, args);
- }
-
- @Override
protected void closeTransaction(TopiaContext transaction) {
context.closeTransaction(transaction);
}
@Override
- protected TopiaContext beginTransaction() throws TopiaException {
- return context.beginTransaction();
- }
-
- @Override
public Map<Integer, Boat> executeGetBoatsByFilter(TopiaContext transaction,
BoatFilter filter) throws TopiaException {
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceContactImpl.java 2010-04-08 10:16:35 UTC (rev 433)
@@ -98,28 +98,22 @@
}
@Override
+ protected TopiaContext beginTransaction() throws TopiaException {
+ return context.beginTransaction();
+ }
+
+ @Override
protected void treateError(TopiaContext transaction, Exception eee,
String message, Object... args) throws WaoException {
context.treateError(transaction, eee, message, args);
}
@Override
- protected void treateError(Exception eee, String message,
- Object... args) throws WaoException {
- context.treateError(eee, message, args);
- }
-
- @Override
protected void closeTransaction(TopiaContext transaction) {
context.closeTransaction(transaction);
}
@Override
- protected TopiaContext beginTransaction() throws TopiaException {
- return context.beginTransaction();
- }
-
- @Override
public Map<String, Contact> executeGetContacts(TopiaContext transaction,
ContactFilter filter) throws TopiaException {
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceNewsImpl.java 2010-04-08 10:16:35 UTC (rev 433)
@@ -56,28 +56,22 @@
}
@Override
+ protected TopiaContext beginTransaction() throws TopiaException {
+ return context.beginTransaction();
+ }
+
+ @Override
protected void treateError(TopiaContext transaction, Exception eee,
String message, Object... args) throws WaoException {
context.treateError(transaction, eee, message, args);
}
@Override
- protected void treateError(Exception eee, String message,
- Object... args) throws WaoException {
- context.treateError(eee, message, args);
- }
-
- @Override
protected void closeTransaction(TopiaContext transaction) {
context.closeTransaction(transaction);
}
@Override
- protected TopiaContext beginTransaction() throws TopiaException {
- return context.beginTransaction();
- }
-
- @Override
public List<News> executeGetNews(TopiaContext transaction) throws TopiaException {
NewsDAO dao = WaoDAOHelper.getNewsDAO(transaction);
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java 2010-04-08 10:16:35 UTC (rev 433)
@@ -68,28 +68,22 @@
}
@Override
+ protected TopiaContext beginTransaction() throws TopiaException {
+ return context.beginTransaction();
+ }
+
+ @Override
protected void treateError(TopiaContext transaction, Exception eee,
String message, Object... args) throws WaoException {
context.treateError(transaction, eee, message, args);
}
@Override
- protected void treateError(Exception eee, String message,
- Object... args) throws WaoException {
- context.treateError(eee, message, args);
- }
-
- @Override
protected void closeTransaction(TopiaContext transaction) {
context.closeTransaction(transaction);
}
@Override
- protected TopiaContext beginTransaction() throws TopiaException {
- return context.beginTransaction();
- }
-
- @Override
public List<String> executeGetFacades(TopiaContext transaction,
SamplingFilter filter) throws TopiaException {
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java 2010-04-08 10:16:35 UTC (rev 433)
@@ -90,27 +90,21 @@
}
@Override
+ protected TopiaContext beginTransaction() throws TopiaException {
+ return context.beginTransaction();
+ }
+
+ @Override
protected void treateError(TopiaContext transaction, Exception eee,
String message, Object... args) throws WaoException {
context.treateError(transaction, eee, message, args);
}
@Override
- protected void treateError(Exception eee, String message,
- Object... args) throws WaoException {
- context.treateError(eee, message, args);
- }
-
- @Override
protected void closeTransaction(TopiaContext transaction) {
context.closeTransaction(transaction);
}
- @Override
- protected TopiaContext beginTransaction() throws TopiaException {
- return context.beginTransaction();
- }
-
public ServiceSamplingImpl() {
prepareBinderForProfession();
}
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSynthesisImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSynthesisImpl.java 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSynthesisImpl.java 2010-04-08 10:16:35 UTC (rev 433)
@@ -84,28 +84,22 @@
}
@Override
+ protected TopiaContext beginTransaction() throws TopiaException {
+ return context.beginTransaction();
+ }
+
+ @Override
protected void treateError(TopiaContext transaction, Exception eee,
String message, Object... args) throws WaoException {
context.treateError(transaction, eee, message, args);
}
@Override
- protected void treateError(Exception eee, String message,
- Object... args) throws WaoException {
- context.treateError(eee, message, args);
- }
-
- @Override
protected void closeTransaction(TopiaContext transaction) {
context.closeTransaction(transaction);
}
@Override
- protected TopiaContext beginTransaction() throws TopiaException {
- return context.beginTransaction();
- }
-
- @Override
public List<SortedMap<Date, Integer>> executeGetDataSampling(
TopiaContext transaction, SamplingFilter filter)
throws TopiaException {
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java 2010-04-08 10:16:35 UTC (rev 433)
@@ -70,28 +70,22 @@
}
@Override
+ protected TopiaContext beginTransaction() throws TopiaException {
+ return context.beginTransaction();
+ }
+
+ @Override
protected void treateError(TopiaContext transaction, Exception eee,
String message, Object... args) throws WaoException {
context.treateError(transaction, eee, message, args);
}
@Override
- protected void treateError(Exception eee, String message,
- Object... args) throws WaoException {
- context.treateError(eee, message, args);
- }
-
- @Override
protected void closeTransaction(TopiaContext transaction) {
context.closeTransaction(transaction);
}
@Override
- protected TopiaContext beginTransaction() throws TopiaException {
- return context.beginTransaction();
- }
-
- @Override
public WaoUser executeConnect(TopiaContext transaction,
String login, String password)
throws TopiaException, WaoBusinessException {
Modified: trunk/wao-ui/pom.xml
===================================================================
--- trunk/wao-ui/pom.xml 2010-04-06 17:26:09 UTC (rev 432)
+++ trunk/wao-ui/pom.xml 2010-04-08 10:16:35 UTC (rev 433)
@@ -10,7 +10,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>1.1.2-SNAPSHOT</version>
+ <version>1.2-SNAPSHOT</version>
</parent>
<groupId>fr.ifremer.wao</groupId>
1
0
[Suiviobsmer-commits] r432 - in trunk: . wao-business/src/main/java/fr/ifremer/wao/bean wao-business/src/main/java/fr/ifremer/wao/service wao-business/src/main/resources/i18n wao-business/src/main/xmi wao-business/src/test/java/fr/ifremer/wao/service wao-ui/src/main/java/fr/ifremer/wao/ui/base wao-ui/src/main/java/fr/ifremer/wao/ui/pages wao-ui/src/main/resources/fr/ifremer/wao/ui/pages wao-ui/src/main/webapp wao-ui/src/main/webapp/css
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
06 Apr '10
Author: fdesbois
Date: 2010-04-06 17:26:09 +0000 (Tue, 06 Apr 2010)
New Revision: 432
Modified:
trunk/changelog.txt
trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java
trunk/wao-business/src/main/resources/i18n/wao-business-en_GB.properties
trunk/wao-business/src/main/resources/i18n/wao-business-fr_FR.properties
trunk/wao-business/src/main/xmi/wao.zargo
trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceSamplingImplTest.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SamplingPlan.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Synthesis.java
trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SamplingPlan.properties
trunk/wao-ui/src/main/webapp/Contacts.tml
trunk/wao-ui/src/main/webapp/SamplingPlan.tml
trunk/wao-ui/src/main/webapp/css/common.css
trunk/wao-ui/src/main/webapp/css/contacts.css
trunk/wao-ui/src/main/webapp/css/sampling.css
Log:
Evo #2059 : Filters on SamplingPlan (remove old profession filter, add codeDCF5 filter instead)
Modified: trunk/changelog.txt
===================================================================
--- trunk/changelog.txt 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/changelog.txt 2010-04-06 17:26:09 UTC (rev 432)
@@ -9,6 +9,7 @@
Evolutions
++++++++++
+- [fdesbois] Evo #2059 : Filtres sur tableau plan échantillonnage
- [fdesbois] Evo #2241 : Revoir chargement des observateurs lorsqu'un
utilisateur (observateur/coordinateur) est connecté
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java 2010-04-06 17:26:09 UTC (rev 432)
@@ -23,6 +23,7 @@
import fr.ifremer.wao.WaoUtils;
import fr.ifremer.wao.entity.FishingZone;
+import fr.ifremer.wao.entity.Profession;
import fr.ifremer.wao.entity.SampleRow;
import java.util.Calendar;
import java.util.GregorianCalendar;
@@ -43,32 +44,86 @@
*/
public class SamplingFilterImpl extends SamplingFilter {
+ /**
+ * Prepare the {@code query} for fishingZone filters. Need to know the
+ * FishingZone {@code main} alias for the query.
+ *
+ * @param query to prepare with fishingZone filters (facadeName, sectorName)
+ * @param main alias of the fishingZone in the query
+ * @return the query with elements added
+ * @since 1.1.2
+ */
+ protected TopiaQuery prepareQueryForFishingZone(TopiaQuery query,
+ String main) {
+
+ if (StringUtils.isNotEmpty(getSectorName())) {
+ query.add(main + "." + FishingZone.SECTOR_NAME, getSectorName());
+ } else if (StringUtils.isNotEmpty(getFacadeName())) {
+ query.add(main + "." + FishingZone.FACADE_NAME, getFacadeName());
+ }
+
+ return query;
+ }
+
+ /**
+ * Prepare the {@code query} with sampleRow filters. Need the {@code main}
+ * alias to set SampleRow properties.
+ *
+ * @param query to prepare with sampleRow filters
+ * @param main alias for sampleRow entity in the query
+ * @return the query with filtered elements added
+ */
@Override
public TopiaQuery prepareQueryForSampling(TopiaQuery query, String main) {
+ query = prepareQueryForSampling(query, main, null);
+ return query;
+ }
- // SampleRow filter depends on SampleRow or sectorName or facadeName
+ /**
+ * Prepare the {@code query} with sampleRow filters. Need the {@code main}
+ * alias to set SampleRow properties. The zoneAlias can also be used if
+ * the query already have the fishingZone.
+ *
+ * @param query to prepare with sampleRow filters
+ * @param main alias for sampleRow entity in the query
+ * @param zoneAlias for fishingZone entity in the query (can be null)
+ * @return the query with filtered elements added
+ */
+ @Override
+ public TopiaQuery prepareQueryForSampling(TopiaQuery query, String main,
+ String zoneAlias) {
+
+ // SampleRow filter depends on SampleRow OR sectorName OR facadeName
+ // sectorName and facadeName are the two FishingZone filters known
if (getSampleRow() != null) {
query.add(main, getSampleRow());
- } else if (StringUtils.isNotEmpty(getSectorName())) {
+ // FishingZone filter (sectorName OR facadeName)
+ } else if (StringUtils.isNotEmpty(getSectorName()) ||
+ StringUtils.isNotEmpty(getFacadeName())) {
- TopiaQuery subquery = new TopiaQuery(SampleRow.class, "SR").
- addFrom(FishingZone.class, "F");
-
- subquery.add("F." + FishingZone.SECTOR_NAME, getSectorName()).
+ // If zoneAlias is set, no need to create a subquery to link
+ // with fishingZone
+ if (zoneAlias != null) {
+ query = prepareQueryForFishingZone(query, zoneAlias);
+ } else {
+ // Otherwise, create a subquery to retrieve sampleRows
+ // corresponding to fishingZone filters
+ TopiaQuery subquery = new TopiaQuery(SampleRow.class, "SR").
+ addFrom(FishingZone.class, "F").
add("F IN elements(SR." + SampleRow.FISHING_ZONE + ")");
- query.add(main + " IN (" + subquery.fullQuery() + ")").addParams(subquery.getParams());
- } else if (StringUtils.isNotEmpty(getFacadeName())) {
- TopiaQuery subquery = new TopiaQuery(SampleRow.class, "SR").
- addFrom(FishingZone.class, "F");
- subquery.add("F." + FishingZone.FACADE_NAME, getFacadeName()).add("F IN elements(SR." + SampleRow.FISHING_ZONE + ")");
+ subquery = prepareQueryForFishingZone(subquery, "F");
- query.add(main + " IN (" + subquery.fullQuery() + ")").addParams(subquery.getParams());
+ query.add(main + " IN (" + subquery.fullQuery() + ")").
+ addParams(subquery.getParams());
+ }
}
- // Profession filter
- if (getProfession() != null) {
- query.add(main + "." + SampleRow.PROFESSION, getProfession());
+ // CodeDCF5 filter
+ if (getCodeDCF5() != null) {
+ String pProfession = main + "." + SampleRow.PROFESSION + "." +
+ Profession.CODE_DCF5;
+ query.add(pProfession, getCodeDCF5());
}
// Program filter
@@ -92,7 +147,6 @@
if (getNbMonthFinishedFromToday() != null) {
// Only rows which are not finished will be kept
- // Date current = WaoContext.getCurrentDate();
Calendar calendar = new GregorianCalendar();
calendar.setTime(WaoUtils.getCurrentDate());
calendar.add(Calendar.MONTH, getNbMonthFinishedFromToday());
@@ -103,16 +157,28 @@
}
@Override
- public boolean isSamplingFiltered() {
- // all field except fromDate
- return getSampleRow() != null || StringUtils.isNotEmpty(getSectorName())
- || StringUtils.isNotEmpty(getFacadeName()) ||
- getPeriod() != null || getProfession() != null;
+ public boolean isSamplingFiltered() {
+ // all field except fromDate and nbMonthsFinishedFromToday
+ boolean result = getSampleRow() != null ||
+ StringUtils.isNotEmpty(getSectorName()) ||
+ StringUtils.isNotEmpty(getFacadeName()) ||
+ StringUtils.isNotEmpty(getProgramName()) ||
+ StringUtils.isNotEmpty(getCodeDCF5()) ||
+ getPeriod() != null;
+ return result;
}
-// @Override
-// public boolean isFiltered() {
-// return super.isFiltered() || isSamplingFiltered();
-// }
+ @Override
+ public boolean isPeriodFilteredOnly() {
+ boolean periodNotNull = getPeriod() != null;
+ boolean othersNull = getSampleRow() == null &&
+ StringUtils.isEmpty(getSectorName()) &&
+ StringUtils.isEmpty(getFacadeName()) &&
+ StringUtils.isEmpty(getProgramName()) &&
+ StringUtils.isEmpty(getCodeDCF5()) &&
+ getNbMonthFinishedFromToday() == null &&
+ getFromDate() == null;
+ return periodNotNull && othersNull;
+ }
}
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceReferentialImpl.java 2010-04-06 17:26:09 UTC (rev 432)
@@ -41,6 +41,7 @@
import org.nuiton.topia.TopiaContext;
import org.nuiton.topia.TopiaException;
import org.nuiton.topia.framework.TopiaQuery;
+import org.nuiton.topia.framework.TopiaQuery.Op;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -191,4 +192,17 @@
return result;
}
+ @Override
+ protected List<String> executeGetCodesDCF5Contains(TopiaContext transaction,
+ String input) throws Exception {
+
+ ProfessionDAO dao = WaoDAOHelper.getProfessionDAO(transaction);
+ TopiaQuery query = dao.createQuery().addDistinct().
+ setSelect(Profession.CODE_DCF5).
+ add(Profession.CODE_DCF5, Op.LIKE, "%" + input + "%").
+ addOrder(Profession.CODE_DCF5);
+
+ return (List<String>)query.execute();
+ }
+
}
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceSamplingImpl.java 2010-04-06 17:26:09 UTC (rev 432)
@@ -290,39 +290,34 @@
@Override
public FacadeRow executeGetSampleRowsOrderedByFishingZone(
TopiaContext transaction,
- PeriodDates period, Company company)
- throws TopiaException, IllegalArgumentException {
+ SamplingFilter filter, Company company)
+ throws TopiaException {
FacadeRow result = new FacadeRowImpl();
- if (period.getFromDate() == null || period.getThruDate() == null) {
- throw new IllegalArgumentException("PeriodBegin date and/or " +
- "PeriodEnd date can't be null !");
- }
SampleRowDAO dao = WaoDAOHelper.getSampleRowDAO(transaction);
TopiaQuery query = dao.createQuery("S").addDistinct().
- addFrom(FishingZone.class.getName() + " F").
- add("S IN elements(F." + FishingZone.SAMPLE_ROW + ")");
+ addFrom(FishingZone.class, "Z").
+ add("S IN elements(Z." + FishingZone.SAMPLE_ROW + ")");
+ filter.prepareQueryForSampling(query, "S", "Z");
+
if (company != null) {
query.add("S." + SampleRow.COMPANY, company);
}
- // Prepare period dates
- period.initDayOfMonthExtremities();
- query.add("S." + SampleRow.PERIOD_BEGIN, Op.LT, period.getThruDate()).
- add("S." + SampleRow.PERIOD_END, Op.GT, period.getFromDate());
-
// Order By facade, sector, districtCode, sampleRowCode
- String zoneOrder = "F." + FishingZone.FACADE_NAME + " , F." + FishingZone.SECTOR_NAME + ", F." + FishingZone.DISTRICT_CODE;
- query.addOrder(zoneOrder).addOrder("S." + SampleRow.CODE).addSelect(zoneOrder);
- // Load data
- //query.addLoad(SampleRow.PROFESSION, SampleRow.COMPANY);
+ String zoneOrder = "Z." + FishingZone.FACADE_NAME + " , " +
+ "Z." + FishingZone.SECTOR_NAME + ", " +
+ "Z." + FishingZone.DISTRICT_CODE;
+ query.addOrder(zoneOrder, "S." + SampleRow.CODE).
+ addSelect(zoneOrder);
if (log.isDebugEnabled()) {
log.debug("Query : " + query);
}
+ // Load data
query.addLoad(SampleRow.SAMPLE_MONTH);
List<SampleRow> results = dao.findAllByQuery(query);
Modified: trunk/wao-business/src/main/resources/i18n/wao-business-en_GB.properties
===================================================================
--- trunk/wao-business/src/main/resources/i18n/wao-business-en_GB.properties 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-business/src/main/resources/i18n/wao-business-en_GB.properties 2010-04-06 17:26:09 UTC (rev 432)
@@ -31,6 +31,7 @@
wao.error.serviceContact.saveContact=
wao.error.serviceNews.getNews=
wao.error.serviceNews.saveNews=
+wao.error.serviceReferential.getCodesDCF5Contains=
wao.error.serviceReferential.getFacades=
wao.error.serviceReferential.getFishingZones=
wao.error.serviceReferential.getProfessions=
Modified: trunk/wao-business/src/main/resources/i18n/wao-business-fr_FR.properties
===================================================================
--- trunk/wao-business/src/main/resources/i18n/wao-business-fr_FR.properties 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-business/src/main/resources/i18n/wao-business-fr_FR.properties 2010-04-06 17:26:09 UTC (rev 432)
@@ -30,6 +30,7 @@
wao.error.serviceContact.saveContact=Impossible de sauvegarder le contact
wao.error.serviceNews.getNews=Impossible de r\u00E9cup\u00E9rer l'ensemble des news
wao.error.serviceNews.saveNews=Impossible d'enregistrer la news ayant pour titre '%1$s'
+wao.error.serviceReferential.getCodesDCF5Contains=
wao.error.serviceReferential.getFacades=Impossible de charger la liste des facades
wao.error.serviceReferential.getFishingZones=Impossible de charger la liste des secteurs de p\u00EAche
wao.error.serviceReferential.getProfessions=Impossible de charger la liste des m\u00E9tiers
Modified: trunk/wao-business/src/main/xmi/wao.zargo
===================================================================
(Binary files differ)
Modified: trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceSamplingImplTest.java
===================================================================
--- trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceSamplingImplTest.java 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceSamplingImplTest.java 2010-04-06 17:26:09 UTC (rev 432)
@@ -254,9 +254,10 @@
// NO COMPANY (= null)
Calendar begin = new GregorianCalendar(2000, 0, 1, 0, 0, 0);
Calendar end = new GregorianCalendar(2020, 11, 31, 0, 0, 0);
- PeriodDates period = new PeriodDates(begin, end);
+ SamplingFilter filter = new SamplingFilterImpl();
+ filter.setPeriod(new PeriodDates(begin, end));
// RESULT : [2010_0002, 2010_0004, 2010_0001, 2010_0003]
- FacadeRow facade = service.getSampleRowsOrderedByFishingZone(period, null);
+ FacadeRow facade = service.getSampleRowsOrderedByFishingZone(filter, null);
List<SampleRow> rows = facade.getValues();
assertEquals(4, rows.size());
SampleRow resultRow0 = rows.get(0);
@@ -284,9 +285,9 @@
// NO COMPANY (= null)
begin = new GregorianCalendar(2009, 0, 1, 0, 0, 0);
end = new GregorianCalendar(2020, 11, 31, 0, 0, 0);
- period = new PeriodDates(begin, end);
+ filter.setPeriod(new PeriodDates(begin, end));
// RESULT : [2010_0002, 2010_0004, 2010_0001]
- facade = service.getSampleRowsOrderedByFishingZone(period, null);
+ facade = service.getSampleRowsOrderedByFishingZone(filter, null);
rows = facade.getValues();
assertEquals(3, rows.size());
resultRow0 = rows.get(0);
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java 2010-04-06 17:26:09 UTC (rev 432)
@@ -22,7 +22,7 @@
package fr.ifremer.wao.ui.base;
import fr.ifremer.wao.WaoException;
-import fr.ifremer.wao.bean.BoatFilter;
+import fr.ifremer.wao.bean.SamplingFilter;
import fr.ifremer.wao.entity.Company;
import fr.ifremer.wao.entity.SampleRow;
import fr.ifremer.wao.entity.WaoUser;
@@ -317,7 +317,7 @@
return programSelectModel;
}
- protected abstract BoatFilter getFilter() throws WaoException;
+ protected abstract SamplingFilter getFilter() throws WaoException;
/**
* Used to show only active company and observers.
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java 2010-04-06 17:26:09 UTC (rev 432)
@@ -147,8 +147,8 @@
sampleRow = null;
getSampleRow();
// Profession select reset
- professionSelectModel = null;
- getProfessionSelectModel();
+// professionSelectModel = null;
+// getProfessionSelectModel();
// Manage sampleRow from context
if (isSampleRowExists()) {
@@ -387,14 +387,14 @@
return getSampleRow() != null;
}
- public GenericSelectModel<Profession> getProfessionSelectModel() throws WaoException {
- if (professionSelectModel == null) {
- List<Profession> professions = serviceReferential.getProfessions();
- professionSelectModel = new GenericSelectModel<Profession>(professions, Profession.class,
- "code", "topiaId", propertyAccess);
- }
- return professionSelectModel;
- }
+// public GenericSelectModel<Profession> getProfessionSelectModel() throws WaoException {
+// if (professionSelectModel == null) {
+// List<Profession> professions = serviceReferential.getProfessions();
+// professionSelectModel = new GenericSelectModel<Profession>(professions, Profession.class,
+// "code", "topiaId", propertyAccess);
+// }
+// return professionSelectModel;
+// }
public boolean isFiltersHidden() {
return filtersHidden;
@@ -437,14 +437,14 @@
log.debug("FILTER : facadeName=" + boatFilter.getFacadeName());
log.debug("FILTER : sectorName=" + boatFilter.getSectorName());
log.debug("FILTER : sampleRow=" + boatFilter.getSampleRow());
- log.debug("FILTER : profession=" + boatFilter.getProfession());
+// log.debug("FILTER : profession=" + boatFilter.getProfession());
log.debug("FILTER : boatName=" + boatFilter.getBoatName());
log.debug("FILTER : boatImmatriculation=" + boatFilter.getBoatImmatriculation());
log.debug("FILTER : boatDistrictCode=" + boatFilter.getBoatDistrictCode());
log.debug("FILTER : company=" + boatFilter.getCompany());
}
- Profession profession = getProfessionSelectModel().findObject(professionId);
- boatFilter.setProfession(profession);
+// Profession profession = getProfessionSelectModel().findObject(professionId);
+// boatFilter.setProfession(profession);
}
/**
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java 2010-04-06 17:26:09 UTC (rev 432)
@@ -23,11 +23,11 @@
import fr.ifremer.wao.WaoBusinessException;
import fr.ifremer.wao.WaoException;
-import fr.ifremer.wao.bean.BoatFilter;
import fr.ifremer.wao.bean.ContactFilter;
import fr.ifremer.wao.bean.ContactFilterImpl;
import fr.ifremer.wao.bean.ContactState;
import fr.ifremer.wao.bean.ImportResults;
+import fr.ifremer.wao.bean.SamplingFilter;
import fr.ifremer.wao.bean.UserRole;
import fr.ifremer.wao.entity.Boat;
import fr.ifremer.wao.entity.Contact;
@@ -126,7 +126,10 @@
if (log.isDebugEnabled()) {
log.debug("RESET DATA");
}
- initSelectFilters(true, true, false);
+ if (isFiltersVisible()) {
+ // Initialize filters
+ initSelectFilters(true, false, true);
+ }
contacts = null;
getContacts();
// }
@@ -163,12 +166,14 @@
}
public boolean isFiltersVisible() {
- boolean companyFiltered = contactFilter.getCompany() != null && user.isAdmin();
- return (contactFilter.isFiltered() || companyFiltered) && StringUtils.isEmpty(contactFilter.getBoatName()); /*&& !getDefaultFromDate().equals(contactFilter.getFromDate());*/
+ boolean companyFiltered = getContactFilter().getCompany() != null &&
+ user.isAdmin();
+ return (getContactFilter().isFiltered() || companyFiltered) &&
+ StringUtils.isEmpty(getContactFilter().getBoatName());
}
@Override
- protected BoatFilter getFilter() throws WaoException {
+ protected SamplingFilter getFilter() throws WaoException {
return getContactFilter();
}
@@ -178,7 +183,8 @@
}
Object onActionFromShowFilters() {
- //contactFilter = null;
+ // Initialize filters
+ initSelectFilters(true, false, true);
return filtersZone.getBody();
}
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SamplingPlan.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SamplingPlan.java 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SamplingPlan.java 2010-04-06 17:26:09 UTC (rev 432)
@@ -24,15 +24,18 @@
import fr.ifremer.wao.WaoBusinessException;
import fr.ifremer.wao.WaoException;
-import fr.ifremer.wao.WaoException;
import fr.ifremer.wao.bean.FacadeRow;
import fr.ifremer.wao.bean.ImportResults;
+import fr.ifremer.wao.bean.SamplingFilter;
+import fr.ifremer.wao.bean.SamplingFilterImpl;
import fr.ifremer.wao.entity.Company;
import fr.ifremer.wao.entity.FishingZone;
import fr.ifremer.wao.entity.SampleMonth;
import fr.ifremer.wao.entity.SampleRow;
import fr.ifremer.wao.entity.WaoUser;
+import fr.ifremer.wao.service.ServiceReferential;
import fr.ifremer.wao.service.ServiceSampling;
+import fr.ifremer.wao.ui.base.AbstractFilteredPage;
import fr.ifremer.wao.ui.base.WaoPage;
import fr.ifremer.wao.ui.components.Layout;
import fr.ifremer.wao.ui.data.ExportStreamResponse;
@@ -50,6 +53,8 @@
import org.apache.tapestry5.annotations.Persist;
import org.apache.tapestry5.annotations.Property;
import org.apache.tapestry5.annotations.SessionState;
+import org.apache.tapestry5.corelib.components.Form;
+import org.apache.tapestry5.corelib.components.Zone;
import org.apache.tapestry5.ioc.annotations.Inject;
import org.apache.tapestry5.upload.services.UploadedFile;
import org.nuiton.util.PeriodDates;
@@ -67,7 +72,7 @@
* par : $Author$
*/
@IncludeStylesheet("context:css/sampling.css")
-public class SamplingPlan implements WaoPage {
+public class SamplingPlan extends AbstractFilteredPage implements WaoPage {
/**
* No restriction to display this page.
@@ -85,6 +90,9 @@
@Inject
private ServiceSampling serviceSampling;
+ @Inject
+ private ServiceReferential serviceReferential;
+
@InjectComponent
private Layout layout;
@@ -96,18 +104,12 @@
* Page initialization
*/
void setupRender() {
- periodBegin = getPeriod().getFromDate();
- periodEnd = getPeriod().getThruDate();
+ if (isFiltersVisible()) {
+ // Initialize filters
+ initSelectFilters(true, false, true);
+ }
}
- /**
- * Get current user from Layout component
- * @return current user
- */
-// public User getUser() {
-// return layout.getCurrentUser();
-// }
-
/**************************** IMPORT (ADMIN) *******************************/
/**
@@ -147,7 +149,8 @@
public InputStream getStream() throws IOException {
InputStream result = null;
try {
- result = serviceSampling.exportSamplingPlanCsv(user, getPeriod());
+ result = serviceSampling.exportSamplingPlanCsv(
+ user, getPeriod());
} catch (WaoException eee) {
throw new IOException(eee);
}
@@ -156,31 +159,81 @@
};
}
- /**************************** PERIOD SELECTION *****************************/
+ /**************************** FILTERS *************************************/
@Persist
- private PeriodDates period;
+ private SamplingFilter filter;
- @Property
- private Date periodBegin;
+ @InjectComponent
+ private Zone filtersZone;
- @Property
- private Date periodEnd;
+ @InjectComponent
+ private Form filtersForm;
+ private boolean reset;
+
+// @Property
+// private Date periodBegin;
+//
+// @Property
+// private Date periodEnd;
+
public PeriodDates getPeriod() {
- if (period == null) {
- period = PeriodDates.createMonthsPeriodFromToday(11);
+ return getFilter().getPeriod();
+ }
+
+ @Override
+ public SamplingFilter getFilter() throws WaoException {
+ if (filter == null) {
+ filter = new SamplingFilterImpl();
+ // Initialize period
+ PeriodDates period = PeriodDates.createMonthsPeriodFromToday(11);
+ filter.setPeriod(period);
}
- return period;
+ return filter;
}
- void onSuccessFromPeriodForm() {
- if (periodBegin != null && periodEnd != null) {
- period.setFromDate(periodBegin);
- period.setThruDate(periodEnd);
+ @Override
+ protected boolean isAvailableDataForFiltersOnly() {
+ return false;
+ }
+
+ public boolean isFiltersVisible() {
+ boolean companyFiltered = getFilter().getCompany() != null
+ && user.isAdmin();
+ return (!getFilter().isPeriodFilteredOnly() || companyFiltered);
+ }
+
+ Object onActionFromShowFilters() {
+ // Initialize filters
+ initSelectFilters(true, false, true);
+ return filtersZone.getBody();
+ }
+
+ public String[] onProvideCompletionsFromCodeDCF5(String input)
+ throws WaoException {
+ List<String> results = serviceReferential.getCodesDCF5Contains(input);
+ return results.toArray(new String[0]);
+ }
+
+ void onSelectedFromReset() {
+ reset = true;
+ }
+
+ Object onSuccessFromFiltersForm() {
+ if (isEdited()) {
+ return filtersZone.getBody();
}
+ if (reset) {
+ // Don't reset period in filters
+ PeriodDates period = getFilter().getPeriod();
+ filter = null;
+ getFilter().setPeriod(period);
+ }
+ return this;
}
+
/**************************** MAIN TABLE ***********************************/
/** ------------------------- DATA -------------------------------------- **/
@@ -218,7 +271,9 @@
if (!user.isAdmin()) {
company = user.getCompany();
}
- FacadeRow facade = serviceSampling.getSampleRowsOrderedByFishingZone(getPeriod(), company);
+ FacadeRow facade =
+ serviceSampling.getSampleRowsOrderedByFishingZone(
+ getFilter(), company);
data = facade.getValues();
}
return data;
@@ -326,6 +381,13 @@
@Property
private int rowIndex;
+ public String getRowComment() {
+ String comment = row.getComment();
+ // Problem whith " in chenilleKit ToolTip component
+ comment = comment.replace("\n", "<br />");
+ return comment;
+ }
+
public int getNbColumnsForProfession() {
// code, program.name, fishingZone.districts, profession.code, profession.libelle
int fixed = 5;
@@ -398,8 +460,8 @@
*/
void onActionFromFilterPeriodDates(int rowIndex) throws WaoException {
row = getData().get(rowIndex);
- period.setFromDate(row.getPeriodBegin());
- period.setThruDate(row.getPeriodEnd());
+ getPeriod().setFromDate(row.getPeriodBegin());
+ getPeriod().setThruDate(row.getPeriodEnd());
}
void onActionFromDeleteSampleRow(int rowIndex) throws WaoException {
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Synthesis.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Synthesis.java 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Synthesis.java 2010-04-06 17:26:09 UTC (rev 432)
@@ -24,10 +24,11 @@
import fr.ifremer.wao.WaoException;
import fr.ifremer.wao.bean.BoardingResult;
import fr.ifremer.wao.bean.BoatFilter;
-import fr.ifremer.wao.bean.BoatFilterImpl;
import fr.ifremer.wao.bean.ContactState;
import fr.ifremer.wao.bean.ContactStateStatistics;
import fr.ifremer.wao.bean.ContactAverageReactivity;
+import fr.ifremer.wao.bean.SamplingFilter;
+import fr.ifremer.wao.bean.SamplingFilterImpl;
import fr.ifremer.wao.entity.Company;
import fr.ifremer.wao.entity.WaoUser;
import fr.ifremer.wao.service.ServiceSynthesis;
@@ -155,7 +156,7 @@
/********************* DYNAMICAL GRAPH : DATASAMPLING *********************/
@Persist
- private BoatFilter dataSamplingFilter;
+ private SamplingFilter dataSamplingFilter;
@InjectComponent
private Zone filtersZone;
@@ -170,9 +171,9 @@
}
@Override
- public BoatFilter getFilter() throws WaoException {
+ public SamplingFilter getFilter() throws WaoException {
if (dataSamplingFilter == null) {
- dataSamplingFilter = new BoatFilterImpl();
+ dataSamplingFilter = new SamplingFilterImpl();
if (!user.isAdmin()) {
dataSamplingFilter.setCompany(user.getCompany());
}
Modified: trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SamplingPlan.properties
===================================================================
--- trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SamplingPlan.properties 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-ui/src/main/resources/fr/ifremer/wao/ui/pages/SamplingPlan.properties 2010-04-06 17:26:09 UTC (rev 432)
@@ -1,3 +1,9 @@
samplingPlanCsvFile-label: Fichier CSV du plan d'\u00E9chantillonnage
periodBegin-label: P\u00E9riode du
-periodEnd-label: Jusqu'au
\ No newline at end of file
+periodEnd-label: Jusqu'au
+company-label: Soci\u00E9t\u00E9
+programName-label: Programme
+codeDCF5-label: M\u00E9tier code DCF5
+facadeName-label: Fa\u00E7ade
+sectorName-label: Zone
+sampleRow-label: Code ligne
\ No newline at end of file
Modified: trunk/wao-ui/src/main/webapp/Contacts.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/Contacts.tml 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-ui/src/main/webapp/Contacts.tml 2010-04-06 17:26:09 UTC (rev 432)
@@ -11,11 +11,11 @@
<input t:type="submit" class="ico search-32px" t:id="execSearchBoat" value="Search" title="Rechercher les contacts liés à ce navire" />
</div>
</form>
- <a t:type="actionlink" t:id="showFilters" t:zone="so-contacts-filters">
+ <a t:type="actionlink" t:id="showFilters" t:zone="so-contacts-filters" class="display-form">
recherche avancée
</a>
<t:if t:test="canImportExport()">
- <a t:type="actionlink" t:id="showImportExport" t:zone="so-contacts-importexport">
+ <a t:type="actionlink" t:id="showImportExport" t:zone="so-contacts-importexport" class="display-form">
import/export
</a>
</t:if>
Modified: trunk/wao-ui/src/main/webapp/SamplingPlan.tml
===================================================================
--- trunk/wao-ui/src/main/webapp/SamplingPlan.tml 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-ui/src/main/webapp/SamplingPlan.tml 2010-04-06 17:26:09 UTC (rev 432)
@@ -25,10 +25,55 @@
</a>
</h1>
<form t:type="form" t:id="periodForm" action="post">
- <t:label t:for="periodBegin" /> : <input t:type="datefield" class="width70" t:id="periodBegin" t:format="MM/yyyy" />
- <t:label t:for="periodEnd" /> : <input t:type="datefield" class="width70" t:id="periodEnd" t:format="MM/yyyy" />
- <input t:type="submit" class="ico search" value="Search" t:title="Affichage des lignes du plan couvertes par la période sélectionnée" />
+ <div>
+ <t:label t:for="periodBegin" /> :
+ <input t:type="datefield" class="width70" t:id="periodBegin" t:value="period.fromDate" t:format="MM/yyyy" t:validate="required"/>
+ <t:label t:for="periodEnd" /> :
+ <input t:type="datefield" class="width70" t:id="periodEnd" t:value="period.thruDate" t:format="MM/yyyy" t:validate="required" />
+ <input t:type="submit" class="ico search" value="Search" t:title="Affichage des lignes du plan couvertes par la période sélectionnée" />
+ <a t:type="actionlink" t:id="showFilters" t:zone="so-sampling-filters" class="display-form">recherche avancée</a>
+ </div>
</form>
+ <div t:type="zone" t:id="filtersZone" t:visible="prop:filtersVisible" id="so-sampling-filters">
+ <fieldset>
+ <legend>Recherche avancée</legend>
+ <div class="so-filters-form">
+ <form t:type="form" t:id="filtersForm" t:zone="so-sampling-filters" action="post">
+ <t:errors />
+ <div class="t-beaneditor">
+ <div>
+ <t:if t:test="user.admin">
+ <t:label t:for="company" />:
+ <input t:type="select" t:id="company" t:model="companySelectModel" value="companyId"/>
+ <input t:type="submit" class="ico22px refresh" t:id="refreshByCompany" value="Refresh"
+ title="Rafraîchir les filtres en fonction de la société sélectionnée"/>
+ </t:if>
+ <t:label t:for="programName" />:
+ <select t:type="select" t:id="programName" t:model="programSelectModel" t:value="filter.programName" />
+ <t:label t:for="codeDCF5" />:
+ <input t:type="textfield" t:id="codeDCF5" value="filter.codeDCF5" t:mixins="Autocomplete"/>
+ </div>
+ <div>
+ <t:label t:for="facadeName" />:
+ <select t:type="select" t:id="facadeName" t:model="facadeSelectModel" t:value="filter.facadeName" />
+ <input t:type="submit" class="ico22px refresh" t:id="refreshByFacade" value="Refresh"
+ title="Rafraîchir les zones et les métiers en fonction de la façade sélectionnée"/>
+ <t:label t:for="sectorName" />:
+ <select t:type="select" t:id="sectorName" t:model="sectorSelectModel" t:value="filter.sectorName" />
+ <input t:type="submit" class="ico22px refresh" t:id="refreshBySector" value="Refresh"
+ title="Rafraîchir les métiers en fonction de la zone sélectionnée"/>
+ <t:label t:for="sampleRow" />:
+ <input t:type="select" t:id="sampleRow" t:model="sampleRowSelectModel" value="sampleRowId" />
+ </div>
+ <div class="t-beaneditor-row aright">
+ <input t:type="submit" class="ico search-32px" t:id="search" value="Search" title="Rechercher les lignes du plan correspondants aux filtres saisies" />
+ <input t:type="submit" class="ico undo" t:id="reset" value="Reset" title="Remettre les filtres par défaut" />
+ </div>
+ </div>
+ </form>
+ </div>
+ </fieldset>
+ </div>
</div>
<t:if t:test="canEditSampleRow()">
<div class="actions fright">
@@ -80,6 +125,9 @@
<td class="bright">Actions</td>
</tr>
</thead>
+ <tfoot>
+ <tr><td></td></tr>
+ </tfoot>
<tbody>
<t:loop source="data" value="row" index="rowIndex">
<t:if t:test="facadeChanged">
@@ -141,7 +189,7 @@
</td>
</t:loop>
<td class="width50 acenter bright">
- <span t:type="ck/Tooltip" title="Infos" t:value="Total sur la période du ${dateFormat.format(periodBegin)} au ${dateFormat.format(periodEnd)}" t:effect="appear">
+ <span t:type="ck/Tooltip" title="Infos" t:value="Total sur la période du ${dateFormat.format(period.fromDate)} au ${dateFormat.format(period.thruDate)}" t:effect="appear">
${totalTidesExpected} <em>(${totalTidesReal})</em><br /><strong>${totalPercentage}</strong>
</span>
</td>
@@ -149,7 +197,7 @@
<td class="width60 acenter">${row.nbObservants}</td>
<td class="width60 acenter bright">
<t:if t:test="row.comment">
- <span t:type="ck/Tooltip" title="Commentaire" t:value="prop:row.comment" t:effect="appear">
+ <span t:type="ck/Tooltip" title="Commentaire" t:value="prop:rowComment" t:effect="appear">
<img src="${asset:context:}/img/comment-22px.png" alt="comment" />
</span>
</t:if>
Modified: trunk/wao-ui/src/main/webapp/css/common.css
===================================================================
--- trunk/wao-ui/src/main/webapp/css/common.css 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-ui/src/main/webapp/css/common.css 2010-04-06 17:26:09 UTC (rev 432)
@@ -196,6 +196,17 @@
background: url(../img/help-22px.png) no-repeat center center;
}
+a.display-form {
+ text-decoration: none;
+ color: #19a28d;
+ font-weight: bold;
+}
+
+a.display-form:hover {
+ text-decoration: underline;
+ color: black;
+}
+
/* Common for forms (userProfile and administration forms) */
fieldset.user-form {
width: 50%;
Modified: trunk/wao-ui/src/main/webapp/css/contacts.css
===================================================================
--- trunk/wao-ui/src/main/webapp/css/contacts.css 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-ui/src/main/webapp/css/contacts.css 2010-04-06 17:26:09 UTC (rev 432)
@@ -50,17 +50,6 @@
background-color: #19a28d;
}*/
-div#so-contacts-search a {
- text-decoration: none;
- color: #19a28d;
- font-weight: bold;
-}
-
-div#so-contacts-search a:hover {
- text-decoration: underline;
- color: black;
-}
-
div#so-contacts-filters {
width: 100%;
margin-bottom: 10px;
Modified: trunk/wao-ui/src/main/webapp/css/sampling.css
===================================================================
--- trunk/wao-ui/src/main/webapp/css/sampling.css 2010-04-06 12:14:41 UTC (rev 431)
+++ trunk/wao-ui/src/main/webapp/css/sampling.css 2010-04-06 17:26:09 UTC (rev 432)
@@ -29,6 +29,14 @@
width: 40%;
}
+div#so-sampling-filters div.t-beaneditor div {
+ margin-top: 5px;
+}
+
+div#so-sampling-filters fieldset {
+ padding: 5px;
+}
+
div#so-sampling div.actions { /* global actions */
padding: 10px;
}
@@ -101,7 +109,12 @@
text-decoration: underline;
}
+div#so-sampling tfoot {
+ height: 0;
+ border-bottom: 2px solid black;
+}
+
/* Historic page */
div#so-sampling-historic {
margin-top: 10px;
1
0
[Suiviobsmer-commits] r431 - in trunk: . wao-business/src/main/filters wao-business/src/main/java/fr/ifremer/wao/service wao-business/src/main/xmi wao-business/src/test/java/fr/ifremer/wao/service wao-ui/src/main/java/fr/ifremer/wao/ui/base wao-ui/src/main/java/fr/ifremer/wao/ui/pages
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
06 Apr '10
Author: fdesbois
Date: 2010-04-06 12:14:41 +0000 (Tue, 06 Apr 2010)
New Revision: 431
Modified:
trunk/changelog.txt
trunk/wao-business/src/main/filters/Wao.properties
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java
trunk/wao-business/src/main/xmi/wao.zargo
trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceUserImplTest.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java
Log:
Evo #2241 : Improve observers loading using getObservers instead of getUsersByCompany
Modified: trunk/changelog.txt
===================================================================
--- trunk/changelog.txt 2010-04-06 11:36:20 UTC (rev 430)
+++ trunk/changelog.txt 2010-04-06 12:14:41 UTC (rev 431)
@@ -3,6 +3,18 @@
Historique des versions
+1.1.2
+-----
+
+Evolutions
+++++++++++
+
+- [fdesbois] Evo #2241 : Revoir chargement des observateurs lorsqu'un
+ utilisateur (observateur/coordinateur) est connecté
+
+Anomalies
++++++++++
+
1.1.1 (patch)
-------------
Modified: trunk/wao-business/src/main/filters/Wao.properties
===================================================================
--- trunk/wao-business/src/main/filters/Wao.properties 2010-04-06 11:36:20 UTC (rev 430)
+++ trunk/wao-business/src/main/filters/Wao.properties 2010-04-06 12:14:41 UTC (rev 431)
@@ -23,4 +23,4 @@
wao.server.path=localhost:8080/wao
## Version (not necessary to override it)
-wao.version=1.1.1
\ No newline at end of file
+wao.version=1.1.2
\ No newline at end of file
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java 2010-04-06 11:36:20 UTC (rev 430)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java 2010-04-06 12:14:41 UTC (rev 431)
@@ -367,13 +367,17 @@
@Override
public List<WaoUser> executeGetObservers(TopiaContext transaction,
- boolean activeOnly) throws TopiaException {
+ Company company, boolean activeOnly) throws TopiaException {
WaoUserDAO dao = WaoDAOHelper.getWaoUserDAO(transaction);
TopiaQuery query = dao.createQuery().
add(WaoUser.ROLE, UserRole.OBSERVER.ordinal(),
UserRole.COORDINATOR.ordinal());
+ if (company != null) {
+ query.add(WaoUser.COMPANY, company);
+ }
+
if (activeOnly) {
query.add(WaoUser.ACTIVE, Boolean.TRUE);
}
Modified: trunk/wao-business/src/main/xmi/wao.zargo
===================================================================
(Binary files differ)
Modified: trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceUserImplTest.java
===================================================================
--- trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceUserImplTest.java 2010-04-06 11:36:20 UTC (rev 430)
+++ trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceUserImplTest.java 2010-04-06 12:14:41 UTC (rev 431)
@@ -132,6 +132,10 @@
company.setName("TARTANPION");
service.createUpdateCompany(company);
+ Company company2 = new CompanyImpl();
+ company2.setName("COMP");
+ service.createUpdateCompany(company2);
+
WaoUser user1 = new WaoUserImpl();
user1.setLogin("user1");
user1.setFirstName("Jean");
@@ -165,18 +169,19 @@
user4.setLastName("Hur");
// The coordinator is also an observer
user4.setUserRole(UserRole.COORDINATOR);
- user4.setCompany(company);
+ user4.setCompany(company2);
user4.setActive(true);
service.createUpdateUser(user4, true);
/** EXEC METHOD **/
- List<WaoUser> users = service.getObservers(false);
+ List<WaoUser> users = service.getObservers(null, false);
// user1, user3 and user4
Assert.assertEquals(3, users.size());
- users = service.getObservers(true);
- // user1 and user4
- Assert.assertEquals(2, users.size());
+ // Filter on company only
+ users = service.getObservers(company, true);
+ // user1, user4 is ok but not link with company
+ Assert.assertEquals(1, users.size());
}
/**
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java 2010-04-06 11:36:20 UTC (rev 430)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java 2010-04-06 12:14:41 UTC (rev 431)
@@ -290,13 +290,9 @@
*/
public GenericSelectModel<WaoUser> getObserverSelectModel() throws WaoException {
if (observerSelectModel == null) {
- List<WaoUser> observers = new ArrayList<WaoUser>();
- if (getFilter().getCompany() != null) {
- observers = serviceUser.getUsersByCompany(
- getFilter().getCompany());
- } else if (user.isAdmin()) {
- observers = serviceUser.getObservers(isAvailableDataForFiltersOnly());
- }
+ List<WaoUser> observers =
+ serviceUser.getObservers(getFilter().getCompany(),
+ isAvailableDataForFiltersOnly());
observerSelectModel = new GenericSelectModel<WaoUser>(observers,WaoUser.class,
"fullName","topiaId",propertyAccess);
}
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java 2010-04-06 11:36:20 UTC (rev 430)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java 2010-04-06 12:14:41 UTC (rev 431)
@@ -316,8 +316,8 @@
public GenericSelectModel<WaoUser> getUserSelectModel() {
if (userSelectModel == null) {
- List<WaoUser> users = serviceUser.getUsersByCompany(
- user.getCompany());
+ List<WaoUser> users = serviceUser.getObservers(
+ user.getCompany(), true);
if (log.isDebugEnabled()) {
log.debug("Nb users : " + users.size());
}
1
0
[Suiviobsmer-commits] r430 - in trunk: . wao-business wao-ui
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
06 Apr '10
Author: fdesbois
Date: 2010-04-06 11:36:20 +0000 (Tue, 06 Apr 2010)
New Revision: 430
Modified:
trunk/pom.xml
trunk/wao-business/pom.xml
trunk/wao-ui/pom.xml
Log:
[maven-release-plugin] prepare for next development iteration
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2010-04-06 11:36:17 UTC (rev 429)
+++ trunk/pom.xml 2010-04-06 11:36:20 UTC (rev 430)
@@ -15,7 +15,7 @@
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>1.1.1</version>
+ <version>1.1.2-SNAPSHOT</version>
<modules>
<module>wao-ui</module>
@@ -228,9 +228,9 @@
<!-- ************************************************************* -->
<scm>
- <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1</connection>
- <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1</developerConnection>
- <url>http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-1.1.1?root=suiviob…</url>
+ <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk</connection>
+ <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk</developerConnection>
+ <url>http://labs.libre-entreprise.org/scm/viewvc.php/trunk/?root=suiviobsmer</url>
</scm>
<build>
Modified: trunk/wao-business/pom.xml
===================================================================
--- trunk/wao-business/pom.xml 2010-04-06 11:36:17 UTC (rev 429)
+++ trunk/wao-business/pom.xml 2010-04-06 11:36:20 UTC (rev 430)
@@ -10,7 +10,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>1.1.1</version>
+ <version>1.1.2-SNAPSHOT</version>
</parent>
<groupId>fr.ifremer.wao</groupId>
@@ -189,9 +189,9 @@
</build>
<scm>
- <url>http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-1.1.1/?root=suivio…</url>
- <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1/wao-business</connection>
- <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1/wao-business</developerConnection>
+ <url>http://labs.libre-entreprise.org/scm/viewvc.php/trunk/wao-business/?root=su…</url>
+ <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-business</connection>
+ <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-business</developerConnection>
</scm>
</project>
Modified: trunk/wao-ui/pom.xml
===================================================================
--- trunk/wao-ui/pom.xml 2010-04-06 11:36:17 UTC (rev 429)
+++ trunk/wao-ui/pom.xml 2010-04-06 11:36:20 UTC (rev 430)
@@ -10,7 +10,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>1.1.1</version>
+ <version>1.1.2-SNAPSHOT</version>
</parent>
<groupId>fr.ifremer.wao</groupId>
@@ -141,9 +141,9 @@
</repositories>
<scm>
- <url>http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-1.1.1/?root=suivio…</url>
- <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1/wao-ui</connection>
- <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1/wao-ui</developerConnection>
+ <url>http://labs.libre-entreprise.org/scm/viewvc.php/trunk/wao-ui/?root=suiviobs…</url>
+ <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-ui</connection>
+ <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-ui</developerConnection>
</scm>
</project>
1
0
Author: fdesbois
Date: 2010-04-06 11:36:17 +0000 (Tue, 06 Apr 2010)
New Revision: 429
Added:
tags/wao-1.1.1/
Log:
[maven-release-plugin] copy for tag wao-1.1.1
1
0
[Suiviobsmer-commits] r428 - in trunk: . wao-business wao-ui
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
06 Apr '10
Author: fdesbois
Date: 2010-04-06 11:36:13 +0000 (Tue, 06 Apr 2010)
New Revision: 428
Modified:
trunk/pom.xml
trunk/wao-business/pom.xml
trunk/wao-ui/pom.xml
Log:
[maven-release-plugin] prepare release wao-1.1.1
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2010-04-06 11:31:46 UTC (rev 427)
+++ trunk/pom.xml 2010-04-06 11:36:13 UTC (rev 428)
@@ -15,7 +15,7 @@
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>1.1.1-SNAPSHOT</version>
+ <version>1.1.1</version>
<modules>
<module>wao-ui</module>
@@ -228,9 +228,9 @@
<!-- ************************************************************* -->
<scm>
- <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk</connection>
- <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk</developerConnection>
- <url>http://labs.libre-entreprise.org/scm/viewvc.php/trunk/?root=suiviobsmer</url>
+ <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1</connection>
+ <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1</developerConnection>
+ <url>http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-1.1.1?root=suiviob…</url>
</scm>
<build>
Modified: trunk/wao-business/pom.xml
===================================================================
--- trunk/wao-business/pom.xml 2010-04-06 11:31:46 UTC (rev 427)
+++ trunk/wao-business/pom.xml 2010-04-06 11:36:13 UTC (rev 428)
@@ -10,7 +10,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>1.1.1-SNAPSHOT</version>
+ <version>1.1.1</version>
</parent>
<groupId>fr.ifremer.wao</groupId>
@@ -189,9 +189,9 @@
</build>
<scm>
- <url>http://labs.libre-entreprise.org/scm/viewvc.php/trunk/wao-business/?root=su…</url>
- <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-business</connection>
- <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-business</developerConnection>
+ <url>http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-1.1.1/?root=suivio…</url>
+ <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1/wao-business</connection>
+ <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1/wao-business</developerConnection>
</scm>
</project>
Modified: trunk/wao-ui/pom.xml
===================================================================
--- trunk/wao-ui/pom.xml 2010-04-06 11:31:46 UTC (rev 427)
+++ trunk/wao-ui/pom.xml 2010-04-06 11:36:13 UTC (rev 428)
@@ -10,7 +10,7 @@
<parent>
<groupId>fr.ifremer</groupId>
<artifactId>wao</artifactId>
- <version>1.1.1-SNAPSHOT</version>
+ <version>1.1.1</version>
</parent>
<groupId>fr.ifremer.wao</groupId>
@@ -141,9 +141,9 @@
</repositories>
<scm>
- <url>http://labs.libre-entreprise.org/scm/viewvc.php/trunk/wao-ui/?root=suiviobs…</url>
- <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-ui</connection>
- <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/trunk/wao-ui</developerConnection>
+ <url>http://labs.libre-entreprise.org/scm/viewvc.php/tags/wao-1.1.1/?root=suivio…</url>
+ <connection>scm:svn:svn://anonymous at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1/wao-ui</connection>
+ <developerConnection>scm:svn:svn+ssh://fdesbois at labs.libre-entreprise.org/svnroot/suiviobsmer/tags/wao-1.1.1/wao-ui</developerConnection>
</scm>
</project>
1
0
[Suiviobsmer-commits] r427 - in trunk: src/announcement wao-business/src/main/filters
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
06 Apr '10
Author: fdesbois
Date: 2010-04-06 11:31:46 +0000 (Tue, 06 Apr 2010)
New Revision: 427
Added:
trunk/src/announcement/release-email-1.1.1.txt
Modified:
trunk/wao-business/src/main/filters/Wao.properties
Log:
Change version in properties file + add announcement email
Added: trunk/src/announcement/release-email-1.1.1.txt
===================================================================
--- trunk/src/announcement/release-email-1.1.1.txt (rev 0)
+++ trunk/src/announcement/release-email-1.1.1.txt 2010-04-06 11:31:46 UTC (rev 427)
@@ -0,0 +1,20 @@
+
+Un patch correctif 1.1.1 pour la version 1.1 de l'applicatif Wao est disponible !
+
+Résolutions d'anomalies :
+
+- Erreur bloquante sur la création d'un contact [fdesbois-Ano#2240]
+- Ne pas gérer d'email en mode stand-alone (embarqué dans winstone) [fdesbois-Ano#2239]
+
+Documentation :
+
+http://suiviobsmer.labs.libre-entreprise.org/wao/
+
+Téléchargement :
+
+https://labs.libre-entreprise.org/frs/?group_id=154
+
+Cordialement,
+
+L'équipe Wao
+
Modified: trunk/wao-business/src/main/filters/Wao.properties
===================================================================
--- trunk/wao-business/src/main/filters/Wao.properties 2010-04-06 11:29:09 UTC (rev 426)
+++ trunk/wao-business/src/main/filters/Wao.properties 2010-04-06 11:31:46 UTC (rev 427)
@@ -23,4 +23,4 @@
wao.server.path=localhost:8080/wao
## Version (not necessary to override it)
-wao.version=1.1
\ No newline at end of file
+wao.version=1.1.1
\ No newline at end of file
1
0
[Suiviobsmer-commits] r426 - in trunk: . wao-business/src/main/filters wao-business/src/main/xmi wao-ui/src/main/java/fr/ifremer/wao/ui/base wao-ui/src/main/java/fr/ifremer/wao/ui/pages
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
06 Apr '10
Author: fdesbois
Date: 2010-04-06 11:29:09 +0000 (Tue, 06 Apr 2010)
New Revision: 426
Modified:
trunk/changelog.txt
trunk/wao-business/src/main/filters/Wao.properties
trunk/wao-business/src/main/xmi/wao.zargo
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ExceptionReport.java
Log:
Ano #2240 : problem with lazy intialization on company.getWaoUser()
Modified: trunk/changelog.txt
===================================================================
--- trunk/changelog.txt 2010-04-06 10:22:43 UTC (rev 425)
+++ trunk/changelog.txt 2010-04-06 11:29:09 UTC (rev 426)
@@ -3,6 +3,13 @@
Historique des versions
+1.1.1 (patch)
+-------------
+
+- [fdesbois] Ano #2240 : Erreur bloquante sur la création d'un contact
+- [fdesbois] Ano #2239 : Ne pas gérer d'email en mode stand-alone (embarqué dans
+ winstone)
+
1.1
---
Modified: trunk/wao-business/src/main/filters/Wao.properties
===================================================================
--- trunk/wao-business/src/main/filters/Wao.properties 2010-04-06 10:22:43 UTC (rev 425)
+++ trunk/wao-business/src/main/filters/Wao.properties 2010-04-06 11:29:09 UTC (rev 426)
@@ -1,5 +1,5 @@
## Default properties for H2 database
-hibernate.hbm2ddl.auto=update
+hibernate.hbm2ddl.auto=none
hibernate.show_sql=false
hibernate.dialect=org.hibernate.dialect.H2Dialect
hibernate.connection.username=sa
Modified: trunk/wao-business/src/main/xmi/wao.zargo
===================================================================
(Binary files differ)
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java 2010-04-06 10:22:43 UTC (rev 425)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java 2010-04-06 11:29:09 UTC (rev 426)
@@ -292,7 +292,8 @@
if (observerSelectModel == null) {
List<WaoUser> observers = new ArrayList<WaoUser>();
if (getFilter().getCompany() != null) {
- observers = getFilter().getCompany().getWaoUser();
+ observers = serviceUser.getUsersByCompany(
+ getFilter().getCompany());
} else if (user.isAdmin()) {
observers = serviceUser.getObservers(isAvailableDataForFiltersOnly());
}
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java 2010-04-06 10:22:43 UTC (rev 425)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java 2010-04-06 11:29:09 UTC (rev 426)
@@ -23,7 +23,6 @@
import fr.ifremer.wao.WaoBusinessException;
import fr.ifremer.wao.WaoException;
-import fr.ifremer.wao.WaoException;
import fr.ifremer.wao.bean.BoatFilter;
import fr.ifremer.wao.bean.ContactFilter;
import fr.ifremer.wao.bean.ContactFilterImpl;
@@ -37,6 +36,7 @@
import fr.ifremer.wao.service.ServiceBoat;
import fr.ifremer.wao.service.ServiceContact;
import fr.ifremer.wao.service.ServiceSampling;
+import fr.ifremer.wao.service.ServiceUser;
import fr.ifremer.wao.ui.base.AbstractFilteredPage;
import fr.ifremer.wao.ui.data.ContactDataSource;
import fr.ifremer.wao.ui.data.BusinessUtils;
@@ -264,6 +264,9 @@
/**************************** CONTACT LIST ********************************/
@Inject
+ private ServiceUser serviceUser;
+
+ @Inject
private BeanModelSource beanModelSource;
@Inject
@@ -313,11 +316,13 @@
public GenericSelectModel<WaoUser> getUserSelectModel() {
if (userSelectModel == null) {
- List<WaoUser> users = user.getCompany().getWaoUser();
+ List<WaoUser> users = serviceUser.getUsersByCompany(
+ user.getCompany());
if (log.isDebugEnabled()) {
log.debug("Nb users : " + users.size());
}
- userSelectModel = new GenericSelectModel<WaoUser>(users, WaoUser.class, "fullName", "id", propertyAccess);
+ userSelectModel = new GenericSelectModel<WaoUser>(users,
+ WaoUser.class, "fullName", "id", propertyAccess);
}
return userSelectModel;
}
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ExceptionReport.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ExceptionReport.java 2010-04-06 10:22:43 UTC (rev 425)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ExceptionReport.java 2010-04-06 11:29:09 UTC (rev 426)
@@ -75,7 +75,7 @@
// layout.addError("Erreur : " + this.exception.getClass().getSimpleName()
// + " : " + this.exception.getMessage());
// } else {
- this.exception = getWaoException(eee);
+ exception = getWaoException(eee);
if (exception != null) {
String[] errors =
BusinessUtils.getErrorMessages(
@@ -84,8 +84,8 @@
} else {
log.error("Unexpected exception", eee);
layout.addError("Erreur : " +
- this.exception.getClass().getSimpleName()
- + " : " + this.exception.getMessage());
+ eee.getClass().getSimpleName()
+ + " : " + eee.getMessage());
}
// }
}
1
0
[Suiviobsmer-commits] r425 - in trunk: wao-business/src/main/java/fr/ifremer/wao wao-business/src/main/java/fr/ifremer/wao/entity wao-business/src/main/java/fr/ifremer/wao/service wao-business/src/main/xmi wao-ui/src/main/java/fr/ifremer/wao/ui/pages
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
06 Apr '10
Author: fdesbois
Date: 2010-04-06 10:22:43 +0000 (Tue, 06 Apr 2010)
New Revision: 425
Modified:
trunk/wao-business/src/main/java/fr/ifremer/wao/WaoBusinessException.java
trunk/wao-business/src/main/java/fr/ifremer/wao/entity/SampleRowImpl.java
trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java
trunk/wao-business/src/main/xmi/wao.zargo
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Administration.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowHistoric.java
trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/UserProfile.java
Log:
Ano #2239 : don't crash application if no smtp is defined -> usefull for stand-alone
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/WaoBusinessException.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/WaoBusinessException.java 2010-04-06 09:35:00 UTC (rev 424)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/WaoBusinessException.java 2010-04-06 10:22:43 UTC (rev 425)
@@ -52,7 +52,7 @@
}
public static enum Type {
- IMPORT_ERROR, NOT_EXISTS, ALREADY_EXISTS, SYNTAX, BAD_CONNECTION, ILLEGAL_CONNECTION;
+ IMPORT_ERROR, NOT_EXISTS, ALREADY_EXISTS, SYNTAX, BAD_CONNECTION, ILLEGAL_CONNECTION, SMTP_NOT_FOUND;
}
public Type getType() {
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/entity/SampleRowImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/entity/SampleRowImpl.java 2010-04-06 09:35:00 UTC (rev 424)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/entity/SampleRowImpl.java 2010-04-06 10:22:43 UTC (rev 425)
@@ -21,6 +21,8 @@
package fr.ifremer.wao.entity;
+import fr.ifremer.wao.WaoBusinessException;
+import fr.ifremer.wao.WaoBusinessException.Type;
import fr.ifremer.wao.WaoUtils;
import fr.ifremer.wao.WaoException;
import fr.ifremer.wao.WaoDAOHelper;
@@ -34,6 +36,7 @@
import java.util.Iterator;
import java.util.List;
import org.apache.commons.lang.BooleanUtils;
+import org.apache.commons.mail.EmailException;
import org.nuiton.i18n.I18n;
import org.nuiton.topia.TopiaContext;
import org.nuiton.util.DateUtils;
@@ -299,7 +302,8 @@
* @throws WaoException
*/
@Override
- public void saveSampleRowLog(SampleRowLog rowLog) throws WaoException {
+ public void saveSampleRowLog(SampleRowLog rowLog)
+ throws WaoException, WaoBusinessException {
TopiaContext transaction = null;
try {
WaoUser author = rowLog.getAuthor();
@@ -338,6 +342,11 @@
WaoUtils.sendEmail(to, subject, msg);
}
+ } catch (EmailException eee) {
+ throw new WaoBusinessException(Type.SMTP_NOT_FOUND, this.getClass(),
+ "Aucun serveur smtp disponible, aucun email n'a été" +
+ " envoyé à " + rowLog.getAuthor().getLogin(),
+ eee);
} catch (Exception eee) {
WaoUtils.treateError(transaction, eee,
I18n.n_("wao.error.sampleRow.saveSampleRowLog"),
Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java
===================================================================
--- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java 2010-04-06 09:35:00 UTC (rev 424)
+++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceUserImpl.java 2010-04-06 10:22:43 UTC (rev 425)
@@ -124,8 +124,7 @@
@Override
public void executeForgetPassword(TopiaContext transaction,
- String login) throws WaoBusinessException, TopiaException,
- EmailException {
+ String login) throws WaoBusinessException, TopiaException {
if (!login.contains("@")) {
throw new WaoBusinessException(Type.SYNTAX,
@@ -149,30 +148,36 @@
String passwordEncoded = context.encodeString(password);
user.setPassword(passwordEncoded);
- String subject = "[WAO] Mot de passe oublié";
- String msg = "Bonjour,\n\n" +
- "\tUn nouveau mot de passe a été généré pour votre" +
- " identifiant " + login + " :\n" +
- "\t\t * mot de passe = " + password + "\n\n" +
- "Vous pouvez modifier votre password en accédant à " +
- "la page de gestion de votre profile utilisateur :\n\n" +
- "\t\thttp://" + WaoProperty.SERVER_PATH.getValue() + "\n\n" +
- "Cordialement,\n\n" +
- "L'Equipe WAO";
+ transaction.commitTransaction();
- context.sendEmail(user.getLogin(), subject, msg);
- if (log.isDebugEnabled()) {
- log.debug("send email to : " + user.getLogin());
+ try {
+ String subject = "[WAO] Mot de passe oublié";
+ String msg = "Bonjour,\n\n" +
+ "\tUn nouveau mot de passe a été généré pour votre" +
+ " identifiant " + login + " :\n" +
+ "\t\t * mot de passe = " + password + "\n\n" +
+ "Vous pouvez modifier votre password en accédant à " +
+ "la page de gestion de votre profile utilisateur :\n\n" +
+ "\t\thttp://" + WaoProperty.SERVER_PATH.getValue() + "\n\n" +
+ "Cordialement,\n\n" +
+ "L'Equipe WAO";
+
+ context.sendEmail(user.getLogin(), subject, msg);
+ if (log.isDebugEnabled()) {
+ log.debug("send email to : " + user.getLogin());
+ }
+ } catch (EmailException eee) {
+ throw new WaoBusinessException(Type.SMTP_NOT_FOUND, this.getClass(),
+ "Aucun serveur smtp disponible, aucun email n'a été" +
+ " envoyé à " + login, eee);
}
-
- transaction.commitTransaction();
}
@Override
public void executeCreateUpdateUser(TopiaContext transaction,
WaoUser user, boolean generatePassword)
throws TopiaException, IllegalArgumentException,
- WaoBusinessException, EmailException {
+ WaoBusinessException {
if (user == null) {
throw new IllegalArgumentException("user parameter can't be null");
@@ -198,9 +203,6 @@
if (generatePassword) {
password = context.createRandomString(8);
user.setPasswordChanged(true);
-// if (log.isDebugEnabled()) {
-// log.debug("show generated password : " + password);
-// }
}
// For a password set manually by user or generated
if (user.isPasswordChanged()) {
@@ -210,49 +212,54 @@
dao.update(user);
- // FIXME-JC20100122 Use REGEX instead of @ to test if the login is
- // a valid email
- if (user.getLogin().contains("@") && user.isPasswordChanged()) {
- String subject = "[WAO] ";
- String msg = "Bonjour,\n\n";
- if (newUser) {
- subject += "Création de votre compte";
- msg += "\tVous avez été inscris sur le site WAO :" +
- " Web Applicatif Obsmer. Vos identifiants de " +
- "connexion sont :\n" +
- "\t\t * identifiant = " + user.getLogin() + "\n" +
- "\t\t * mot de passe = " + password + "\n\n" +
- "Vous pouvez modifier votre mot de passe en " +
- "accédant à la page de gestion de votre profil" +
- " utilisateur:\n\n" +
- "\t\thttp://" + WaoProperty.SERVER_PATH.getValue() + "\n\n";
- } else {
- subject += "Modification de votre compte";
- if (generatePassword) {
- msg += "\tVotre mot de passe de connexion à " +
- "l'application WAO a été modifié : " +
- "" + password + "\n\n";
+ transaction.commitTransaction();
+
+ try {
+ // FIXME-JC20100122 Use REGEX instead of @ to test if the login is
+ // a valid email
+ if (user.getLogin().contains("@") && user.isPasswordChanged()) {
+ String subject = "[WAO] ";
+ String msg = "Bonjour,\n\n";
+ if (newUser) {
+ subject += "Création de votre compte";
+ msg += "\tVous avez été inscris sur le site WAO :" +
+ " Web Applicatif Obsmer. Vos identifiants de " +
+ "connexion sont :\n" +
+ "\t\t * identifiant = " + user.getLogin() + "\n" +
+ "\t\t * mot de passe = " + password + "\n\n" +
+ "Vous pouvez modifier votre mot de passe en " +
+ "accédant à la page de gestion de votre profil" +
+ " utilisateur:\n\n" +
+ "\t\thttp://" + WaoProperty.SERVER_PATH.getValue() +
+ "\n\n";
} else {
- msg += "\tVotre changement de mot de passe à bien " +
- "été enregistré.\n" +
- "Pour des raisons de sécurité, le nouveau " +
- "mot de passe n'est pas précisé dans ce message.\n" +
- "Vous pouvez faire une nouvelle demande " +
- "de mot de passe en cas de perte sur la" +
- " page de connexion ou en " +
- "répondant à ce message.\n\n";
+ subject += "Modification de votre compte";
+ if (generatePassword) {
+ msg += "\tVotre mot de passe de connexion à " +
+ "l'application WAO a été modifié : " +
+ "" + password + "\n\n";
+ } else {
+ msg += "\tVotre changement de mot de passe à bien " +
+ "été enregistré.\n" +
+ "Pour des raisons de sécurité, le nouveau " +
+ "mot de passe n'est pas précisé dans ce " +
+ "message.\n" +
+ "Vous pouvez faire une nouvelle demande " +
+ "de mot de passe en cas de perte sur la" +
+ " page de connexion ou en " +
+ "répondant à ce message.\n\n";
+ }
}
+ msg += "Cordialement,\n\n" +
+ "L'Equipe WAO";
+
+ context.sendEmail(user.getLogin(), subject, msg);
}
- msg += "Cordialement,\n\n" +
- "L'Equipe WAO";
-
- context.sendEmail(user.getLogin(), subject, msg);
-// if (log.isDebugEnabled()) {
-// log.debug("send email to : " + user.getLogin());
-// }
+ } catch (EmailException eee) {
+ throw new WaoBusinessException(Type.SMTP_NOT_FOUND, this.getClass(),
+ "Aucun serveur smtp disponible, aucun email n'a été" +
+ " envoyé à " + user.getLogin(), eee);
}
-
- transaction.commitTransaction();
}
@Override
Modified: trunk/wao-business/src/main/xmi/wao.zargo
===================================================================
(Binary files differ)
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Administration.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Administration.java 2010-04-06 09:35:00 UTC (rev 424)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Administration.java 2010-04-06 10:22:43 UTC (rev 425)
@@ -22,13 +22,11 @@
package fr.ifremer.wao.ui.pages;
import fr.ifremer.wao.WaoBusinessException;
+import fr.ifremer.wao.WaoBusinessException.Type;
import fr.ifremer.wao.WaoException;
-import fr.ifremer.wao.WaoException;
-import fr.ifremer.wao.bean.UserRole;
import fr.ifremer.wao.entity.Company;
import fr.ifremer.wao.entity.CompanyImpl;
import fr.ifremer.wao.entity.WaoUser;
-import fr.ifremer.wao.entity.WaoUserImpl;
import fr.ifremer.wao.service.ServiceReferential;
import fr.ifremer.wao.service.ServiceUser;
import fr.ifremer.wao.ui.base.GenericSelectModel;
@@ -288,11 +286,15 @@
user.setPasswordChanged(true);
}
try {
- // TODO return true if mail ok
serviceUser.createUpdateUser(user, generatePassword);
userId = user.getId();
} catch (WaoBusinessException eee) {
- layout.addError(eee.getMessage());
+ if (eee.getType().equals(Type.SMTP_NOT_FOUND)) {
+ layout.addInfo(eee.getMessage());
+ userId = user.getId();
+ } else {
+ layout.addError(eee.getMessage());
+ }
}
}
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowHistoric.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowHistoric.java 2010-04-06 09:35:00 UTC (rev 424)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowHistoric.java 2010-04-06 10:22:43 UTC (rev 425)
@@ -156,7 +156,11 @@
public void onSuccessFromAddComment() throws WaoException {
if (canAddComment()) {
- sampleRow.saveSampleRowLog(newLog);
+ try {
+ sampleRow.saveSampleRowLog(newLog);
+ } catch (WaoBusinessException eee) {
+ layout.addInfo(eee.getMessage());
+ }
}
}
Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/UserProfile.java
===================================================================
--- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/UserProfile.java 2010-04-06 09:35:00 UTC (rev 424)
+++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/UserProfile.java 2010-04-06 10:22:43 UTC (rev 425)
@@ -22,6 +22,7 @@
package fr.ifremer.wao.ui.pages;
import fr.ifremer.wao.WaoBusinessException;
+import fr.ifremer.wao.WaoBusinessException.Type;
import fr.ifremer.wao.WaoException;
import fr.ifremer.wao.entity.WaoUser;
import fr.ifremer.wao.service.ServiceUser;
@@ -103,10 +104,12 @@
serviceUser.createUpdateUser(userEditable, false);
layout.addInfo("Modifications enregistrées avec succès !");
} catch (WaoBusinessException eee) {
- userForm.recordError(eee.getMessage());
-// if (log.isErrorEnabled()) {
-// log.error("Error during user save", eee);
-// }
+ if (eee.getType().equals(Type.SMTP_NOT_FOUND)) {
+ layout.addInfo("Modifications enregistrées avec succès !");
+ layout.addInfo(eee.getMessage());
+ } else {
+ userForm.recordError(eee.getMessage());
+ }
}
}
}
1
0
[Suiviobsmer-commits] r424 - trunk/wao-business/src/main/filters
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
by fdesbois@users.labs.libre-entreprise.org 06 Apr '10
06 Apr '10
Author: fdesbois
Date: 2010-04-06 09:35:00 +0000 (Tue, 06 Apr 2010)
New Revision: 424
Modified:
trunk/wao-business/src/main/filters/Wao.properties
Log:
Change default value for hibernate.hbm2ddl.auto to update (instead of create)
Modified: trunk/wao-business/src/main/filters/Wao.properties
===================================================================
--- trunk/wao-business/src/main/filters/Wao.properties 2010-04-06 08:31:35 UTC (rev 423)
+++ trunk/wao-business/src/main/filters/Wao.properties 2010-04-06 09:35:00 UTC (rev 424)
@@ -1,5 +1,5 @@
## Default properties for H2 database
-hibernate.hbm2ddl.auto=create
+hibernate.hbm2ddl.auto=update
hibernate.show_sql=false
hibernate.dialect=org.hibernate.dialect.H2Dialect
hibernate.connection.username=sa
1
0