mirror of
https://github.com/inventree/InvenTree.git
synced 2025-06-16 03:55:41 +00:00
[Feature] External build order (#9312)
* Add BuildOrder reference to PurchaseOrderLineItem * Add setting to enable / disable external build orders * Fix for supplier part detail * Update forms * Filter build list by "external" status * Add "external" attribute to BuildOrder * Filter by external build when selecting against purchase order line item * Add frontend elements * Prevent creation of build outputs * Tweak related model field - Send filters when fetching initial data * Fix migrations * Fix some existing typos * Add build info when receiving line items * Logic fix * Bump API version * Updated relationship * Add external orders tab for order * Display table of external purchase orders against a build order * Fix permissions * Tweak field definition * Add unit tests * Tweak api_version.py * Playwright testing * Fix discrepancy in 'building' filter * Add basic documentation ( more work required ) * Tweak docs macros * Migration fix * Adjust build page tabs * Fix imports * Fix broken import * Update playywright tests * Bump API version * Handle DB issues * Improve filter * Cleaner code * Fix column ordering bug * Add filters to build output table * Documentation * Tweak unit test * Add "scheduled_for_production" field * Add helper function to part model * Cleanup
This commit is contained in:
35
docs/main.py
35
docs/main.py
@ -318,8 +318,14 @@ def define_env(env):
|
||||
json.dump(data, f, indent=4)
|
||||
|
||||
@env.macro
|
||||
def rendersetting(key: str, setting: dict):
|
||||
"""Render a provided setting object into a table row."""
|
||||
def rendersetting(key: str, setting: dict, short: bool = False):
|
||||
"""Render a provided setting object into a table row.
|
||||
|
||||
Arguments:
|
||||
key: The name of the setting to extract information for.
|
||||
setting: The setting object to render.
|
||||
short: If True, return a short version of the setting (default: False)
|
||||
"""
|
||||
name = setting['name']
|
||||
description = setting['description']
|
||||
default = setting.get('default')
|
||||
@ -328,37 +334,44 @@ def define_env(env):
|
||||
default = f'`{default}`' if default else ''
|
||||
units = f'`{units}`' if units else ''
|
||||
|
||||
return (
|
||||
f'| <div title="{key}">{name}</div> | {description} | {default} | {units} |'
|
||||
)
|
||||
if short:
|
||||
return f'<span title="{key}"><strong>{name}</strong></span>'
|
||||
|
||||
return f'| <div title="{key}"><strong>{name}</strong></div> | {description} | {default} | {units} |'
|
||||
|
||||
@env.macro
|
||||
def globalsetting(key: str):
|
||||
def globalsetting(key: str, short: bool = False):
|
||||
"""Extract information on a particular global setting.
|
||||
|
||||
Arguments:
|
||||
key: The name of the global setting to extract information for.
|
||||
short: If True, return a short version of the setting (default: False)
|
||||
"""
|
||||
global GLOBAL_SETTINGS
|
||||
setting = GLOBAL_SETTINGS[key]
|
||||
|
||||
observe_setting(key, 'global')
|
||||
# Settings are only 'observed' if they are displayed in full
|
||||
if not short:
|
||||
observe_setting(key, 'global')
|
||||
|
||||
return rendersetting(key, setting)
|
||||
return rendersetting(key, setting, short=short)
|
||||
|
||||
@env.macro
|
||||
def usersetting(key: str):
|
||||
def usersetting(key: str, short: bool = False):
|
||||
"""Extract information on a particular user setting.
|
||||
|
||||
Arguments:
|
||||
key: The name of the user setting to extract information for.
|
||||
short: If True, return a short version of the setting (default: False)
|
||||
"""
|
||||
global USER_SETTINGS
|
||||
setting = USER_SETTINGS[key]
|
||||
|
||||
observe_setting(key, 'user')
|
||||
# Settings are only 'observed' if they are displayed in full
|
||||
if not short:
|
||||
observe_setting(key, 'user')
|
||||
|
||||
return rendersetting(key, setting)
|
||||
return rendersetting(key, setting, short=short)
|
||||
|
||||
@env.macro
|
||||
def tags_and_filters():
|
||||
|
Reference in New Issue
Block a user