Add new "v3" grids, refactor all views to use them

or at least that's the idea..hopefully we caught them all
This commit is contained in:
Lance Edgar 2017-07-07 09:13:53 -05:00
parent f244c2934b
commit 5b1ae27a10
71 changed files with 2679 additions and 2030 deletions

View file

@ -31,7 +31,7 @@ from rattail.db import model
import formalchemy as fa
from tailbone import forms
from tailbone.views.batch import BatchMasterView
from tailbone.views.batch import BatchMasterView2 as BatchMasterView
class LabelBatchView(BatchMasterView):
@ -49,6 +49,19 @@ class LabelBatchView(BatchMasterView):
rows_editable = True
cloneable = True
row_grid_columns = [
'sequence',
'upc',
'brand_name',
'description',
'size',
'regular_price',
'sale_price',
'label_profile',
'label_quantity',
'status_code',
]
def _preconfigure_fieldset(self, fs):
super(LabelBatchView, self)._preconfigure_fieldset(fs)
fs.append(fa.Field('handheld_batches', renderer=forms.renderers.HandheldBatchesFieldRenderer, readonly=True,
@ -69,35 +82,17 @@ class LabelBatchView(BatchMasterView):
if self.viewing and not batch._handhelds:
del fs.handheld_batches
def _preconfigure_row_grid(self, g):
super(LabelBatchView, self)._preconfigure_row_grid(g)
g.upc.set(label="UPC")
g.brand_name.set(label="Brand")
g.regular_price.set(label="Reg Price")
g.label_profile.set(label="Label Type")
g.label_quantity.set(label="Qty")
def configure_row_grid(self, g):
g.configure(
include=[
g.sequence,
g.upc,
g.brand_name,
g.description,
g.size,
g.regular_price,
g.sale_price,
g.label_profile,
g.label_quantity,
g.status_code,
],
readonly=True)
super(LabelBatchView, self).configure_row_grid(g)
g.set_label('upc', "UPC")
g.set_label('brand_name', "Brand")
g.set_label('regular_price', "Reg Price")
g.set_label('label_profile', "Label Type")
g.set_label('label_quantity', "Qty")
def row_grid_row_attrs(self, row, i):
attrs = {}
def row_grid_extra_class(self, row, i):
if row.status_code != row.STATUS_OK:
attrs['class_'] = 'warning'
return attrs
return 'warning'
def _preconfigure_row_fieldset(self, fs):
fs.sequence.set(readonly=True)

View file

@ -32,7 +32,7 @@ from pyramid.httpexceptions import HTTPFound
from tailbone import forms
from tailbone.db import Session
from tailbone.views import MasterView
from tailbone.views import MasterView2 as MasterView
class ProfilesView(MasterView):
@ -42,17 +42,17 @@ class ProfilesView(MasterView):
model_class = model.LabelProfile
model_title = "Label Profile"
url_prefix = '/labels/profiles'
grid_columns = [
'ordinal',
'code',
'description',
'visible',
]
def configure_grid(self, g):
super(ProfilesView, self).configure_grid(g)
g.default_sortkey = 'ordinal'
g.configure(
include=[
g.ordinal,
g.code,
g.description,
g.visible,
],
readonly=True)
g.set_type('visible', 'boolean')
def configure_fieldset(self, fs):
fs.printer_spec.set(renderer=forms.renderers.StrippedTextFieldRenderer)