InvenTree/InvenTree/label
Oliver 187707c892
Barcode Refactor (#3640)
* define a simple model mixin class for barcode

* Adds generic function for assigning a barcode to a model instance

* StockItem model now implements the BarcodeMixin class

* Implement simple unit tests for new code

* Fix unit tests

* Data migration for uid field

* Remove references to old 'uid' field

* Migration for removing old uid field from StockItem model

* Bump API version

* Change lookup_barcode to be a classmethod

* Change barcode_model_type to be a class method

* Cleanup for generic barcode scan and assign API:

- Raise ValidationError as appropriate
- Improved unit testing
- Groundwork for future generic implementation

* Further unit tests for barcode scanning

* Adjust error messages for compatibility

* Unit test fix

* Fix hash_barcode function

- Add unit tests to ensure it produces the same results as before the refactor

* Add BarcodeMixin to Part model

* Remove old format_barcode function from Part model

* Further fixes for unit tests

* Add support for assigning arbitrary barcode to Part instance

- Simplify barcode API
- Add more unit tests

* More unit test fixes

* Update unit test

* Adds generic endpoint for unassigning barcode data

* Update web dialog for unlinking a barcode

* Template cleanup

* Add Barcode mixin to StockLocation class

* Add some simple unit tests for new model mixin

* Support assigning / unassigning barcodes for StockLocation

* remove failing outdated test

* Update template to integrate new barcode support for StockLocation

* Add BarcodeMixin to SupplierPart model

* Adds QR code view for SupplierPart

* Major simplification of barcode API endpoints

- Separate existing barcode plugin into two separate classes
- Simplify and consolidate the response from barcode scanning
- Update unit testing

* Yet more unit test fixes

* Yet yet more unit test fixes
2022-09-15 14:14:51 +10:00
..
migrations Add model for PartLabel 2021-07-08 21:07:45 +10:00
templates/label Fix dimensions for label templates (#3578) 2022-08-19 11:57:33 +10:00
__init__.py Add "label" app 2020-08-16 09:28:12 +10:00
admin.py Docstring checks in QC checks (#3089) 2022-06-02 01:37:39 +10:00
api.py Fix weasyprint version (#3539) 2022-08-15 11:27:27 +10:00
apps.py Switch to pathlib (#3392) 2022-07-27 10:42:34 +10:00
models.py Barcode Refactor (#3640) 2022-09-15 14:14:51 +10:00
serializers.py Docstring checks in QC checks (#3089) 2022-06-02 01:37:39 +10:00
test_api.py Add more checks to pre-commit (#3132) 2022-06-06 08:56:52 +10:00
tests.py Switch to pathlib (#3392) 2022-07-27 10:42:34 +10:00