dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #35045
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 17998: Dashboard, persistence of event reports
------------------------------------------------------------
revno: 17998
committer: Lars Helge Overland <larshelge@xxxxxxxxx>
branch nick: dhis2
timestamp: Wed 2015-01-14 19:17:17 +0100
message:
Dashboard, persistence of event reports
modified:
dhis-2/dhis-api/src/main/java/org/hisp/dhis/dashboard/DashboardItem.java
dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/dashboard/impl/DefaultDashboardService.java
dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/dashboard/hibernate/DashboardItem.hbm.xml
dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/javascript/dashboard.js
--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk
Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dashboard/DashboardItem.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dashboard/DashboardItem.java 2015-01-14 17:55:17 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dashboard/DashboardItem.java 2015-01-14 18:17:17 +0000
@@ -34,6 +34,7 @@
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement;
+
import org.hisp.dhis.chart.Chart;
import org.hisp.dhis.common.BaseIdentifiableObject;
import org.hisp.dhis.common.DxfNamespaces;
@@ -43,6 +44,7 @@
import org.hisp.dhis.common.view.ExportView;
import org.hisp.dhis.document.Document;
import org.hisp.dhis.eventchart.EventChart;
+import org.hisp.dhis.eventreport.EventReport;
import org.hisp.dhis.mapping.Map;
import org.hisp.dhis.report.Report;
import org.hisp.dhis.reporttable.ReportTable;
@@ -87,6 +89,8 @@
private ReportTable reportTable;
+ private EventReport eventReport;
+
@Scanned
private List<User> users = new ArrayList<>();
@@ -138,6 +142,10 @@
{
return TYPE_REPORT_TABLE;
}
+ else if ( eventReport != null )
+ {
+ return TYPE_EVENT_REPORT;
+ }
else if ( !users.isEmpty() )
{
return TYPE_USERS;
@@ -180,6 +188,10 @@
{
return reportTable;
}
+ else if ( eventReport != null )
+ {
+ return eventReport;
+ }
return null;
}
@@ -215,6 +227,7 @@
count += eventChart != null ? 1 : 0;
count += map != null ? 1 : 0;
count += reportTable != null ? 1 : 0;
+ count += eventReport != null ? 1 : 0;
count += users.size();
count += reports.size();
count += resources.size();
@@ -321,6 +334,20 @@
this.reportTable = reportTable;
}
+ @JsonProperty
+ @JsonView( { DetailedView.class, ExportView.class } )
+ @JsonSerialize( as = BaseIdentifiableObject.class )
+ @JacksonXmlProperty( namespace = DxfNamespaces.DXF_2_0 )
+ public EventReport getEventReport()
+ {
+ return eventReport;
+ }
+
+ public void setEventReport( EventReport eventReport )
+ {
+ this.eventReport = eventReport;
+ }
+
@JsonProperty( "users" )
@JsonView( { DetailedView.class, ExportView.class } )
@JsonSerialize( contentAs = BaseIdentifiableObject.class )
=== modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/dashboard/impl/DefaultDashboardService.java'
--- dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/dashboard/impl/DefaultDashboardService.java 2015-01-14 17:55:17 +0000
+++ dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/dashboard/impl/DefaultDashboardService.java 2015-01-14 18:17:17 +0000
@@ -150,6 +150,12 @@
item.setReportTable( objectManager.get( ReportTable.class, contentUid ) );
dashboard.getItems().add( 0, item );
}
+ else if ( TYPE_EVENT_REPORT.equals( type ) )
+ {
+ DashboardItem item = new DashboardItem();
+ item.setEventReport( objectManager.get( EventReport.class, contentUid ) );
+ dashboard.getItems().add( 0, item );
+ }
else if ( TYPE_MESSAGES.equals( type ) )
{
DashboardItem item = new DashboardItem();
@@ -225,6 +231,11 @@
{
item.setReportTable( objectManager.get( ReportTable.class, item.getReportTable().getUid() ) );
}
+
+ if ( item.getEventReport() != null )
+ {
+ item.setEventReport( objectManager.get( EventReport.class, item.getEventReport().getUid() ) );
+ }
if ( item.getUsers() != null )
{
=== modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/dashboard/hibernate/DashboardItem.hbm.xml'
--- dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/dashboard/hibernate/DashboardItem.hbm.xml 2015-01-14 17:55:17 +0000
+++ dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/dashboard/hibernate/DashboardItem.hbm.xml 2015-01-14 18:17:17 +0000
@@ -23,6 +23,8 @@
<many-to-one name="reportTable" class="org.hisp.dhis.reporttable.ReportTable" foreign-key="fk_dashboarditem_reporttableid" />
+ <many-to-one name="eventReport" class="org.hisp.dhis.eventreport.EventReport" foreign-key="fk_dashboarditem_eventreportid" />
+
<list name="users" table="dashboarditem_users">
<key column="dashboarditemid" foreign-key="fk_dashboarditem_users_dashboardid" />
<list-index column="sort_order" base="0" />
=== modified file 'dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/javascript/dashboard.js'
--- dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/javascript/dashboard.js 2015-01-14 17:55:17 +0000
+++ dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/webapp/dhis-web-dashboard-integration/javascript/dashboard.js 2015-01-14 18:17:17 +0000
@@ -639,13 +639,13 @@
}
else if ( "eventReport" == dashboardItem.type )
{
- $d.append( $.tmpl( dhis2.db.tmpl.reportTableItem, { "itemId": dashboardItem.id, "id": dashboardItem.reportTable.id, "name": dashboardItem.reportTable.name, "style": style,
+ $d.append( $.tmpl( dhis2.db.tmpl.eventReportItem, { "itemId": dashboardItem.id, "id": dashboardItem.eventReport.id, "name": dashboardItem.eventReport.name, "style": style,
"i18n_remove": i18n_remove, "i18n_share": i18n_share_interpretation, "i18n_click_and_drag_to_new_position": i18n_click_and_drag_to_new_position } ) );
DHIS.getEventReport({
url: '..',
el: 'plugin-' + dashboardItem.id,
- id: dashboardItem.reportTable.id,
+ id: dashboardItem.eventReport.id,
width: width - scrollbarWidth,
height: 290,
dashboard: true,