=== modified file 'local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/AddTariffDataAction.java' --- local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/AddTariffDataAction.java 2013-12-10 12:41:41 +0000 +++ local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/AddTariffDataAction.java 2013-12-11 09:01:17 +0000 @@ -4,6 +4,7 @@ import java.util.Date; import org.hisp.dhis.dataelement.DataElement; +import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo; import org.hisp.dhis.dataelement.DataElementCategoryService; import org.hisp.dhis.dataelement.DataElementService; import org.hisp.dhis.organisationunit.OrganisationUnit; @@ -124,22 +125,39 @@ OrganisationUnit orgUnit = organisationUnitService.getOrganisationUnit(Integer.parseInt(orgUnitId)); OrganisationUnitGroup orgUnitGrp = organisationUnitGroupService.getOrganisationUnitGroup(Integer.parseInt(pbfType)); - - TariffDataValue tariffDataValue = new TariffDataValue(); - - - tariffDataValue.setValue(Double.parseDouble(tariff)); - tariffDataValue.setStartDate(sDate); - tariffDataValue.setEndDate(eDate); - tariffDataValue.setTimestamp(new Date()); - tariffDataValue.setStoredBy(currentUserService.getCurrentUsername()); - tariffDataValue.setDataElement(dataElement); - tariffDataValue.setOptionCombo(categoryService.getDefaultDataElementCategoryOptionCombo()); - tariffDataValue.setOrganisationUnitGroup(orgUnitGrp); - tariffDataValue.setOrganisationUnit(orgUnit); - - tariffDataValueService.addTariffDataValue(tariffDataValue); - + DataElementCategoryOptionCombo optionCombo = categoryService.getDefaultDataElementCategoryOptionCombo(); + + TariffDataValue tariffDataValue = tariffDataValueService.getTariffDataValue(orgUnit, dataElement, optionCombo, orgUnitGrp, sDate, eDate); + + TariffDataValue tariffDataValue1; + + if(tariffDataValue == null) + { + tariffDataValue1 = new TariffDataValue(); + } + else + { + tariffDataValue1 = tariffDataValueService.getTariffDataValue(orgUnit, dataElement, optionCombo, orgUnitGrp, sDate, eDate); + } + + tariffDataValue1.setValue(Double.parseDouble(tariff)); + tariffDataValue1.setStartDate(sDate); + tariffDataValue1.setEndDate(eDate); + tariffDataValue1.setTimestamp(new Date()); + tariffDataValue1.setStoredBy(currentUserService.getCurrentUsername()); + tariffDataValue1.setDataElement(dataElement); + tariffDataValue1.setOptionCombo(optionCombo); + tariffDataValue1.setOrganisationUnitGroup(orgUnitGrp); + tariffDataValue1.setOrganisationUnit(orgUnit); + + if(tariffDataValue == null) + { + tariffDataValueService.addTariffDataValue(tariffDataValue1); + } + else + { + tariffDataValueService.updateTariffDataValue(tariffDataValue1); + } return SUCCESS; } } \ No newline at end of file === modified file 'local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/DeleteTariffDataAction.java' --- local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/DeleteTariffDataAction.java 2013-12-10 12:41:41 +0000 +++ local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/DeleteTariffDataAction.java 2013-12-11 09:01:17 +0000 @@ -35,6 +35,7 @@ private String startDate; private String endDate; + // ------------------------------------------------------------------------- // Action implementation // ------------------------------------------------------------------------- === modified file 'local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/GetDataElementforTariffAction.java' --- local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/GetDataElementforTariffAction.java 2013-12-10 12:41:41 +0000 +++ local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/GetDataElementforTariffAction.java 2013-12-11 09:01:17 +0000 @@ -3,13 +3,19 @@ import java.util.ArrayList; import java.util.List; +import org.hisp.dhis.constant.Constant; +import org.hisp.dhis.constant.ConstantService; import org.hisp.dhis.dataelement.DataElement; import org.hisp.dhis.dataelement.DataElementService; +import org.hisp.dhis.organisationunit.OrganisationUnit; +import org.hisp.dhis.organisationunit.OrganisationUnitService; import com.opensymphony.xwork2.Action; public class GetDataElementforTariffAction implements Action { + private final static String TARIFF_SETTING_AUTHORITY = "TARIFF_SETTING_AUTHORITY"; + // ------------------------------------------------------------------------- // Dependencies // ------------------------------------------------------------------------- @@ -20,6 +26,20 @@ this.dataElementService = dataElementService; } + private ConstantService constantService; + + public void setConstantService( ConstantService constantService ) + { + this.constantService = constantService; + } + + private OrganisationUnitService organisationUnitService; + + public void setOrganisationUnitService( + OrganisationUnitService organisationUnitService) { + this.organisationUnitService = organisationUnitService; + } + // ------------------------------------------------------------------------- // Input // ------------------------------------------------------------------------- @@ -34,12 +54,43 @@ this.dataElementList = dataElementList; } + private String tariff_setting_authority; + + public String getTariff_setting_authority() { + return tariff_setting_authority; + } + + private List levelOrgUnitIds = new ArrayList(); + + public List getLevelOrgUnitIds() { + return levelOrgUnitIds; + } + // ------------------------------------------------------------------------- // Action implementation // ------------------------------------------------------------------------- public String execute() { + if(constantService.getConstantByName( TARIFF_SETTING_AUTHORITY) == null) + { + tariff_setting_authority = "Level 1"; + List allLevelOrg =new ArrayList(organisationUnitService.getOrganisationUnitsAtLevel(1)) ; + for(OrganisationUnit org : allLevelOrg) + { + levelOrgUnitIds.add(org.getId()); + } + } + else + { + Constant tariff_authority = constantService.getConstantByName( TARIFF_SETTING_AUTHORITY ); + tariff_setting_authority = "Level "+Integer.parseInt(tariff_authority.getValue()+""); + List allLevelOrg =new ArrayList(organisationUnitService.getOrganisationUnitsAtLevel(Integer.parseInt(tariff_authority.getValue()+""))) ; + for(OrganisationUnit org : allLevelOrg) + { + levelOrgUnitIds.add(org.getId()); + } + } List dataElements = new ArrayList(dataElementService.getAllDataElements()); for(DataElement de : dataElements) { @@ -48,6 +99,7 @@ dataElementList.add("\""+de.getName()+"\""); } } + return SUCCESS; } } \ No newline at end of file === modified file 'local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/LoadTariffDetailsAction.java' --- local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/LoadTariffDetailsAction.java 2013-12-10 12:41:41 +0000 +++ local/in/dhis-web-maintenance-pbf/src/main/java/org/hisp/dhis/pbf/action/LoadTariffDetailsAction.java 2013-12-11 09:01:17 +0000 @@ -86,7 +86,7 @@ public String execute() { - OrganisationUnitGroupSet organisationUnitGroupSet = organisationUnitGroupService.getOrganisationUnitGroupSet(3); + OrganisationUnitGroupSet organisationUnitGroupSet = organisationUnitGroupService.getOrganisationUnitGroupSet(6709); orGroupList = new ArrayList(organisationUnitGroupSet.getOrganisationUnitGroups()) ; selecteddataElement = dataElementService.getDataElementByName(dataElementName); OrganisationUnit organisationUnit = organisationUnitService.getOrganisationUnit(Integer.parseInt(orgUnitId)); === modified file 'local/in/dhis-web-maintenance-pbf/src/main/resources/META-INF/dhis/beans.xml' --- local/in/dhis-web-maintenance-pbf/src/main/resources/META-INF/dhis/beans.xml 2013-12-10 12:41:41 +0000 +++ local/in/dhis-web-maintenance-pbf/src/main/resources/META-INF/dhis/beans.xml 2013-12-11 09:01:17 +0000 @@ -22,6 +22,8 @@ + + === modified file 'local/in/dhis-web-maintenance-pbf/src/main/webapp/dhis-web-maintenance-pbf/loadDataElementsforTariff.vm' --- local/in/dhis-web-maintenance-pbf/src/main/webapp/dhis-web-maintenance-pbf/loadDataElementsforTariff.vm 2013-12-10 12:41:41 +0000 +++ local/in/dhis-web-maintenance-pbf/src/main/webapp/dhis-web-maintenance-pbf/loadDataElementsforTariff.vm 2013-12-11 09:01:17 +0000 @@ -44,9 +44,26 @@ } function organisationUnitSelected( orgUnits, orgUnitNames ) -{ - setFieldValue("orgUnit", orgUnitNames[0]); - setFieldValue("orgUnitId", orgUnits[0]); +{ + var countryTags = $levelOrgUnitIds; + var bValue = false; + for(var i=0;i<=countryTags.length-1;i++) + { + if(countryTags[i] == orgUnits[0] ) + { + bValue = true; + } + } + if(bValue == false) + { + alert('Please Select Correct level OrgUnit'); + } + else + { + setFieldValue("orgUnit", orgUnitNames[0]); + setFieldValue("orgUnitId", orgUnits[0]); + } + } selection.setListenerFunction( organisationUnitSelected ); @@ -56,7 +73,7 @@ - + === modified file 'local/in/dhis-web-maintenance-pbf/src/main/webapp/dhis-web-maintenance-pbf/loadTariffData.vm' --- local/in/dhis-web-maintenance-pbf/src/main/webapp/dhis-web-maintenance-pbf/loadTariffData.vm 2013-12-10 12:41:41 +0000 +++ local/in/dhis-web-maintenance-pbf/src/main/webapp/dhis-web-maintenance-pbf/loadTariffData.vm 2013-12-11 09:01:17 +0000 @@ -1,14 +1,24 @@
@@ -74,23 +129,32 @@
+ #set( $mark = false ) #foreach($tariff in $tariffList ) - + #if( $mark ) + #set( $mark = false ) + #else + #set( $mark = true ) + #end + - + #end
Orgainsation Unit Tariff Setting Authority Tariff Setting Authority
 
$!tariff.organisationUnitGroup.name $!tariff.value $!tariff.startDate $!tariff.endDate + + $i18n.getString( 'edit' ) +
- +
- - + - - - - - - - - - - + + + + + + + + + +
  -   +
Tariff
Start Date
End DateTariff
Start Date
End Date
\ No newline at end of file