# -*- coding: utf-8; -*- """ CORE-POS transaction views """ from __future__ import unicode_literals, absolute_import from corepos.trans.db import model as coretrans from .master import CoreMasterView from rattail_demo.web.db import CoreTransSession class TransactionDetailView(CoreMasterView): """ Master view for transaction details. """ Session = CoreTransSession model_class = coretrans.TransactionDetail model_title = "CORE-POS Transaction Detail" url_prefix = '/corepos/transaction-details' route_prefix = 'corepos.transaction_details' labels = { 'store_row_id': "Store Row ID", 'store_id': "Store ID", 'pos_row_id': "POS Row ID", 'transaction_id': "Transaction ID", 'upc': "UPC", } grid_columns = [ 'date_time', 'register_number', 'transaction_number', 'card_number', 'upc', 'department_number', 'description', 'quantity', 'unit_price', 'discount', 'total', ] def configure_grid(self, g): super(TransactionDetailView, self).configure_grid(g) g.set_type('date_time', 'datetime_local') g.set_type('quantity', 'quantity') g.set_type('unit_price', 'currency') g.set_type('discount', 'currency') g.set_type('total', 'currency') g.set_sort_defaults('date_time', 'desc') g.set_label('register_number', "Register") g.set_label('transaction_number', "Trans. No.") g.set_label('card_number', "Card No.") g.set_label('department_number', "Dept. No.") g.set_link('upc') g.set_link('description') def configure_form(self, f): super(TransactionDetailView, self).configure_form(f) f.set_type('date_time', 'datetime_local') f.set_type('quantity', 'quantity') f.set_type('unit_price', 'currency') f.set_type('discount', 'currency') f.set_type('total', 'currency') def includeme(config): TransactionDetailView.defaults(config)