dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #15040
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 5271: Merge Data Analyser Module from 2.3 to trunk
------------------------------------------------------------
revno: 5271
committer: Mithilesh Kumar Thakur<mithilesh.hisp@xxxxxxxxx>
branch nick: dhis2
timestamp: Sat 2011-12-03 13:14:11 +0530
message:
Merge Data Analyser Module from 2.3 to trunk
added:
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForExcelSheetFormAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForExcelSheetResultAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/util/SendingBulkSMSFromExcelJob.java
local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/BulkSMSForExcelSheetForm.vm
local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/BulkSMSForExcelSheetResult.vm
modified:
local/in/dhis-web-dashboard/pom.xml
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/action/IDSPOutbreakAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/action/GenerateCommentResultAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/action/GenerateSummaryDataStatusResultAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/mobile/action/GenerateDataStatusMobileFormAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/IndicatorwiseGAFormAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateChartDataElementAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateChartIndicatorAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateDrillDownOrgUnitToPeriodChartDataElementResultAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateDrillDownPeriodToOrgChildChartDataElementResultAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForProgSummaryResultAction.java
local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/util/DashBoardService.java
local/in/dhis-web-dashboard/src/main/resources/META-INF/dhis/beans.xml
local/in/dhis-web-dashboard/src/main/resources/org/hisp/dhis/dataanalyser/i18n_module.properties
local/in/dhis-web-dashboard/src/main/resources/struts.xml
local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/commentResult.vm
local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/css/StylesForTags.css
local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/graphicalAnalysisDataElementResult.vm
local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/menu.vm
--
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 'local/in/dhis-web-dashboard/pom.xml'
--- local/in/dhis-web-dashboard/pom.xml 2011-10-24 11:27:50 +0000
+++ local/in/dhis-web-dashboard/pom.xml 2011-12-03 07:44:11 +0000
@@ -105,6 +105,17 @@
<artifactId>junit</artifactId>
</dependency>
-->
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-context-support</artifactId>
+ <version>${spring.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>opensymphony</groupId>
+ <artifactId>quartz</artifactId>
+ <version>1.6.3</version>
+ </dependency>
+
<dependency>
<groupId>jfree</groupId>
<artifactId>jfreechart</artifactId>
=== modified file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/action/IDSPOutbreakAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/action/IDSPOutbreakAction.java 2011-11-03 06:07:39 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/action/IDSPOutbreakAction.java 2011-12-03 07:44:11 +0000
@@ -253,6 +253,7 @@
private String populationDeId;
private Integer orgUnitGroupId;
+ private String dataSetId;
// ---------------------------------------------------------------
// Action Implementation
// ---------------------------------------------------------------
@@ -261,7 +262,6 @@
throws Exception
{
statementManager.initialise();
-
int idspFlag = 0;
if ( currentUserService.getCurrentUser() != null )
@@ -352,6 +352,10 @@
int populationData = dashBoardService.getAggregatedData( orgUnitIdsByComma1, populationDeId, populationPeriodId );
+ int confirmedCount = dashBoardService.getConfirmedCount( orgUnitIdsByComma, dataSetId, periodId );
+ int totalSubcentreCount = childTree.size();
+ System.out.println(confirmedCount + " : " + totalSubcentreCount );
+
for( String norm : normInfo )
{
String normId = norm.split( "@:@" )[0];
@@ -366,14 +370,29 @@
if( deathData >= 1 )
{
outBreakAlertMap.put( normName+":"+ou.getId(), deathData + " Deaths" );
- outBreakAlertColorMap.put( normName+":"+ou.getId(), "RED" );
+
+ if( confirmedCount != totalSubcentreCount )
+ {
+ outBreakAlertColorMap.put( normName+":"+ou.getId(), "PINK" );
+ }
+ else
+ {
+ outBreakAlertColorMap.put( normName+":"+ou.getId(), "RED" );
+ }
}
else
{
long minLimit = Math.round( populationData/1000.0 );
long maxLimit = Math.round( (populationData/1000.0) * 5 );
outBreakAlertMap.put( normName+":"+ou.getId(), caseData + " Cases" );
+
+ if( confirmedCount != totalSubcentreCount )
+ {
+ outBreakAlertColorMap.put( normName+":"+ou.getId(), "PINK" );
+ continue;
+ }
+
if( minLimit == 0 || maxLimit == 0 )
{
outBreakAlertColorMap.put( normName+":"+ou.getId(), "WHITE" );
@@ -433,6 +452,8 @@
populationDeId = doc.getElementsByTagName( "population" ).item( 0 ).getFirstChild().getNodeValue();
+ dataSetId = doc.getElementsByTagName( "dataset" ).item( 0 ).getFirstChild().getNodeValue();
+
orgUnitGroupId = Integer.parseInt( doc.getElementsByTagName( "orgunitgroup" ).item( 0 ).getFirstChild().getNodeValue() );
NodeList listOfNorms = doc.getElementsByTagName( "norm" );
=== modified file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/action/GenerateCommentResultAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/action/GenerateCommentResultAction.java 2011-11-22 07:20:09 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/action/GenerateCommentResultAction.java 2011-12-03 07:44:11 +0000
@@ -84,13 +84,7 @@
// ---------------------------------------------------------------
// Input/Output Parameters
// ---------------------------------------------------------------
-
-
-
-
-
-
-
+
private String selectedDataSets;
public void setSelectedDataSets( String selectedDataSets )
=== modified file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/action/GenerateSummaryDataStatusResultAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/action/GenerateSummaryDataStatusResultAction.java 2011-10-14 12:26:01 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/action/GenerateSummaryDataStatusResultAction.java 2011-12-03 07:44:11 +0000
@@ -279,6 +279,8 @@
Set<OrganisationUnit> dso;
+ Map<String, Double> tempOuMapResult;
+
// ---------------------------------------------------------------
// Action Implementation
// ---------------------------------------------------------------
@@ -289,6 +291,7 @@
dataViewName = "";
// Intialization
+ tempOuMapResult = new HashMap<String, Double>();
ouMapForChildDSAssociation = new HashMap<OrganisationUnit, Integer>();
ouMapForColor = new HashMap<OrganisationUnit, Integer>();
ouMapStatusResult = new HashMap<OrganisationUnit, List<Integer>>();
@@ -395,11 +398,9 @@
String query = "";
String query2 = "";
- query = "SELECT COUNT(*) FROM " + dataViewName
- + " WHERE dataelementid IN (?) AND sourceid IN (?) AND periodid IN (?)";
+ query = "SELECT COUNT(*) FROM " + dataViewName + " WHERE dataelementid IN (?) AND sourceid IN (?) AND periodid IN (?)";
- query2 = "SELECT COUNT(*) FROM " + dataViewName
- + " WHERE dataelementid IN (?) AND sourceid = ? AND periodid IN (?)";
+ query2 = "SELECT COUNT(*) FROM " + dataViewName + " WHERE dataelementid IN (?) AND sourceid = ? AND periodid IN (?)";
Iterator<OrganisationUnit> orgUnitListIterator = orgUnitList.iterator();
OrganisationUnit o;
@@ -408,17 +409,27 @@
dso = selDataSet.getSources();
String orgUnitId = "";
+ Map<Integer, Integer> orgunitLevelMap = new HashMap<Integer, Integer>( dashBoardService.getOrgunitLevelMap() );
+
while ( orgUnitListIterator.hasNext() )
{
o = (OrganisationUnit) orgUnitListIterator.next();
orgUnitInfo = "" + o.getId();
- if ( maxOULevel < organisationUnitService.getLevelOfOrganisationUnit( o ) )
- maxOULevel = organisationUnitService.getLevelOfOrganisationUnit( o );
-
- if ( minOULevel > organisationUnitService.getLevelOfOrganisationUnit( o ) )
- minOULevel = organisationUnitService.getLevelOfOrganisationUnit( o );
-
+ Integer ouL = orgunitLevelMap.get( o.getId() );
+ if( ouL == null )
+ {
+ ouL = organisationUnitService.getLevelOfOrganisationUnit( o );
+ }
+ if( maxOULevel < ouL )
+ {
+ maxOULevel = ouL;
+ }
+ if( minOULevel > ouL )
+ {
+ minOULevel = ouL;
+ }
+
periodIterator = periodList.iterator();
Period p;
double dataStatusPercentatge;
@@ -461,8 +472,10 @@
{
OrganisationUnit cUnit = (OrganisationUnit) assignedChildrenIterator.next();
orgUnitInfo = "-1";
- orgUnitId = "-1,";
- orgUnitId += String.valueOf( cUnit.getId() );
+ dataStatusPercentatge = 0.0;
+ //orgUnitId = "-1,";
+ //orgUnitId += String.valueOf( cUnit.getId() );
+ orgUnitId = ""+ cUnit.getId();
orgUnitCount = 0;
getOrgUnitInfo( o, dso );
@@ -478,32 +491,47 @@
+ ") AND sourceid IN (" + orgUnitId + ") AND periodid IN (" + periodInfo + ")";
}
- SqlRowSet sqlResultSet = jdbcTemplate.queryForRowSet( query2 );
-
- if ( sqlResultSet.next() )
+ Double tempDataStatusCount = tempOuMapResult.get( orgUnitId+":"+periodInfo );
+ if( tempDataStatusCount == null )
{
- try
+ SqlRowSet sqlResultSet = jdbcTemplate.queryForRowSet( query2 );
+
+ if ( sqlResultSet.next() )
{
- dataStatusPercentatge = ((double) sqlResultSet.getInt( 1 ) / (double) (dataSetMemberCount1)) * 100.0;
+ try
+ {
+ dataStatusPercentatge = ((double) sqlResultSet.getInt( 1 ) / (double) (dataSetMemberCount1)) * 100.0;
+ }
+ catch ( Exception e )
+ {
+ dataStatusPercentatge = 0.0;
+ }
}
- catch ( Exception e )
+ else
{
dataStatusPercentatge = 0.0;
}
+
+ if( dataStatusPercentatge > 100.0 )
+ {
+ dataStatusPercentatge = 100;
+ }
+
+ dataStatusPercentatge = Math.round( dataStatusPercentatge * Math.pow( 10, 0 ) ) / Math.pow( 10, 0 );
+
+ tempOuMapResult.put( orgUnitId+":"+periodInfo, dataStatusPercentatge );
+
}
else
- dataStatusPercentatge = 0.0;
-
- if ( dataStatusPercentatge > 100.0 )
- dataStatusPercentatge = 100;
-
- dataStatusPercentatge = Math.round( dataStatusPercentatge * Math.pow( 10, 0 ) )
- / Math.pow( 10, 0 );
+ {
+ dataStatusPercentatge = tempDataStatusCount;
+ }
if ( dataStatusPercentatge >= 5.0 )
{
dataStatusCount += 1;
}
+
}
dsSummaryResults.add( dataStatusCount );
=== modified file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/mobile/action/GenerateDataStatusMobileFormAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/mobile/action/GenerateDataStatusMobileFormAction.java 2010-12-08 07:24:10 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ds/mobile/action/GenerateDataStatusMobileFormAction.java 2011-12-03 07:44:11 +0000
@@ -120,7 +120,8 @@
}
// Remove datasets which are nor mobile datasets
- else if ( d.getMobile() == null || !d.getMobile())
+ //else if ( d.getMobile() == null || !d.getMobile())
+ else if ( !d.isMobile() )
{
dataSetListIterator.remove();
}
=== modified file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/IndicatorwiseGAFormAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/IndicatorwiseGAFormAction.java 2011-10-24 11:27:50 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/IndicatorwiseGAFormAction.java 2011-12-03 07:44:11 +0000
@@ -66,7 +66,7 @@
// Dependencies
// -------------------------------------------------------------------------
- private IndicatorService indicatorService ;
+ private IndicatorService indicatorService;
public void setIndicatorService( IndicatorService indicatorService )
{
@@ -202,13 +202,13 @@
public String execute() throws Exception
{
-
/* DataElements and Groups */
indicators = new ArrayList<Indicator>( indicatorService.getAllIndicators());
indicatorGroups = new ArrayList<IndicatorGroup>( indicatorService.getAllIndicatorGroups()) ;
Collections.sort( indicators, new IndicatorNameComparator() );
Collections.sort( indicatorGroups, new IndicatorGroupNameComparator() );
+ System.out.println( "--Size of Indicators is--" + indicators.size() + ",----Size of Indicators Group is is-- " + indicatorGroups.size() );
/* Periods Type */
periodTypes = new ArrayList<PeriodType>( periodService.getAllPeriodTypes() );
=== modified file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateChartDataElementAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateChartDataElementAction.java 2011-09-03 09:46:15 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateChartDataElementAction.java 2011-12-03 07:44:11 +0000
@@ -384,7 +384,14 @@
{
aggChecked = "0";
}
-
+ /*
+ System.out.println( ougGroupSetCB );
+
+ if( ougGroupSetCB.equalsIgnoreCase( "false" ))
+ {
+ ougGroupSetCB = null;
+ }
+ */
// ----------------------------------------------------------------------
// Period Info
// ----------------------------------------------------------------------
@@ -648,6 +655,7 @@
if ( deSelection.equalsIgnoreCase( OPTIONCOMBO ) )
{
+ System.out.println( "In side deOptionCombo " + deSelection );
Iterator<String> deIterator = selectedDataElements.iterator();
while ( deIterator.hasNext() )
{
@@ -674,7 +682,8 @@
}
selectedServiceList = new ArrayList<Object>( dataElementList );
-
+
+ System.out.println( "Size of selected OptionCombo List is " + selectedOptionComboList.size() );
// ----------------------------------------------------------------------
// OrgUnit Information
// ----------------------------------------------------------------------
@@ -826,7 +835,7 @@
decoc = decocList.get( serviceCount );
series[serviceCount] = dataElement.getName() + " : " + decoc.getName();
-
+
CaseAggregationCondition caseAggregationCondition = caseAggregationConditionService
.getCaseAggregationCondition( dataElement, decoc );
@@ -882,25 +891,24 @@
selectedDrillDownData.add( drillDownData );
Double aggDataValue = 0.0;
-
- Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
- while ( optionComboIterator.hasNext() )
+
+ if ( deSelection.equalsIgnoreCase( OPTIONCOMBO ) )
{
- DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator.next();
-
+ //System.out.println( " Inside deSelection.equalsIgnoreCase( OPTIONCOMBO ) " );
if ( aggDataCB != null )
{
- Double temp = aggregationService.getAggregatedDataValue( dataElement, decoc1, startDate,
+ Double temp = aggregationService.getAggregatedDataValue( dataElement, decoc, startDate,
endDate, orgUnit );
if ( temp != null )
aggDataValue += temp;
+ //aggDataValue = temp;
}
else
{
Collection<Period> periods = periodService.getPeriodsBetweenDates( startDate, endDate );
for ( Period period : periods )
{
- DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period, decoc1 );
+ DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period, decoc );
try
{
aggDataValue += Double.parseDouble( dataValue.getValue() );
@@ -911,7 +919,40 @@
}
}
}
+ else
+ {
+ //System.out.println( " Inside not deSelection.equalsIgnoreCase( OPTIONCOMBO ) " );
+ Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
+ while ( optionComboIterator.hasNext() )
+ {
+ DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator.next();
+ if ( aggDataCB != null )
+ {
+ Double temp = aggregationService.getAggregatedDataValue( dataElement, decoc1, startDate,
+ endDate, orgUnit );
+ if ( temp != null )
+ aggDataValue += temp;
+ //aggDataValue = temp;
+ }
+ else
+ {
+ Collection<Period> periods = periodService.getPeriodsBetweenDates( startDate, endDate );
+ for ( Period period : periods )
+ {
+ DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period, decoc1 );
+ try
+ {
+ aggDataValue += Double.parseDouble( dataValue.getValue() );
+ }
+ catch ( Exception e )
+ {
+ }
+ }
+ }
+ }
+ }
+ //System.out.println( " Data is : " + aggDataValue );
data[serviceCount][periodCount] = aggDataValue;
if ( dataElement.getType().equalsIgnoreCase( DataElement.VALUE_TYPE_INT ) )
@@ -934,7 +975,6 @@
serviceCount++;
}
-
dataElementChartResult = new DataElementChartResult( series, categories, data, chartTitle, xAxis_Title,
yAxis_Title );
@@ -1003,16 +1043,11 @@
Date endDate = selEndPeriodList.get( periodCount );
Collection<Period> periods = periodService.getPeriodsBetweenDates( startDate, endDate );
- Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
- while ( optionComboIterator.hasNext() )
+ if ( deSelection.equalsIgnoreCase( OPTIONCOMBO ) )
{
- DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator
- .next();
-
if ( aggDataCB != null )
{
- Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1,
- startDate, endDate, orgChild );
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc, startDate, endDate, orgChild );
if ( tempAggDataValue != null )
aggDataValue += tempAggDataValue;
}
@@ -1020,8 +1055,7 @@
{
for ( Period period : periods )
{
- DataValue dataValue = dataValueService.getDataValue( orgChild, dataElement, period,
- decoc1 );
+ DataValue dataValue = dataValueService.getDataValue( orgChild, dataElement, period, decoc );
try
{
aggDataValue += Double.parseDouble( dataValue.getValue() );
@@ -1032,6 +1066,38 @@
}
}
}
+ else
+ {
+ Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
+ while ( optionComboIterator.hasNext() )
+ {
+ DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator
+ .next();
+
+ if ( aggDataCB != null )
+ {
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1,
+ startDate, endDate, orgChild );
+ if ( tempAggDataValue != null )
+ aggDataValue += tempAggDataValue;
+ }
+ else
+ {
+ for ( Period period : periods )
+ {
+ DataValue dataValue = dataValueService.getDataValue( orgChild, dataElement, period,
+ decoc1 );
+ try
+ {
+ aggDataValue += Double.parseDouble( dataValue.getValue() );
+ }
+ catch ( Exception e )
+ {
+ }
+ }
+ }
+ }
+ }
periodCount++;
}
@@ -1118,16 +1184,12 @@
{
Date endDate = selEndPeriodList.get( periodCount );
Collection<Period> periods = periodService.getPeriodsBetweenDates( startDate, endDate );
-
- Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
- while ( optionComboIterator.hasNext() )
+
+ if ( deSelection.equalsIgnoreCase( OPTIONCOMBO ) )
{
- DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator
- .next();
-
if ( aggDataCB != null )
{
- Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1,
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc,
startDate, endDate, orgunit );
if ( tempAggDataValue != null )
aggDataValue += tempAggDataValue;
@@ -1137,7 +1199,7 @@
for ( Period period : periods )
{
DataValue dataValue = dataValueService.getDataValue( orgunit, dataElement, period,
- decoc1 );
+ decoc );
try
{
aggDataValue += Double.parseDouble( dataValue.getValue() );
@@ -1148,6 +1210,38 @@
}
}
}
+ else
+ {
+ Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
+ while ( optionComboIterator.hasNext() )
+ {
+ DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator
+ .next();
+
+ if ( aggDataCB != null )
+ {
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1,
+ startDate, endDate, orgunit );
+ if ( tempAggDataValue != null )
+ aggDataValue += tempAggDataValue;
+ }
+ else
+ {
+ for ( Period period : periods )
+ {
+ DataValue dataValue = dataValueService.getDataValue( orgunit, dataElement, period,
+ decoc1 );
+ try
+ {
+ aggDataValue += Double.parseDouble( dataValue.getValue() );
+ }
+ catch ( Exception e )
+ {
+ }
+ }
+ }
+ }
+ }
periodCount++;
}
@@ -1240,15 +1334,12 @@
int orgGroupCount = 0;
for ( OrganisationUnit orgUnit : selOUGroupMemberList )
{
- Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
- while ( optionComboIterator.hasNext() )
+
+ if ( deSelection.equalsIgnoreCase( OPTIONCOMBO ) )
{
- DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator
- .next();
-
if ( aggDataCB != null )
{
- Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1,
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc,
startDate, endDate, orgUnit );
if ( tempAggDataValue != null )
aggDataValue += tempAggDataValue;
@@ -1258,7 +1349,7 @@
for ( Period period : periods )
{
DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period,
- decoc1 );
+ decoc );
try
{
aggDataValue += Double.parseDouble( dataValue.getValue() );
@@ -1269,6 +1360,38 @@
}
}
}
+ else
+ {
+ Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
+ while ( optionComboIterator.hasNext() )
+ {
+ DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator
+ .next();
+
+ if ( aggDataCB != null )
+ {
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1,
+ startDate, endDate, orgUnit );
+ if ( tempAggDataValue != null )
+ aggDataValue += tempAggDataValue;
+ }
+ else
+ {
+ for ( Period period : periods )
+ {
+ DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period,
+ decoc1 );
+ try
+ {
+ aggDataValue += Double.parseDouble( dataValue.getValue() );
+ }
+ catch ( Exception e )
+ {
+ }
+ }
+ }
+ }
+ }
orgGroupCount++;
}
@@ -1374,17 +1497,13 @@
Date endDate = selEndPeriodList.get( periodCount );
Collection<Period> periods = periodService.getPeriodsBetweenDates( startDate, endDate );
-
- Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
- while ( optionComboIterator.hasNext() )
+
+ if ( deSelection.equalsIgnoreCase( OPTIONCOMBO ) )
{
- DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator
- .next();
-
if ( aggDataCB != null )
{
Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement,
- decoc1, startDate, endDate, orgUnit );
+ decoc, startDate, endDate, orgUnit );
if ( tempAggDataValue != null )
aggDataValue += tempAggDataValue;
}
@@ -1393,7 +1512,7 @@
for ( Period period : periods )
{
DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period,
- decoc1 );
+ decoc );
try
{
@@ -1406,6 +1525,40 @@
}
}
}
+ else
+ {
+ Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
+ while ( optionComboIterator.hasNext() )
+ {
+ DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator
+ .next();
+
+ if ( aggDataCB != null )
+ {
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement,
+ decoc1, startDate, endDate, orgUnit );
+ if ( tempAggDataValue != null )
+ aggDataValue += tempAggDataValue;
+ }
+ else
+ {
+ for ( Period period : periods )
+ {
+ DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period,
+ decoc1 );
+
+ try
+ {
+ aggDataValue += Double.parseDouble( dataValue.getValue() );
+ }
+ catch ( Exception e )
+ {
+
+ }
+ }
+ }
+ }
+ }
periodCount++;
}
}
=== modified file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateChartIndicatorAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateChartIndicatorAction.java 2011-09-03 09:46:15 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateChartIndicatorAction.java 2011-12-03 07:44:11 +0000
@@ -1039,12 +1039,27 @@
aggIndicatorNumValue += tempAggIndicatorNumValue;
}
+
+ if ( tempAggIndicatorDenumValue != null )
+ {
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+ }
+
+
+ /*
if ( tempAggIndicatorDenumValue != null )
{
aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
-
+ */
}
else
{
@@ -1061,10 +1076,12 @@
}
aggIndicatorNumValue += tempAggIndicatorNumValue;
+
Double tempAggIndicatorDenumValue = 0.0;
tempStr = reportService.getIndividualResultDataValue( indicator.getDenominator(), startDate,
endDate, orgChild, "" );
+
try
{
tempAggIndicatorDenumValue = Double.parseDouble( tempStr );
@@ -1073,7 +1090,17 @@
{
tempAggIndicatorDenumValue = 0.0;
}
- aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+
+ //aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
@@ -1182,11 +1209,26 @@
aggIndicatorNumValue += tempAggIndicatorNumValue;
}
+
+ if ( tempAggIndicatorDenumValue != null )
+ {
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+ }
+
+ /*
if ( tempAggIndicatorDenumValue != null )
{
aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
+ */
}
else
{
@@ -1220,7 +1262,18 @@
{
tempAggIndicatorDenumValue = 0.0;
}
- aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+
+ //aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+
// System.out.println( " \nAggIndicator Denum Value : "
// + aggIndicatorDenumValue );
@@ -1342,10 +1395,24 @@
}
if ( tempAggIndicatorDenumValue != null )
{
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+ }
+
+
+ /*
+ if ( tempAggIndicatorDenumValue != null )
+ {
aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
-
+ */
}
else
{
@@ -1380,7 +1447,17 @@
{
tempAggIndicatorDenumValue = 0.0;
}
- aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+
+ //aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
orgGroupCount++;
@@ -1514,10 +1591,22 @@
}
if ( tempAggIndicatorDenumValue != null )
{
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+ }
+ /*
+ if ( tempAggIndicatorDenumValue != null )
+ {
aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
-
+ */
}
else
{
@@ -1553,7 +1642,18 @@
{
tempAggIndicatorDenumValue = 0.0;
}
- aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+
+ //aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+
// System.out.println(
// " \nAggIndicator Denum Value : " +
// aggIndicatorDenumValue );
=== modified file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateDrillDownOrgUnitToPeriodChartDataElementResultAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateDrillDownOrgUnitToPeriodChartDataElementResultAction.java 2011-03-01 09:39:28 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateDrillDownOrgUnitToPeriodChartDataElementResultAction.java 2011-12-03 07:44:11 +0000
@@ -268,8 +268,8 @@
String deSelection = values[8];
String aggDataCB = values[9];
- System.out.println( selStartPeriodList + ":" + selEndPeriodList + ":" + periodTypeLB + ":" + dataElementList+ ":" + deSelection + ":" + selectedOptionComboList + ":" + selectedOrgUnit + ":" + aggDataCB );
- System.out.println( "Chart Generation Start Time is for drillDown: \t" + new Date() );
+ //System.out.println( selStartPeriodList + ":" + selEndPeriodList + ":" + periodTypeLB + ":" + dataElementList+ ":" + deSelection + ":" + selectedOptionComboList + ":" + selectedOrgUnit + ":" + aggDataCB );
+ //System.out.println( "Chart Generation Start Time is for drillDown: \t" + new Date() );
if( orgUnitGroup == 0 && ( categoryLB.equalsIgnoreCase( PERIODWISE )) )
{
=== modified file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateDrillDownPeriodToOrgChildChartDataElementResultAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateDrillDownPeriodToOrgChildChartDataElementResultAction.java 2011-03-01 09:39:28 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/ga/action/charts/GenerateDrillDownPeriodToOrgChildChartDataElementResultAction.java 2011-12-03 07:44:11 +0000
@@ -270,8 +270,8 @@
String deSelection = values[8];
String aggDataCB = values[9];
- System.out.println( selStartPeriodList + ":" + selEndPeriodList + ":" +periodTypeLB + ":" + dataElementList+ ":" + deSelection + ":" + selectedOptionComboList + ":" + selectedOrgUnit + ":" + aggDataCB );
- System.out.println( "Chart Generation Start Time is for drillDown: \t" + new Date() );
+ //System.out.println( selStartPeriodList + ":" + selEndPeriodList + ":" +periodTypeLB + ":" + dataElementList+ ":" + deSelection + ":" + selectedOptionComboList + ":" + selectedOrgUnit + ":" + aggDataCB );
+ // System.out.println( "Chart Generation Start Time is for drillDown: \t" + new Date() );
if( orgUnitGroup == 0 && ( categoryLB.equalsIgnoreCase( CHILDREN ) || ( categoryLB.equalsIgnoreCase( SELECTED )) ))
{
=== added file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForExcelSheetFormAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForExcelSheetFormAction.java 1970-01-01 00:00:00 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForExcelSheetFormAction.java 2011-12-03 07:44:11 +0000
@@ -0,0 +1,17 @@
+package org.hisp.dhis.dataanalyser.sms.action;
+
+import com.opensymphony.xwork2.Action;
+
+public class BulkSMSForExcelSheetFormAction implements Action
+{
+
+ // -------------------------------------------------------------------------
+ // Action Implementation
+ // -------------------------------------------------------------------------
+
+ public String execute() throws Exception
+ {
+ return SUCCESS;
+ }
+
+}
=== added file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForExcelSheetResultAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForExcelSheetResultAction.java 1970-01-01 00:00:00 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForExcelSheetResultAction.java 2011-12-03 07:44:11 +0000
@@ -0,0 +1,91 @@
+package org.hisp.dhis.dataanalyser.sms.action;
+
+import java.io.File;
+import java.util.UUID;
+import jxl.Sheet;
+import jxl.Workbook;
+import jxl.write.WritableWorkbook;
+
+import org.hisp.dhis.dataanalyser.util.BulkSMSHttpInterface;
+
+import com.opensymphony.xwork2.Action;
+
+public class BulkSMSForExcelSheetResultAction implements Action
+{
+
+ // -------------------------------------------------------------------------
+ // Dependencies
+ // -------------------------------------------------------------------------
+
+ // -------------------------------------------------------------------------
+ // Getter & Setter
+ // -------------------------------------------------------------------------
+
+ private String resultMessage;
+
+ public String getResultMessage()
+ {
+ return resultMessage;
+ }
+
+ private File output;
+
+ public File getOutput()
+ {
+ return output;
+ }
+
+ private File upload;
+
+ public File getUpload()
+ {
+ return upload;
+ }
+
+ public void setUpload( File upload )
+ {
+ this.upload = upload;
+ }
+
+ // -------------------------------------------------------------------------
+ // Action Implementation
+ // -------------------------------------------------------------------------
+
+ public String execute() throws Exception
+ {
+ BulkSMSHttpInterface bulkSMSHTTPInterface = new BulkSMSHttpInterface();
+
+ int rowStart = 2;
+ int colStart = 1;
+ int rowEnd = 65530;
+
+ try
+ {
+ String outputReportPath = System.getenv( "DHIS2_HOME" ) + File.separator + "temp" + File.separator + UUID.randomUUID().toString() + ".xls";
+ Workbook excelImportFile = Workbook.getWorkbook( upload );
+ WritableWorkbook writableExcelImportFile = Workbook.createWorkbook( new File(outputReportPath), excelImportFile );
+ Sheet sheet = writableExcelImportFile.getSheet( 0 );
+
+ for( int i = rowStart; i < rowEnd; i++ )
+ {
+ String cellContent1 = sheet.getCell( colStart, i).getContents();
+ String cellContent2 = sheet.getCell( colStart+1, i).getContents();
+ if( cellContent1 == null || cellContent1.equalsIgnoreCase( "" ) || cellContent2 == null || cellContent2.equalsIgnoreCase( "" ) )
+ {
+ continue;
+ }
+ System.out.println( cellContent1 + " : " + cellContent2 );
+ bulkSMSHTTPInterface.sendMessage( cellContent2, cellContent1 );
+ }
+
+ resultMessage = bulkSMSHTTPInterface.checkBalance();
+ }
+ catch( Exception e )
+ {
+ resultMessage = "Not able to send SMS to the group bec of "+e.getMessage();
+ e.printStackTrace();
+ }
+
+ return SUCCESS;
+ }
+}
=== modified file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForProgSummaryResultAction.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForProgSummaryResultAction.java 2011-10-13 09:49:44 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/sms/action/BulkSMSForProgSummaryResultAction.java 2011-12-03 07:44:11 +0000
@@ -60,7 +60,7 @@
{
Map<OrganisationUnit,String> tempOrgUnitMap = new HashMap<OrganisationUnit, String>();
- BulkSMSHttpInterface bulkSMSHTTPInterface = new BulkSMSHttpInterface();;
+ BulkSMSHttpInterface bulkSMSHTTPInterface = new BulkSMSHttpInterface();
try
{
=== modified file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/util/DashBoardService.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/util/DashBoardService.java 2011-11-03 06:07:39 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/util/DashBoardService.java 2011-12-03 07:44:11 +0000
@@ -126,6 +126,31 @@
}
+ public Map<Integer, Integer> getOrgunitLevelMap( )
+ {
+ Map<Integer, Integer> orgUnitLevelMap = new HashMap<Integer, Integer>();
+ try
+ {
+ String query = "SELECT organisationunitid,level FROM _orgunitstructure";
+
+ SqlRowSet rs = jdbcTemplate.queryForRowSet( query );
+
+ while ( rs.next() )
+ {
+ Integer orgUnitId = rs.getInt( 1 );
+ Integer level = rs.getInt( 2 );
+
+ orgUnitLevelMap.put( orgUnitId, level );
+ }
+
+ return orgUnitLevelMap;
+ }
+ catch( Exception e )
+ {
+ throw new RuntimeException( "Illegal DataElement id", e );
+ }
+ }
+
public String getPeriodIdForIDSPPopulation( )
{
String periodIdResult = "-1";
@@ -155,6 +180,34 @@
}
+ public Integer getConfirmedCount( String orgUnitIdsByComma, String dataSetId, String periodId )
+ {
+ Integer confirmedCount = 0;
+
+ try
+ {
+ String query = "SELECT COUNT(*) FROM completedatasetregistration " +
+ " WHERE sourceid IN ("+ orgUnitIdsByComma +") AND " +
+ " datasetid = "+ dataSetId +" AND " +
+ " periodid = "+periodId;
+
+ SqlRowSet rs1 = jdbcTemplate.queryForRowSet( query );
+
+ if ( rs1 != null && rs1.next() )
+ {
+ double temp = rs1.getDouble( 1 );
+
+ confirmedCount = (int) temp;
+ }
+ }
+ catch( Exception e )
+ {
+ throw new RuntimeException( e );
+ }
+
+ return confirmedCount;
+ }
+
public String getPeriodIdForIDSPOutBreak( )
{
String periodIdResult = "-1";
@@ -169,7 +222,7 @@
int periodId = -1;
String query = "SELECT periodid, startdate, enddate FROM period WHERE periodtypeid = 2 AND " +
- " startdate <= '" + toDaysDate + "' AND enddate >= '"+ toDaysDate +"'";
+ " startdate <= '" + toDaysDate + "' AND enddate >= '"+ toDaysDate +"'";
SqlRowSet rs1 = jdbcTemplate.queryForRowSet( query );
if ( rs1 != null && rs1.next() )
@@ -278,9 +331,9 @@
}
query = "SELECT program.name, COUNT(*) FROM programinstance " +
- " INNER JOIN patient ON programinstance.patientid = patient.patientid " +
- " INNER JOIN program ON programinstance.programid = program.programid " +
- " WHERE patient.organisationunitid IN ("+ orgUnitIdsByComma +") GROUP BY program.programid";
+ " INNER JOIN patient ON programinstance.patientid = patient.patientid " +
+ " INNER JOIN program ON programinstance.programid = program.programid " +
+ " WHERE patient.organisationunitid IN ("+ orgUnitIdsByComma +") GROUP BY program.programid";
SqlRowSet rs2 = jdbcTemplate.queryForRowSet( query );
@@ -306,8 +359,8 @@
try
{
String query = "SELECT programinstance.programid, COUNT(*) FROM programinstance INNER JOIN patient " +
- " ON programinstance.patientid = patient.patientid " +
- " WHERE patient.organisationunitid IN ("+ orgUnitIdsByComma +") GROUP BY programid";
+ " ON programinstance.patientid = patient.patientid " +
+ " WHERE patient.organisationunitid IN ("+ orgUnitIdsByComma +") GROUP BY programid";
SqlRowSet rs = jdbcTemplate.queryForRowSet( query );
@@ -386,7 +439,7 @@
{
String query = "SELECT COUNT(*) FROM patient " +
" WHERE organisationunitid IN ("+ orgUnitIdsByComma +") AND " +
- " registrationdate LIKE '"+ selDate+"%'";
+ " registrationdate LIKE '"+ selDate+"%'";
SqlRowSet rs = jdbcTemplate.queryForRowSet( query );
@@ -714,25 +767,22 @@
PeriodType periodType = periodService.getPeriodTypeByName( periodTypeLB );
Collection<Period> periods = periodService.getPeriodsBetweenDates( startDate, endDate );
- System.out.println( periods.size() + ":" + periodType + ":" + startDate + ":" + endDate );
+ //System.out.println( periods.size() + ":" + periodType + ":" + startDate + ":" + endDate );
int aggChecked = Integer.parseInt( aggDataCB );
-
- Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
- while ( optionComboIterator.hasNext() )
+
+ if ( deSelection.equalsIgnoreCase( OPTIONCOMBO ) )
{
- DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator.next();
-
if( aggChecked == 1 )
{
- Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1, startDate, endDate, orgChild );
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc, startDate, endDate, orgChild );
if( tempAggDataValue != null ) aggDataValue += tempAggDataValue;
}
else
{
for( Period period : periods )
{
- DataValue dataValue = dataValueService.getDataValue( orgChild, dataElement, period, decoc1 );
+ DataValue dataValue = dataValueService.getDataValue( orgChild, dataElement, period, decoc );
try
{
aggDataValue += Double.parseDouble( dataValue.getValue() );
@@ -743,6 +793,36 @@
}
}
}
+
+ else
+ {
+ Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
+ while ( optionComboIterator.hasNext() )
+ {
+ DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator.next();
+
+ if( aggChecked == 1 )
+ {
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1, startDate, endDate, orgChild );
+ if( tempAggDataValue != null ) aggDataValue += tempAggDataValue;
+ }
+ else
+ {
+ for( Period period : periods )
+ {
+ DataValue dataValue = dataValueService.getDataValue( orgChild, dataElement, period, decoc1 );
+ try
+ {
+ aggDataValue += Double.parseDouble( dataValue.getValue() );
+ }
+ catch( Exception e )
+ {
+ }
+ }
+ }
+ }
+ }
+
periodCount++;
}
@@ -829,22 +909,19 @@
Collection<Period> periods = periodService.getPeriodsBetweenDates( startDate, endDate );
int aggChecked = Integer.parseInt( aggDataCB );
-
- Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
- while ( optionComboIterator.hasNext() )
+
+ if ( deSelection.equalsIgnoreCase( OPTIONCOMBO ) )
{
- DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator.next();
-
if( aggChecked == 1 )
{
- Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1, startDate, endDate, orgUnit );
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc, startDate, endDate, orgUnit );
if( tempAggDataValue != null ) aggDataValue += tempAggDataValue;
}
else
{
for( Period period : periods )
{
- DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period, decoc1 );
+ DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period, decoc );
try
{
aggDataValue += Double.parseDouble( dataValue.getValue() );
@@ -855,6 +932,35 @@
}
}
}
+ else
+ {
+ Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
+ while ( optionComboIterator.hasNext() )
+ {
+ DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator.next();
+
+ if( aggChecked == 1 )
+ {
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1, startDate, endDate, orgUnit );
+ if( tempAggDataValue != null ) aggDataValue += tempAggDataValue;
+ }
+ else
+ {
+ for( Period period : periods )
+ {
+ DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period, decoc1 );
+ try
+ {
+ aggDataValue += Double.parseDouble( dataValue.getValue() );
+ }
+ catch( Exception e )
+ {
+ }
+ }
+ }
+ }
+ }
+
periodCount++;
}
@@ -928,14 +1034,11 @@
Double aggDataValue = 0.0;
int aggChecked = Integer.parseInt( aggDataCB );
- Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
- while ( optionComboIterator.hasNext() )
+ if ( deSelection.equalsIgnoreCase( OPTIONCOMBO ) )
{
- DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator.next();
-
if( aggChecked == 1 )
{
- Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1, startDate, endDate, selectedOrgUnit );
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc, startDate, endDate, selectedOrgUnit );
if( tempAggDataValue != null ) aggDataValue += tempAggDataValue;
}
else
@@ -943,7 +1046,7 @@
Collection<Period> periods = periodService.getPeriodsBetweenDates( startDate, endDate );
for( Period period : periods )
{
- DataValue dataValue = dataValueService.getDataValue( selectedOrgUnit, dataElement, period, decoc1 );
+ DataValue dataValue = dataValueService.getDataValue( selectedOrgUnit, dataElement, period, decoc );
try
{
aggDataValue += Double.parseDouble( dataValue.getValue() );
@@ -954,6 +1057,35 @@
}
}
}
+ else
+ {
+ Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
+ while ( optionComboIterator.hasNext() )
+ {
+ DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator.next();
+
+ if( aggChecked == 1 )
+ {
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1, startDate, endDate, selectedOrgUnit );
+ if( tempAggDataValue != null ) aggDataValue += tempAggDataValue;
+ }
+ else
+ {
+ Collection<Period> periods = periodService.getPeriodsBetweenDates( startDate, endDate );
+ for( Period period : periods )
+ {
+ DataValue dataValue = dataValueService.getDataValue( selectedOrgUnit, dataElement, period, decoc1 );
+ try
+ {
+ aggDataValue += Double.parseDouble( dataValue.getValue() );
+ }
+ catch( Exception e )
+ {
+ }
+ }
+ }
+ }
+ }
data[serviceCount][periodCount] = aggDataValue;
if( dataElement.getType().equalsIgnoreCase( DataElement.VALUE_TYPE_INT ) )
@@ -1032,22 +1164,19 @@
for( OrganisationUnit orgUnit : selectedOUGroupMemberList )
{
int aggChecked = Integer.parseInt( aggDataCB );
-
- Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
- while ( optionComboIterator.hasNext() )
+
+ if ( deSelection.equalsIgnoreCase( OPTIONCOMBO ) )
{
- DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator.next();
-
if( aggChecked == 1 )
{
- Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1, startDate, endDate, orgUnit );
- if(tempAggDataValue != null ) aggDataValue = tempAggDataValue;
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc, startDate, endDate, orgUnit );
+ if(tempAggDataValue != null ) aggDataValue += tempAggDataValue;
}
else
{
for( Period period : periods )
{
- DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period, decoc1 );
+ DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period, decoc );
try
{
aggDataValue += Double.parseDouble( dataValue.getValue() );
@@ -1058,6 +1187,34 @@
}
}
}
+ else
+ {
+ Iterator<DataElementCategoryOptionCombo> optionComboIterator = optionCombos.iterator();
+ while ( optionComboIterator.hasNext() )
+ {
+ DataElementCategoryOptionCombo decoc1 = (DataElementCategoryOptionCombo) optionComboIterator.next();
+
+ if( aggChecked == 1 )
+ {
+ Double tempAggDataValue = aggregationService.getAggregatedDataValue( dataElement, decoc1, startDate, endDate, orgUnit );
+ if(tempAggDataValue != null ) aggDataValue += tempAggDataValue;
+ }
+ else
+ {
+ for( Period period : periods )
+ {
+ DataValue dataValue = dataValueService.getDataValue( orgUnit, dataElement, period, decoc1 );
+ try
+ {
+ aggDataValue += Double.parseDouble( dataValue.getValue() );
+ }
+ catch( Exception e )
+ {
+ }
+ }
+ }
+ }
+ }
orgGroupCount++;
}
@@ -1141,10 +1298,24 @@
{
aggIndicatorNumValue += tempAggIndicatorNumValue;
}
+
+ if ( tempAggIndicatorDenumValue != null )
+ {
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+ }
+ /*
if ( tempAggIndicatorDenumValue != null )
{
aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
+ */
}
else
{
@@ -1171,7 +1342,17 @@
{
tempAggIndicatorDenumValue = 0.0;
}
- aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+
+ //aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
@@ -1273,10 +1454,24 @@
{
aggIndicatorNumValue += tempAggIndicatorNumValue;
}
+
+ if ( tempAggIndicatorDenumValue != null )
+ {
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+ }
+ /*
if ( tempAggIndicatorDenumValue != null )
{
aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
+ */
}
else
{
@@ -1305,7 +1500,18 @@
{
tempAggIndicatorDenumValue = 0.0;
}
- aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+
+
+ //aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
periodCount++;
@@ -1501,10 +1707,25 @@
{
aggIndicatorNumValue += tempAggIndicatorNumValue;
}
+
+ if ( tempAggIndicatorDenumValue != null )
+ {
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+ }
+
+ /*
if ( tempAggIndicatorDenumValue != null )
{
aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
+ */
}
else
{
@@ -1532,7 +1753,18 @@
{
tempAggIndicatorDenumValue = 0.0;
}
- aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+
+ if( !indicator.getDenominator().trim().equals( "1" ) )
+ {
+ aggIndicatorDenumValue += tempAggIndicatorDenumValue;
+ }
+ else
+ {
+ aggIndicatorDenumValue = 1.0;
+ }
+
+
+ //aggIndicatorDenumValue += tempAggIndicatorDenumValue;
}
orgGroupCount++;
=== added file 'local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/util/SendingBulkSMSFromExcelJob.java'
--- local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/util/SendingBulkSMSFromExcelJob.java 1970-01-01 00:00:00 +0000
+++ local/in/dhis-web-dashboard/src/main/java/org/hisp/dhis/dataanalyser/util/SendingBulkSMSFromExcelJob.java 2011-12-03 07:44:11 +0000
@@ -0,0 +1,62 @@
+package org.hisp.dhis.dataanalyser.util;
+
+import java.io.File;
+import java.io.FileReader;
+import java.util.Properties;
+import java.util.UUID;
+
+import jxl.Sheet;
+import jxl.Workbook;
+import jxl.write.WritableWorkbook;
+
+import org.quartz.JobExecutionContext;
+import org.quartz.JobExecutionException;
+import org.springframework.scheduling.quartz.QuartzJobBean;
+
+public class SendingBulkSMSFromExcelJob extends QuartzJobBean
+{
+ // -------------------------------------------------------------------------
+ // implementation
+ // -------------------------------------------------------------------------
+
+ protected void executeInternal( JobExecutionContext context ) throws JobExecutionException
+ {
+
+ try
+ {
+ BulkSMSHttpInterface bulkSMSHTTPInterface = new BulkSMSHttpInterface();
+
+ Properties properties = new Properties();
+ properties.load( new FileReader( System.getenv( "DHIS2_HOME" ) + File.separator + "SMSServer.conf" ) );
+
+ String excelFilePath = properties.getProperty( "excelfilepath" );
+
+ int rowStart = 2;
+ int colStart = 1;
+ int rowEnd = 65530;
+
+ String outputReportPath = System.getenv( "DHIS2_HOME" ) + File.separator + "temp" + File.separator + UUID.randomUUID().toString() + ".xls";
+ Workbook excelImportFile = Workbook.getWorkbook( new File(excelFilePath) );
+ WritableWorkbook writableExcelImportFile = Workbook.createWorkbook( new File(outputReportPath), excelImportFile );
+ Sheet sheet = writableExcelImportFile.getSheet( 0 );
+
+ for( int i = rowStart; i < rowEnd; i++ )
+ {
+ String cellContent1 = sheet.getCell( colStart, i).getContents();
+ String cellContent2 = sheet.getCell( colStart+1, i).getContents();
+ if( cellContent1 == null || cellContent1.equalsIgnoreCase( "" ) || cellContent2 == null || cellContent2.equalsIgnoreCase( "" ) )
+ {
+ continue;
+ }
+
+ bulkSMSHTTPInterface.sendMessage( cellContent2, cellContent1 );
+ }
+
+ }
+ catch( Exception e )
+ {
+ e.printStackTrace();
+ }
+
+ }
+}
=== modified file 'local/in/dhis-web-dashboard/src/main/resources/META-INF/dhis/beans.xml'
--- local/in/dhis-web-dashboard/src/main/resources/META-INF/dhis/beans.xml 2011-11-22 07:20:09 +0000
+++ local/in/dhis-web-dashboard/src/main/resources/META-INF/dhis/beans.xml 2011-12-03 07:44:11 +0000
@@ -699,11 +699,6 @@
<property name="dashBoardService" ref="org.hisp.dhis.dataanalyser.util.DashBoardService">
</property>
</bean>
-
-
-
-
-
<!-- DataStatus For Mobile start -->
<bean id="org.hisp.dhis.dataanalyser.ds.mobile.action.GenerateDataStatusMobileFormAction"
@@ -1472,8 +1467,38 @@
scope="prototype">
<property name="userGroupService" ref="org.hisp.dhis.user.UserGroupService" />
<property name="dashBoardService" ref="org.hisp.dhis.dataanalyser.util.DashBoardService" />
- <property name="programService" ref="org.hisp.dhis.program.ProgramService" />
-
- </bean>
-
+ <property name="programService" ref="org.hisp.dhis.program.ProgramService" />
+
+ </bean>
+ <!-- BULK SMS: Excel Uploading -->
+ <bean id="org.hisp.dhis.dataanalyser.sms.action.BulkSMSForExcelSheetFormAction"
+ class="org.hisp.dhis.dataanalyser.sms.action.BulkSMSForExcelSheetFormAction"
+ scope="prototype">
+ </bean>
+ <bean id="org.hisp.dhis.dataanalyser.sms.action.BulkSMSForExcelSheetResultAction"
+ class="org.hisp.dhis.dataanalyser.sms.action.BulkSMSForExcelSheetResultAction"
+ scope="prototype">
+ </bean>
+
+<!-- Schedular -->
+ <bean name="schedulerForBulkSMSByExcelJob"
+ class="org.springframework.scheduling.quartz.JobDetailBean">
+ <property name="jobClass" value="org.hisp.dhis.dataanalyser.util.SendingBulkSMSFromExcelJob" />
+ </bean>
+
+ <bean id="cronTriggerForBulkSMSByExcelJob"
+ class="org.springframework.scheduling.quartz.CronTriggerBean">
+ <property name="jobDetail" ref="schedulerForBulkSMSByExcelJob" />
+ <property name="cronExpression" value="0 53 16 * * ?" />
+ </bean>
+
+<!-- Scheduler for all Jobs -->
+
+ <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
+ <property name="triggers">
+ <list>
+ <ref bean="cronTriggerForBulkSMSByExcelJob" />
+ </list>
+ </property>
+ </bean>
</beans>
\ No newline at end of file
=== modified file 'local/in/dhis-web-dashboard/src/main/resources/org/hisp/dhis/dataanalyser/i18n_module.properties'
--- local/in/dhis-web-dashboard/src/main/resources/org/hisp/dhis/dataanalyser/i18n_module.properties 2011-11-15 09:05:27 +0000
+++ local/in/dhis-web-dashboard/src/main/resources/org/hisp/dhis/dataanalyser/i18n_module.properties 2011-12-03 07:44:11 +0000
@@ -157,6 +157,4 @@
dataset_not_selected = Select Available data sets
bulk_sms = Bulk SMS
due_dates = Due Dates
-ds_sms = DS SMS
-
-
+ds_sms = DS SMS
\ No newline at end of file
=== modified file 'local/in/dhis-web-dashboard/src/main/resources/struts.xml'
--- local/in/dhis-web-dashboard/src/main/resources/struts.xml 2011-11-22 07:20:09 +0000
+++ local/in/dhis-web-dashboard/src/main/resources/struts.xml 2011-12-03 07:44:11 +0000
@@ -8,7 +8,6 @@
<package name="dhis-web-dashboard" extends="dhis-web-commons"
namespace="/dhis-web-dashboard">
-
<action name="index"
class="org.hisp.dhis.dataanalyser.action.DashBoardHomePageAction">
<result name="success" type="velocity">/main.vm</result>
@@ -1031,7 +1030,22 @@
<param name="page">/dhis-web-dashboard/BulkSMSForProgSummaryResult.vm</param>
<param name="menu">/dhis-web-dashboard/menu.vm</param>
</action>
+ <!-- BULK SMS: Excel Uploading -->
+ <action name="excelSheetBulkSMSForm"
+ class="org.hisp.dhis.dataanalyser.sms.action.BulkSMSForExcelSheetFormAction">
+ <result name="success" type="velocity">/main.vm</result>
+ <param name="menu">/dhis-web-dashboard/menu.vm</param>
+ <param name="page">/dhis-web-dashboard/BulkSMSForExcelSheetForm.vm</param>
+ </action>
+ <action name="excelSheetBulkSMSResultResult"
+ class="org.hisp.dhis.dataanalyser.sms.action.BulkSMSForExcelSheetResultAction">
+ <result name="success" type="velocity">/main.vm</result>
+ <param name="menu">/dhis-web-dashboard/menu.vm</param>
+ <param name="page">/dhis-web-dashboard/BulkSMSForExcelSheetResult.vm</param>
+ <interceptor-ref name="fileUploadStack"/>
+ </action>
+
</package>
</struts>
\ No newline at end of file
=== added file 'local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/BulkSMSForExcelSheetForm.vm'
--- local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/BulkSMSForExcelSheetForm.vm 1970-01-01 00:00:00 +0000
+++ local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/BulkSMSForExcelSheetForm.vm 2011-12-03 07:44:11 +0000
@@ -0,0 +1,82 @@
+
+<style>
+ #overlay
+ {
+ z-index:9998;
+ position:absolute;
+ top:0;
+ bottom:0;
+ left:0;
+ width:100%;
+ background:#000;
+ opacity:0.45;
+ -moz-opacity:0.45;
+ filter:alpha(opacity=45);
+ visibility:hidden;
+ }
+
+ #overlayImg{ width: 50px; height: 50px; z-index: 9999; position: absolute; left:50%}
+</style>
+
+<div id="overlay">
+ <div id="overlayImg"><img width="50" height="50" src="images/ajax-loader.gif" /></div>
+</div>
+
+<script>
+
+ function formValidations()
+ {
+ if( document.getElementById('upload').value == null || document.getElementById('upload').value == "" )
+ {
+ alert("Please select upload file"); return false;
+ }
+
+ showOverlay();
+
+ return true;
+ }
+
+ function showOverlay()
+ {
+ var o = document.getElementById('overlay');
+ o.style.visibility = 'visible';
+ jQuery("#overlay").css({
+ "height": jQuery(document).height()
+ });
+ jQuery("#overlayImg").css({
+ "top":jQuery(window).height()/2
+ });
+ }
+ function hideOverlay()
+ {
+ var o = document.getElementById('overlay');
+ o.style.visibility = 'hidden';
+ }
+
+</script>
+
+<h3>BULK SMS Form</h3>
+<hr /><br />
+
+<form id="dataImportForm" name="dataImportForm" method="post" enctype="multipart/form-data" action="excelSheetBulkSMSResultResult.action" onsubmit="return formValidations()">
+ <table align="center" style=" border-collapse: collapse; margin-top: 0;" cellpadding="0" cellspacing="0" width="730" border="0" >
+ <tr>
+ <tr>
+ <td class="NormalB">
+ Upload (XLS) File :<br />
+ <input type="file" id="upload" name="upload" size="45" class="{validate:{required:true}}" />
+ </td>
+ </tr>
+ <tr>
+ <td class="NormalB"> </td>
+ </tr>
+ <tr>
+ <td class="NormalB"> </td>
+ </tr>
+ <tr>
+ <td class="NormalB">
+ <input type="submit" name="importReport" value='Send SMS' style="width:325px" />
+ </td>
+ </tr>
+ </table>
+</form>
\ No newline at end of file
=== added file 'local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/BulkSMSForExcelSheetResult.vm'
--- local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/BulkSMSForExcelSheetResult.vm 1970-01-01 00:00:00 +0000
+++ local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/BulkSMSForExcelSheetResult.vm 2011-12-03 07:44:11 +0000
@@ -0,0 +1,3 @@
+
+
+<font size="8">$resultMessage</font>
\ No newline at end of file
=== modified file 'local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/commentResult.vm'
--- local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/commentResult.vm 2011-11-22 07:20:09 +0000
+++ local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/commentResult.vm 2011-12-03 07:44:11 +0000
@@ -51,8 +51,8 @@
#set( $dataElement = $dataElementList.get( $count2 ) )
#set( $periodCount = $periodCounts.get( $count2 ) )
<tr>
- <td class="DefaultFontStylesNoBold" align="left">$dataElement</td>
- <td class="DefaultFontStylesNoBold" align="left">$comment</td>
+ <td class="NormalA" align="left">$dataElement</td>
+ <td class="NormalA" align="left">$comment</td>
#set( $count2 = $count2 + 1 )
</tr>
#end
=== modified file 'local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/css/StylesForTags.css'
--- local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/css/StylesForTags.css 2011-11-22 07:20:09 +0000
+++ local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/css/StylesForTags.css 2011-12-03 07:44:11 +0000
@@ -86,7 +86,7 @@
.DefaultFontStylesNoBold {
font-family: arial, georgia, tahoma;
- font-size: 8px;
+ font-size: 15px;
white-space: nowrap;
cursor: default;
}
=== modified file 'local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/graphicalAnalysisDataElementResult.vm'
--- local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/graphicalAnalysisDataElementResult.vm 2011-01-07 05:45:11 +0000
+++ local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/graphicalAnalysisDataElementResult.vm 2011-12-03 07:44:11 +0000
@@ -130,7 +130,7 @@
var aggDataCB = arugDetails[9];
//alert( aggDataCB );
- alert( orgUnitId + "," + orgUnitGroupId + "," + dataElementId + "," + categoryCombo + "," + periodTypeName + "," + startDate + "," + endDate + "," + periodName );
+ // alert( orgUnitId + "," + orgUnitGroupId + "," + dataElementId + "," + categoryCombo + "," + periodTypeName + "," + startDate + "," + endDate + "," + periodName );
//var ouRadioVal = $( "input[name='riRadio']:checked" ).val();
=== modified file 'local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/menu.vm'
--- local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/menu.vm 2011-11-22 07:20:09 +0000
+++ local/in/dhis-web-dashboard/src/main/webapp/dhis-web-dashboard/menu.vm 2011-12-03 07:44:11 +0000
@@ -27,6 +27,7 @@
<li>$i18n.getString( "bulk_sms" )</li>
<ul>
+ <li><a href="excelSheetBulkSMSForm.action">Send Bulk SMS by Excel</a></li>
<li><a href="dueDates.action">$i18n.getString( "due_dates" )</a></li>
<li><a href="prgwiseSummaryBulkSMSForm.action">$i18n.getString( "Programwise Summary" )</a></li>
</ul>