Commit Graph

404 Commits

Author SHA1 Message Date
Oliver Walters
28c9c80f54 Calculate quantity required for sales orders
- Cache data going to part detail view
2021-02-17 10:57:17 +11:00
Oliver Walters
526d81481b Cleanup 2021-01-18 22:25:53 +11:00
Oliver Walters
85bce24e30 Limit matches to the 5 "most matchy" ones 2021-01-15 12:32:27 +11:00
Oliver Walters
890ce9ef95 Fix IPN comparison against null value 2021-01-14 10:58:29 +11:00
eeintech
59c0a50289 Separated category from part permissions and location from stock item permissions 2021-01-13 13:35:49 -05:00
eeintech
a1b2347784 Also allow part attachements and parameters to be deleted 2021-01-12 17:43:12 -05:00
eeintech
ba1862478c Allow user with part.change permission to delete BOM items 2021-01-12 17:34:11 -05:00
Oliver Walters
d0fb69e67d Add option to enable / disable stock expiry feature
- Simply hides fields in form views
2021-01-05 08:50:07 +11:00
Oliver Walters
b5d75d6e6a PEP fixes 2020-11-24 11:56:51 +11:00
Oliver Walters
371ec582e1 Cleanup queryset for BomItemEdit view 2020-11-24 09:43:49 +11:00
Oliver Walters
3391db506a Cleanup queryset for BomItemCreate view 2020-11-24 09:43:32 +11:00
Oliver Walters
0f42916521 Improve settings.py
- Load database config from either config.yaml or environment variables
- Mix and match, if you want!
- Move to use logging module rather than just printing stuff
- Error if required database parameters are not required
2020-11-13 13:38:01 +11:00
Oliver Walters
cb3c86f87a Merge remote-tracking branch 'inventree/master' into currency-support
# Conflicts:
#	InvenTree/InvenTree/settings.py
#	InvenTree/InvenTree/urls.py
#	InvenTree/templates/InvenTree/settings/tabs.html
#	InvenTree/users/models.py
#	requirements.txt

IMPORTANT: Had to merge some migration files due to different migrations applied on the part model tables
2020-11-12 17:24:48 +11:00
Francois
a7444a9926
Merge branch 'master' into categories_parameters 2020-11-11 06:40:11 -05:00
Oliver Walters
4dff18e4a6 Remove common_currency model entirely
- A lot of views / pages / etc needed to be updated too
- Now uses django-money fields entirely
- Create a manual rate exchange backend (needs more work!)
2020-11-11 00:21:06 +11:00
eeintech
324645b67c Added same level category checkbox and method when adding category template 2020-11-04 12:26:10 -05:00
eeintech
1c14c2237a Moved category templates processing to Part save() method 2020-11-04 09:52:26 -05:00
eeintech
142cea0cbb Removed custom form save method, remove unused model methods, restored InvenTree CreateAjaxView, improved part related testing 2020-11-04 07:44:06 -05:00
eeintech
279d5a00ce Switched to get_ancestors to transverse all parents categories (not only root) 2020-11-03 16:58:53 -05:00
eeintech
5a5a36083e Finalized implementation when creating new part 2020-11-03 16:54:46 -05:00
Francois
b1885138de
Merge branch 'master' into categories_parameters 2020-11-03 07:01:56 -05:00
Oliver Walters
083dac1300 Merge remote-tracking branch 'inventree/master' into build-fixes 2020-11-03 21:26:39 +11:00
Oliver
ef2c04baa8
Merge pull request #1048 from eeintech/related_parts
Related Parts
2020-11-03 21:18:27 +11:00
eeintech
6320384ecb Fixed category parameter template edit form 2020-11-02 15:05:37 -05:00
eeintech
34b784d1e4 Added setting, checkbox (PartCreateView only) and hook to create part parameters from category templates 2020-11-02 13:14:31 -05:00
eeintech
978b5f869d Added checkbox to add parameter template to all categories 2020-11-02 12:20:29 -05:00
Oliver Walters
500da8099b Add forms / views for creating a new build output, and completing the build
- Also some refactoring of how forms are handled and saved
2020-11-02 22:56:26 +11:00
Oliver Walters
b02c87ea50 Lots of work towards multiple build output 2020-11-02 01:24:31 +11:00
eeintech
3a347fba21 Added edit/delete for category parameter templates 2020-10-31 12:55:52 -05:00
eeintech
5310ce8465 First step into managing Category Parameters to InvenTree settings 2020-10-30 17:17:18 -05:00
Oliver Walters
3a702266e6 Merge remote-tracking branch 'inventree/master' into build-fixes
# Conflicts:
#	InvenTree/InvenTree/views.py
#	InvenTree/build/views.py
#	InvenTree/locale/de/LC_MESSAGES/django.po
#	InvenTree/locale/en/LC_MESSAGES/django.po
#	InvenTree/locale/es/LC_MESSAGES/django.po
#	InvenTree/order/views.py
#	InvenTree/part/api.py
#	InvenTree/part/views.py
#	InvenTree/templates/js/bom.js
2020-10-30 22:44:25 +11:00
Oliver Walters
1caa341f8e Fixes for unit tests 2020-10-30 21:34:56 +11:00
Oliver Walters
e049ca1a85 More refactoring 2020-10-30 16:54:05 +11:00
Oliver Walters
c533f59405 Refactor how form errors are handled
- Use form.add_error (as the django gods intended)
2020-10-30 16:04:56 +11:00
Oliver Walters
2d583d19c2 Adds function to duplicate a BOM from a parent part
- Improves form validation workflow
- More 'djangoesque'
2020-10-30 10:08:06 +11:00
Oliver Walters
90cfb3496a Merge remote-tracking branch 'inventree/master' into build-fixes
# Conflicts:
#	InvenTree/locale/de/LC_MESSAGES/django.mo
#	InvenTree/locale/de/LC_MESSAGES/django.po
#	InvenTree/locale/en/LC_MESSAGES/django.po
#	InvenTree/locale/es/LC_MESSAGES/django.po
#	InvenTree/templates/js/bom.js
2020-10-29 15:23:51 +11:00
Oliver Walters
8246e9c802 Add function makeIconBadge for tables
- Add filters for part variants table
2020-10-29 13:18:45 +11:00
Oliver Walters
60a8ef723b Simplify display of possible conflicting parts
- Round to single digit
- Only show 5 closest matches

