Commit graph

1718 commits

Author SHA1 Message Date
Lance Edgar 8a6fdb5ea5 Warn user when luigi is not installed, for relevant view
better than getting a server error
2022-12-23 18:55:53 -06:00
Lance Edgar ef9dc9ff6d Expose the terms field for Vendor CRUD 2022-12-21 18:05:38 -06:00
Lance Edgar ed0a1f2740 Add make_status_renderer() to MasterView
batches aren't the only table/view where a status code/text combo may
be in use
2022-12-20 19:15:31 -06:00
Lance Edgar 871ea84f96 Add support for "is row checkable" in grids
i.e. when grid has checkboxes, some rows maybe shouldn't get one
2022-12-20 19:14:54 -06:00
Lance Edgar 99a5615e91 Add configure_execute_form() hook for batch views
also enable bulk-delete of row results by default for batch views
2022-12-15 09:12:26 -06:00
Lance Edgar 3c54960612 Fix error if no view supplements defined 2022-12-10 12:41:10 -06:00
Lance Edgar f8f6b76657 Add xref buttons for Customer, Member tabs in profile view 2022-12-10 09:48:22 -06:00
Lance Edgar cb6c25f829 Let view supps give data instead of actual xref button 2022-12-10 09:48:22 -06:00
Lance Edgar 05a3e3f805 Add common logic to determine panel fields for product view
so we don't have to override templates, but just the view logic

more needed, but this proves the concept
2022-12-10 09:48:22 -06:00
Lance Edgar 273fa7eb55 Add common logic for xref buttons, links when viewing object
about dang time for this..probaby needs improvement but a good start
2022-12-10 09:48:22 -06:00
Lance Edgar 2278082a4d Cleanup employees view per new supplements
also add permission for "view employee secrets" (where applicable)
2022-12-10 09:48:22 -06:00
Lance Edgar d5d9c644a2 Add the ViewSupplement concept
also fix cell-class for grid columns.  cannot use "raw" fieldname
because in some cases (e.g. 'number', 'rate') Bulma may interpret that
as actually meaning something, and affect the display
2022-12-10 09:46:54 -06:00
Lance Edgar f80d3cd530 Show simple error string, when subprocess batch actions fail
logs still have more info, can't show user the whole traceback..but
this is better than we had before..
2022-12-08 14:15:38 -06:00
Lance Edgar 6ac07e1255 Fix bug when viewing certain receiving batches 2022-12-06 19:31:22 -06:00
Lance Edgar ebe2013849 Add helptext for "Admin-ish" field when editing Role 2022-12-06 10:30:30 -06:00
Lance Edgar cceb66e500 Add support for editing invoice cost in receiving batch, per new theme 2022-12-05 16:25:55 -06:00
Lance Edgar 36a5f2ab49 Show invoice cost in receiving batch, if "from scratch" 2022-12-05 16:05:27 -06:00
Lance Edgar 9c54a4ada1 Add receiving workflow as param when making receiving batch 2022-12-05 15:26:43 -06:00
Lance Edgar 2e3823364c Add support for editing catalog cost in receiving batch, per new theme
had to add several "under the hood" features to make this work, to
embed a Vue component within grid `<td>` cells, etc.
2022-12-05 14:03:03 -06:00
Lance Edgar 94fa0380ba Avoid web config when launching overnight task 2022-12-01 09:37:30 -06:00
Lance Edgar b3bdee60bb Add way to quickly re-run "any" report 2022-11-28 17:55:08 -06:00
Lance Edgar 604420c7d4 Auto-format phone number when saving for contact records 2022-11-23 12:27:09 -06:00
Lance Edgar b64f6c7884 Use newer config strategy for all views
to make inheritance easier
2022-11-23 12:20:58 -06:00
Lance Edgar 4741ee0a7b Let the Luigi handler take care of removing some DB settings
so that command line can also remove them via same logic
2022-11-21 14:01:22 -06:00
Lance Edgar 194f49c561 Add luigi module/class awareness for overnight tasks 2022-11-20 19:37:29 -06:00
Lance Edgar 7f0305fb7a Fix how keys are stored for luigi overnight/backfill tasks 2022-11-20 13:58:39 -06:00
Lance Edgar e4392cd00a Allow disabling, or per-day scheduling, of problem reports 2022-11-19 17:44:09 -06:00
Lance Edgar 3c740549e2 Turn on download results feature for Employees 2022-11-18 11:20:29 -06:00
Lance Edgar fec259629e Let the auth handler manage user merge 2022-11-15 13:37:37 -06:00
Lance Edgar be533922a2 Show UPC for receiving line item if no product reference
to help with troubleshooting invoice file parsing etc.
2022-11-03 11:28:38 -05:00
Lance Edgar 38e6441b61 Log a warning to troubleshoot luigi restart failure 2022-10-31 21:41:01 -05:00
Lance Edgar c2b2d11141 Use shared logic for rendering percentage values 2022-10-29 13:40:35 -05:00
Lance Edgar 22c33b58c7 Fix start_date param for pricing batch upload 2022-10-19 16:26:05 -05:00
Lance Edgar 9b101963e5 Use people handler to update address 2022-10-18 10:55:47 -05:00
Lance Edgar f7a019ed83 Make past item lookup optional for custorders 2022-09-06 16:44:26 -05:00
Lance Edgar 2950827c63 Add basic per-item discount support for custorders 2022-09-06 16:31:59 -05:00
Lance Edgar c43a4edec7 Move logic for "bulk-delete row objects" into MasterView
i guess so far it has only been needed for batch, but some day surely
it will be needed for something else..?

