From 2ebae17839947751bcc0d027ea965d387f48325b Mon Sep 17 00:00:00 2001 From: Lance Edgar Date: Fri, 3 Feb 2023 16:08:29 -0600 Subject: [PATCH] Refactor the Ordering Worksheet generator, per Buefy --- tailbone/menus.py | 15 +- tailbone/reports/ordering_worksheet.mako | 2 +- tailbone/templates/reports/base.mako | 4 - tailbone/templates/reports/inventory.mako | 4 +- tailbone/templates/reports/ordering.mako | 175 +++++++++++++--------- tailbone/views/reports.py | 3 +- 6 files changed, 121 insertions(+), 82 deletions(-) delete mode 100644 tailbone/templates/reports/base.mako diff --git a/tailbone/menus.py b/tailbone/menus.py index 62cdbfe4..1732c084 100644 --- a/tailbone/menus.py +++ b/tailbone/menus.py @@ -24,8 +24,6 @@ App Menus """ -from __future__ import unicode_literals, absolute_import - import re import logging import warnings @@ -527,6 +525,19 @@ class MenuHandler(GenericHandler): }, ]) + if kwargs.get('include_worksheets', False): + items.extend([ + {'type': 'sep'}, + { + 'title': "Ordering Worksheet", + 'route': 'reports.ordering', + }, + { + 'title': "Inventory Worksheet", + 'route': 'reports.inventory', + }, + ]) + if kwargs.get('include_trainwreck', False): items.extend([ {'type': 'sep'}, diff --git a/tailbone/reports/ordering_worksheet.mako b/tailbone/reports/ordering_worksheet.mako index f6a97dc6..fe3f53e8 100644 --- a/tailbone/reports/ordering_worksheet.mako +++ b/tailbone/reports/ordering_worksheet.mako @@ -111,7 +111,7 @@ ${cost.product.brand or ''} ${cost.product.description} ${cost.product.size or ''} - ${cost.case_size} ${"LB" if cost.product.weighed else "EA"} + ${app.render_quantity(cost.case_size)} ${"LB" if cost.product.weighed else "EA"} ${cost.code or ''} ${'X' if cost.preference == 1 else ''} % for i in range(14): diff --git a/tailbone/templates/reports/base.mako b/tailbone/templates/reports/base.mako deleted file mode 100644 index cc379506..00000000 --- a/tailbone/templates/reports/base.mako +++ /dev/null @@ -1,4 +0,0 @@ -## -*- coding: utf-8; -*- -<%inherit file="/page.mako" /> - -${parent.body()} diff --git a/tailbone/templates/reports/inventory.mako b/tailbone/templates/reports/inventory.mako index 74f378fa..6c6e739f 100644 --- a/tailbone/templates/reports/inventory.mako +++ b/tailbone/templates/reports/inventory.mako @@ -1,7 +1,7 @@ ## -*- coding: utf-8 -*- -<%inherit file="/reports/base.mako" /> +<%inherit file="/page.mako" /> -<%def name="title()">Report : Inventory Worksheet +<%def name="title()">Inventory Worksheet <%def name="page_content()"> diff --git a/tailbone/templates/reports/ordering.mako b/tailbone/templates/reports/ordering.mako index 1b8d555c..84e9b819 100644 --- a/tailbone/templates/reports/ordering.mako +++ b/tailbone/templates/reports/ordering.mako @@ -1,89 +1,120 @@ ## -*- coding: utf-8 -*- -<%inherit file="/reports/base.mako" /> +<%inherit file="/page.mako" /> -<%def name="title()">Report : Ordering Worksheet +<%def name="title()">Ordering Worksheet -<%def name="head_tags()"> - ${parent.head_tags()} - -

Please provide the following criteria to generate your report:

-
+<%def name="extra_fields()"> -${h.form(request.current_route_url())} -${h.hidden('departments', value='')} +<%def name="modify_this_page_vars()"> + ${parent.modify_this_page_vars()} + + - var autocompleter = $('#vendor-name').autocomplete({ - serviceUrl: '${url('vendors.autocomplete')}', - width: 300, - onSelect: function(value, data) { - $('#vendor').val(data); - $('#vendor-name').hide(); - $('#vendor-name').val(''); - $('#vendor-display span').html(value); - $('#vendor-display').show(); - loading($('div.grid')); - $('div.grid').load('${url('departments.by_vendor')}', {'uuid': data}); - }, - }); - $('#vendor-name').focus(); - - $('#change-vendor').click(function() { - $('#vendor').val(''); - $('#vendor-display').hide(); - $('#vendor-name').show(); - $('#vendor-name').focus(); - $('div.grid').empty(); - }); - - $('form').submit(function() { - var depts = []; - $('div.grid table tbody tr').each(function() { - if ($(this).find('td.checkbox input[type=checkbox]').is(':checked')) { - depts.push(get_uuid(this)); - } - $('#departments').val(depts.toString()); - return true; - }); - }); - -}); - - +${parent.body()} diff --git a/tailbone/views/reports.py b/tailbone/views/reports.py index 7664331c..a96ac52e 100644 --- a/tailbone/views/reports.py +++ b/tailbone/views/reports.py @@ -135,7 +135,8 @@ class OrderingWorksheet(View): time=now.strftime('%I:%M %p'), get_upc=self.upc_getter, rattail=rattail, - ) + app=self.get_rattail_app(), + ) template_path = resource_path(self.report_template_path) template = Template(filename=template_path)