Oliver Walters
4ffaad3f1a
Add a default_location to the PartCategory model
...
- If a part does not specify a default location, look at the default location of the category
2019-05-04 19:00:11 +10:00
Oliver Walters
59987940c8
green frog memes
2019-05-04 18:47:54 +10:00
Oliver Walters
9aa1a70f18
QR code improvements
...
- Display QR codes as links to served images
- The qr_code plugin caches these images in the background
- Make a qr_code template to push out as a modal form
- Create a QRCodeView to simplify display of QR codes
- Add option to launchModalForm() to disable the 'submit' button
Refactored QR code display for
- StockLocation
- StockItem
- Part
2019-05-04 18:46:57 +10:00
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
Oliver Walters
9b4e86f36a
Add ability to create a new supplierpart from the API
2019-04-26 21:44:37 +10:00
Oliver Walters
907bccf748
Add SupplierPart detail API
...
- RUD view
2019-04-26 21:44:37 +10:00
Oliver Walters
5ee339bb27
Add 'delete' button for supplier parts
2019-04-26 21:44:37 +10:00
Oliver Walters
deebc80088
Display available stock in part search page
2019-04-26 21:31:53 +10:00
Oliver Walters
d78841a665
Allow editing of more stockitem options
2019-04-25 23:35:48 +10:00
Oliver Walters
8d5850248e
PEP fixes
2019-04-25 23:25:52 +10:00
Oliver Walters
1f8632c77c
Improved response message for stocktake
2019-04-25 23:19:22 +10:00
Oliver Walters
990808ec03
Fix code to move multiple parts via AJAX / JSON
2019-04-25 23:16:54 +10:00
Oliver Walters
757cd539b2
Enforce 'notes' field for StockItem move
...
- Better error handling for StockItem.move
2019-04-25 23:01:03 +10:00
Oliver Walters
38fa89d1da
Bug fix for javascript
...
- If location not set for StockItem, display special text
2019-04-25 22:34:30 +10:00
Oliver Walters
053e9c9795
Add a stock tracking index
...
- Shows entire history of stocktracking items
2019-04-25 22:11:10 +10:00
Oliver Walters
79f8736b6b
Add note on creation of StockItem
2019-04-25 22:10:46 +10:00
Oliver Walters
533fdb71c4
Javascript function to render stock tracking table
...
- Added extra info to StockItemTracking serializer
2019-04-25 22:04:32 +10:00
Oliver Walters
1112e5e3e2
PEP fixes
2019-04-25 18:50:22 +10:00
Oliver Walters
2ab8276672
better coverage for part/models
...
- Increase from 57% to 67%
2019-04-25 17:51:02 +10:00
Oliver Walters
f36f02b27f
Tests for stock app
...
- Increase coverage of Stock/models.py to 84%
2019-04-25 17:30:44 +10:00
Oliver Walters
3c40418f04
100% coverage on company/models.py
2019-04-25 04:20:40 +10:00
Oliver
19001b98f7
Merge pull request #149 from SchrodingersGat/get_absolute_url
...
Get absolute url
2019-04-25 13:40:10 +10:00
Oliver Walters
7b68310d73
PEP fixes
2019-04-25 03:20:25 +10:00
Oliver Walters
7c91c9ba79
Reverse URL for stock models
...
- stock location
- stock item
- stock tracking
- Added blank test files
2019-04-25 03:13:41 +10:00
Oliver Walters
e6617fef80
reverse URL lookup for BomItem and SupplierPart
...
- created empty test files
2019-04-25 01:05:08 +10:00
Oliver Walters
0bc5617825
Reverse url lookup for Part model
2019-04-25 01:00:01 +10:00
Oliver Walters
f9db3b680d
Reverse lookup for part category URL
...
- Added some test cases for PartCategory model
2019-04-25 00:28:40 +10:00
Oliver Walters
a2d4403968
Reverse lookup for company URL
...
- Added some simple tests
2019-04-24 23:55:11 +10:00
Oliver Walters
5098712d9c
Use reverse to get Build URL
...
- Add test cases to Build
2019-04-24 23:47:39 +10:00
Oliver Walters
887250cd06
PEP fixes
2019-04-24 23:26:16 +10:00
Oliver Walters
40a18d0ce4
Ensure settings.py knows how to access secret_key.txt
2019-04-24 23:19:36 +10:00
Oliver Walters
7a65144641
Use random.choice instead of random.choices
...
- Allows compatibility with python3.5
2019-04-24 16:08:59 +10:00
Oliver Walters
3827806603
SECRET_KEY is now generated by a script and stored as a local file
...
- key file ignored from git
2019-04-24 16:01:47 +10:00
Oliver Walters
0cdf660a80
Merge remote-tracking branch 'inventree/master' into delete-old-forms
...
# Conflicts:
# InvenTree/part/views.py
2019-04-18 23:51:58 +10:00
Oliver Walters
456164f1d9
PEP fixes
2019-04-18 23:47:04 +10:00
Oliver Walters
41ee6320a8
Delete some other old templates
2019-04-18 23:44:15 +10:00
Oliver Walters
9e9aa02b90
Remove old templates from Stock
2019-04-18 23:41:17 +10:00
Oliver Walters
4f51258cf8
Removed old forms in Part
2019-04-18 23:39:05 +10:00
Oliver Walters
e57303ed37
Removed old forms from Company
2019-04-18 23:35:20 +10:00
Oliver Walters
0654fa7cc9
Deleted unused forms in Build
...
- These now use modal forms
- Removed redundant templates
2019-04-18 23:35:06 +10:00
Oliver Walters
8040ad8a6a
Add function to duplicate stock item
2019-04-18 23:28:46 +10:00
Oliver Walters
05beb26c82
Change form title if part is being copied
2019-04-18 23:22:58 +10:00
Oliver Walters
6de58edd41
Add button on part page to duplicate part
...
- Opens modal form
- Takes user to created page
2019-04-18 23:17:21 +10:00
Oliver Walters
deaaa48b7d
Add ability to 'copy' a part
...
- Launch a PartCreate form
- initialize form data with the existing part (if it exists!)
- use model_to_dict to pass data around
2019-04-18 23:12:29 +10:00
Oliver Walters
590dedce13
Add some helper functions
2019-04-18 23:08:33 +10:00
Oliver Walters
a0b6900eb8
Disable buttons that require row selection, until a selection has been made
...
- Stock table
2019-04-18 22:35:51 +10:00
Oliver Walters
bcebb1c73c
Add select column to BOM table
...
- Doesn't do anything yet
2019-04-18 21:40:09 +10:00
Oliver Walters
8948536f0f
Allow export of binary file data
...
- Use io.BytesIO for non-string-data file objects
2019-04-18 21:33:00 +10:00
Oliver Walters
5d887f3785
Remove 'simple-history'
...
- Might re-add it later on
2019-04-18 21:28:09 +10:00
Oliver Walters
88a7fa9656
Update logo colours
2019-04-18 09:16:16 +10:00
Oliver Walters
8dc3063765
Vertical centering for header image
2019-04-18 08:40:54 +10:00
Oliver Walters
18c48e9191
Split part details display into two columns
2019-04-18 08:33:25 +10:00
Oliver Walters
fd3f6ec21e
Add stock item filtering by sub-category
2019-04-18 08:33:12 +10:00
Oliver
6b05078fd2
Merge pull request #133 from SchrodingersGat/part-files
...
Part files
2019-04-18 00:23:09 +10:00
Oliver Walters
3bac4fc9ee
Added some pepper
2019-04-18 00:20:49 +10:00
Oliver Walters
e707eb3a2b
Provide download link for part attachments
...
- Better upload management for attachment files (separated based on part ID)
2019-04-18 00:14:53 +10:00
Oliver Walters
d9d4e0043a
Display list of part attachments
2019-04-18 00:01:19 +10:00
Oliver Walters
00199c26de
Add part attachments to the admin interface
2019-04-17 23:58:13 +10:00
Oliver Walters
cb7e98aa1c
Add extra BOM export format options
...
- Uses tablib (already used by django-import-export plugin)
- Needs cleanup but works well
- Problem exporting XLSX data (needs work!)
2019-04-17 23:52:15 +10:00
Oliver Walters
ebcbf9a90e
Add status_text to API
2019-04-17 23:33:19 +10:00
Oliver Walters
963883acd6
Consolidated function to adjust stock
...
- Add / remove / stocktake
- Handle forms and tables properly
2019-04-17 23:17:04 +10:00
Oliver Walters
ba1b8d9181
Created js function to load stock table
...
- Avoid duplication of code
2019-04-17 22:59:52 +10:00
Oliver Walters
16dc5e2436
Reorganize script locations
...
- Delete script files that are no longer used
2019-04-17 19:03:28 +10:00
Oliver Walters
b9b8b5ee12
Update model for StockItem
2019-04-17 18:34:21 +10:00
Oliver Walters
69e8f4f5cc
Fix up search box display in the navbar
2019-04-17 08:21:07 +10:00
Oliver Walters
86c31e8c0d
Allow regex searching on part name
2019-04-17 08:19:40 +10:00
Oliver Walters
ca7182bf6b
search page now returns matching parts
...
- Searches 'name' and 'description' field
- Uses the JSON API
2019-04-17 08:16:34 +10:00
Oliver Walters
fbf764e2ef
Send search query text to template
2019-04-17 07:53:31 +10:00
Oliver Walters
19a11eac1a
PEP fixes
2019-04-17 07:49:46 +10:00
Oliver Walters
52c3a63c61
Updated SupplierPriceBreak page
2019-04-17 00:48:01 +10:00
Oliver Walters
150bc1e674
Add API interface for SupplierPriceBreak
2019-04-17 00:35:49 +10:00
Oliver Walters
a3b544e2a4
typo fix
2019-04-17 00:21:11 +10:00
Oliver Walters
5cd837be07
Limit supplierpart part link to purchasable parts only
2019-04-17 00:14:22 +10:00
Oliver Walters
cd0b6a6511
Updated Supplier models
...
- Added cost calculation for supplier part
- Added more validators and help text
2019-04-17 00:09:39 +10:00
Oliver Walters
01bdf2f19b
PEP fixes
2019-04-16 22:32:43 +10:00
Oliver Walters
7eea9d1a20
Launch a modal to select BOM download format
...
- This will have to change! A client-side hack for now..
- Work out a better way to do this!
2019-04-16 21:46:12 +10:00
Oliver Walters
be60fbcc25
More cleanup for modal forms
...
- Require 'ajax_template_name' to be set or weird things happen!
2019-04-16 21:25:20 +10:00
Oliver Walters
c0dd253137
Cleanup for AjaxUpdateView
2019-04-16 19:38:29 +10:00
Oliver Walters
7708ffb069
Cleanup for AjaxDeleteView
...
- Doesn't call renderJsonResponse as it returns html_data not html_form
2019-04-16 19:01:58 +10:00
Oliver Walters
7190a6fb7f
Cleanup for AjaxCreateView
2019-04-16 18:43:41 +10:00
Oliver Walters
c706f00733
Skeletong for exporting BOM in different formats
2019-04-16 14:22:27 +10:00
Oliver Walters
29f33a8eec
Move button locations into bootstrap-table headers
...
- part category
- stock location
- build list
- company list
- supplier part list
2019-04-16 11:46:07 +10:00
Oliver Walters
338a30b50e
API endpoint for build list
...
- Changed part/build table to bootstrap table (ajax)
2019-04-16 08:31:43 +10:00
Oliver Walters
94b280eed3
Move button groups into the table toolbar next to search box
...
- part stock list
- part bom list
2019-04-16 08:13:05 +10:00
Oliver Walters
a4467fee21
Remove bootstrap-editable
...
- Revert to using modal django forms
2019-04-16 07:53:30 +10:00
Oliver Walters
bafce641a7
Limit sub-part choices to consumable parts only
2019-04-16 01:45:16 +10:00
Oliver Walters
bad46f85f4
Edit / delete / add BOM items
...
- Remove x-editable inline editing
- Uses only bootstrap-table and modal forms
- Hide the 'part' field in the bom item edit
2019-04-16 01:41:01 +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
ca96c8e22b
Better query param parsing
2019-04-15 23:30:17 +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
ac0b28a06c
Simplify part filtering
2019-04-15 22:39:28 +10:00
Oliver Walters
7e78f0aa67
Changed query param from '1' to 'True'
2019-04-15 22:36:50 +10:00
Oliver Walters
a5e3af97ed
Move table functionality to external script
2019-04-15 22:28:29 +10:00
Oliver Walters
b522ca5b29
Don't render editable items when ont in editing mode
2019-04-15 18:41:48 +10:00
Oliver Walters
ec98f7829e
Add context flag to enable editing mode
...
- pass ?edit=1 to the BOM
- Display page differently if in editing mode
-
2019-04-15 18:32:15 +10:00
Oliver Walters
258555a813
Add placeholder text option for field editing
2019-04-15 00:11:26 +10:00
Oliver Walters
264f189917
Add function to wrap a value in an in-line editable field
...
- Requires bootstrap-editable
2019-04-15 00:11:14 +10:00
Oliver Walters
e370cb8d3c
Add note field to BomItem serializer
2019-04-14 22:20:11 +10:00
Oliver Walters
d5186fc615
Add 'note' field to BOM item model
2019-04-14 18:26:11 +10:00
Oliver Walters
9e5eed5d5e
Move the export_bom function to the part model
2019-04-14 12:34:14 +10:00
Oliver Walters
b8e28c003d
Provide download link to export BOM file
...
- Helper function for generating temporary file (in memory) for exporting
2019-04-14 12:34:14 +10:00
Oliver Walters
b58c49e066
Create BOM export form
...
- Select output format
2019-04-14 12:34:13 +10:00
Oliver Walters
14de111130
Allow better passthrough of context variables for non-form views
2019-04-14 12:34:13 +10:00
Oliver Walters
0cc59540ef
Generate modal form to export BOM
...
- Doesn't do anything yet
- Extends AjaxView
2019-04-14 12:34:13 +10:00
Oliver Walters
2202dfd55d
Peppy fixes
2019-04-14 12:30:06 +10:00
Oliver Walters
00c21d521e
Always display category
...
- Display full category path
2019-04-14 12:25:21 +10:00
Oliver Walters
9d98c429d6
Complex filtering for parts
...
- Allow filtering against child categories
- Could potentially be slooow
2019-04-14 11:59:07 +10:00
Oliver Walters
1ef81ecf2e
Ignore some rules
2019-04-14 09:39:01 +10:00
Oliver Walters
29ab19d51d
PEP fixes in /InvenTree
2019-04-14 09:33:17 +10:00
Oliver Walters
ac3a4e3de4
PEP fixes for /company
2019-04-14 09:30:45 +10:00
Oliver Walters
b9f23554a5
PEP fixes for /build
2019-04-14 09:29:05 +10:00
Oliver Walters
cf374252c1
PEP fixes for /part
2019-04-14 09:25:46 +10:00
Oliver Walters
76b0d17b11
PEP fixes for /stock
2019-04-14 09:23:24 +10:00
Oliver Walters
e6e03963c4
Simplified custom button text for modal forms
...
- Now only configured from the javascript end
- No server-side configuration of button text
2019-04-13 23:02:23 +10:00
Oliver Walters
0e7472dabc
Fix display of custom button text
...
- Missing first parameter (modal object) to function call
2019-04-13 21:20:02 +10:00
Oliver Walters
f44ba1c011
Commonized 'submit_label' text option
2019-04-13 21:11:42 +10:00
Oliver Walters
51d77ce4d2
Include uuid in serializer and api
2019-04-13 07:56:06 +10:00
Oliver Walters
7b68bac32f
Display UUID and QR code on stockitem page
...
- The actual display of this can be improved upon at a later stage
2019-04-13 01:14:24 +10:00
Oliver Walters
b64e584b52
Add UUID field to StockItem model
2019-04-13 01:12:47 +10:00
Oliver Walters
b0f42fd30f
Add qr_code to list of installed addons
2019-04-13 01:03:56 +10:00
Oliver Walters
1b5287307b
Add some help text
2019-04-13 00:52:26 +10:00
Oliver Walters
926d717190
Add quantity field to StockItemTracking
...
- Keep track of historical levels of part availability
2019-04-13 00:14:10 +10:00
Oliver Walters
93bb0bf6f4
Improved 'move stock' form
...
- Better error checking on the form (provides form validation messages to user)
2019-04-13 00:08:13 +10:00
Oliver Walters
f451d31f00
Rearrange stockitem drop-down menu for more logical operations
2019-04-12 23:10:47 +10:00
Oliver Walters
e560ea4a41
Update edit form for StockItem
...
- Disallow direct quantity editing (must perform stocktake)
- Add notes field to allow editing
2019-04-12 23:10:32 +10:00
Oliver Walters
7566c3769a
Added a note for future work
2019-04-12 23:05:12 +10:00
Oliver Walters
68ec5df371
Correctly handle StockTrackingItem if there is no user data
2019-04-12 23:03:02 +10:00
Oliver Walters
88103b63d2
Cannot filter by STATUS
...
- Is this because it is a dict?
- Need to address this in the future
2019-04-12 22:46:48 +10:00
Oliver Walters
7a7b0aea33
Changed 'stocklocation.items' to 'stocklocation.stock_items'
2019-04-12 22:46:15 +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 Walters
8a3706dd76
Added MPN field to supplier part lists
2019-04-12 21:54:53 +10:00
Oliver Walters
25f1d643b8
Add indicator to show no stock in part listing
2019-04-12 21:21:50 +10:00
Oliver Walters
7341fe4542
Fix modal form for creating company
2019-04-12 21:09:31 +10:00
Oliver Walters
c67dc6f56e
Initial updates required to run under django 2.2
...
- Change to middleware.py
- Change some URLs formatting
- Fix django version at 2.2
2019-04-12 20:44:22 +10:00
Oliver
ceea053368
Added part API
...
- Build allocation table now makes use of this API
- Further steps towards allocation table
2018-05-12 12:44:29 +10:00
Oliver
1b9c98ae3e
Bug fix for stock item traking list
...
- Query was returning ALL stock tracking objects!
- Now filter by StockItem ID
2018-05-10 21:27:41 +10:00
Oliver
4b4db50de5
Display username in stock-tracking
...
- Add UserSerializer
2018-05-10 21:20:12 +10:00
Oliver
dcf74292b6
Changed tracking into to datetime field
...
- Added moment.js for formatting dates
-
2018-05-10 21:13:36 +10:00
Oliver
7b478fed4e
Redirect if not authed
...
If user not logged in, redirect any requests to login page
2018-05-10 20:40:08 +10:00
Oliver
57713556d1
Revert default db to sqlite3 (for now)
2018-05-10 19:19:13 +10:00
Oliver
07f16d8891
Small improvements for build display
...
Working toward build management
2018-05-09 22:02:56 +10:00
Oliver
690ec83265
Woohoo for .then
2018-05-09 21:48:36 +10:00
Oliver
517569f510
Clicking on logo returns user to index page
2018-05-09 00:19:34 +10:00
Oliver
7644617af0
Better string formatting for models
...
Allows for easier searching in drop-downs for ForeignKeys
2018-05-09 00:17:39 +10:00
Oliver
233f093093
Update supplier part detail page
...
- Consolidated buttons into dropdown
- Make look like other pages
2018-05-09 00:12:21 +10:00
Oliver
2c953c73fa
Stock tracking tweaks
...
- Ability to stocktake for entire part
- Enforce addition of notes to stockAdjust modal
2018-05-09 00:06:35 +10:00
Oliver
8000affeee
Basic Index and Search endpoints
...
Index at /index/
Search at /search/
Search view accepts POST requests with search data
2018-05-08 23:44:51 +10:00
Oliver
c821d22b87
Skeleton for 'index' and 'search' pages
2018-05-08 23:26:32 +10:00
Oliver
552953a1f8
Added bootstrap font files
...
Also added 'search' button
2018-05-08 23:26:09 +10:00
Oliver
84efaba920
Add link to admin page
...
- Only if user is admin!
2018-05-08 23:14:07 +10:00
Oliver
3cf45f5ed3
Added Login and Logout buttons to NavBar
2018-05-08 23:09:52 +10:00
Oliver
47aa3c8a45
Login / Logout views
...
Information found here - https://simpleisbetterthancomplex.com/tutorial/2016/06/27/how-to-use-djangos-built-in-login-system.html
2018-05-08 23:00:27 +10:00
Oliver
fdf35bd741
Fixes for double-submit on butons
...
- Function that first unbinds the submit button
2018-05-08 22:49:23 +10:00
Oliver
bf4ffb8b0b
Add part stocktake to Stock Location page(s)
2018-05-08 22:41:52 +10:00
Oliver
f2982a59ad
Added StockTracking API
...
/api/stock/track/
ListCreate API view
StockItem page now shows bootrap-table of tracking notes
2018-05-08 22:30:32 +10:00
Oliver
002c047105
Added count/add/remove to Part Stock Detail Page
2018-05-08 22:14:18 +10:00
Oliver
3b6ef3f008
Added stocktake / add / remove actions to StockItemDetail page
2018-05-08 22:14:03 +10:00
Oliver
25e0de1ce7
Vast improvements to stocktake API endpoint
...
- Also acts to ADD and REMOVE stock
- Send 'action' field to specify which one to perform
- Fixed add_stock and remove_stock funcs for StockItem model
- Autoatically add transaction notes for all actions
2018-05-08 22:06:28 +10:00
Oliver
ca2d3a1a7b
Consolidated modal code
...
- Default modal passed down through the chain
2018-05-08 20:46:23 +10:00
Oliver
054892aea2
Cleaner handling of default modal param
2018-05-08 19:58:38 +10:00
Oliver
3f1c6e2059
Simplified modal calls
...
- Default modal target supplied (can be overridden in options)
2018-05-08 19:55:39 +10:00
Oliver
c5155d5ac7
Move modal JS file
...
- Loaded by base.
2018-05-08 19:40:29 +10:00
Oliver
ee0c664d28
Prevent modals from firing multiple events
...
- e.g. if the modal has been open and closed multiple times!
- Detach all previously attached events
2018-05-07 23:46:41 +10:00
Oliver
fdf214626c
Further assorted updates
...
What, you need more commit details?! Pah
2018-05-07 23:40:17 +10:00
Oliver
b6944620dd
Fixes for JSON API
...
- Set content type
- Stringify JSON data
- Finish API to stocktake multiple parts
2018-05-07 23:25:47 +10:00
Oliver
1363fa9f1f
Prevent modals from automatically closing
2018-05-07 22:16:05 +10:00
Oliver
17ecb59dbb
Move to using postgresql
...
- Need to write a shell script to automate db install
- For now:
- https://gist.github.com/sirodoht/f598d14e9644e2d3909629a41e3522ad
- https://www.digitalocean.com/community/tutorials/how-to-use-postgresql-with-your-django-application-on-ubuntu-14-04
2018-05-07 22:03:13 +10:00
Oliver
425db5fd39
Tweaked part stock page
2018-05-07 21:51:08 +10:00
Oliver
2b286c3b83
Bulk stocktake API
...
- Pass list of pk/quantity dict objects
2018-05-07 21:17:19 +10:00
Oliver
e746ca6e0a
Paginate company page
2018-05-07 18:16:12 +10:00
Oliver
deccdce6d9
Part view updates
2018-05-07 08:41:19 +10:00
Oliver
ce30cd7b4d
add auto-doc for JSON API
2018-05-07 08:35:40 +10:00
Oliver
ee0cbdbb07
Skeleton for deleting multiple items
...
- Does not work yet! But opens a window...
2018-05-06 22:38:39 +10:00
Oliver
a7abf9731b
Add link to stock-item in part-stock view
2018-05-06 22:28:50 +10:00
Oliver
c1e7e95fc0
UI improvements
...
Consolidated detail pages with OPTIONS drown down
(rather than multiple single buttons)
2018-05-06 22:09:15 +10:00
Oliver
a55f6a1c7b
Improved stock movement modal
...
- Show which parts will be moved (and where they currently are)
2018-05-06 22:01:24 +10:00
Oliver
8a0db0e6df
Updated stockitem detail page
...
- Consolidated buttons into dropdown
- Stock tracking now in collapsible list
2018-05-06 21:53:06 +10:00
Oliver
d8922aa9db
Implemented API to move multiple items at once
...
- Added ability to override request method in inventreeUpdate
- Added inventree/script/stock.js to handle stock API js
- Added StockMove API endpoint
2018-05-06 21:39:33 +10:00
Oliver
87f96d6b3c
Add more modal form funcs
...
- Function to set the button text
2018-05-06 20:30:17 +10:00
Oliver
c2bc65f903
API improvements
...
- Add success and error callbacks
- Further improvements for modal forms
2018-05-06 20:20:39 +10:00
Oliver
fa04a9ae61
Abstracted modal code somewhat
2018-05-06 19:54:32 +10:00
Oliver
58cd933a5d
Whoops, fixed the API callbacks
2018-05-06 19:33:43 +10:00
Oliver
366e03456e
Hide 'tracking' tab for now
2018-05-06 19:27:34 +10:00
Oliver
890c9002aa
Callback for API
2018-05-06 19:26:11 +10:00
Oliver
19ce05931c
Re-added missing "New Part" button
2018-05-06 19:21:33 +10:00
James Newlands
01da57f0cf
If part has no category, page rendered an extra curly brace in JS that caused syntax error.
2018-05-05 21:22:47 +10:00
Oliver
22e9290f54
Helper funcs for updating part and stock item
2018-05-05 01:37:21 +10:00
Oliver
8e7e784934
Remove test code
2018-05-05 01:27:15 +10:00
Oliver
11e7a34aa2
AJAX function to update a model endpoint
...
- Grabs the CSRF token cookie (required!)
- If final mode, adds '_is_final' parameter to request
2018-05-05 01:26:58 +10:00
Oliver
41e031d4b4
Draft API endpoint RUD class
...
- RUD = Retrieve / Update / Destroy
- When issuing an Update command, the validity is checked but the model object is only saved if the POST data has "_is_final": true
2018-05-05 01:26:01 +10:00
Oliver
ee347c6165
Further API calls
...
- getStock
- getStockLocation
- getCompanies
2018-05-05 00:00:48 +10:00
Oliver
7e4b0630b6
Part category API
2018-05-04 23:54:57 +10:00
Oliver
83dd068fec
Initial commit for api.js
...
- GET JSON call with console output
- Provide filters
2018-05-04 23:43:41 +10:00
Oliver
a7d4e299b2
Cleaned up stock app
2018-05-04 23:31:48 +10:00
Oliver
4f63d12837
Consolidated 'Part' app views
...
- Improved templating
- Part tree open/close status stored to session
2018-05-04 18:55:55 +10:00
Oliver
389908c67a
Moved sidenav into block
2018-05-04 17:51:55 +10:00
Oliver
a1eeeab64c
Build table now bootstrap-table'd
2018-05-04 01:39:20 +10:00
Oliver
3511ce29ee
Added StockLocation API
2018-05-04 01:33:21 +10:00
Oliver
395bf23d6c
Cleanup / formatting
2018-05-04 01:33:13 +10:00
Oliver
347a324589
Fix
2018-05-04 01:04:12 +10:00
Oliver
9ad20e85e3
Improve CSS for modal forms
2018-05-04 00:56:29 +10:00