some of the template logic is still batch only i think..
2022-08-31 20:55:03 -05:00
Lance Edgar 12e4b0a139 Expose more attrs for new product batch rows 2022-08-30 13:57:18 -05:00
Lance Edgar 731c2168b0 Improve parsing of purchase order quantities 2022-08-30 11:28:48 -05:00
Lance Edgar bb4e98af8d Add uom fields, configurable template for newproduct batch 2022-08-30 10:58:13 -05:00
Lance Edgar f005ef4d52 Add max lengths when editing person name via profile view 2022-08-25 22:15:56 -05:00
Lance Edgar 6a0a4627b4 Avoid error when no datasync profiles configured
at least, according to the web app none are configured..but they may
be in another config file
2022-08-24 20:06:38 -05:00
Lance Edgar 78500770d9 Add basic support for backfill Luigi tasks
idea being, sometimes you must import many days worth of data into
Trainwreck or what-not, and it must be split up b/c e.g. it would take
too long to import all at once (i.e. might interfere with overnight
tasks)
2022-08-23 23:27:47 -05:00
Lance Edgar 488696cb39 Fix index title for datasync configure page 2022-08-22 01:07:58 -05:00
Lance Edgar e50356d276 Expose, honor "admin-ish" flag for roles
prevent user (un)assignment etc. unless admin is doing it
2022-08-21 19:36:48 -05:00
Lance Edgar 7b2fef5f09 Allow configuring datasync watcher kwargs 2022-08-21 15:22:29 -05:00
Lance Edgar bdbbe990dd Add global context from handler, for email previews 2022-08-20 23:07:19 -05:00
Lance Edgar 2ca93a07e9 Make separate tasks for collect vs. transmit of upgrade progress data 2022-08-20 22:40:16 -05:00
Lance Edgar 0a113611e8 Let just one "task" handle collect/transmit of progress for websocket
first client to connect, will cause task to start; subsequent clients
are just added to running set, for broadcast messaging
2022-08-20 21:19:20 -05:00
Lance Edgar e93063a344 Refactor upgrade websocket progress, so "anyone" can join in to see
now while an upgrade is executing, anyone with permission can "view"
the upgrade and see the same progress the executor is seeing
2022-08-20 18:56:35 -05:00
Lance Edgar 18cec49a86 Add websockets progress, "multi-system" support for upgrades
and related things to better support that
2022-08-20 17:39:33 -05:00
Lance Edgar db3f215ebe Add way to declare failure for an upgrade
doesn't really cancel it, since Tailbone isn't actually tracking the
subprocess etc.  but saves a step when something goes off the rails
2022-08-19 17:20:01 -05:00
Lance Edgar 8470126918 Add render_person_profile() method to MasterView 2022-08-18 19:22:04 -05:00
Lance Edgar 89da6ae501 Expose setting for auto-correct when receiving from invoice 2022-08-18 17:27:30 -05:00
Lance Edgar d23e5d169a Add basic views for Luigi / overnight tasks 2022-08-18 15:11:09 -05:00
Lance Edgar 2fde1db83c Allow user feedback to request email reply back 2022-08-17 21:08:54 -05:00
Lance Edgar ed55fbca9e Log a warning if can't get supervisor process info 2022-08-17 18:44:10 -05:00
Lance Edgar 2375733d0f Add first experiment with websockets, for datasync status page 2022-08-17 18:24:55 -05:00
Lance Edgar 065f845707 Add proper status page for datasync
or rather, it's a good start..  plenty more could be added
2022-08-15 21:06:19 -05:00
Lance Edgar 839c4e0c28 Add get_next_url_after_submit_new_order() for customer orders
after new custorder batch is executed, where do we send user?
2022-08-14 17:33:12 -05:00
Lance Edgar a20eb468df Redirect to custom index URL when user cancels new custorder entry 2022-08-14 15:53:43 -05:00
Lance Edgar f2c73acd3b Refactor usage of get_vendor() lookup 2022-08-13 23:59:09 -05:00
Lance Edgar 2f5de67ee7 Move handheld batch view module to appropriate location 2022-08-13 23:23:30 -05:00
Lance Edgar db3ea2e34a Fix default help URLs for ordering, receiving 2022-08-13 23:12:39 -05:00
Lance Edgar 409a49ba20 Standardize merge logic when a handler is defined for it
also adds basic merge support for products view
2022-08-12 14:27:26 -05:00
Lance Edgar 51aeb50d39 Allow download results for Customers grid 2022-08-10 18:55:59 -05:00
Lance Edgar ca5e2c1ff9 Add initial views for work orders
at least a head start maybe
2022-08-09 22:57:26 -05:00
Lance Edgar a6d5b262f9 Log traceback output when batch action subprocess fails 2022-08-09 16:35:48 -05:00
Lance Edgar 5952df82ff Tweak flash msg, logging when batch population fails 2022-08-09 15:05:03 -05:00
Lance Edgar d6aeb1d10f Add convenience wrapper to make customer field widget, etc.
customer widget is either autocomplete or dropdown, per config

