Commit Graph

782 Commits

Author SHA1 Message Date
Oliver Walters
8e65c0a120 Fixes for some broken views 2019-05-04 17:20:05 +10:00
Oliver Walters
4ef1e4fc78 Explicitly mark some CharField as non blank 2019-05-04 17:01:31 +10:00
Oliver Walters
1d9e31c229 Add a spinning loading icon to modal forms 2019-05-04 16:58:03 +10:00
Oliver Walters
b6cace2681 Add 'options' drop-down for Part table in Category view
- Doesn't do anything yet
2019-05-04 16:41:45 +10:00
Oliver Walters
b1cdb7833d Add confirmation modal to activate/deactivate a part
- New question modal available
2019-05-04 16:31:23 +10:00
Oliver Walters
7dc24e5a55 ARRH 2019-05-04 11:31:07 +10:00
Oliver Walters
4fe3b9d779 add docstrings 2019-05-04 11:28:23 +10:00
Oliver Walters
28600ebc79 There's always another PEP 2019-05-04 11:27:11 +10:00
Oliver Walters
b32a9ed597 Add 'About InvenTree' modal
- Accessible from the top-right dropdown menu
- Add InvenTree/version.py which contains helper functions
2019-05-04 11:23:30 +10:00
Oliver Walters
517262b233 PEP fixes 2019-05-04 01:04:30 +10:00
Oliver Walters
6c7613ba2f Fix form title 2019-05-04 01:03:43 +10:00
Oliver Walters
5f6909d32a Add django-dbbackup app
- https://github.com/un1t/django-cleanup
- Backup location defaults to temp directory
2019-05-04 01:00:58 +10:00
Oliver Walters
4af59f0ca9 Fixed part image upload
- Image was being saved twice
- Don't call super().post in AjaxUpdateView
- Instead, handle properly
2019-05-04 00:38:17 +10:00
Oliver
b6d6b648ef
Merge pull request #217 from SchrodingersGat/no-records-found
Improved table rendering
2019-05-04 00:21:36 +10:00
Oliver
4619cf91f7
Merge pull request #216 from SchrodingersGat/stock-item-fix
Handle case where a new stock item is to be created without the part …
2019-05-04 00:03:02 +10:00
Oliver Walters
2eb825b0e6 Improved table rendering 2019-05-04 00:02:53 +10:00
Oliver Walters
a116c3f191 Handle case where a new stock item is to be created without the part being specified 2019-05-03 23:52:30 +10:00
Oliver Walters
109b6b868c Cature all form AJAX errors
- remove all references to alert()
- Display error modal instead
2019-05-03 23:46:00 +10:00
Oliver Walters
2b3094eac4 Add error dialog box for forms
- Display status message
- Display status code
- Display extended error message in collapsible section
2019-05-03 23:41:31 +10:00
Oliver Walters
bade13f3b8 Fixed stocktake form to match new scheme 2019-05-03 23:08:31 +10:00
Oliver Walters
11af4e5683 Disable form input unless the form is valid
- Disable on first open until server responds
- Disable after form submission until next server response
2019-05-03 23:00:05 +10:00
Oliver Walters
8d6a4415e5 Better documentation for the modal form jQuery code 2019-05-03 22:33:55 +10:00
Oliver Walters
9c4a5d10fa PEP fixes 2019-05-03 08:04:30 +10:00
Oliver Walters
019d5aa4ba Add 'completed_by' field to Build
- On Complete() or Cancel() user field is filled in
2019-05-03 07:58:46 +10:00
Oliver Walters
0be4ee5d92 PEP fix 2019-05-02 21:29:27 +10:00
Oliver Walters
1295390b03 Rendering changes 2019-05-02 21:28:47 +10:00
Oliver Walters
a0ad95ab28 Save the date of Build cancellation 2019-05-02 21:23:53 +10:00
Oliver Walters
b91de1af7b Separate active / complete / cancelled builds 2019-05-02 21:16:35 +10:00
Oliver
6482b54bc9
Merge pull request #205 from SchrodingersGat/qr-codes
Qr codes
2019-05-02 21:15:34 +10:00
Oliver Walters
9f70fff813 Added docstring 2019-05-02 20:58:33 +10:00
Oliver Walters
5a234a1070 Added barcode for Part object 2019-05-02 20:57:53 +10:00
Oliver Walters
c901294a48 Add more information to the Barcode
- API endpoint URL
- Add barcode generation for StockLocation
2019-05-02 20:50:20 +10:00
Oliver Walters
d49ce465e5 Removed UUID field from StockItem
- QR code is now created based on a JSON object
- This will make it extensible to other things such as StockLocation
- Created a helper function to make Barcode objects
2019-05-02 20:40:56 +10:00
Oliver Walters
194a0962f3 PEP fixes 2019-05-02 20:19:08 +10:00
Oliver Walters
38100520df Add 'to_order' and 'to_build' collapsible panels 2019-05-02 20:18:34 +10:00
Oliver Walters
4d7ac870e0 Use the collapse template for the stock location list view 2019-05-02 19:02:03 +10:00
Oliver Walters
fbb120da53 Use collapse template in allocation page 2019-05-02 18:53:03 +10:00
Oliver Walters
18c5ad7a6e Add template for collapsible item 2019-05-02 18:46:39 +10:00
Oliver
2f7c02133e
Merge pull request #201 from SchrodingersGat/part-attachments
Part attachments
2019-05-02 17:46:58 +10:00
Oliver Walters
6e8c1bcc84 Add views to Create / Edit / Delete a PartAttachment
- Buttons to edit or delete existing attachments
- Button to add a new attachment
- Fixed conflicting migrations
2019-05-02 17:29:21 +10:00
Oliver Walters
08b429fdb8 SupplierPart detail page now splits details into two columns
- Price details in right-hand column
2019-05-02 01:15:26 +10:00
Oliver Walters
505191089f Added buttons to edit and delete attachments 2019-05-02 01:06:06 +10:00
Oliver Walters
9614ac2958 Move attachments list to attachments tab 2019-05-02 01:06:06 +10:00
Oliver Walters
ad6f4e19b1 Add 'comment' field to part attachment model 2019-05-02 01:06:06 +10:00
Oliver Walters
2181c82a31 Add 'attachments' tab for Part 2019-05-02 01:05:32 +10:00
Oliver Walters
20cfa71db2 Added migration file 2019-05-02 00:59:59 +10:00
Oliver Walters
22f8c1d8c7 Adjust model field (haven't run make migrate yet) 2019-05-02 00:57:44 +10:00
Oliver Walters
8a8de2b78f Add migration file
- Should pass this time
2019-05-02 00:49:30 +10:00
Oliver Walters
7e149f817c Small change to uuid should trigger migrations 2019-05-02 00:41:29 +10:00
Oliver Walters
09b7846310 Improve edit form for BuildItem
- Hide the build field
- Limit the choices for StockItem (don't let user change the allocation!)
2019-05-02 00:25:19 +10:00
Oliver Walters
a4aec425be Render better build description in complete form
- List of items to be removed from stock
- Detail of what will be created
2019-05-02 00:12:28 +10:00
Oliver Walters
905d78e25c Complete build now works
- Marks build as complete
- Deletes temporary BuildItem objects
- Preselects the part's default_location if there is one
- Creates a new stockitem in the selected location
2019-05-02 00:04:39 +10:00
Oliver Walters
29f7b1a32b Revert "More intelligent passing of context data in AjaxView"
This reverts commit fbb9a708f5.
2019-05-01 22:52:33 +10:00
Oliver Walters
fbb9a708f5 More intelligent passing of context data in AjaxView
- If context is not explicitly supplied, use default get_context_data() function
2019-05-01 22:45:41 +10:00
Oliver Walters
7f63a94f15 Cancel build function now works 2019-05-01 22:22:14 +10:00
Oliver Walters
98109bb1a1 Make build allocation much more intuiitive
- Display current allocation + total allocation requirement
- Color code results
- Required custom 'multiply' template tag
2019-05-01 22:12:34 +10:00
Oliver Walters
ad1d75c259 Improve table formatting when no allocation items found 2019-05-01 18:54:54 +10:00
Oliver Walters
7c11d917de Bug fixes
- Part creation form was setting a field as HiddenInput() rather than its widget
- Added 'comment' file to FileAttachment model
2019-05-01 09:40:49 +10:00
Oliver Walters
7dd960a299 PEP fixes 2019-05-01 08:19:57 +10:00
Oliver Walters
436d158cfe Merge remote-tracking branch 'inventree/master' into build-allocation
# Conflicts:
#	InvenTree/company/templates/company/tabs.html
2019-05-01 08:15:58 +10:00
Oliver Walters
fc42cca10e Automatically allocate parts when a Build is created
- If there is only one StockItem to choose from, allocate parts from that StockItem
2019-05-01 08:08:50 +10:00
Oliver Walters
b6becbc570 Rework build allocation
- Each item renders as a collapsible panel with overview data at the top
2019-05-01 07:48:46 +10:00
Oliver Walters
7e7ac60a1a Tweaks
- Can't edit build status directly
- Refresh BOM table on reload
- Hide Company tabs that are not yet functional
2019-04-30 20:55:28 +10:00
Oliver Walters
fb89574c42 Skeleton code for Build cancel() and complete() functions
- BuildComplete view
2019-04-30 20:39:01 +10:00
Oliver Walters
d518739643 PEP fixes 2019-04-30 19:17:54 +10:00
Oliver Walters
11d3975860 Build javascript improvements
- Alter 'no records found' text
- Reload allocation table on edit or delete
2019-04-30 19:08:13 +10:00
Oliver Walters
d061250a9a Changed delete form close button to "Cancel" 2019-04-30 18:57:37 +10:00
Oliver Walters
efbef251b6 Added views / forms to edit and delete BuildItem objects
- Alter stock allocation
- remove (unallocate) stock from a build
2019-04-30 18:51:05 +10:00
Oliver Walters
24ed6f393b When adding new item allocations, filter the available stock items
- Must match the appropriate part
- Remove items that are already allocated
2019-04-30 16:38:09 +10:00
Oliver Walters
6961d1ec68 Catch BuildItem errors in clean() 2019-04-30 16:35:55 +10:00
Oliver Walters
fbd5a2a270 Register BuildItem in admin interface 2019-04-30 16:35:40 +10:00
Oliver Walters
db5521f02e Limit available choicse in form
- Only allow selection of StockItem which matches the correct part
2019-04-30 15:48:26 +10:00
Oliver Walters
0208c6efe6 New Form and View to create a new BuildItem object
- Allocates stock to a build
2019-04-30 15:35:35 +10:00
Oliver Walters
1b32f9d650 Removed unused function 2019-04-30 15:14:59 +10:00
Oliver Walters
b192deb465 Calculate total allocation data per-row 2019-04-30 14:54:42 +10:00
Oliver Walters
aa491e336d Move javascript for Build allocation to build.js 2019-04-30 14:42:48 +10:00
Oliver Walters
a3d4c81939 Display and edit build URL field 2019-04-30 14:04:43 +10:00
Oliver Walters
395db4df38 Pepe fixes 2019-04-30 00:18:58 +10:00
Oliver Walters
8ec4101edd Reduce items presented in BOM creation list
- Don't allow selection of parts that are already in the BOM!
2019-04-30 00:16:20 +10:00
Oliver Walters
5c5411132a First pass at build allocation table
- Uses bootstrap-table "detailView" function
2019-04-29 23:56:02 +10:00
Oliver Walters
192f604b76 Override get_queryset for BuildItem API view
- Special management to allow filtering by part
2019-04-29 23:45:05 +10:00
Oliver Walters
c29827e45a Add API endpoint and serializer for BuildItem model 2019-04-29 22:59:42 +10:00
Oliver Walters
17d9d25fb9 Require Build and StockItem to be unique_together in BuildItem class 2019-04-29 22:56:40 +10:00
Oliver Walters
f42116c0d9 Renamed 'stock' to 'stock_item' 2019-04-29 22:33:39 +10:00
Oliver Walters
e25579141e Rename BuildItemAllocation to BuildItem 2019-04-29 22:30:21 +10:00
Oliver Walters
6326d6d050 Fixed spelling mistake 2019-04-29 22:21:18 +10:00
Oliver Walters
989611cae2 Added BuildItemAllocation Model
- Used to link stock items to a build
2019-04-29 22:19:13 +10:00
Oliver Walters
e471313435 PEP fix 2019-04-29 18:43:44 +10:00
Oliver Walters
3b838d29ec Small fixes
- Hide some tabs that aren't functional yet
- Hide fields instead of marking them as disabled
- Default behaviour is to allow all hosts
2019-04-29 18:35:16 +10:00
Oliver
99b386fb95
Merge pull request #185 from SchrodingersGat/active-part
Inactive part
2019-04-29 00:04:26 +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
05333e7e7d PEP fixes 2019-04-28 23:58:14 +10:00
Oliver Walters
87411293cf docstring improvements 2019-04-28 23:57:29 +10:00
Oliver Walters
bc12af5994 Remove the 'supplier_part' field when first creating a Part object
- As the Part does not yet exist, there are no matching SupplierPart objects
2019-04-28 23:55:21 +10:00
Oliver Walters
4e3702384b Limit SupplierPart option in Part edit form
- Only allow selection of SupplierPart that match the Part being edited
2019-04-28 23:50:35 +10:00
Oliver Walters
6612e91aec Remove ability to delete part via API 2019-04-28 23:41:47 +10:00
Oliver Walters
73f672495d Use API to mark part as active/inactive 2019-04-28 23:40:26 +10:00
Oliver Walters
492d705b39 Hide inactive parts in parts list 2019-04-28 23:22:54 +10:00
Oliver Walters
1a66a12d57 Enable Part API to filter by active status 2019-04-28 23:15:30 +10:00
Oliver Walters
495d414d54 Hide some options if a part is not active 2019-04-28 23:12:59 +10:00
Oliver Walters
260d890052 If a part is not active, display an INACTIVE Message on part page 2019-04-28 23:08:54 +10:00
Oliver Walters
c2a35b6656 Add 'active' field to Part model 2019-04-28 23:00:38 +10:00
Oliver Walters
2f7f49c116 PEP fix 2019-04-28 11:54:40 +10:00
Oliver Walters
a9224445b6 Added docstring 2019-04-28 11:54:08 +10:00
Oliver Walters
ba49b080b0 Some small tweaks 2019-04-28 11:46:53 +10:00
Oliver
e5e6480099
Merge pull request #181 from SchrodingersGat/supplier-parts
Supplier parts
2019-04-28 11:28:32 +10:00
Oliver Walters
1171953e65 Limit SupplierPart options in CreateBomItem form
- If Part is selected, limit the options in supplier_part field
- Only allow supplier_parts which map back to the same part
2019-04-28 11:24:26 +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
624c5094c5 Prevent editing of SupplierPart fields if initial values are provided 2019-04-28 10:57:32 +10:00
Oliver Walters
101ce53cd3 Update docstrings for InvenTree/views.py 2019-04-28 10:46:07 +10:00
Oliver Walters
ff068de16d Simplify AjaxDeleteView 2019-04-28 10:41:54 +10:00
Oliver Walters
72ff25e0c1 Simplify AjaxUpdateView
- Using get_form() is MUCH simpler
2019-04-28 10:39:46 +10:00
Oliver Walters
96a15453c4 Simplify AjaxCreateView
- Screams in reading the documentation
2019-04-28 10:35:17 +10:00
Oliver Walters
cd438f0569 Add generic method for retriving GET or POST params 2019-04-28 09:53:42 +10:00
Oliver Walters
e5fc43a00f Fix improper references to template_name for ajax forms
- Should be ajax_template_name
2019-04-28 09:00:54 +10:00
Oliver Walters
9b77340782 Change field ordering for SupplierPart form
- Import fields first!
2019-04-28 08:55:29 +10:00
Oliver Walters
2108ee2eb7 Update makefile 2019-04-28 08:42:17 +10:00
Oliver Walters
d55ea1a982 PEP fixes 2019-04-28 01:09:48 +10:00
Oliver Walters
aa04941bf1 Add module-level docstrings for each app 2019-04-28 01:05:45 +10:00
Oliver Walters
a499fd325e Docstring for Stock app 2019-04-27 22:49:16 +10:00
Oliver Walters
ed3ae30248 Documentation for Part app 2019-04-27 22:18:07 +10:00
Oliver Walters
5e6d49102d Add docstring documentation to the main InvenTree app 2019-04-27 21:21:58 +10:00
Oliver Walters
c3f0570926 Add docstring to Company app 2019-04-27 20:43:27 +10:00
Oliver Walters
d9169a0dd1 Add docstrings for Build app 2019-04-27 20:35:14 +10:00
Oliver Walters
0cec12085d Renamed key.py to keygen.py 2019-04-27 17:03:37 +10:00
Oliver Walters
0484e62836 PEP fixes 2019-04-27 15:25:40 +10:00
Oliver Walters
e7685951e1 Add (simple) test cases for Stock API
- Still a lot of work to do here
2019-04-27 15:24:30 +10:00
Oliver Walters
1fbea088dc Added API test for Company app 2019-04-27 15:02:20 +10:00
Oliver Walters
241f9783ad Added further testing for Part/Bom API 2019-04-27 14:50:49 +10:00
Oliver
28d8252047
Merge pull request #168 from SchrodingersGat/supplier-part
Adjust SupplierPart supplier foreignkey
2019-04-27 13:29:52 +10:00
Oliver Walters
030265cc2d Allow editing of 'notes' field when creating new StockItem 2019-04-27 13:12:34 +10:00
Oliver Walters
95be2755f4 Adjust SupplierPart supplier foreignkey
- Limit choices to 'is_supplier'
2019-04-27 13:10:21 +10:00
Oliver
d70137dcbd
Merge pull request #167 from SchrodingersGat/api-tests
Api tests
2019-04-27 01:07:53 +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
443041de3a Update key_file generator script
- Prevent overwrite of key file if it already exists
- Option to force key file overwrite if required
2019-04-26 23:56:19 +10:00
Oliver
165264bd0e
Merge pull request #166 from SchrodingersGat/copy-button
Move 'duplicate' button to the Part options drop-down
2019-04-26 23:44:01 +10:00
Oliver Walters
69b34a0ff2 Move 'duplicate' button to the Part options drop-down 2019-04-26 23:39:33 +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
e57a8cdcd1 Fix rendering of BOM table view
- Edit and delete rows now works
2019-04-26 23:32:22 +10:00
Oliver Walters
cec61655cf Fix table rendering for 'used_in' view 2019-04-26 23:12:06 +10:00
Oliver Walters
08aca6a5a8 Fix rendering for company part list 2019-04-26 23:08:13 +10:00
Oliver Walters
dee10e4922 Fix rendering of part supplier table 2019-04-26 23:04:08 +10:00
Oliver Walters
1c710e71a5 Modal forms now display non-field errors
- Critical for errors not relating to a particular field (e.g. unique_together)
- Ref: https://stackoverflow.com/questions/7419535/how-to-render-django-form-errors-not-in-a-ul
2019-04-26 23:01:04 +10:00
Oliver Walters
73282801c9 Fix for BOM display
- Perhaps need to make this cleaner, later on
- Is this too much data pushed through the API?
2019-04-26 22:41:29 +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
Oliver Walters
6c3041d99c Remove 'draft' function from StockItem RUD endpoint 2019-04-26 21:44:38 +10:00
Oliver Walters
9ae5ea3876 Add RUD endpoint for Company 2019-04-26 21:44:38 +10:00
Oliver Walters
6f7082a919 Peppy 2019-04-26 21:44:38 +10:00