Commit Graph

18050 Commits

Author SHA1 Message Date
github-actions[bot] c1e1fd89f9
New Crowdin translations by GitHub Action (#12318)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-07-16 19:02:44 +10:00
Oliver b52980d2ed
[UI] Display error information in boundary (#12403)
* Display error information in boundary

* Fix SecurityContext
2026-07-16 15:36:09 +10:00
Oliver 5422896288
Bulk create events (#12405)
* Add initial benchmark test

* Enable event batching for BulkdCreate API mixin

* Fix duplicate save event for Parameter

* Apply event batching for bulk_update

* Similar testing for bulk_delete
2026-07-16 14:24:00 +10:00
Oliver a09479665a
prevent duplicate save event when creating a part (#12406) 2026-07-16 14:23:44 +10:00
Oliver 3fd0e9d304
Bulk delete line items (#12391)
* Add bulk-delete mixin for order line items

* Add unit tests

* Enable frontend support

* Add CHANGELOG entry

* Add locking control for TransferOrder

* Fix playwright tests

* Fix playwright tests
2026-07-16 11:55:34 +10:00
Oliver 8407f63656
[bug] Tree parent fix (#12401)
* Refactor

* row locking on bulk-update

* Rebuild tree in background task

* Regression testing

* Fix unit test

* Allow more generous timeout
2026-07-16 10:05:01 +10:00
gunstr 1dd261e918
Add revision to SO and BO tables (#12398)
* Add a Revision column renderer

* Add Revision to SO and BO tables

* Move Description column after IPN and Revision to be consistent with other tables
2026-07-15 10:01:41 +10:00
Oliver 70749ed93c
Fix StockItem parent update on delete (#12377)
* Fix StockItem parent update on delete

* Check for null parents
2026-07-14 16:29:30 +10:00
Oliver afbe3b3ab9
Bug fixes (#12365)
* Bug fixes:

- Enforce serial number requirements when receiving items
- Stricter merge checking
- Fix count-into-location bug
- Unit testing

* Additional unit tests
2026-07-14 16:00:26 +10:00
Oliver 61dcc04205
[feature] Unique parameters (#12388)
* Add uniqueness requirement for parameter values

* Add documentation

* Do not copy unique parameters

* Updated playwright tests

* Enhanced validation checks for uniqueness

* Update documentation

* Update CHANGELOG

* Bump API version
2026-07-14 14:34:17 +10:00
Oliver 183e6c37b1
Fix for BuildItem with zero quantity (#12387) 2026-07-14 12:41:40 +10:00
Oliver 2b25a46eaa
Prevent duplication completion of ReturnOrder (#12386) 2026-07-14 12:06:53 +10:00
Oliver fcc68ee69f
Apply row-level locking when updating stock item quantity (#12385) 2026-07-14 12:02:02 +10:00
Oliver 6be654954e
[refactor] SalesOrder allocation fixes (#12379)
* Use API for unit test

* Refactor SalesOrderSerialAllocationSerializer

- Move business logic into the SalesOrder model

* Add unit testing for serial allocation
2026-07-14 10:34:54 +10:00
Oliver d9b9a87893
[bug] Quantity fixes (#12375)
- Ensure valid quantity values on stock operations
- Regression testing
2026-07-14 10:25:27 +10:00
Oliver b64182b565
Uninstall fix (#12378)
* Prevent uninstall into structural location

* Regression tests
2026-07-13 20:21:56 +10:00
Oliver a12fd546ff
use new helper func (#12373) 2026-07-13 18:54:10 +10:00
Oliver 431a6e49a0
fix concurrent update issues (#12380)
- Ensure database values are used for delta updates
- Regression tests
2026-07-13 18:53:18 +10:00
Oliver dd05611ea4
Hardening build outputs (#12376)
- ensure outputs cannot be double completed
2026-07-13 18:53:07 +10:00
Oliver 31f97934d0
[bug] Child fix (#12374)
* Remove outdated helper

* Fix children prop and add regression test
2026-07-13 18:48:49 +10:00
Oliver 766a8b41db
[refactor] Remove MPTT mixin from StockItem model (#12360)
* Remove MPTT from StockItem model

* cleanup stock fixture file

* Remove tree rebuild code for StockItem

* Adjust API

* Update CHANGELOG  and API version

* remove tree references

* Additional checks

* Remove unused tests

* Add data migration test

* fix fk fields

* Cleanup

* Tweak unit test

* Revert bulk-create in unit test

* Don't rebuild StockItem models

* Add bulk_create_and_fetch helper model

- Overcome limitations of mysql

* Add unit test for new bulk-create helper

* Apply new helper to codebase

* Adjust unit test

* bug fix

* Adjust query limits

* Remove assert
2026-07-13 15:09:27 +10:00
Oliver 85e13b26ec
Prevent duplicate receive operation on ReturnOrder (#12368) 2026-07-13 14:53:01 +10:00
Oliver a19771dec9
Progressive falloff for delay (#12369) 2026-07-13 14:52:40 +10:00
Oliver 0b3ba6c4eb
[bug] Transfer order fixes (#12367)
* Handle failed transfer order transaction

* Prevent duplicate completion of transfer order
2026-07-13 14:35:07 +10:00
Oliver 32ca78f65c
[bug] prevent double-complete of shipments (#12366) 2026-07-13 14:34:08 +10:00
Oliver c5e81a7820
[UI] Preview Drawer (#12117)
* Add <GlobalPreviewDrawer> component

* Allow plugins to interact

* provide either pk or instance data

* open preview drawer from calendar views

* Launch preview drawer directly from tables

* Add preview types

* Fix types

* CLear data on close

* Fix transition

* Allow caller to pass preview component

* AttributeGrid

* Use a table component

* Display info items

* Navigate to detail page from drawer

* Updates

* Refactor to use part detail view

* Display parameters

* Fix image caching

* Apply same to StockItem

* Remove old component

* Refactor details grid component

* Preview panel for PurchaseOrder model

* Implement for SalesOrder

* Support ReturnOrder

* SupplierPart and ManufacturerPart

* Support preview in parameteric tables

* support Company and BuildOrder

* Fix numbervalue

* BuildOrder and SalesOrderShipment

* location and category

* add user setting

* Fix typing

* Handle link clicks within preview drawer

* fixes

* Implement onClose callback

* Handle row click when panel preview is disabled

* Support custom detail links

* update playwright tests

* UI tweaks

* Add CHANGELOG entry

* docs

* define default API params per model type

* Split out more docs pages

* Simplify state ref

* Refactoring

* Simplify PreviewDrawer component

* observe user setting in calendar view

* Enable PreviewDrawer from RowViewAction

* Push render functions onto ModelInformation dict

* Fix lib compilation

* Refactor internal uses of RowViewAction

* typescript fixes

* Simplify PreviewDrawer component structure

* remove TODO placeholders
2026-07-12 20:11:27 +10:00
Oliver b42521f205
[refactor] Bulk actions (#12359)
* Add helper to bulk offload task

* bulk offload events

* Add unit test for bulk_offload_task

* Add context wrapper for bulk event creation inside looped funcs

* Add batching for stock tracking events

* Context wrapper for capturing offloaded tasks

* apply batching to other stock adjustment endpoints

* Add benchmarking tests for other API endpoints

* Benchmark test for serialize stock

* Reduce commet verbosity

* Apply benchmark to PO receive

* Refactor benchmarking

* PrefetchedPrimaryKeyRelatedField

- Provides O(1) lookup for serializer validation
- Significant improvements for large datasets

* Adjust unit test code

* Check for correct order of tracking operations
2026-07-12 15:58:09 +10:00
Oliver 4e00e2d0c6
[feature] Break apart assemblies (#12310)
* Implement API endpoint for stock disassembly

* Add basic frontend implementation

* Adjust required user permission

* Add preFormContent

* Read-only if serialized

* Adjust location and status of each subcomponent

* Handle null value

* display installed items in frontend form

* More unit tests

* Traceability

* Add docs

* Exclude virtual / consumable stock

* Additional docs

* Added bundled items docs

* More docs

* more docs tweaks

* Updated part docs

* Add playwright tests

* Robustify test

* suppress certain warnings in schema

* Adjust playwright tests

* bug fix

* Tweak playwright tests
2026-07-12 13:31:10 +10:00
Oliver 35eb839f08
[refactor] Refactor StockItem methods (#12358)
* Refactor StockItem methods

- Refactor out common functionality
- Code cleanup

* Cleanup

* Prevent override of existing deltas
2026-07-11 18:48:37 +10:00
Oliver 4bff83108f
Remove dead pricing code on Part model (#12357) 2026-07-11 17:49:28 +10:00
Oliver 89d11e9e37
Fix data import bug (#12355)
- Fixes bug where imported data headers get out of sync
- Additional unit tests
2026-07-11 12:05:14 +10:00
Oliver 29fa66a75f
Improved error context (#12350)
- More useful error messaging if a task fails
2026-07-10 20:32:35 +10:00
Oliver a1787c659c
Bug fixes for PO receive (#12349)
* Bug fixes for PO receive

- Fix shadowed variable
- Notify listeners for all received items

* Cache part subs
2026-07-10 20:31:57 +10:00
Oliver 83508f4b12
[UI] Page Load Improvements (#12334)
* Parallel initial requests

* Remove debouncing

* Refactor lazy loading of desktop / mobile view

* Reduce initial waiting for loadable components

* Fix duplication of API calls

* Further reduce duplicate calls

* Combine user roles into /user/me/ endpoint

* lazy load global import drawer

* lazy load table in plugin context

* Patch ScanButton

* Added playwright tests for login

* Adjust thresholds
2026-07-10 18:08:25 +10:00
Oliver a38c3963f2
[UI] Form fix (#12348)
* Refactor API form fields

- Prevent reconstruction of all fields when single value changes
- Memoize components more intelligently
- Fix enter key callback ref

* memoize other field types too

* More memo

* Prevent duplicate API calls for related model field

* Add aria-label for IconField

* add playwright tests for form field coverage
2026-07-10 16:54:13 +10:00
Oliver 9fd074b202
Add IPN column to BOM pricing panel (#12344) 2026-07-10 00:21:10 +10:00
Oliver ae12fa342a
Currency options fix (#12343)
- Ensure currency options are loaded dynamically
2026-07-10 00:21:01 +10:00
Oliver d4171f2dcf
[docs] Admin docs (#12345)
* Enhanced documentation for admin center and django-admin

* Fix links and wording

* remove placeholders

* Fix links

* Fix more links
2026-07-10 00:01:00 +10:00
Oliver aec215ca2f
[UI] Docs links (#12342)
* Simplify navigation links

* simplify version.py

* Simplify docs links

* Consolidate
2026-07-10 00:00:34 +10:00
Oliver c9d98cb545
Import internal price (#12341)
* Enable download from frontend panels

* Enable data import for part internal pricing

* Bump API version

* Update CHANGELOG
2026-07-09 23:17:41 +10:00
Oliver 996dbc5aa8
Adjust default behavior of "migrate" command (#12320)
* Adjust default behavior of "migrate" command

- Does not create new migration files automatically

* Add dummy field - ensure detected by CI

* Revert "Add dummy field - ensure detected by CI"

This reverts commit e7a101fe87.

* Fix typo

* Adjust contributing docs

* Add CHANGELOG entry
2026-07-09 20:41:56 +10:00
Oliver d041e251d2
[bug] Plugin load fix (#12329)
* Update plugin name

* Backup accessor for plugin name

* Add null check for plg_db
2026-07-09 10:37:07 +10:00
Petr Ledvina a616e7826c
Fix notes on part creation (#12332)
Co-authored-by: Oliver <oliver.henry.walters@gmail.com>
2026-07-09 08:00:32 +10:00
Oliver 6cc356220f
Fix currency choices for PartPricing model (#12336)
* Fix currency choices for PartPricing model

- Remove dynamic choices from model definition
- Move validation step to the serializer
- Add validator to ensure only valid currencies can be used

* Add regression test

* Bump API version
2026-07-09 06:37:24 +10:00
Oliver 8e555f6b37
[UI] Add form submission shortcut (#12328)
- Ctrl + enter submits the form
2026-07-08 21:14:13 +10:00
Oliver 75f6960782
Robustify playwright tests (#12331)
* Robustify playwright tests

* More test tweaks
2026-07-08 20:31:34 +10:00
Oliver b63d829891
Fix for stocktake exporter (#12324) 2026-07-08 09:06:03 +10:00
Oliver 69ae28d0df
[bug] Barcode bug fix (#12319)
* [bug] Check for null line_item when receiving items

* Additional unit testing

* Additional context

* Fix tests
2026-07-07 13:47:46 +10:00
dependabot[bot] 945f998b48
chore(deps): bump the dependencies group with 4 updates (#12312)
Bumps the dependencies group with 4 updates: [actions/setup-python](https://github.com/actions/setup-python), [actions/cache](https://github.com/actions/cache), [stefanzweifel/git-auto-commit-action](https://github.com/stefanzweifel/git-auto-commit-action) and [CodSpeedHQ/action](https://github.com/codspeedhq/action).


Updates `actions/setup-python` from 6.2.0 to 6.3.0
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](a309ff8b42...ece7cb06ca)

Updates `actions/cache` from 5.0.5 to 6.1.0
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](27d5ce7f10...55cc834586)

Updates `stefanzweifel/git-auto-commit-action` from 7.1.0 to 7.2.0
- [Release notes](https://github.com/stefanzweifel/git-auto-commit-action/releases)
- [Changelog](https://github.com/stefanzweifel/git-auto-commit-action/blob/master/CHANGELOG.md)
- [Commits](04702edda4...4a55954c78)

Updates `CodSpeedHQ/action` from 4.17.6 to 4.18.1
- [Release notes](https://github.com/codspeedhq/action/releases)
- [Changelog](https://github.com/CodSpeedHQ/action/blob/main/CHANGELOG.md)
- [Commits](63f3e98b61...a4a36bb07c)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: actions/cache
  dependency-version: 6.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: dependencies
- dependency-name: stefanzweifel/git-auto-commit-action
  dependency-version: 7.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: CodSpeedHQ/action
  dependency-version: 4.18.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-07 12:10:19 +10:00
github-actions[bot] 77ddc49b3a
New Crowdin translations by GitHub Action (#12284)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-07-07 10:52:00 +10:00