also added a way to pass arbitrary kwargs to the chameleon template
rendering for a field

also moved the logic for rendering a <b-field> out of the template and
into the Form class

also start to prefer `input_handler` over `input_callback` when
specifying client-side JS hook
2022-08-09 14:37:29 -05:00
Lance Edgar a999b996fb Add separate product grid filters for Category Code, Category Name
this also fixes a join bug in some edge cases
2022-08-08 14:39:26 -05:00
Lance Edgar 3413d7c6f6 Expose setting for sendmail failure alerts 2022-08-07 18:45:45 -05:00
Lance Edgar fe4c3d4942 Make sure "configure" pages use AppHandler to save/delete settings
so that beaker config cache is invalidated, if in use
2022-08-07 18:23:15 -05:00
Lance Edgar 1152fba067 Always show "all" email settings if user has config perm
also tweak view config, per newer convention
2022-08-06 22:57:10 -05:00
Lance Edgar dd2631d27c Only show "all" emails if config says to use the entry points
otherwise traditional behavior needs to be preserved as the default,
for now...
2022-08-06 19:18:49 -05:00
Lance Edgar d52a186e12 Add support for toggling visibility of email profile settings 2022-08-06 18:38:17 -05:00
Lance Edgar 8776cd19dd Clean up URL routes for row CRUD 2022-08-05 12:09:32 -05:00
Lance Edgar cd9004b32b Invalidate config cache when raw setting is deleted 2022-08-04 08:14:04 -05:00
Lance Edgar 927470db72 Force cache invalidation when Raw Setting is edited
only applies if caching is actually in use
2022-08-03 15:15:49 -05:00
Lance Edgar 4ff0450632 Stop using the old rattail.db.api.settings module 2022-08-03 14:50:45 -05:00
Lance Edgar 862198cf82 Improve "touch" logic for employees
also use app handler for default touch logic
2022-08-03 11:13:43 -05:00
Lance Edgar 17810d9cae Misc. improvements for desktop receiving views
- don't expose "cases" if config says not to
- don't expose "expired" if config says not to
- use `numeric-input` for quantity fields
- add `product_key_field` to global-ish template context
2022-07-26 16:30:04 -05:00
Lance Edgar 92a52133de Add some more views to potentially include via poser 2022-07-26 14:25:20 -05:00
Lance Edgar ad7b347e16 Add "auto-receive all items" support for receiving batch API 2022-07-24 22:29:55 -05:00
Lance Edgar 36d4f0a5f7 Add basic edit support for Purchases 2022-07-24 21:10:52 -05:00
Lance Edgar 0dc344b821 Assume default vendor for new receiving batch
i.e. if there is only one vendor
2022-07-24 15:05:51 -05:00
Lance Edgar 25f39f4173 Add basic/minimal merge support for customers 2022-07-24 13:21:47 -05:00
Lance Edgar e656f769b1 Allow optional row grid title for master view 2022-07-23 22:18:17 -05:00
Lance Edgar 28238c6fb5 Add setting to expose/hide "active in POS" customer flag 2022-07-23 22:09:47 -05:00
Lance Edgar 10628eeb91 Add template_kwargs_clone() stub for master view 2022-07-20 11:01:22 -05:00
Lance Edgar 20aa6a3fbb Expose the complete flag for pricing batch
also update view config defaults per new convention
2022-07-19 16:36:21 -05:00
Lance Edgar e9edf205d9 Make caching products optional, when creating vendor catalog batch 2022-07-19 15:50:57 -05:00
Lance Edgar 6397a93f97 Allow download of results for common product-related tables 2022-07-19 14:52:31 -05:00
Lance Edgar d16290cb70 Add new-style config defaults for BrandView 2022-07-18 12:31:54 -05:00
Lance Edgar c6df827311 Add basic "download results" for Subdepartments grid 2022-07-08 12:57:57 -05:00
Lance Edgar 7e0e881017 Fix form validation for app settings page w/ buefy theme 2022-07-01 12:00:06 -05:00
Lance Edgar a289216eac Add autocomplete support for subdepartments 2022-06-14 17:52:59 -05:00
Lance Edgar 6b466bb90f Add start date support for "future" pricing batch 2022-06-14 13:51:00 -05:00
Lance Edgar cb6499522e Let default grid page size correspond to first option 2022-06-14 11:25:29 -05:00
Lance Edgar cff4942769 Allow restricting to supported vendors only, for Receiving 2022-05-15 16:45:31 -05:00
Lance Edgar e3b1be5835 Expose config for identifying supported vendors
unfortunately must identify vendors at each app node separately, but
this is definitely still an improvement..
2022-05-15 16:04:22 -05:00
Lance Edgar 18c3c57930 Sort roles list when viewing a user 2022-05-03 14:13:47 -05:00
Lance Edgar a49aa77ec0 Tweak how family data is displayed 2022-05-03 13:36:14 -05:00
Lance Edgar 10a801aa10 Flush early when populating batch, to ensure error is shown 2022-04-13 16:42:47 -05:00
Lance Edgar aa37fc3add Tweak where description field is shown for receiving batch 2022-04-03 14:42:40 -05:00
Lance Edgar 1bb41b21af Honor case vs. unit restrictions for new custorder
and expose them in config view
2022-03-29 18:19:14 -05:00
Lance Edgar 4e25e87bfb Log error when failing to submit new custorder batch 2022-03-29 17:43:42 -05:00
Lance Edgar 80b9593651 Add template kwargs stub for view_row() 2022-03-29 17:30:37 -05:00
Lance Edgar edef084121 Raise 404 if report not found 2022-03-29 17:19:23 -05:00
Lance Edgar fc32542f55 Add touch for report codes 2022-03-29 17:19:14 -05:00
Lance Edgar 700b5f0b91 Let errors raise when showing poser reports 2022-03-29 11:39:32 -05:00
Lance Edgar b4d5d70e4c Force session flush within try/catch, for batch refresh 2022-03-26 15:29:28 -05:00
Lance Edgar f0b6b62791 Use common logic for fetching batch handler 2022-03-25 13:49:39 -05:00
Lance Edgar ae1e9dba0f Improve vendor validation for new receiving batch 2022-03-25 12:33:37 -05:00
Lance Edgar ab3a66542d Show link to txn as field when viewing trainwreck item 2022-03-17 21:19:05 -05:00
Lance Edgar fc5b931007 Expose custorder xref markers for trainwreck 2022-03-17 16:59:50 -05:00
Lance Edgar 71d8d5a70d Make problem report titles searchable in grid
at least if buefy version is new enough
2022-03-16 21:27:59 -05:00
Lance Edgar 0904cda2c6 Always show batch params by default when viewing 2022-03-15 22:53:24 -05:00
Lance Edgar da910b1414 Add default help link for Receiving feature
also stop showing "buyer" filter by default
2022-03-11 20:55:01 -06:00
Lance Edgar 6037519fbe Log error instead of warning, when batch population fails
user experience does not change but should help the admin to track
down the problem quicker..
2022-03-11 12:37:43 -06:00
Lance Edgar 25ecade1e6 Add "batch" to model title for new customer order batch
just to make things a bit more clear..
2022-03-10 10:18:43 -06:00
Lance Edgar 69161b7037 Default behavior for report chooser should *not* be form/dropdown 2022-03-10 09:55:42 -06:00
Lance Edgar 01b78d7513 Add workaround when inserting new fields to form field list
i.e. if inserting "before" or "after" a field which does not exist
2022-03-09 18:39:12 -06:00
Lance Edgar b9fa324bb4 Cleanup view config syntax for vendor catalog batch
also make sure vendor autocomplete url exists, before using that
widget.  this can be an issue when app deals "directly" with POS when
making the batch etc.
2022-03-09 18:26:27 -06:00
Lance Edgar 0a42ec77b2 Cleanup grid filters for vendor catalog batches 2022-03-08 16:35:11 -06:00
Lance Edgar 9d5adf7793 Fix gotcha when defining new provider views
UI should show the key if label is missing
2022-03-07 17:40:48 -06:00
Lance Edgar 511e185f33 Link to email settings profile when viewing email attempt 2022-03-07 10:53:12 -06:00
Lance Edgar 7c4e9b56c7 Let tailbone providers include static views
also add more native (batch) views to default list
2022-03-06 22:06:57 -06:00
Lance Edgar d18bade951 Let providers add extra views, options for includes config 2022-03-06 19:03:08 -06:00
Lance Edgar 37d4ef751c Add flash message when upgrade execution completes (pass or fail) 2022-03-05 14:31:43 -06:00
Lance Edgar b5effaa01b Add tailbone.views.essentials to include common / "core" views 2022-03-05 10:50:33 -06:00
Lance Edgar 66a15fb9a1 Add initial/basic support for configuring "included views"
also stub for managing "poser views"
2022-03-05 09:26:25 -06:00
Lance Edgar 33abeb1aca Improve the Poser Setup page; allow poser dir refresh 2022-03-05 09:12:01 -06:00
Lance Edgar 128657810b Add PoserMasterView, rename route for poser_reports
must use e.g. `poser_reports` and `poser_views` for the "meta" stuff,
i.e. maintenance of actual poser things, b/c it will be possible to
define poser views, and those routes should be `poser.*` probably..
2022-03-05 09:10:05 -06:00
Lance Edgar f5d24133f7 Make common web view a bit more common
i.e. avoid the need to subclass it in derived projects
2022-03-04 17:44:34 -06:00
Lance Edgar a28a801a62 Update some more view config syntax
some common ones used by a particular app..
2022-03-04 12:32:28 -06:00
Lance Edgar 3fae9e6270 Show link back to Poser Report when viewing Generated Report
i.e. where applicable / possible.  also allow bulk-delete of generated
reports, and show name filter by default for that grid
2022-03-03 18:47:26 -06:00
Lance Edgar 691a5e84f9 Show list of generated reports when viewing Poser Report 2022-03-03 18:36:35 -06:00
Lance Edgar d99f2541df Add dedicated perm for replacing poser report module 2022-03-02 18:52:28 -06:00
Lance Edgar 72177aef0a Add basic support for Poser reports, list/create 2022-03-02 17:21:38 -06:00
Lance Edgar 206d51f59b Params should be readonly when editing batch 2022-03-01 15:03:48 -06:00
Lance Edgar 031d97aea3 Avoid making discounts data if missing field, for trainwreck item view 2022-03-01 13:01:59 -06:00
Lance Edgar 59a9d2cf86 Pass query along for download results, so subclass can modify 2022-03-01 12:17:06 -06:00
Lance Edgar ee961edf94 Fix stdout/stderr fields for upgrade view
whoops..missed that one
2022-02-28 22:16:52 -06:00
Lance Edgar ec2600ddf7 Add simple searchable column support for non-AJAX grids
idk maybe even AJAX grids can use?  not gonna try at the moment
2022-02-26 21:00:05 -06:00
Lance Edgar 74fecf553e Add page/way to configure main menus
just the basics so far, index page routes and separators should be
supported but nothing else.  also "menus from config" is all or
nothing, no way to mix config + code at this point
2022-02-26 17:22:54 -06:00
Lance Edgar 2290d9f990 Expose "discount type" for Trainwrewck line items 2022-02-24 10:39:11 -06:00
Lance Edgar 0c5992ad75 Add grid hyperlinks for trainwreck transaction line items 2022-02-22 20:39:06 -06:00
Lance Edgar 8ae1b87a1e Auto-filter hyperlinks for PO vs. invoice breakdown in Receiving 2022-02-20 19:52:24 -06:00
Lance Edgar 4d404cb20b Add auto-filter hyperlinks for batch row status breakdown 2022-02-20 19:40:32 -06:00