(cherry picked from commit ed8be5225d)
2020-10-29 12:42:38 +11:00
Oliver Walters
4a7e9a2278 Update translations and PEP fixes 2020-10-28 23:59:18 +11:00
Oliver Walters
ed8be5225d Simplify display of possible conflicting parts
- Round to single digit
- Only show 5 closest matches
2020-10-28 23:48:35 +11:00
Oliver Walters
091a9d9803 Refactor how form errors are handled
- When in doubt, refer to the django docs
- There was a *much* better way (thanks, form.add_error)!
- The anti-pattern was deleted, and lo, there was much rejoicing
- Some other refactoring too
2020-10-28 23:33:33 +11:00
Oliver Walters
d06b4d7c9f Merge remote-tracking branch 'inventree/master' into build-fixes
# Conflicts:
#	InvenTree/InvenTree/urls.py
#	InvenTree/locale/de/LC_MESSAGES/django.mo
#	InvenTree/locale/de/LC_MESSAGES/django.po
#	InvenTree/locale/en/LC_MESSAGES/django.po
#	InvenTree/locale/es/LC_MESSAGES/django.po
#	InvenTree/part/templates/part/bom.html
#	InvenTree/templates/js/build.js
#	InvenTree/templates/js/table_filters.js
#	InvenTree/templates/stock_table.html
#	tasks.py
2020-10-28 22:25:14 +11:00
James Newlands
8bf281e153 Fix typo in new / edit part forms ("extenel URL")
Capitalisation consistency in "Create New Part" form title
2020-10-27 14:52:31 +11:00
Oliver Walters
076d5c4f7f Cleanup get_required_parts function 2020-10-23 22:49:46 +11:00
Oliver Walters
c6e61c20fe Generate default settings for all InvenTreeSetting object 2020-10-20 08:24:23 +11:00
eeintech
0b26d68d0f Added admin view, improved validation of part related relationship 2020-10-16 15:29:58 -05:00
eeintech
34e4409e7f Functional checkpoint: add/delete related parts from template 2020-10-16 13:50:31 -05:00
eeintech
8579abb9c2 Added related parts urls, views, form and templates
Adding related part relationships work but are still not shown in the part detail page
2020-10-15 16:58:39 -05:00
Oliver Walters
11d31960c7 Change modal form permissions to use new "role" strategy 2020-10-06 11:42:16 +11:00
Oliver Walters
c740cce5e4 PEP fixes 2020-10-06 11:31:04 +11:00
Oliver Walters
dc2c9aa662 Add InvenTreeRoleMixin
- Simplifies permission requirements for views
- e.g. 'part.view' rather than 'part.view_partcategory'
2020-10-06 11:29:38 +11:00
Oliver Walters
3f59ce3f93 Update unit tests
- requires the user to actually have the necessary permissions!
2020-10-06 01:30:36 +11:00
Oliver Walters
afadd51a14 Fix permissions in views.py
Silly, "add" not "create"
2020-10-06 00:19:44 +11:00
Oliver Walters
4d49cb029f Change part views to require permissions
Also adds custom 403 page
2020-10-05 23:49:32 +11:00
eeintech
b7d25a75c4 Hide part toolbar, nicer part representation, improved parameters prefetching 2020-10-01 10:03:49 -05:00
eeintech
40d8a07acc Now loading data! Still need to be bonified 2020-09-29 16:49:53 -05:00
eeintech
d05a5978a0 Unique parameters names from category makes it to bootstrap table 2020-09-29 16:13:08 -05:00
eeintech
6b48977e7b Added 'Parametric Table' tab to category detail view, added part_count to 'Parts' tab 2020-09-29 15:16:12 -05:00
Oliver Walters
ff7570aea4 VIews / forms / etc 2020-09-18 21:49:56 +10:00
eeintech
c5efce36b6 Added PartDetailFromIPN view tests 2020-09-07 08:40:37 -05:00
eeintech
8198e919b1 Merge branch 'master' of git://github.com/inventree/InvenTree into part_ipn_slug 2020-09-05 11:42:33 -05:00
Oliver Walters
c4989e59b2 Allow selection of bom_copy and parameter_copy when making a new variant 2020-09-05 20:10:18 +10:00
eeintech
2fa284d37b Added PartDetailFromIPN view (subclass of PartDetail) and url pattern 2020-09-04 17:20:17 -05:00
eeintech
440a5fafea Implemented part parameters copy from template/original part 2020-09-04 14:02:12 -05:00
Oliver Walters
303572bc03 More translation updates 2020-09-02 23:57:51 +10:00
eeintech
89e63df1fb Corrected style 2020-08-20 14:53:03 -05:00
eeintech
6fc275ca30 BoM export: added option to export part paremeters (#126) and stocks (#793) 2020-08-20 13:53:27 -05:00
Oliver Walters
7e829e88af Add option for including supplier data for BOM export
(cherry picked from commit d0b5550c86)
2020-08-19 14:08:47 +10:00
Oliver Walters
92ac93aac5 More intelligent checking for circular BOM
- Check all the way down a BOM "tree"
- Validate BOM tree before allowing BOM submission
2020-08-18 14:17:59 +10:00
Oliver Walters
ca4d3df287 Update translation files 2020-08-18 14:01:40 +10:00
Oliver Walters
68fb599c73 Major improvements to BOM upload
- Column headings now match the values provided in BOM import template
- Add a new column for part selection, while displaying all imported data
- Better code documentation
- Improve data validation
- Allow decimal quantity (not just integer!)
- Better matching logic
2020-08-18 14:01:01 +10:00
eeintech
84c0ec7937 BoM: added part matching based on IPN 2020-08-17 16:35:38 -05:00
eeintech
303157c586 Added part match auto-selection (if partial_ratio >= 100) to BoM part selection form 2020-08-17 14:10:24 -05:00
Oliver Walters
b27ecf54d7 Allow user to set "depth" of exported multi-level BOM 2020-08-16 08:29:36 +10:00
Oliver Walters
1cc0977816 Display testing status for a stock item 2020-05-17 22:33:41 +10:00
Oliver Walters
e30f6ec374 Add forms / views for creating / editing / deleting test templates 2020-05-17 16:50:34 +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
14132a6efa Add views / models / etc etc to support StockItem attachment 2020-05-07 09:57:54 +10:00
Oliver Walters
2c9b112562 PEP fixes 2020-04-23 21:48:39 +10:00
Oliver Walters
435c13cf7c Separate concept of "OrderStatus" into "SalesOrderStatus" and "PurchaseOrderStatus" 2020-04-23 20:38:09 +10:00
Oliver Walters
307dd25f87 Fixes for unit testing
(cherry picked from commit eb3b5308ab)
2020-04-13 20:21:08 +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
maxbachmann
b162c97226
use rapidfuzz instead of fuzzywuzzy 2020-03-22 22:31:15 +01:00
Oliver Walters
4a259dc146 Can now successfully edit or delete a purchase-order attachment 2020-03-22 19:55:46 +11:00
Oliver Walters
5207b2ba21 Add build status label to part detail 2020-03-19 10:20:09 +11:00
Oliver Walters
a147ce4284 Save the current user when creating a new part 2020-03-18 21:53:02 +11:00
Oliver Walters
50fee1bfe5 More work on translations 2020-02-12 10:25:46 +11:00
Oliver Walters
f865573e48 Implement cascading export of BOM 2020-02-11 22:32:36 +11:00
Oliver Walters
434d084371 Provide form for user to select export options 2020-02-11 21:43:17 +11:00
Oliver Walters
d4fe83170f Select existing image and upload successfully 2020-02-10 23:48:45 +11:00
Oliver Walters
17c10da10e Display existing images in a form 2020-02-10 22:57:36 +11:00
Oliver Walters
a82e219336 Add translatable strings for part views 2020-02-10 22:10:06 +11:00
Oliver Walters
d059aff4f8 Use the part_deep_copy setting to set the default deep_copy value when duplicating a part 2020-02-03 21:14:06 +11:00
Oliver Walters
88ec40e454 Fix success_url for notes form 2020-02-01 22:25:35 +11:00
Oliver Walters
3c3ae43c18 Add special view for displaying / editing notes field for part 2020-02-01 13:36:09 +11:00
Oliver Walters
427f47310b Add detail pane to top-level part view 2019-09-27 10:04:20 +10:00
Oliver Walters
774872e6a6 Make function atomic 2019-09-17 14:17:49 +10:00
Oliver Walters
08f958dd72 Add form for setting part category 2019-09-17 14:06:11 +10:00
Oliver Walters
db04f399c1 Simplify exporting of BOM for a part 2019-09-15 22:21:12 +10:00
Oliver Walters
204cd967aa Include status label text when exporting stocktake data 2019-09-15 20:14:27 +10:00
Oliver Walters
2d17f957f1 Remove code duplication for part data export 2019-09-15 19:52:28 +10:00
Oliver Walters
567826165c Improve BomItem editing form
- Don't allow duplication of an item already in the BOM
- Remove the parent part from the BOM
2019-09-13 16:26:44 +10:00
Oliver Walters
4dc7da41b9 pepper 2019-09-09 20:02:52 +10:00
Oliver Walters
ddb041fe44 Filter by category too 2019-09-09 19:59:56 +10:00
Oliver Walters
776fc8b1e5 Add 'used_in' count to part export 2019-09-09 19:37:59 +10:00
Oliver Walters
8723a6c219 Add 'purchaseable' field to part export 2019-09-09 19:10:57 +10:00
Oliver Walters
c45fcb45cf Delete a part parameter template from the settings view 2019-09-07 20:30:51 +10:00
Oliver Walters
42ade0e0b7 Edit part parameter template from settings view 2019-09-07 20:28:38 +10:00
Oliver Walters
20b37a2d11 Test fixes 2019-09-03 22:45:11 +10:00
Oliver Walters
41806089e3 Select the default currency if one is not specifically selected 2019-09-03 22:33:50 +10:00
Oliver Walters
3682e9b5fb Display currency selection in part pricing dialog 2019-09-03 22:28:53 +10:00
Oliver Walters
586a46175d Add modals for editing or deleting part parameters 2019-08-28 19:39:47 +10:00
Oliver Walters
51e4bdd821 URL / view for editing a PartParameter 2019-08-21 13:11:19 +10:00
Oliver Walters
307a04da58 Add View/Form for creating a new PartParameterTemplate 2019-08-20 14:33:18 +10:00
Oliver Walters
15a42878db Improved view for creating a new part parameter
- Hide the Part input
- Reduce options based on parameters that already exist!
2019-08-20 14:28:15 +10:00
Oliver Walters
c68c79ea43 Create view / form / URL for PartParameter creation 2019-08-20 14:14:21 +10:00
Oliver Walters
6c73649687 PEP fix 2019-08-14 16:35:26 +10:00
Oliver Walters
5963f7ed01 Deleted unused form 2019-08-14 13:54:16 +10:00
Oliver Walters
3a87cd866c Tests for part creation
- Need more tests for POST action
2019-08-08 23:32:34 +10:00
Oliver Walters
8904733ac0 Include part stock information 2019-08-07 10:05:12 +10:00
Oliver Walters
ab0da6aaae Include more part data in export 2019-08-07 09:55:18 +10:00
Oliver Walters
dda4569f76 Export selected parts
- Select which parts to export in the table
- Export base information
- Include supplier part information
2019-08-07 09:52:49 +10:00
Oliver Walters
d6750652f0 Python styling fixes 2019-07-10 13:38:14 +10:00
Oliver Walters
c5e17070fb Reference and note fields cannot be None 2019-07-10 13:30:51 +10:00
Oliver Walters
322710d603 Handle dimension error in tablib 2019-07-10 13:04:47 +10:00
Oliver Walters
482a5dae4b Save the selected BOM data 2019-07-10 12:27:19 +10:00
Oliver Walters
c2dbc37f70 Display rows that contain errors with a reddish background 2019-07-10 12:04:24 +10:00
Oliver Walters
2e3676207e Reference and notes fields now persist too 2019-07-10 09:40:04 +10:00
Oliver Walters
99dee64f79 Pass part selection back-and-forwards between client/server 2019-07-10 09:22:38 +10:00
Oliver Walters
782d740323 Pass row quantity back to the server 2019-07-09 19:45:36 +10:00
Oliver Walters
e9eb814990 Rendering for part selection step 2019-07-09 19:21:54 +10:00
Oliver Walters
dff8d1fb95 Supply part name for auto-fill when creating a new part 2019-07-08 09:33:44 +10:00
Oliver Walters
85e803f345 Create a new part directly from the BOM view
- Pass data through to the part creation
- Populate the new part into the select dropdown
-
2019-07-07 13:06:59 +10:00
Oliver Walters
a6da3ed4a4 Match each part to the list of available parts
- Order selections based on "best" match
2019-07-07 11:44:17 +10:00
Oliver Walters
bd30ac037b Generate a list of allowed BOM items and pass to the form template 2019-07-07 11:22:01 +10:00
Oliver Walters
3930651c59 Make Reference and Notes fields editable 2019-07-07 09:57:23 +10:00
Oliver Walters
b77bfc74ea Pass column and index data through to each cell in the template
Allows for much more intelligent template rendering
2019-07-07 09:50:59 +10:00
Oliver Walters
b1bcb0d3d2 Extract quantity data from BOM 2019-07-03 21:45:56 +10:00
Oliver Walters
fa90c92a2a Redirect to step 3 2019-07-03 21:19:31 +10:00
Oliver Walters
29a27ce598 Improve rendering for field selection form 2019-07-03 20:08:49 +10:00
Oliver Walters
fc5682f565 Form is now fully transferred to a formview 2019-07-02 19:20:45 +10:00
Oliver Walters
4008a9fb45 Upload the selected BOM file 2019-07-02 19:07:59 +10:00
Oliver Walters
802255c62d Render GET as a formview rather than ajaxview 2019-07-02 19:02:19 +10:00
Oliver Walters
a23595c28d Improve data importing
- Automatically prune empty rows
- prevent automatic conversion of integers to floats
2019-06-29 19:56:04 +10:00
Oliver Walters
cfbfc6e258 Delete columns in-place using javascript 2019-06-28 20:41:45 +10:00
Oliver Walters
3c2f3c2c2c Add option to delete columns 2019-06-28 20:24:18 +10:00
Oliver Walters
54762713f3 Pass row data back through again 2019-06-28 20:21:21 +10:00
Oliver Walters
fd8ed44833 Detect duplicate columns, and missing columns 2019-06-28 20:16:17 +10:00
Oliver Walters
857a214e7d Pass the form field data back to the server 2019-06-28 19:58:56 +10:00
Oliver Walters
58336482fe POST the data back again 2019-06-28 19:48:22 +10:00