Commit Graph
16 Commits
Author SHA1 Message Date
BobbeandGitHub 1fc2e454fb Fix TME supplier order number splitting (#6900)
* Fix TME supplier order number splitting

* Fix order number not split for QR codes, handle standard ecia codes
2024-04-01 12:45:49 +11:00
BobbeandGitHub f441f672d6 Switch tests, docs, database settings from psycopg2 to psycopg (#6573)
* Fix isolation_level again, using the recommended method

* Use psycopg instead of psycopg2 in tests, docs
2024-02-26 10:58:32 +11:00
BobbeandGitHub a3dc3bdbf4 Use psycopg2 constants for isolation_level again (#6569) 2024-02-26 09:46:57 +11:00
BobbeandGitHub 2df0fd8a67 Move get_scheduled_tasks call into register_tasks function (#6556)
* Move get_scheduled_tasks call into register_tasks function

* Adjust scheduled_tasks tests

* Set scheduled_tasks default, Fix test_function
2024-02-24 14:27:47 +11:00
BobbeandGitHub b372db8960 Fix APICallMixin url_args handling (#6468) 2024-02-12 08:01:28 +11:00
BobbeandGitHub 824aa8138b Use re_path instead of deprecated url function in plugin docs (#6466) 2024-02-12 08:00:06 +11:00
BobbeandGitHub e6e6473503 Fix uncaught Company.DoesNotExist error in SupplierBarcodeMixin (#6467) 2024-02-12 07:58:57 +11:00
BobbeandGitHub d2d59e0709 Add tests for get_purchase_orders logic (#6236) 2024-01-14 12:44:34 +11:00
BobbeandGitHub 082b5d1c80 Fix reassigning supplier barcodes (#6162)
* Ignore 3rd party barcode plugins when assigning barcode

* Use single quotes
2024-01-12 09:37:04 +11:00
BobbeandGitHub 36bb3c5645 Fix supplier barcode order numbers (#6158)
* Add tme barcode CPO field

* Fix LCSC order number field

* Fix mouser order number field

* Fix get_purchase_orders logic

* Refine get_purchase_orders logic

* Slightly refactor get_purchase_orders logic
2024-01-11 08:14:07 +11:00
BobbeandGitHub cf3d96a265 Fix some issues with supplier barcode plugins (#5919)
* Remove unnecessary logging imports from supplier plugins

* Fix MPN filtering in get_supplier_parts

* Ensure digikey barcodes contain a SKU

* Keep running other barcode plugins if an error occured in one of them

* Fix typo (replace plugin with current_plugin)

* Fix class name
2023-11-15 13:40:30 +11:00
BobbeandGitHub 59f17a9885 Bump django_money version back to 3.2.0, Fix #5825 (#5828)
* Bump django_money version back to 3.2.0

* Test building docker image

* Revert "Test building docker image"

This reverts commit b8e9d4f4c1.
2023-11-01 10:05:47 +11:00
BobbeandGitHub 4913acda79 Update django money / py-moneyed dependencies (#5778)
* Replace moneyed format_money function

* Update django-money to 3.3.0 and py-moneyed to 3.0

* Add CurrencyField migrations

* Fix checking if decimal_places is set

* Add currency formatting test

* Test fixing deepsource test patterns

* Revert "Test fixing deepsource test patterns"

This reverts commit 398ef93cd6.

* FIx requirements.txt formatting

* Revert "FIx requirements.txt formatting"

This reverts commit bb554b0758.
2023-10-31 22:19:55 +11:00
ae063d2722 Add basic support for scanning vendor barcodes (#5509)
* Add support for scanning digikey and mouser barcodes

* added small fixes if no part is found

* made small style cleanups

* Separate out ecia 2d barcode parser, Add quantity, PO number to response

* Use model instead of name for mouser supplier, add auto detection magic

* Add lcsc barcode support

* Move barcode plugins to new suppliers subdirectory

* Add get_supplier_part helper, Refactor plugins in preparation for #3791

* Add __init__.py to suppliers directory

* Improve formatting

* Add barcode integration tests

* Add api-barcode-po-receive endpoint

* Refactor supplier_barcode.py helpers into BarcodeMixin

* Implement the api-barcode-po-receive endpoint for all suppliers

* Always include lineitem in api response

* Fix location in response, only include quantity and location if set

* Check if barcode has already been assigned, Fix tests

* FIx quantity and location not being in lineitem reponse

* Use part.get_default_location() instead of part.default_location

* Fix fomatting again

* Fix type annotations for python 3.8

* Add get_supplier_part helper, check for barcode_data being a str

* Fix naming clash

* Clarify return type for scan_receive_item

* Improve model access using first() in two places

* Refactor a bunch of checks

* Improve selection of line item, if multiple line items match the SKU

* Add new api version for this PR

* Fix error if no line item exists

* Add debug print to investigate why tests are failing

* Remove the test print again

* Fix pre formatted log messages

* Test removing all plugins

* Test only with digikey plugin

* Test with all plugins, but without mouser "model" setting

* Test again without tests

* Test with simple tests

* Test with simple receive test

* Test with even more receive tests

* Test second receive test

* Test third receive test

* Test 4th receive test with debug prints

* Try deleting the stock item and stock locations

* Disable the test again

* Add SupplierBarcodeMixin to minimize shared code between plugins

* Add TME supplier barcode plugin

* Remove the TME tests again

* If this works the tests are broken, if this doesn't work the tests are broken too

* Add TME tests again

* Add back all tests again

* Fix TME purchase order number

* Fix TME qrcode regex

* Add documentation for this feature

* Fix TME qrcode regex

* Use Decimal instead of int for quantity

* Refactor get_supplier_parts, Add get_supplier method

* Improve docstrings

* Fix None type access

* FIx TME barcode detection, Improve supplier barcode handling

* Try to retrigger pipeline

* Refactor get_supplier_parts to not use lists

* Add DEFAULT_SUPPLIER_NAME to mouser plugin

* Add SUPPLIER_ID setting to other suppliers

* Fix supplier plugins not inheriting from settings mixin

---------

Co-authored-by: Matthias Mair <code@mjmair.com>
2023-10-19 23:28:21 +11:00
BobbeandGitHub 9f2c55d2d6 Allow stock items to be reallocated for build items (#5693)
* Allow stock items to be reallocated for build items

* Refactor create check

* Fix quantity calculation, Add tests
2023-10-18 00:48:30 +11:00
BobbeandGitHub f11a9e97d2 Fix for % (percent) unit (missing unary operator "%") (#5527)
* Fix `%` (percent) unit conversions

* Add tests for percent unit

* Fix formatting
2023-09-12 10:20:45 +10:00