Пример #1
0
class IntraHealthFluff(fluff.IndicatorDocument):
    document_class = XFormInstance
    document_filter = ORFilter([
        ANDFilter([
            FormPropertyFilter(xmlns=OPERATEUR_XMLNSES[0]),
            IsExistFormPropertyFilter(xmlns=OPERATEUR_XMLNSES[0],
                                      property_path="form",
                                      property_value='district_name'),
            IsExistFormPropertyFilter(xmlns=OPERATEUR_XMLNSES[0],
                                      property_path="form",
                                      property_value='PPS_name')
        ]),
        ANDFilter([
            FormPropertyFilter(xmlns=OPERATEUR_XMLNSES[1]),
            IsExistFormPropertyFilter(xmlns=OPERATEUR_XMLNSES[1],
                                      property_path="form",
                                      property_value='district_name'),
            IsExistFormPropertyFilter(xmlns=OPERATEUR_XMLNSES[1],
                                      property_path="form",
                                      property_value='PPS_name')
        ]),
    ])
    domains = INTRAHEALTH_DOMAINS
    deleted_types = IH_DELETED_TYPES
    group_by = (fluff.AttributeGetter(
        'product_name', lambda f: get_products(f, 'product_name')),
                fluff.AttributeGetter(
                    'product_id',
                    lambda f: get_products_id(f, 'product_name')))

    region_id = flat_field(
        lambda f: get_location_id_by_type(form=f, type='r\xe9gion'))
    district_id = flat_field(
        lambda f: get_location_id_by_type(form=f, type='district'))
    PPS_name = flat_field(lambda f: get_pps_name(f))
    district_name = flat_field(lambda f: get_district_name(f))
    location_id = flat_field(get_location_id)

    actual_consumption = report_calcs.PPSConsumption()
    billed_consumption = report_calcs.PPSConsumption(
        field='billed_consumption')
    stock = report_calcs.PPSConsumption('old_stock_total')
    total_stock = report_calcs.PPSConsumption('total_stock')
    quantity = report_calcs.PPSConsumption('display_total_stock')
    cmm = report_calcs.PPSConsumption('default_consumption')
Пример #2
0
class CouvertureFluff(fluff.IndicatorDocument):
    document_class = XFormInstance
    document_filter = ORFilter([
        FormPropertyFilter(xmlns=OPERATEUR_XMLNSES[0]),
        FormPropertyFilter(xmlns=OPERATEUR_XMLNSES[1]),
    ])

    domains = INTRAHEALTH_DOMAINS
    group_by = ('domain', fluff.AttributeGetter('location_id', get_location_id))
    deleted_types = IH_DELETED_TYPES

    location_id = flat_field(get_location_id)
    region_id = flat_field(lambda f: get_location_id_by_type(form=f, type=u'r\xe9gion'))
    district_id = flat_field(lambda f: get_location_id_by_type(form=f, type='district'))
    pps_name = flat_field(lambda f: get_pps_name(f))
    district_name = flat_field(lambda f: get_district_name(f))
    month = flat_field(lambda f: get_month(f, 'real_date'))
    real_date_repeat = flat_field(get_real_date)
    registered = report_calcs.PPSRegistered()
    planned = report_calcs.PPSPlaned()