[Suiviobsmer-commits] r207 - in trunk: suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl suiviobsmer-business/src/main/xmi suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/impl suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/base suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages suiviobsmer-ui/src/main/resources/fr/ifremer/suiviobsmer/ui/pages suiviobsmer-ui/src/main/webapp suiviobsmer-ui/src/main/webapp/css suiviobsmer-ui/src/main/webapp/img
Author: fdesbois Date: 2010-01-15 15:14:48 +0000 (Fri, 15 Jan 2010) New Revision: 207 Added: trunk/suiviobsmer-ui/src/main/resources/fr/ifremer/suiviobsmer/ui/pages/Synthesis.properties trunk/suiviobsmer-ui/src/main/webapp/img/chart-area.png trunk/suiviobsmer-ui/src/main/webapp/img/chart-bar.png trunk/suiviobsmer-ui/src/main/webapp/img/chart-line.png Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java trunk/suiviobsmer-business/src/main/xmi/suiviobsmer.zargo trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImplTest.java trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/base/AbstractFilteredPage.java trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Boats.java trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Contacts.java trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Synthesis.java trunk/suiviobsmer-ui/src/main/webapp/Synthesis.tml trunk/suiviobsmer-ui/src/main/webapp/css/synthesis.css Log: - Add boolean to filter by finished row only or not in getSampleRowsByUser - Improve Synthesis dataSampling style Modified: trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java =================================================================== --- trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java 2010-01-15 14:11:47 UTC (rev 206) +++ trunk/suiviobsmer-business/src/main/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImpl.java 2010-01-15 15:14:48 UTC (rev 207) @@ -333,7 +333,7 @@ } @Override - public List<SampleRow> getSampleRowsForUser(User user) throws SuiviObsmerException { + public List<SampleRow> getSampleRowsForUser(User user, boolean finished) throws SuiviObsmerException { TopiaContext transaction = null; List<SampleRow> results = new ArrayList<SampleRow>(); try { @@ -341,12 +341,16 @@ // TODO-FD20090106 add filters for facadeName and sectorName (in argument) for Boats and Contacts use - Date current = SuiviObsmerContext.getCurrentDate(); - SampleRowDAO dao = SuiviObsmerModelDAOHelper.getSampleRowDAO(transaction); - // Only rows which are not finished will be kept - TopiaQuery<SampleRow> query = dao.createQuery().add(SampleRow.PERIOD_END, Op.GE, current); + + TopiaQuery<SampleRow> query = dao.createQuery(); + if (finished) { + // Only rows which are not finished will be kept + Date current = SuiviObsmerContext.getCurrentDate(); + query.add(SampleRow.PERIOD_END, Op.GE, current); + } + if (!user.getAdmin()) { query.add(SampleRow.COMPANY, user.getCompany()); } Modified: trunk/suiviobsmer-business/src/main/xmi/suiviobsmer.zargo =================================================================== (Binary files differ) Modified: trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImplTest.java =================================================================== --- trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImplTest.java 2010-01-15 14:11:47 UTC (rev 206) +++ trunk/suiviobsmer-business/src/test/java/fr/ifremer/suiviobsmer/impl/ServiceSamplingImplTest.java 2010-01-15 15:14:48 UTC (rev 207) @@ -336,13 +336,13 @@ /** EXEC METHOD **/ User admin = new UserImpl(); admin.setAdmin(true); - List<SampleRow> results = service.getSampleRowsForUser(admin); + List<SampleRow> results = service.getSampleRowsForUser(admin, true); // total in file : 11, 1 refused, 1 finished assertEquals(9, results.size()); User user = new UserImpl(); user.setCompany(company); - results = service.getSampleRowsForUser(user); + results = service.getSampleRowsForUser(user, true); assertEquals(1, results.size()); } Modified: trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/base/AbstractFilteredPage.java =================================================================== --- trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/base/AbstractFilteredPage.java 2010-01-15 14:11:47 UTC (rev 206) +++ trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/base/AbstractFilteredPage.java 2010-01-15 15:14:48 UTC (rev 207) @@ -82,6 +82,9 @@ @Persist private SelectModel sectorSelectModel; +// public enum FIELD { +// FACADE, SECTOR, SAMPLE_ROW, PROGRAM; +// } protected void initFilter() throws SuiviObsmerException { facadeSelectModel = null; @@ -129,7 +132,7 @@ if (log.isInfoEnabled()) { log.info("BUSINESS REQUEST [getSampleRowsForUser]"); } - List<SampleRow> sampleRows = serviceSampling.getSampleRowsForUser(user); + List<SampleRow> sampleRows = serviceSampling.getSampleRowsForUser(user, getFinishedSampleRowsOnly()); sampleRowSelectModel = new GenericSelectModel<SampleRow>(sampleRows, SampleRow.class, "code", "topiaId", propertyAccess); } @@ -150,6 +153,8 @@ protected abstract Zone getFilterZone(); + protected abstract boolean getFinishedSampleRowsOnly(); + @Log public Object onChangeFromFacadeName(String value) throws SuiviObsmerException { if (!StringUtils.isEmpty(value.trim())) { Modified: trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Boats.java =================================================================== --- trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Boats.java 2010-01-15 14:11:47 UTC (rev 206) +++ trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Boats.java 2010-01-15 15:14:48 UTC (rev 207) @@ -323,7 +323,7 @@ options.add(new OptionModelImpl(code,code)); } sampleRowSelectModel = new SelectModelImpl(null, options);*/ - List<SampleRow> sampleRows = serviceSampling.getSampleRowsForUser(user); + List<SampleRow> sampleRows = serviceSampling.getSampleRowsForUser(user, true); sampleRowSelectModel = new GenericSelectModel<SampleRow>(sampleRows, SampleRow.class, "code", "code", propertyAccess); } Modified: trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Contacts.java =================================================================== --- trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Contacts.java 2010-01-15 14:11:47 UTC (rev 206) +++ trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Contacts.java 2010-01-15 15:14:48 UTC (rev 207) @@ -166,6 +166,11 @@ return filtersZone; } + @Override + protected boolean getFinishedSampleRowsOnly() { + return true; + } + void onSuccessFromSearchBoat() { } Modified: trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Synthesis.java =================================================================== --- trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Synthesis.java 2010-01-15 14:11:47 UTC (rev 206) +++ trunk/suiviobsmer-ui/src/main/java/fr/ifremer/suiviobsmer/ui/pages/Synthesis.java 2010-01-15 15:14:48 UTC (rev 207) @@ -118,6 +118,11 @@ return dataSamplingFiltersZone; } + @Override + protected boolean getFinishedSampleRowsOnly() { + return false; + } + public JFreeChart getDataSamplingChart() throws SuiviObsmerException { if (log.isInfoEnabled()) { log.info("BUSINESS REQUEST [getDataSampling]"); Added: trunk/suiviobsmer-ui/src/main/resources/fr/ifremer/suiviobsmer/ui/pages/Synthesis.properties =================================================================== --- trunk/suiviobsmer-ui/src/main/resources/fr/ifremer/suiviobsmer/ui/pages/Synthesis.properties (rev 0) +++ trunk/suiviobsmer-ui/src/main/resources/fr/ifremer/suiviobsmer/ui/pages/Synthesis.properties 2010-01-15 15:14:48 UTC (rev 207) @@ -0,0 +1,8 @@ +periodBegin-label: D\u00E9but +periodEnd-label: Fin +boatName-label: Nom +boatImmatriculation-label: N\u00B0 +boatDistrictCode-label: Quartier +facadeName-label: Fa\u00E7ade +sectorName-label: Zone +sampleRow-label: Code ligne \ No newline at end of file Modified: trunk/suiviobsmer-ui/src/main/webapp/Synthesis.tml =================================================================== --- trunk/suiviobsmer-ui/src/main/webapp/Synthesis.tml 2010-01-15 14:11:47 UTC (rev 206) +++ trunk/suiviobsmer-ui/src/main/webapp/Synthesis.tml 2010-01-15 15:14:48 UTC (rev 207) @@ -43,21 +43,22 @@ sed rutrum libero. </p> </div>--> - <div class="acenter"> + <div class="acenter" id="so-datasampling"> <fieldset> - <legend>Recherche avancée</legend> + <legend>Filtres</legend> <div class="so-filters-form"> <div t:type="zone" t:id="dataSamplingFiltersZone" t:update="show" id="so-datasampling-filters"> <form t:type="form" t:id="filtersForm"> <t:errors /> <div class="t-beaneditor"> - <div> - <t:label t:for="boatName" />: - <input t:type="textfield" t:id="boatName" t:value="filter.boatName" t:mixins="Autocomplete" /> - <t:label t:for="boatImmatriculation" />: - <input t:type="textfield" t:id="boatImmatriculation" class="width50" t:value="filter.boatImmatriculation" /> - <t:label t:for="boatDistrictCode" />: - <input t:type="textfield" t:id="boatDistrictCode" class="width50" t:value="filter.boatDistrictCode" /> + <div class="filterRow"> + <label>Période: </label> + <t:label t:for="periodBegin" />: + <input t:type="datefield" class="width70" t:id="periodBegin" t:value="filter.period.fromDate" /> + <t:label t:for="periodEnd" />: + <input t:type="datefield" class="width70" t:id="periodEnd" t:value="filter.period.thruDate" /> + </div> + <div class="filterRow"> <t:label t:for="facadeName" />: <select t:type="select" t:id="facadeName" t:model="facadeSelectModel" value="filter.facadeName" t:mixins="zoneUpdater" t:event="change" t:zone="so-datasampling-filters"/> @@ -65,6 +66,18 @@ <select t:type="select" t:id="sectorName" t:model="sectorSelectModel" value="filter.sectorName" /> <t:label t:for="sampleRow" />: <input t:type="select" t:id="sampleRow" t:model="sampleRowSelectModel" value="sampleRowId" /> + <!--<t:label t:for="program" />: + <input t:type="select" t:id="program" t:model="programSelectModel" value="programId" />--> + </div> + <div class="filterRow"> + <label>Navire: </label> + <t:label t:for="boatName" />: + <input t:type="textfield" t:id="boatName" t:value="filter.boatName" t:mixins="Autocomplete" /> + <t:label t:for="boatImmatriculation" />: + <input t:type="textfield" t:id="boatImmatriculation" class="width50" t:value="filter.boatImmatriculation" /> + <t:label t:for="boatDistrictCode" />: + <input t:type="textfield" t:id="boatDistrictCode" class="width50" t:value="filter.boatDistrictCode" /> + </div> <!-- <t:if t:test="user.admin"> <t:label t:for="program" />: <input t:type="select" t:id="program" t:model="programSelectModel" value="dataSamplingFilter.programName" /> @@ -74,8 +87,7 @@ <t:if t:test="user.admin"> <t:label t:for="company" />: <input t:type="select" t:id="company" t:model="companySelectModel" value="companyId" /> - </t:if>--> - </div><p> </p> + </t:if>--> <div class="t-beaneditor-row aright"> <input t:type="submit" class="ico search-32px" t:id="search" value="Search" /> <input t:type="submit" class="ico undo" t:id="reset" value="Reset" /> @@ -85,10 +97,16 @@ </div> </div> </fieldset> - <p> - <a t:type="actionlink" t:id="setDataSamplingChartBarType">BAR</a> - <a t:type="actionlink" t:id="setDataSamplingChartAreaType">AREA</a> - <a t:type="actionlink" t:id="setDataSamplingChartLineType">LINE</a> + <p class="so-chart-types"> + <a t:type="actionlink" t:id="setDataSamplingChartBarType"> + <img src="${asset:context:}/img/chart-bar.png" alt="Diagramme en bâtons" title="Diagramme en bâtons" /> + </a> + <a t:type="actionlink" t:id="setDataSamplingChartAreaType"> + <img src="${asset:context:}/img/chart-area.png" alt="Diagramme avec zones" title="Diagramme avec zones" /> + </a> + <a t:type="actionlink" t:id="setDataSamplingChartLineType"> + <img src="${asset:context:}/img/chart-line.png" alt="Diagramme linéaire (courbe)" title="Diagramme linéaire (courbe)" /> + </a> </p> <t:chart t:width="550" t:height="350" t:chart="dataSamplingChart" /> </div> Modified: trunk/suiviobsmer-ui/src/main/webapp/css/synthesis.css =================================================================== --- trunk/suiviobsmer-ui/src/main/webapp/css/synthesis.css 2010-01-15 14:11:47 UTC (rev 206) +++ trunk/suiviobsmer-ui/src/main/webapp/css/synthesis.css 2010-01-15 15:14:48 UTC (rev 207) @@ -13,7 +13,7 @@ margin-top: 20px; } -div#so-synthesis-indicators { +/*div#so-synthesis-indicators { width: 80%; margin-left: 17%; margin-right: auto; @@ -57,5 +57,28 @@ margin-top: 10px; text-align: justify; text-indent: 30px; +}*/ + +div#so-datasampling fieldset { + width: 60%; + margin-left: auto; + margin-right: auto; + text-align: left; + padding: 10px; + padding-left: 20px; } +div#so-datasampling-filters div.filterRow { + margin-bottom: 5px; + margin-top: 5px; +} + +div#so-datasampling p.so-chart-types { + margin-top: 5px; + margin-bottom: 5px; +} + +div#so-datasampling p.so-chart-types a img { + border: 1px solid #133852; +} + Added: trunk/suiviobsmer-ui/src/main/webapp/img/chart-area.png =================================================================== (Binary files differ) Property changes on: trunk/suiviobsmer-ui/src/main/webapp/img/chart-area.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: trunk/suiviobsmer-ui/src/main/webapp/img/chart-bar.png =================================================================== (Binary files differ) Property changes on: trunk/suiviobsmer-ui/src/main/webapp/img/chart-bar.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: trunk/suiviobsmer-ui/src/main/webapp/img/chart-line.png =================================================================== (Binary files differ) Property changes on: trunk/suiviobsmer-ui/src/main/webapp/img/chart-line.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream
participants (1)
-
fdesbois@users.labs.libre-entreprise.org