Beispiel #1
0
class HQFormDataTable(Table):

    # instanceID = Column()
    xmlns = Column()
    received_on = DateColumn()
    timeStart = DateColumn()
    timeEnd = DateColumn()
    userID = Column()
    username = Column()

    class Meta:
        order_by = '-received_on'
Beispiel #2
0
class StockRequestTable(Table):
    product = Column()
    is_emergency = EmergencyColumn()
    balance = Column()
    amount_requested = Column()
    amount_received = Column()
    requested_on = DateColumn()
    responded_on = DateColumn()
    received_on = DateColumn()
    status = StatusColumn()
    
    class Meta:
        order_by = '-requested_on'
Beispiel #3
0
class DeliveryStatusTable(MonthTable):
    """
    Same as above but includes a column for the HSA
    """
    code = Column()
    name = Column(name="Facility Name",
                  value=lambda cell: cell.object.name,
                  sort_key_fn=lambda obj: obj.name,
                  link=supply_point_link)
    delivery_status = Column(
        sortable=False,
        name="Delivery Status",
        value=lambda cell: _latest_status_or_none(
            cell, SupplyPointStatusTypes.DELIVERY_FACILITY, "name"))
    delivery_date = DateColumn(
        sortable=False,
        name="Delivery Date",
        value=lambda cell: _latest_status_or_none(
            cell, SupplyPointStatusTypes.DELIVERY_FACILITY, "status_date"))
    last_lead_time = Column(
        sortable=False,
        name="Last Lead Time",
        value=lambda cell: calc_lead_time(
            cell.object, month=cell.row.table.month, year=cell.row.table.year))
    average_lead_time = Column(
        sortable=False,
        name="Average Lead Time",
        value=lambda cell: avg_past_lead_time(cell.object))

    class Meta:
        per_page = 9999
        order_by = ["Facility Name"]
Beispiel #4
0
class FullMessageTable(Table):
    contact = Column(value=lambda cell:cell.object.contact.name)
    direction = Column(sortable=False)
    role = Column(value=lambda cell:cell.object.contact.role.name)
    number = Column(value=lambda cell:cell.object.contact.phone)
    date = DateColumn(format="H:i d/m/Y", sortable=False)
    text = Column(css_class="message", sortable=False)
Beispiel #5
0
class SupervisionTable(MonthTable):
    code = Column(value=lambda cell: cell.object.code,
                  name="MSD Code",
                  sort_key_fn=lambda obj: obj.code,
                  titleized=False)
    name = Column(name="Facility Name",
                  value=lambda cell: cell.object.name,
                  sort_key_fn=lambda obj: obj.name,
                  link=supply_point_link)
    supervision_this_quarter = Column(
        sortable=False,
        name="Supervision This Quarter",
        value=lambda cell: _latest_status_or_none(
            cell, SupplyPointStatusTypes.SUPERVISION_FACILITY, "name"))
    date = DateColumn(
        sortable=False,
        value=lambda cell: _latest_status_or_none(
            cell, SupplyPointStatusTypes.SUPERVISION_FACILITY, "status_date"))
    response_rate = Column(
        name="Historical Response Rate",
        safe=True,
        value=lambda cell: _hrr_super(cell.object),
        sort_key_fn=lambda sp: historical_response_rate(
            sp, SupplyPointStatusTypes.SUPERVISION_FACILITY))

    class Meta:
        per_page = 9999
        order_by = ["Facility Name"]
Beispiel #6
0
class MessageHistoryTable(Table):
    contact = Column(value=lambda u: u.object.contact.name)
    direction = Column(value=_get_direction)
    role = Column(value=_get_role, sortable=False)
    phone = Column(value=lambda u: _(u.object.contact.contactdetail.phone()),
                   sortable=False)
    date = DateColumn(format="H:m:s d/m/Y")
    text = Column()
Beispiel #7
0
class MessageTable(Table):
    # this is temporary, until i fix ModelTable!
    text = Column()
    direction = Column()
    connection = Column(link=lambda cell: "javascript:reply('%s')" % cell.row.connection.identity)
    status = Column()
    date = DateColumn(format="m/d/Y H:i:s")

    class Meta:
        order_by = '-date'
Beispiel #8
0
class SOHReportingTable(MonthTable):
    name = Column(sortable=False, link=_facility_link)
    last_reported = DateColumn(name="Last Stock Report Received",
                               value=lambda cell: cell.object.last_soh_before(datetime(cell.row.table.year, cell.row.table.month, cell.row.table.day)) \
                                    if cell.object.last_soh_before(datetime(cell.row.table.year, cell.row.table.month, cell.row.table.day)) else "never",
                               format="M d, h:i A",
                               sortable=False,
                               css_class="tabledate")

    class Meta:
        order_by = '-last_reported'
Beispiel #9
0
class ReportingTable(Table):
    name = Column(sortable=False)
    last_reported = DateColumn(name="Last Reported on",
                               value=lambda cell: cell.object.last_reported \
                                    if cell.object.last_reported else "never",
                               format="M d, h:i A", 
                               sortable=False,
                               sort_key_fn=lambda obj: obj.last_reported,
                               css_class="tabledate")
    
    class Meta:
        order_by = '-last_reported'
