mirror of
https://github.com/inventree/InvenTree.git
synced 2025-04-30 12:36:45 +00:00
* Adds new plugin mixin for performing custom validation steps * Adds simple test plugin for custom validation * Run part name and IPN validators checks through loaded plugins * Expose more validation functions to plugins: - SalesOrder reference - PurchaseOrder reference - BuildOrder reference * Remove custom validation of reference fields - For now, this is too complex to consider given the current incrementing-reference implementation - Might revisit this at a later stage. * Custom validation of serial numbers: - Replace "checkIfSerialNumberExists" method with "validate_serial_number" - Pass serial number through to custom plugins - General code / docstring improvements * Update unit tests * Update InvenTree/stock/tests.py Co-authored-by: Matthias Mair <code@mjmair.com> * Adds global setting to specify whether serial numbers must be unique globally - Default is false to preserve behaviour * Improved error message when attempting to create stock item with invalid serial numbers * Add more detail to existing serial error message * Add unit testing for serial number uniqueness * Allow plugins to convert a serial number to an integer (for optimized sorting) * Add placeholder plugin methods for incrementing and decrementing serial numbers * Typo fix * Add improved method for determining the "latest" serial number * Remove calls to getLatestSerialNumber * Update validate_serial_number method - Add option to disable checking for duplicates - Don't pass optional StockItem through to plugins * Refactor serial number extraction methods - Expose the "incrementing" portion to external plugins * Bug fixes * Update unit tests * Fix for get_latest_serial_number * Ensure custom serial integer values are clipped * Adds a plugin for validating and generating hexadecimal serial numbers * Update unit tests * Add stub methods for batch code functionality * remove "hex serials" plugin - Was simply breaking unit tests * Allow custom plugins to generate and validate batch codes - Perform batch code validation when StockItem is saved - Improve display of error message in modal forms * Fix unit tests for stock app * Log message if plugin has a duplicate slug * Unit test fix Co-authored-by: Matthias Mair <code@mjmair.com>
33 lines
1004 B
Python
33 lines
1004 B
Python
"""Utility class to enable simpler imports."""
|
|
|
|
from common.notifications import (BulkNotificationMethod,
|
|
SingleNotificationMethod)
|
|
|
|
from ..base.action.mixins import ActionMixin
|
|
from ..base.barcodes.mixins import BarcodeMixin
|
|
from ..base.event.mixins import EventMixin
|
|
from ..base.integration.mixins import (APICallMixin, AppMixin, NavigationMixin,
|
|
PanelMixin, ScheduleMixin,
|
|
SettingsMixin, UrlsMixin,
|
|
ValidationMixin)
|
|
from ..base.label.mixins import LabelPrintingMixin
|
|
from ..base.locate.mixins import LocateMixin
|
|
|
|
__all__ = [
|
|
'APICallMixin',
|
|
'AppMixin',
|
|
'EventMixin',
|
|
'LabelPrintingMixin',
|
|
'NavigationMixin',
|
|
'ScheduleMixin',
|
|
'SettingsMixin',
|
|
'UrlsMixin',
|
|
'PanelMixin',
|
|
'ActionMixin',
|
|
'BarcodeMixin',
|
|
'LocateMixin',
|
|
'ValidationMixin',
|
|
'SingleNotificationMethod',
|
|
'BulkNotificationMethod',
|
|
]
|