Commit Graph

86 Commits

Author SHA1 Message Date
miggland 807784d9e4
Add Metadata to further models (#4410)
* Add metadata for ManufacturerPart

* Add Metadata for SupplierPart

* Add metadata to label models

* Add metadata to order line items

* Add metadata to shipment

* Add metadata to Build and BuildItem

* Add metadata to BomItem

* Add metadata to PartParameterTemplate

* Syntax, lint

* Fix isort style

* Lint

* Correction of model name

* Metadata for Reports

* Fix silly error

* Fix silly error

* Correct model name

* Correct model name

* Correction

* Correct company urls

* Apply generic model to Report metadat

* Rename/remove redundant import

* Remove shadowing of report in loop variable

* Update import ordering

* More corrections

* better docstrings

* Correct names for API endpoints

* Default to PO, required for api-doc to work

* Changes by @matmair

* Suppress metadata from Bom export

* Add migration files

* Increment API version

* Add tests for all Metadata models, even previously existing ones

* Update tests

* Fix

* Delay tests

* Fix imports

* Fix tests

* API Version number

* Remove unused import

* isort

* Revent  unintended change of cache
2023-03-23 21:51:08 +11:00
simonkuehling f523fb44f6
Filter build orders by responsible owner (#4383) (#4408)
* add assigned_to filter to Build API

* extend API to filter build orders by assigned owner

* rename API filter to 'responsible'

* add 'Responsible' filter to build oders table

* add user/group icon to owners in 'Responsible' column

* remove unused python class import

* bump API version number

* fix handling of invalid IDs

* refactor filter options as a callback function

* fix JS styling
2023-02-25 13:52:12 +11:00
Matthias Mair 428e939b1d
[FR] Add "priority" field to BuildOrder (#4225)
* [FR] Add "priority" field to BuildOrder
Fixes #3059

* Add priority to the frontend

* add field to serializer

* bump version
2023-01-25 09:37:05 +11:00
miggland d4341e81f2
List PO/SO/BO by reference in API (#4083)
* API: Add filter by reference to SO, PO. Add filtering by customer to SO list

* API: Add filtering by reference to Build order list

* Add test for changes

* Increment API version

* Add test for BO reference

* Add missing description of API version
2022-12-21 21:48:30 +11:00
Oliver 0150afd7a7
Fix default ordering for build orders (#3626)
- Order by reference
- Show "newer" references first
2022-09-01 12:25:08 +10:00
Oliver b886e54709
Build API improvements (#3581)
* Improve build order lookup

* Query efficiency improvements

* Lazy load build allocation table

* API defaults ensure consistent behaviour
2022-08-19 17:16:38 +10:00
Matthias Mair cf70e4220f
Update requirements (#3228)
* Remove stat context variables

* Revert "Remove stat context variables"

This reverts commit 0989c308d0.

* remove old backport

* move requirements

* move isort

* move migrations-tests

* add pip-tools as req and add hook

* Use hashes and also run when txt files are added

* Update to hashes in requirements

* update requirements install path

* remove allauth-2fa for a test

* install dev-requirements

* re-enable allauth

* remove hashes from pre normal setup

* Remove version bindings if they are the laest

* move depencies to upper bound

* fix django-money

* remove windows specific requirements

* also install dependencies

* update markdownify

* remove django-admin-shell

* remove unneeded packages

* add docs

* remove pins and fix pre-commit pipeline

* pin django-money

* really remove admin shell

* return default behaviour for money serializer

* pip fix

* update filter name

* set decimal for output

* add migrations

* pin coveralls

* update requirements

Co-authored-by: Oliver Walters <oliver.henry.walters@gmail.com>
2022-06-28 22:12:00 +10:00
Matthias Mair e83995b4f5
Add bleach (#41) (#3204)
* use shims for API view inheritation

* Add mixin for input sanitation

* fix clean operation to fix all string values

* Also clean up dicts
this is to future-proof this function

* Update docstirng

* proof custom methods against XSS through authenticated users
2022-06-16 10:01:53 +10:00
Oliver a816c14b95
Allow build orders to be deleted via the API (#3155) 2022-06-08 07:45:42 +10:00
Oliver 00b75d792e
Adds API mixin for "bulk delete" (#3146)
* Introduces a BulkDelete API mixin class

- Allows deletion of multiple items against a single API request

* Bump API version

* Adds BulkDelete mixin to StockItemTestResult API class

* refactor "multi BOM Item delete" to use new approach

* Refactor various attachment API endpoints

* Refactor multi delete for StockItem

* Convert remaining enndpoints over

* Fix for API test code
2022-06-07 07:25:12 +10:00
Oliver a066fcc909
Add new global setting to control auto-upload of test reports (#3137)
* Add new global setting to control auto-upload of test reports

* Adds callback to attach a copy of the test report when printing

* Fix for all attachment API endpoints

- The AttachmentMixin must come first!
- User was not being set, as the custom 'perform_create' function was never called

* Remove duplicated UserSerializer

* display uploading user in attachment table

* Add unit test to check the test report is automatically uploaded
2022-06-06 15:20:41 +10:00
Matthias Mair f38386b13c
Add more checks to pre-commit (#3132)
* Add bandit to pre-commit checks

* fix catchall exceptions

* remove unused definitons

* remove unuseed ariables

* Add docstring

* fix B006, B008 errors

* fix B007 error

* ignore B009

* Add checks for formatting and naming
2022-06-06 08:56:52 +10:00
Matthias Mair 0c97a50e47
Docstring checks in QC checks (#3089)
* Add pre-commit to the stack

* exclude static

* Add locales to excludes

* fix style errors

* rename pipeline steps

* also wait on precommit

* make template matching simpler

* Use the same code for python setup everywhere

* use step and cache for python setup

* move regular settings up into general envs

* just use full update

* Use invoke instead of static references

* make setup actions more similar

* use python3

* refactor names to be similar

* fix runner version

* fix references

* remove incidential change

* use matrix for os

* Github can't do this right now

* ignore docstyle errors

* Add seperate docstring test

* update flake call

* do not fail on docstring

* refactor setup into workflow

* update reference

* switch to action

* resturcture

* add bash statements

* remove os from cache

* update input checks

* make code cleaner

* fix boolean

* no relative paths

* install wheel by python

* switch to install

* revert back to simple wheel

* refactor import export tests

* move setup keys back to not disturbe tests

* remove docstyle till that is fixed

* update references

* continue on error

* add docstring test

* use relativ action references

* Change step / job docstrings

* update to merge

* reformat comments 1

* fix docstrings 2

* fix docstrings 3

* fix docstrings 4

* fix docstrings 5

* fix docstrings 6

* fix docstrings 7

* fix docstrings 8

* fix docstirns 9

* fix docstrings 10

* docstring adjustments

* update the remaining docstrings

* small docstring changes

* fix function name

* update support files for docstrings

* Add missing args to docstrings

* Remove outdated function

* Add docstrings for the 'build' app

* Make API code cleaner

* add more docstrings for plugin app

* Remove dead code for plugin settings
No idea what that was even intended for

* ignore __init__ files for docstrings

* More docstrings

* Update docstrings for the 'part' directory

* Fixes for related_part functionality

* Fix removed stuff from merge 99676ee

* make more consistent

* Show statistics for docstrings

* add more docstrings

* move specific register statements to make them clearer to understant

* More docstrings for common

* and more docstrings

* and more

* simpler call

* docstrings for notifications

* docstrings for common/tests

* Add docs for common/models

* Revert "move specific register statements to make them clearer to understant"

This reverts commit ca96654622.

* use typing here

* Revert "Make API code cleaner"

This reverts commit 24fb68bd3e.

* docstring updates for the 'users' app

* Add generic Meta info to simple Meta classes

* remove unneeded unique_together statements

* More simple metas

* Remove unnecessary format specifier

* Remove extra json format specifiers

* Add docstrings for the 'plugin' app

* Docstrings for the 'label' app

* Add missing docstrings for the 'report' app

* Fix build test regression

* Fix top-level files

* docstrings for InvenTree/InvenTree

* reduce unneeded code

* add docstrings

* and more docstrings

* more docstrings

* more docstrings for stock

* more docstrings

* docstrings for order/views

* Docstrings for various files in the 'order' app

* Docstrings for order/test_api.py

* Docstrings for order/serializers.py

* Docstrings for order/admin.py

* More docstrings for the order app

* Add docstrings for the 'company' app

* Add unit tests for rebuilding the reference fields

* Prune out some more dead code

* remove more dead code

Co-authored-by: Oliver Walters <oliver.henry.walters@gmail.com>
2022-06-02 01:37:39 +10:00
Oliver e174096173
Adds ability to search build API by part parameters (#3110)
* Adds ability to filter build API by part parameters

* Bump API version
2022-06-01 16:52:43 +10:00
Oliver 256451d82b Fix context such that build output can be deleted 2022-05-17 11:52:42 +10:00
Matthias ecccfbd546
Remove encoding header
Fixes #2996
2022-05-15 20:33:00 +02:00
Oliver c89547f58c Adds exporter and download functionality for BuildOrder table 2022-05-12 12:44:15 +10:00
Oliver Walters bd3d6f47a1 Refactor CancelBuild form 2022-05-04 16:30:46 +10:00
Oliver Walters 768e23c7b8 Refactor BuildOrder API classes with a fancy mixin 2022-05-04 15:59:30 +10:00
Matthias 67ab45bdee
update depreciated paths 2022-05-01 22:00:18 +02:00
Oliver 94fa424440 Table tweaks 2022-04-29 13:13:12 +10:00
Oliver Walters f531e354b9 Allow completion of partially allocated build outputs
- Requires manual acceptance from user
2022-04-28 21:54:38 +10:00
Oliver 0841c628e0 Adds ability to filter build items by "tracked" flag 2022-04-28 17:27:09 +10:00
Oliver 4cd41bd0a3 Display "loading" until allocations loaded 2022-03-09 15:23:23 +11:00
Oliver 434f563a41 Adds API endpoint for "auto allocating" stock items against a build order.
- If stock exists in multiple locations, and the user "does not care" where to take from, simply iterate through and take
2022-03-04 15:26:00 +11:00
Oliver f90a27d01d Adds a new API endpoint for creating build outputs 2022-02-15 12:51:48 +11:00
Oliver 0d7b94fbfa Remove old form code which is no longer used 2022-02-10 00:48:06 +11:00
Oliver 96af074365 Adds API endpoint to delete build outputs 2022-02-10 00:46:38 +11:00
Oliver Walters 12b3a5c9cc Validate and save the new serailizer 2022-01-07 11:33:27 +11:00
Oliver Walters 960784644f Adds skeleton for new API endpoint for completing a build order 2022-01-07 10:50:29 +11:00
Oliver 20dac08158 PEP fixes 2021-12-04 21:31:39 +11:00
Oliver 9e1251d78d Adds "assigned_to_me" filtering to build orders 2021-12-04 21:30:11 +11:00
Matthias d884e62be1
[FR] Confirm to W293
Fixes #2335
2021-11-23 00:28:23 +01:00
Oliver 6ebb956c8d Fix generation of API documentation
- Can't use get_object_or_404 in API views!
2021-10-17 22:32:03 +11:00
Oliver ccaa7d2683 Merge branch 'master' into build-output-complete 2021-10-16 13:18:35 +11:00
Oliver bf47b57c82 working on updating build output tables 2021-10-14 23:46:21 +11:00
Oliver 54dd05a24d Add an API serializer to complete build outputs 2021-10-14 23:13:01 +11:00
Oliver 7ce0f817aa Add a 'reference_int' field to the models, to be used as a secondary index 2021-10-14 17:45:43 +11:00
Oliver 233672d822 Add new functionality to InvenTreeOrderingFilter
- Allow ordering by multiple field aliases
- Simply way to implement "integer ordering" functionality
2021-10-14 14:25:39 +11:00
Oliver 7dfffcd5d3 Move "build unallocate" functionality to the API
- Much much simpler now!
- Filtering is against bom_item, not part
- Fixes a bug with the new (reasonably complex) substitution framework
2021-10-14 10:32:43 +11:00
Oliver ddcfc8996c Further fixes for API / serializer classes
- Correctly catch and re-throw errors
- Provide request to serializer context
2021-10-05 12:12:37 +11:00
Oliver dd4db6442e PEP fixes 2021-10-05 00:45:49 +11:00
Oliver 8f298f71ef Add detail API endpoint for BuildItem model 2021-10-04 23:57:02 +11:00
Oliver 5ded23fd99 Fixes for serializer validation
- Note: use the validate() function!
- Ref: https://www.django-rest-framework.org/api-guide/serializers/
- override serializer.save() functionality for simpler operation
2021-10-04 23:44:23 +11:00
Oliver 99c1819c69 Implement API endpoint and serializer for allocation of stock items 2021-10-04 18:26:30 +11:00
Oliver 4ee0004c97 Filtering for Build and StockItem 2021-07-21 21:34:16 +10:00
Oliver a0b3359d62 Fix filtering for build orders 2021-07-13 19:58:47 +10:00
Oliver 9947a0cf90 PEP fix 2021-07-09 00:59:56 +10:00
Oliver 7e7fe7d63f Refactor buildlist filtering 2021-07-09 00:58:17 +10:00
Oliver fcc244b52f Fixes for BuildOrder attachment API list 2021-07-08 10:50:34 +10:00