Beispiel #10
0
class UnrecognizedMessagesTable(Table):
    code = Column(value=lambda cell: cell.object.contact.supply_point.code,
                  name="MSD Code",
                  sort_key_fn=lambda obj: obj.supply_point.code,
                  titleized=False,
                  css_class=_msd_class)
    facility = Column(value=lambda cell: cell.object.contact.supply_point.name,
                      link=msg_supply_point_link)
    contact = Column(sortable=False,
                     value=lambda cell: cell.object.contact.name)
    date = DateColumn(format="H:i M d")
    text = Column()
Beispiel #11
0
class NotesTable(Table):
    name = Column(sortable=False, value=lambda cell: cell.object.user.username)
    role = Column(sortable=False,
                  value=lambda cell: _contact_or_none(cell, 'role'))
    date = DateColumn(format="d M Y P")
    phone = Column(sortable=False,
                   value=lambda cell: _contact_or_none(cell, 'phone'))
    text = Column()

    class Meta:
        per_page = 5
        order_by = "-date"
Beispiel #12
0
class AuditLogTable(Table):
    date = DateColumn(format="H:i d/m/Y")
    user = Column()
    access_type = Column()
    designation = Column()
    organization = Column()
    facility = Column()
    location = Column()
    first_name = Column()
    last_name = Column()

    class Meta:
        order_by = '-date'
Beispiel #13
0
class MessageTable(Table):
    # this is temporary, until i fix ModelTable!
    contact = Column()
    mobile_number = Column(value=_connection, sortable=False)
    direction = Column()
    date = DateColumn(format="H:i d/m")
    text = Column(css_class="message")
    facility = Column(value=_facility, sortable=False)
    district = Column(value=_district, sortable=False)
    region = Column(value=_region, sortable=False)

    class Meta:
        order_by = '-date'
Beispiel #14
0
class MessageTable(Table):

    # this is temporary, until i fix ModelTable!
    contact = Column()
    connection = Column()
    direction = Column()
    date = DateColumn(format="H:i d/m/Y")
    text = Column()

    class Meta:
        #model = Message
        #exclude = ['id']
        order_by = '-date'
Beispiel #15
0
class HSAStockRequestTable(Table):
    """
    Same as above but includes a column for the HSA
    """
    # for some reason inheritance doesn't work with djtables
    # so it's all copied here.
    supply_point = Column()
    product = Column()
    is_emergency = EmergencyColumn()
    balance = Column()
    amount_requested = Column(value=lambda cell:cell.object.amount_requested,
                              name="Amt. Requested")
    amount_received = Column(value=lambda cell:cell.object.amount_received,
                              name="Amt. Received")
    requested_on = DateColumn(value=lambda cell:cell.object.requested_on,
                              name="Date Requested")
    responded_on = DateColumn(value=lambda cell:cell.object.responded_on,
                              name="Date Responded")
    received_on = DateColumn(value=lambda cell:cell.object.received_on,
                              name="Date Received")
    status = StatusColumn()
    
    class Meta:
        order_by = '-requested_on'
Beispiel #16
0
class MessageTable(Table):

    # this is temporary, until i fix ModelTable!
    contact = Column()
    connection = Column()
    direction = Column()
    date = DateColumn(format="H:i d/m/Y")
    text = Column(css_class="message")
    tags = Column(sortable=False,
                  value=lambda cell: cell.object.get_tags_for_display())

    class Meta:
        #model = Message
        #exclude = ['id']
        order_by = '-date'
Beispiel #17
0
class RandRStatusTable(MonthTable):
    """
    Same as above but includes a column for the HSA
    """
    code = Column()
    name = Column(name="Facility Name",
                  value=lambda cell: cell.object.name,
                  sort_key_fn=lambda obj: obj.name,
                  link=supply_point_link)
    #    delivery_group = Column(value=lambda cell: _dg(cell.object), sort_key_fn=_dg, name="D G")
    randr_status = Column(
        sortable=False,
        name="R&R Status",
        value=lambda cell: _latest_status_or_none(
            cell, SupplyPointStatusTypes.R_AND_R_FACILITY, "name"))
    randr_date = DateColumn(
        sortable=False,
        name="R&R Date",
        value=lambda cell: _latest_status_or_none(
            cell, SupplyPointStatusTypes.R_AND_R_FACILITY, "status_date"))

    class Meta:
        per_page = 9999
        order_by = ["Facility Name"]
Beispiel #18
0
class ShortMessageTable(Table):

    date = DateColumn(format="H:i d/m/Y", sortable=False)
    direction = Column(sortable=False)
    text = Column(css_class="message", sortable=False)
def test_datecolumn_defaults_to_DATE_FORMAT():
    date = datetime.date(2010, 1, 1)
    cell = Fake().has_attr(value=date)
    column = DateColumn()
    assert column.render(cell) == "2010-01-01"
def test_datecolumn_formats_dates():
    date = datetime.date(2010, 1, 1)
    cell = Fake().has_attr(value=date)
    column = DateColumn(format="D d M Y")
    assert column.render(cell) == "Fri 01 Jan 2010"