Commit Graph

168 Commits

Author SHA1 Message Date
Oliver Walters
d3a5661dbd Serializer fix 2019-05-21 15:42:52 +10:00
Oliver Walters
988a35d237 Serialize BOMItem pricing information
- Account for quantity
- Prefetch required items
2019-05-21 15:15:54 +10:00
Oliver Walters
9d5b938ced Don't serialize 'available_stock' in PartSerializer 2019-05-21 07:57:44 +10:00
Oliver Walters
72aba30e81 More hungry fetching 2019-05-21 00:16:00 +10:00
Oliver Walters
8adb4f6c20 Further query reduction
- Also improved query reporting middleware
2019-05-20 23:26:27 +10:00
Oliver Walters
d15b09a5f4 Don't serialize pricing
- Saves MANY queries and provides drastic speedup
2019-05-20 23:03:19 +10:00
Oliver Walters
18ff80312b Fixes 2019-05-20 22:53:01 +10:00
Oliver Walters
ee2ddbf512 Reduce some database queries by using aggregate Sum 2019-05-20 21:47:30 +10:00
Oliver Walters
fc75ab7420 Reduce response time for stock list
Initial time - 6.2s
After prefetch - 4.3s
2019-05-20 08:44:52 +10:00
Oliver Walters
5055226490 Reduce BOM listing time to ~1.8s 2019-05-20 08:31:03 +10:00
Oliver Walters
cee1062b51 Prefetch locations - 2.6s
However the 'total_stock' and 'available_stock' fields are still the majority of the response time
2019-05-20 08:24:05 +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
2b098942b0 Fix pricing bug
- Include BOM item pricing in API
2019-05-18 23:08:56 +10:00
Oliver Walters
2a1fd2b03b More complex pricing calculations
- Calculate BOM price for a part
- Calculate total pricing for a part (build or purchase)
- Display pricing information in BOM table
2019-05-18 23:08:51 +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
8c92c2c2a1 Display overage values in BOM table 2019-05-15 07:23:02 +10:00
Oliver Walters
2164cac28a PEP 2019-05-14 18:32:20 +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
d5dbc1b072 Display supplier part URL in table 2019-05-12 12:20:15 +10:00
Oliver Walters
1d36ea3e2e Add a 'full_name' field for Part
- Combines IPN | Name | Variant
- Use this to display in most views
2019-05-12 12:16:04 +10:00
Oliver Walters
f76f1f54ae Add 'variant' field to Part model
- Display 'long_name' which is concatenation of name and variant
2019-05-10 22:17:13 +10:00
Oliver Walters
58e5b10d26 Display supplier logo in part suppliers list
- Also add a background colour for popup image in case of transparent image file
2019-05-08 20:23:54 +10:00
Oliver Walters
0754afd5f5 Display icons in supplier_part list
- Bug fix for part list API query
2019-05-08 20:16:53 +10:00
Oliver Walters
416b5c9820 Include part image URL in Part API 2019-05-08 15:25:28 +10:00
Oliver Walters
7987fcc7cc PEP fixes 2019-05-05 11:44:23 +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
70f1097ea0 API endpoint for accessing part star information 2019-05-05 09:05:44 +10:00
Oliver Walters
73f672495d Use API to mark part as active/inactive 2019-04-28 23:40:26 +10:00
Oliver Walters
1a66a12d57 Enable Part API to filter by active status 2019-04-28 23:15:30 +10:00
Oliver Walters
ed3ae30248 Documentation for Part app 2019-04-27 22:18:07 +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
6f7082a919 Peppy 2019-04-26 21:44:38 +10:00
Oliver Walters
9b4e86f36a Add ability to create a new supplierpart from the API 2019-04-26 21:44:37 +10:00
Oliver Walters
19a11eac1a PEP fixes 2019-04-17 07:49:46 +10:00
Oliver Walters
150bc1e674 Add API interface for SupplierPriceBreak 2019-04-17 00:35:49 +10:00
Oliver Walters
6e2b111b9c Add 'consumable' field to Part
- Indicates that a part can be used to make other parts
- This is the inverse of 'buildable'
- Add this field to the serializer and edit forms
- Display parameter on part info page
- BOM edit window only requests sub-parts that are marked as 'consumable'
- Also added option to edit 'units' field for part
2019-04-16 00:01:52 +10:00
Oliver Walters
3d9a1acc2e Don't render full category information in part API
- Lots of data duplication!
- Just send the category ID (and the category name)
-
2019-04-15 22:52:53 +10:00
Oliver Walters
e370cb8d3c Add note field to BomItem serializer 2019-04-14 22:20:11 +10:00
Oliver Walters
cf374252c1 PEP fixes for /part 2019-04-14 09:25:46 +10:00
Oliver Walters
2d21bf0626 Part BOM list now shows how many of each sub-item are available
- If there are enough to build the available quantity is shown in green
- Otherwise, shown in orange
2019-04-12 22:09:50 +10:00
Oliver
7e4b0630b6 Part category API 2018-05-04 23:54:57 +10:00
Oliver
f995f54390 More API / JSON stuff
- SupplierPart JSON API
- Part supplier list
- Company part list
2018-05-03 00:47:03 +10:00
Oliver
7d21c4ef1c BOM now uses DRF / ajax 2018-05-02 23:42:57 +10:00
Oliver
1899d8f3e9 Stock location part list now uses bootstrap table
- Serializers within serializers!
2018-05-02 23:08:45 +10:00
Oliver
45510b1adc Add category info to part serializer 2018-05-02 20:57:04 +10:00
Oliver
f46c09e3a7 Added part category path string to serializer 2018-04-24 17:54:08 +10:00
Oliver
86a9b36c99 Add part-list API
- Deleted some old serializers
- Simply list of parts
- Search by name / description
- Orderable by name
2018-04-23 21:10:13 +10:00
Oliver
a91ff58d84 Flakey
Fixing python style errors
2018-04-16 01:02:17 +10:00
Oliver
e30a089c76 Move BomItem into the Part app
- Does not make sense to keep these separate
- Removed bom app entirely
2018-04-14 14:19:03 +10:00
Oliver
bd46f66d6b Begin to add views for part models
- List BOM items
- Show category listing as linked items
- Fix some pathing issues with InvenTreeTree class
2018-04-13 22:36:59 +10:00
Oliver
ed61ebe5b7 Starting to implement BOM management
- Each part can be made of other parts
- Disable tracking and project apps for now
- Project will change (eventually) to work order
- Part parameters have been disabled (for now)
2018-04-12 16:27:26 +10:00
Oliver Walters
d3781427ad Part parameter fixes 2017-04-16 01:08:43 +10:00
Oliver Walters
2e133b7744 Start of exception handler 2017-04-16 00:58:40 +10:00
Oliver Walters
f7107008f0 Part API now hyperlinked 2017-04-15 00:10:35 +10:00
Oliver Walters
37808f3834 Simplified PART and PROJECT APIs 2017-04-14 15:25:10 +10:00
Oliver Walters
7fe1c21ebd Updated Part API
- categories can now be filtered by parent
- Added FilterChildren func to invenTree.models
2017-04-14 13:09:24 +10:00
Oliver Walters
39a6bcdf3e Improved Part API 2017-04-14 11:46:18 +10:00
Oliver Walters
0772b8d780 Major improvements to Parts API
- Requires authentication (or read only)
- Separated URL patterns
- Better use of generics
- Can add/edit parts and part categories
2017-04-13 00:27:29 +10:00
Oliver
4c07e8d8a0 Updated part API 2017-04-11 23:33:08 +10:00
Oliver
e06121ebda Updated API URLs 2017-04-11 09:41:03 +10:00
Oliver Walters
4046c6f0bf Added gitattributes file 2017-03-29 23:45:27 +11:00
Oliver Walters
68ae1110ad Updates
- Improved some models
- Added PEP check script
2017-03-29 08:37:41 +11:00
Oliver Walters
7ce5a9a7e5 Papa Pep 2017-03-28 23:38:12 +11:00
Oliver Walters
a793b344e8 PEP test 2017-03-28 23:14:36 +11:00
Oliver Walters
8781b572c0 bug fix for part serializer 2017-03-28 23:10:43 +11:00
Oliver Walters
7bcea2f3ac Added REST framework
- /part/ URL is now a JSON api
2017-03-28 22:12:02 +11:00