Oliver Walters
eaf42b8abe
Instead of creating a custom filter for "latest" parts,
...
simply make use of the existing "ordering" query as part of DRF
2020-09-19 20:26:17 +10:00
eeintech
c55fa13cdb
Added part list which require more stock to be built
2020-09-18 11:40:50 -05:00
Oliver Walters
ca1281ee10
Adds ajax table for part sale price information
2020-09-18 22:11:51 +10:00
eeintech
a9fffe6a73
Added latest parts and invalid BOMs on homepage
2020-09-16 17:02:24 -05:00
Oliver Walters
42967905bc
New approach for multiple annotations
...
- Use the django-sql-utils addon - https://github.com/martsberger/django-sql-utils
- The "distinct=True" flag was not doing what I thought it was doing...
2020-09-05 22:35:19 +10:00
Oliver Walters
62c26c881d
Add ability to filter part list by 'ancestor'
2020-09-02 23:18:26 +10:00
Oliver Walters
f1373e3bea
Improve speed of BomItem API queries
...
- Including the pricing information takes absolutely ages, takes too long!!
2020-08-15 21:52:32 +10:00
eeintech
af70dd5dfe
Allowing Part thumbnail (image) update via API
2020-07-20 16:16:26 -05:00
eeintech
9b7977a217
API: Allow part deletion if inactive
2020-07-08 10:56:23 -05:00
Oliver Walters
134a688e4a
Fix filter logic for 'starred' parts
2020-06-28 19:08:13 +10:00
Oliver Walters
e9ed50fc4b
Add table displaying part test templates
2020-05-17 16:07:55 +10:00
Oliver Walters
69c748d018
PEP fix
2020-05-17 14:15:13 +10:00
Oliver Walters
4d992ea528
Expose test templates to the API
2020-05-17 13:56:49 +10:00
Oliver Walters
366d4b2143
Add new attechment functionality to new models
...
- Giving the ol' refactor tractor a fresh coat of paint
2020-05-12 21:40:42 +10:00
Oliver Walters
2369b40bbf
Ensure user gets saved when uploading attachment via API
2020-05-12 21:11:38 +10:00
Oliver Walters
cfc0145180
Add some unit tests
2020-05-11 23:44:22 +10:00
Oliver Walters
a7e5a79f4c
Expose salesorder and purchaseorder attachments to the API
2020-05-11 23:41:57 +10:00
Oliver Walters
17d0a015f2
Add API endpoint for StockItem attachment items
2020-05-11 23:32:40 +10:00
Oliver Walters
f36c5137dd
Add ability to add part file attachments via the API
2020-05-11 23:25:55 +10:00
Oliver Walters
cc11df917e
Part list API adjustments
2020-05-02 14:03:17 +10:00
Oliver Walters
7fca496de8
Bug fix for StockItem list API
...
- The wrong detail data was being set
2020-05-02 13:51:29 +10:00
Oliver Walters
4197e29fce
Major major major (improvements for StockItem list API)
...
OK LISTEN UP - Lots of work went into making this speedier:
- For related detail fields (e.g. part_detail), we pre-fetch and cache the model data
- This eliminates duplicate database hits for the same model instances
- Perform all field filtering manually, rather than using the DRF 'filter_fields' concept (this seems to add a lot of overhead)
- Use query annotations to getch calculated fields rather than fetching one-at-a-time
- And finally, if the request is AJAX then return a JsonResponse which is SO FREAKING MUCH FASTER
2020-05-02 13:46:19 +10:00
Oliver Walters
44319d24e4
Custom list serializer for 'location_detail'
2020-05-02 10:05:35 +10:00
Oliver Walters
a537b6df6e
PEP fixes
2020-05-02 09:50:18 +10:00
Oliver Walters
4a60da67fd
Significant increase in query speed for Part list
...
- Custom list method
- Cache PartCategory objects in memory
2020-05-02 09:49:05 +10:00
Oliver Walters
3b42b5e27e
Typo fix for part api
2020-04-28 23:17:59 +10:00
Oliver Walters
087001f29d
Fix BOM table rendering
...
- Price was not being sent in the PartBriefSerializer!
2020-04-28 23:17:15 +10:00
Oliver Walters
fee6246a8f
PEP fix
2020-04-20 08:25:24 +10:00
Oliver Walters
ef66a3b8f3
Make PartDetail view same as PartList view
2020-04-20 08:10:59 +10:00
Oliver Walters
f5c86bc457
"Fix" for unit tests
...
- Not working in travis for some reason?
- But they are working locally...
2020-04-20 01:23:05 +10:00
Oliver Walters
6a89e0089d
Updates for stock serializer
2020-04-20 00:49:13 +10:00
Oliver Walters
092215918c
PEP fixes
2020-04-19 23:56:16 +10:00
Oliver Walters
2621c51a7e
Further API cleanup
...
- Perform a single call to get starred parts for current user and record results
- This provides significant speed improvements
- Remove old manual serializer
- More data prefetching
2020-04-19 23:50:41 +10:00
Oliver Walters
69b8eed028
Fixes for aggregation issues
...
- Ensure that "distinct=True" is set!
- ARRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
2020-04-19 22:54:46 +10:00
Oliver Walters
0e55911a6b
Index page rendering is now a lot faster
...
- Hide some elements which are currently very expensive to compute
-
2020-04-13 22:07:14 +10:00
Oliver Walters
124fab3eee
Display a part as 'starred' in the part table
2020-04-13 21:30:17 +10:00
Oliver Walters
b850beb687
Add ability to filter by 'starred' status
2020-04-13 21:24:36 +10:00
Oliver Walters
a65c80dbf3
Small fixes here and there
2020-04-12 00:20:29 +10:00
Oliver Walters
de6f2d37e5
Coalesce baby, yeah!
2020-04-11 23:05:07 +10:00
Oliver Walters
2560613e36
Update API docstring
2020-04-11 23:03:03 +10:00
Oliver Walters
f5a8b110b5
Filter part table by 'is_component' status
2020-04-11 23:02:18 +10:00
Oliver Walters
e1c6ad7761
Logic fix for part filtering
2020-04-11 22:57:16 +10:00
Oliver Walters
e86bc4fa6d
Add ability to filter parts by "low_stock"
...
- Huzzah for the "Coalesce" function, eh?
2020-04-11 22:43:51 +10:00
Oliver Walters
5e706554b1
Part table filtering
...
- Filter by active status
- Filter by 'is_template' status
- Filter by 'has_stock'
- Allow cascading sublocations
- API improvements to allow new features
2020-04-11 22:10:15 +10:00
Oliver Walters
b28487760a
Rename Part.URL -> part.link
...
- Previous migration needed some tweaking to get it to run... because.. why?
- It seems to pass when running manage.py migrate but fails when running manage.py test
- Stumped on this one
2020-04-06 11:16:39 +10:00
Oliver Walters
791eb63f35
Same fix for Part API
2020-04-05 22:59:45 +10:00
Oliver Walters
d739c2dea8
"URL" is renamed to "link" in the URL
2020-04-05 19:18:32 +10:00
Oliver Walters
0cfb293ca9
List API now uses the thumbnail image
2020-04-05 00:19:37 +11:00
Oliver Walters
f5150f549a
Part API changes
...
- Allow filtering parts with null parent (top-level category parts)
- Option to include sub-category parts or not
2020-04-03 09:37:03 +11:00
Oliver Walters
6e65a736e7
Add isNull function to query against null keys
2020-04-03 09:31:26 +11:00
Oliver Walters
d17056820b
Allow PartCategory filtering by null parent
2020-04-03 09:25:58 +11:00
Oliver Walters
e8e0ab8416
Include 'minimum_stock' information in part list api
2020-03-30 13:21:33 +11:00
Oliver Walters
6a78f6d451
Include quantity currently being build in Part API
2020-03-26 17:43:02 +11:00
Oliver Walters
57123283f4
Better filtering of annotations for Part-list API
2020-03-26 17:08:01 +11:00
Oliver Walters
dae45875fb
Add 'on_order' quantity to the part list API
2020-03-26 14:46:23 +11:00
Oliver Walters
d51ac2f5c2
Save creation user when making a new part via the API
2020-03-18 22:00:32 +11:00
Oliver Walters
d4fe83170f
Select existing image and upload successfully
2020-02-10 23:48:45 +11:00
Oliver Walters
1327c1d3b1
Add API endpoint for querying part images
2020-02-10 22:03:06 +11:00
Oliver Walters
67ea0fa887
Create a new part parameter template
2019-09-07 19:53:47 +10:00
Oliver Walters
f415e2040e
API endpoint for PartParameter and PartParameterTemplate
2019-09-07 19:44:10 +10:00
Oliver Walters
37d9c59a0e
Add API endpoint for validating a BOM item
2019-09-05 19:29:51 +10:00
Oliver Walters
20ec36d3ea
Enforce authentication for API access
2019-07-08 19:20:00 +10:00
Oliver Walters
b185abbb87
Catch case in which a request.GET is not available
...
(cherry picked from commit 9296c0ba0f8c4914cd04b820c6172f8c3a794750)
2019-07-08 09:41:20 +10:00
Oliver Walters
faf2fd408f
PEP fix
2019-06-24 00:01:34 +10:00
Oliver Walters
a5306ec81b
Add 'revision' field to part
...
- e.g. different versions of a product
- Can keep old versions in database and mark as inactive
2019-06-20 21:46:16 +10:00
Oliver Walters
a47be24410
Fixed test cases
2019-06-18 01:38:43 +10:00
Oliver Walters
ea0da4c8f8
PEP
2019-06-18 01:32:29 +10:00
Oliver Walters
79cd05423c
Custom aggregation of Part API
...
- Reduced full part query from 2.5s to 200ms!
2019-06-18 01:31:30 +10:00
Oliver Walters
37dba91b4a
Add 'include self' option to getUniqueChildren
2019-06-18 01:02:56 +10:00
Oliver Walters
16b6ae8d61
Fixed up some stupid recursion on the Tree model template
2019-06-18 00:59:54 +10:00
Oliver Walters
037dc6a0d6
Reduced tree time with some better queries
2019-06-17 23:52:49 +10:00
Oliver Walters
ba26acd487
Rename some fields
...
- Oops didn't think that through, gotta go through and fix the data now...
2019-06-02 19:46:30 +10:00
Oliver Walters
fd2e2a71f9
Add search results for part-category and stock-location
2019-06-02 19:15:05 +10:00
Oliver Walters
1312148721
Filter parts by template or variant status (in API)
2019-05-26 11:15:41 +10:00
Oliver Walters
cf5b8d0249
Optional part_detail and sub_part_detail for BOM API
...
- Significant speed boost on request
- Request the relevent information at the right place
2019-05-23 22:36:19 +10:00
Oliver Walters
5055226490
Reduce BOM listing time to ~1.8s
2019-05-20 08:31:03 +10:00
Oliver Walters
6766063c8b
Reducing request time for PartList API
...
- Initial query time = 5.91s
- Prefetch related part categories = 3.64s
2019-05-20 08:13:22 +10:00
Oliver Walters
cdc55bb5d3
PEP fixes
2019-05-18 23:08:42 +10:00
Oliver Walters
0cfb243eb3
Move SupplierPart and SupplierPriceBreak to the 'Company' app
...
- https://docs.djangoproject.com/en/2.2/ref/models/options/#django.db.models.Options.db_table
- https://stackoverflow.com/questions/3519143/django-how-to-specify-a-database-for-a-model
- And others, presumably
2019-05-18 23:08:34 +10:00
Oliver Walters
b4df96aaee
Simplify extended filters
2019-05-16 19:14:43 +10:00
Oliver Walters
02033c2157
Add 'keywords' field to Part
...
- Shows up in search results
2019-05-14 17:23:20 +10:00
Oliver Walters
92930766c6
Tree view now supports root URL link
2019-05-09 22:23:56 +10:00
Oliver Walters
02bd9c2d05
Search part by IPN
2019-05-06 11:23:55 +10:00
Oliver Walters
7987fcc7cc
PEP fixes
2019-05-05 11:44:23 +10:00
Oliver Walters
b2e935382b
Override user field when creating a new PartStar
...
- Force it to be the currently logged-in user
2019-05-05 10:47:57 +10:00
Oliver Walters
3bd7c28558
Add API endpoint for viewing and deleting a PartStar entry
2019-05-05 10:36:48 +10:00
Oliver Walters
d245e58990
Only allow PartStar creation for the currently authenticated user
2019-05-05 09:14:12 +10:00
Oliver Walters
70f1097ea0
API endpoint for accessing part star information
2019-05-05 09:05:44 +10:00
Oliver Walters
07fbaa9dd9
Test fix
...
- Part list API handles 'category' filtering a bit differently
- Probably need to address this
2019-04-29 00:01:57 +10:00
Oliver Walters
6612e91aec
Remove ability to delete part via API
2019-04-28 23:41:47 +10:00
Oliver Walters
1a66a12d57
Enable Part API to filter by active status
2019-04-28 23:15:30 +10:00
Oliver Walters
a9fbbc3a37
Remove references to get_object_or_404
...
- Properly handle DoesNotExist errors
2019-04-28 11:09:19 +10:00
Oliver Walters
d55ea1a982
PEP fixes
2019-04-28 01:09:48 +10:00
Oliver Walters
ed3ae30248
Documentation for Part app
2019-04-27 22:18:07 +10:00
Oliver Walters
241f9783ad
Added further testing for Part/Bom API
2019-04-27 14:50:49 +10:00
Oliver Walters
f111a42058
Added API tests for Part API
...
- Uses DRF APITestCase class
2019-04-27 01:03:11 +10:00
Oliver Walters
529beb3d58
Abstract DRF serializer validation
...
- Subclass InvenTree.InvenTreeModelSerializer
- Ensures model data is checked too (after serializer checks are performed)
2019-04-26 23:34:15 +10:00
Oliver Walters
accec07fe9
BOM serializer now validates against model
...
- Need to call instance.clean()
- https://stackoverflow.com/questions/40697648/django-dry-model-form-serializer-validation
2019-04-26 22:36:44 +10:00
Oliver Walters
da540e1b26
Improve BOM API endpoint
...
- Origin at /api/bom
- Add detail view
- Add create power to list view
2019-04-26 21:44:38 +10:00
Oliver Walters
4e3b8bdd92
Remove draft feature from Part RUD endpoint
2019-04-26 21:44:38 +10:00