class HQFormDataTable(Table): # instanceID = Column() xmlns = Column() received_on = DateColumn() timeStart = DateColumn() timeEnd = DateColumn() userID = Column() username = Column() class Meta: order_by = '-received_on'
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'
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"]
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)
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"]
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()
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'
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'
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'
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()
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"
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'
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'
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'
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'
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'
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"]
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"