Commit Graph

2309 Commits

Author SHA1 Message Date
Oliver adfa289e9b Enforce proper formatting for 'quantity' field when importing BOM data 2022-02-15 09:11:14 +11:00
Matthias dbb4c3f407
Merge branch 'master' of https://github.com/inventree/InvenTree into coverage-fixes 2022-02-13 17:46:09 +01:00
Matthias 67a4f75856
remove dead test 2022-02-13 17:41:27 +01:00
Matthias ad41957127
database not ready events are hard to reproduce consistently 2022-02-13 17:39:17 +01:00
Oliver e3fc1ab138 Allow BOM file to be "re-uploaded" 2022-02-13 20:49:42 +11:00
Oliver 0aeaf61254
Merge pull request #2564 from matmair/template-reduce-duplication
Template reduce duplication
2022-02-13 20:37:02 +11:00
Matthias 42b4466897
ignore controls that should not be reached in coverage 2022-02-13 05:50:19 +01:00
Matthias 7793a22a35
ignore wrong control view safeties 2022-02-13 05:48:10 +01:00
Matthias 10170b5466
remove coverage from parts migrations 2022-02-13 04:46:36 +01:00
Matthias aa3192a106
Merge branch 'master' of https://github.com/inventree/InvenTree into template-reduce-duplication 2022-02-12 00:55:39 +01:00
Matthias 9eb238c85e
Merge branch 'master' of https://github.com/inventree/InvenTree into matmair/issue2279 2022-02-12 00:51:15 +01:00
Matthias Mair 975c81ccfe
Merge branch 'inventree:master' into fix-html-tags 2022-02-12 00:32:26 +01:00
Oliver f460b14014 Add more unit testing for BOM file upload
- Test "levels" functionality
- Test part guessing / introspection
2022-02-10 00:13:37 +11:00
Oliver ffb319e136 Disable "submit" button to prevent multiple simultaneous uploads 2022-02-10 00:00:23 +11:00
Oliver 383835aa89 Display initial errors when importing data 2022-02-09 23:26:32 +11:00
Oliver aa962aac83 Improve part "guess" algorithm 2022-02-09 23:26:13 +11:00
Oliver 001437e083 Increased error checking when uploading BOM data 2022-02-09 23:02:09 +11:00
Oliver 2af617e92b Adds check for duplicate parts when importing 2022-02-09 11:34:25 +11:00
Oliver 67a9c0aeec PEP fixes 2022-02-09 11:31:36 +11:00
Oliver a9e1357ffb Return per-row error messages when extracting data 2022-02-09 11:30:58 +11:00
Oliver 29c3064ae7 Raise error if imported dataset contains no data rows 2022-02-09 11:27:51 +11:00
Oliver 692039f712 Add unit testing for uploading invalid BOM files 2022-02-09 08:38:28 +11:00
Oliver 8fc2695873 Catch potential file processing errors 2022-02-09 08:31:08 +11:00
Oliver 55ff026696 Remove incorrect validation routine 2022-02-07 14:24:40 +11:00
Oliver 11f541303b unit test fixes 2022-02-07 13:32:35 +11:00
Oliver c6dc196053 PEP fixes 2022-02-07 12:32:50 +11:00
Oliver 509d58979e Remove old templates 2022-02-07 12:29:15 +11:00
Oliver 11d5900b69 Update upload file template 2022-02-07 12:25:09 +11:00
Oliver 131663cecc Adds options to clear existing BOM data when uploading 2022-02-07 12:20:18 +11:00
Oliver 4f26df3124 bug fix 2022-02-07 11:35:51 +11:00
Oliver 2ade14c47b Check for duplicate BOM items as part of serializer validation 2022-02-07 11:35:07 +11:00
Oliver a2c48d308f Adds a BomUpload endpoint to handle upload of complete BOM 2022-02-07 10:54:37 +11:00
Oliver 0963602bea Add optional part lookup by "part" field 2022-02-07 08:37:39 +11:00
Oliver 3bd39ec752 Attempt to auto-extract part information based on provided data 2022-02-05 01:26:08 +11:00
Oliver 137c9ff2f2 POST request now returns extracted data rows (as an array of dicts) 2022-02-05 00:30:00 +11:00
Oliver 707787d82c Fix existing bug with BomExport functionality - could not select BOM format 2022-02-05 00:12:40 +11:00
Oliver 611592694b Adds serializer for uploading a BOM file and extracting fields 2022-02-05 00:12:11 +11:00
Oliver 647b2be5cf
Merge pull request #2599 from SchrodingersGat/hide-part-pricing-history
Hide part pricing history
2022-02-03 16:57:23 +11:00
Oliver 722e947745 Only calculate pricing data if required 2022-02-03 16:30:48 +11:00
Oliver 525b6d399d Hide pricing history tab if not enabled 2022-02-03 16:23:52 +11:00
Oliver 78b1c7a22b Skips some specific steps when importing data
- We need to prevent certain operations from running when we are importing data
- This is to prevent unique database constraints from being violated

- Do not register plugins during data import
- Do not launch notification events
2022-02-03 16:03:46 +11:00
Oliver 0ea0edf1bb
Merge pull request #2574 from SchrodingersGat/allocation-tab
Allocation tab
2022-01-27 15:58:41 +11:00
Oliver c43d1840ea Load table of build order allocations 2022-01-27 14:55:19 +11:00
Oliver 3889baf37a Adds a tab for "allocations" 2022-01-27 14:25:57 +11:00
Oliver 11125e9f60 Fixes for unit tests 2022-01-27 14:19:42 +11:00
Oliver b027f126e8 Expand available stock information when exporting Bill of Materials 2022-01-27 13:59:13 +11:00
Matthias Mair d998f8bfbe
Merge branch 'inventree:master' into fix-html-tags 2022-01-24 23:39:21 +01:00
Matthias Mair af04056843
Merge branch 'inventree:master' into style-fix 2022-01-24 23:39:17 +01:00
Matthias b3d031c473
make expression simpler 2022-01-21 02:12:40 +01:00
Matthias f04de517d1
fix tags 2022-01-21 02:11:34 +01:00
Matthias 2e0198e7cd
refactor field matching 2022-01-21 01:20:32 +01:00
Matthias 3c02c918b2
reduce code in wizard templates 2022-01-21 01:12:11 +01:00
Matthias ff897ccc41
remove dead code 2022-01-21 00:30:51 +01:00
Matthias c44565f9e3
fix reused builtins 2022-01-21 00:17:52 +01:00
Matthias b2eb4e131a
remove empty test 2022-01-21 00:08:36 +01:00
Matthias f8c4470d98
make simpler 2022-01-20 23:51:42 +01:00
Oliver Walters 6f3918deea Fix for i18n javascript 2022-01-14 00:02:00 +11:00
Matthias Mair c490574082
Merge branch 'inventree:master' into matmair/issue2279 2022-01-12 14:36:04 +01:00
Matthias ee99052d04
Merge branch 'master' of https://github.com/inventree/InvenTree into matmair/issue2279 2022-01-12 02:13:50 +01:00
Oliver 7ce55f4195 Add try/except blocks for calls to conert_money 2022-01-12 11:57:33 +11:00
Oliver 1937a9d737 PEP fixes 2022-01-11 13:49:53 +11:00
Oliver 8aec055e6c Only load plugins if PLUGINS_ENABLED is true
- Hide plugin settings
- Add plugin support status to "stats" dialog
2022-01-11 13:39:47 +11:00
Oliver 1243923944 Event refactoring 2022-01-10 17:28:44 +11:00
Oliver 886b1f1d72 Simplify event triggering
- add generic receivers for database actions
- exclude django_q tables, otherwise we get an infinite loop!

Ref: https://stackoverflow.com/questions/17507784/consolidating-multiple-post-save-signals-with-one-receiver/32230933#32230933
2022-01-10 17:24:53 +11:00
Oliver 936330d3d2 Add more triggered events 2022-01-09 23:07:12 +11:00
Oliver 04d25a60b0 Adds sample plugin which responds to triggered events
- Adds some example trigger events for the "Part" model
2022-01-08 09:07:27 +11:00
Matthias Mair 978018e284
Merge branch 'inventree:master' into matmair/issue2279 2022-01-07 00:08:17 +01:00
Oliver dc9e25ebad Adds API endpoints for viewing and updating plugin settings
A lot of code updates / refactoring here to get this to work as expected
2022-01-04 20:27:35 +11:00
Matthias Mair 5c4c9bfaed
Merge branch 'inventree:master' into matmair/issue2279 2021-12-29 23:54:54 +01:00
Matthias 95ee4f908f
Merge branch 'master' of https://github.com/inventree/InvenTree into sn-append 2021-12-29 23:45:19 +01:00
Matthias 1d0aa900e8
add helper fnc to get latest SN as int 2021-12-29 02:50:23 +01:00
Oliver 774d834b7e
Merge pull request #2477 from SchrodingersGat/duplicate-bom-form
Duplicate bom form
2021-12-21 23:06:44 +11:00
Oliver 2c0da25cbc "Validate BOM" now uses the API also 2021-12-21 22:45:59 +11:00
Oliver 70f9a0fe13 Furher logic improvements to BOM copy
- Remove "self" part from list
- Stop inherited BOM items from being copied incorrectly
- Allow user to select whether "inherited" BOM items are copied
2021-12-21 22:07:08 +11:00
Oliver 0c8a047bc2 Adds simply endpoint for BOM duplication 2021-12-21 17:29:14 +11:00
Oliver 0060bb074e Updates for various part views 2021-12-21 16:56:47 +11:00
Matthias Mair acbee38600
Merge branch 'inventree:master' into matmair/issue2279 2021-12-15 00:20:48 +01:00
Oliver 36026a9217 PEP fixes 2021-12-13 23:15:06 +11:00
Oliver 01ce752a8c BOM export options are now han
(cherry picked from commit c797eb0703)
2021-12-13 23:12:11 +11:00
Oliver d75ce451be Allow user to select file format when downloadin BOM import template
(cherry picked from commit 8030ca0bb9)
2021-12-13 23:11:42 +11:00
Oliver a2357b5b46 Fix decimal places for money field 2021-12-12 22:18:29 +11:00
Matthias Mair 271ad1dc87
Merge branch 'inventree:master' into matmair/issue2279 2021-12-11 00:09:32 +01:00
Oliver e9ae3eb01d Revert to bootstrap-treeview
- More "bootstrappy" design
- Already in code base
- Cleaner API
2021-12-11 00:25:44 +11:00
Oliver 7dcd166d50 Change "sidetree" to "breadcrumb-tree" 2021-12-10 22:53:19 +11:00
Oliver 8c018cf987 Add href to nav toggle (so mouse cursor changes) 2021-12-10 22:31:50 +11:00
Matthias ba921b45ff
remove state from api interface 2021-12-08 22:44:01 +01:00
Matthias 12afb19dfa
move toggle 2021-12-08 01:11:21 +01:00
Matthias 821f9389d5
remove old links 2021-12-08 00:19:17 +01:00
Matthias ff5095a270
remove children -> used for reloading 2021-12-08 00:07:05 +01:00
Matthias 596532f312
only one api call 2021-12-08 00:05:34 +01:00
Matthias 948270bbcb
add stuff to mark starting endpoint 2021-12-07 23:54:45 +01:00
Matthias 2fa67707bd
Add text 2021-12-07 00:51:27 +01:00
Matthias f375ba96ae
add sidetree toggler function 2021-12-07 00:21:33 +01:00
Matthias c703f9993f
make url simpler 2021-12-06 22:37:42 +01:00
Matthias 70939a0cf9
first working example 2021-12-06 22:35:14 +01:00
Matthias 416bcb822b
remove unneeded sidebar block 2021-12-06 01:34:16 +01:00
Matthias 49f9cc7edc
modifiy sidebar code 2021-12-06 01:33:41 +01:00
Matthias Mair 0d9f76a019
Merge branch 'inventree:master' into matmair/issue2279 2021-12-04 17:52:58 +01:00
Oliver 120870712a
Merge pull request #2420 from SchrodingersGat/assigned-to-me
Assigned to me
2021-12-04 23:08:08 +11:00
Oliver 9e1251d78d Adds "assigned_to_me" filtering to build orders 2021-12-04 21:30:11 +11:00
Oliver cdf63c43aa Add autocomplete fields to admin views for "build" app 2021-12-04 20:17:36 +11:00
Oliver e83b5f9db0 Add autocomplete admin fields for "part" app 2021-12-04 20:01:56 +11:00
Matthias e25759c1ac
check message counters too 2021-12-04 04:08:11 +01:00
Matthias d8ca87057b
cover another line 2021-12-04 04:07:47 +01:00
Matthias 733fc4b718
forgot that before 2021-12-04 03:46:35 +01:00
Matthias c10841fe0e
and again 2021-12-04 03:44:59 +01:00
Matthias 1ba7110cda
change templates to new way 2021-12-04 02:19:12 +01:00
Oliver 35b3bc73cc Merge remote-tracking branch 'inventree/master' into partial-shipment
# Conflicts:
#	InvenTree/order/api.py
2021-12-04 09:35:54 +11:00
Oliver 6d90ded27f First pass at a part-purchase-order table 2021-12-03 20:54:21 +11:00
Matthias f4f390f4c2
PEP fix 2021-12-03 01:58:27 +01:00
Matthias ae13672273
refactor to enable use in notification tests 2021-12-02 10:52:21 +01:00
Oliver 6ec0cfc641 Merge branch 'master' into partial-shipment
# Conflicts:
#	InvenTree/company/templates/company/company_base.html
#	InvenTree/stock/templates/stock/item_base.html
2021-12-02 20:49:13 +11:00
Matthias 84499f4b10
better description 2021-12-02 10:22:39 +01:00
Matthias 0379498ee3
merge master in 2021-12-02 09:17:57 +01:00
Oliver 8c6b82d2c0
Merge pull request #2405 from SchrodingersGat/jump-to-sn
Jump to sn
2021-12-02 16:26:21 +11:00
Oliver e96ff7fbba Add lookup-by-sn on part page, too 2021-12-02 16:01:28 +11:00
Matthias 2038c2250d
fix notify_low_stock context 2021-12-02 02:42:57 +01:00
Matthias 55a8536636
fix case 2021-12-02 02:35:10 +01:00
Matthias ea5848d174
add mailadress to user 2021-12-02 02:34:45 +01:00
Matthias 7974559ead
add tests for testing notifications 2021-12-02 02:24:33 +01:00
Matthias 3bff676047
beginner mistake
it is a referenced part so use related_name as prefix
2021-12-02 00:24:36 +01:00
Matthias 25a76d37e7
and PEP again 2021-12-02 00:11:02 +01:00
Matthias 61b53a10b0
Merge branch 'master' of https://github.com/inventree/InvenTree into matmair/issue2279 2021-12-01 23:59:22 +01:00
Matthias 95fa34f797
search by MPN
Fixes #2403
2021-12-01 23:56:31 +01:00
Matthias 64c01bff82
refactor to use general function 2021-12-01 22:26:43 +01:00
Oliver a6fe5e0d80
Merge pull request #2388 from SchrodingersGat/part-details-refactor
Part details refactor
2021-12-01 08:47:29 +11:00
Oliver 713549fe6a Handle case where issue_date is not set 2021-12-01 08:14:49 +11:00
Oliver a2a436ea69 Column improvements 2021-12-01 08:05:30 +11:00
Oliver 64abe1e889 Refactoring "company" view 2021-11-30 20:31:05 +11:00
Oliver 440436c70d Refactor display for "part category" 2021-11-30 20:00:26 +11:00
Oliver 5049f17d0b Save toggle state to session 2021-11-30 19:49:04 +11:00
Oliver a2d912d374 Bootstrappy collapse 2021-11-30 19:45:37 +11:00
Oliver b34b3c6d85 Place part details below main part display tab 2021-11-30 19:38:48 +11:00
Oliver da6c723184 Merge branch 'master' into partial-shipment
# Conflicts:
#	InvenTree/order/serializers.py
2021-11-29 22:59:36 +11:00
Oliver 4ee55847f1 Refactor attachment tables 2021-11-28 14:21:20 +11:00
Oliver 0949bac175 serializer fixes 2021-11-28 14:21:09 +11:00
Oliver 6582fd3d04 Add 'link' field to attachment serializer 2021-11-28 12:57:37 +11:00
Oliver e9ed7bffc9 adds a "link" field to the InvenTree attachment model
- Allows attachments to also serve as links to external files
2021-11-28 12:53:01 +11:00
Oliver ef7a9b5152 Adds a simple endpoint for accessing serial number information for a Part instance
- This is not included by default in the "part detail" endpoint as it must be calculated!
2021-11-27 00:11:18 +11:00
Oliver 760c80dbb6 Merge remote-tracking branch 'inventree/master' into partial-shipment 2021-11-26 22:08:17 +11:00
Oliver 2b704ccdc0 Exclude same part from "related" input 2021-11-26 21:09:29 +11:00
Oliver 68e2b0850b Merge branch 'master' into partial-shipment
# Conflicts:
#	InvenTree/build/serializers.py
#	InvenTree/order/templates/order/so_sidebar.html
2021-11-26 08:25:51 +11:00
Oliver 4a90786296 PEP code style fixes 2021-11-25 14:55:24 +11:00
Oliver e6dfe27c57 Add a "related parts table" function 2021-11-25 14:54:21 +11:00
Oliver 9e01bc8ff2 Bug fix for serializer detail 2021-11-25 14:45:28 +11:00
Oliver 88df774aef Add part detail filter to PartRelated serializer 2021-11-25 14:42:44 +11:00
Oliver 4704845a7b Add filter for "relatedpart" API endpoint 2021-11-25 14:42:31 +11:00
Oliver 68f7887379 Related parts are now created via the API 2021-11-25 14:23:27 +11:00
Oliver 2065c05519 Adds API endpoints and serializers 2021-11-25 14:18:21 +11:00
Oliver a532babde8 Related part table now uses "loadPartTable" function call 2021-11-25 14:13:49 +11:00
Oliver b497569228 Add Part list API filter for "related" status
- Adds "related" filter
- Adds "exclude_related" filter
2021-11-25 14:00:04 +11:00
Oliver 28dc417a9f Add unit testing for 'validated' filter 2021-11-24 10:52:20 +11:00
Oliver 568e606d5b Fix filtering by 'validated' parameter 2021-11-24 10:45:48 +11:00
Oliver c04ea3e0bb Adds unit test for "validated" filter option on BomItem list 2021-11-24 10:41:19 +11:00
Oliver e53e3b4a51
Merge pull request #2350 from matmair/matmair/issue2347
Fix sidebar translation
2021-11-23 12:57:11 +11:00
Matthias d884e62be1
[FR] Confirm to W293
Fixes #2335
2021-11-23 00:28:23 +01:00
Matthias d79e9a62b4
fix trans tags 2021-11-22 23:42:29 +01:00
Matthias c20afad84d
replace sidebar_links 2021-11-22 20:40:01 +01:00
Matthias 933c420844
fix sidebar translation
Fixes #2347
2021-11-22 20:24:22 +01:00
Oliver 32a8d247e2 Fix for BomItem import in admin page 2021-11-21 22:12:58 +11:00
Oliver 6a6eae7e54 Bug fix for BOM uploading
(cherry picked from commit 2e04b311306259e0ead07de9e08b3ba376caf4e4)
2021-11-20 18:10:51 +11:00
Oliver f8aa5514ae Fix BOM export for multi-level BOMs 2021-11-20 17:44:54 +11:00
Oliver 521ec4f1e6 Merge branch 'master' into partial-shipment
# Conflicts:
#	InvenTree/order/serializers.py
2021-11-18 23:43:36 +11:00
Oliver 7d80387f3c
Merge pull request #2329 from SchrodingersGat/bom-quantity-fix
Bom quantity fix
2021-11-18 23:24:44 +11:00
Oliver 7ca36a092e convert remaining serializers 2021-11-18 23:01:19 +11:00
Oliver c3fb6a6861 Convert BOM quantity field to new field class 2021-11-18 22:50:37 +11:00
Oliver b726df3a5e style fixes 2021-11-18 20:57:44 +11:00
Oliver 1f5e4a1e6b Adds a template tag for testing if the server is running in demo mode 2021-11-18 20:17:27 +11:00
Oliver 5e04f2acf3 Merge remote-tracking branch 'inventree/master' into partial-shipment 2021-11-17 20:53:26 +11:00
Oliver 9614963f16 Put function into migration file 2021-11-17 08:58:32 +11:00
Oliver db009189ca remove unused function 2021-11-16 20:07:16 +11:00
Oliver 192cfb80b0 Merge remote-tracking branch 'inventree/master' into partial-shipment
# Conflicts:
#	InvenTree/InvenTree/version.py
2021-11-16 17:06:38 +11:00
Oliver e36b4458bd PEP fixes 2021-11-15 23:58:34 +11:00
Oliver ca3c3685fe Tweaks 2021-11-15 23:51:21 +11:00
Oliver 01da889c46 Add ability to search "partparametertemplate" API by "name" field 2021-11-15 23:31:56 +11:00
Oliver 00dc7dafe1 Construct "used in" table 2021-11-15 22:39:58 +11:00
Oliver a9852355c4 Add a unit test 2021-11-15 22:28:09 +11:00
Oliver 1f997d07b6 Update BOM API to allow filtering by "uses" 2021-11-15 22:16:13 +11:00
Oliver dad097a3ba Merge remote-tracking branch 'inventree/master' into partial-shipment 2021-11-15 10:55:17 +11:00
Oliver 1deb0f2c1b
Merge pull request #2296 from SchrodingersGat/requires-restart
Requires restart
2021-11-12 16:02:31 +11:00
Matthias 5bb3a95699
Fix theme selector
Fixes #2298
2021-11-11 23:04:16 +01:00
Oliver 626637a06a Add "hidden" property to global settings
- Allows certain settings to be hidden from the javascript files
2021-11-11 22:16:46 +11:00
Oliver d5cf2b08ac Merge remote-tracking branch 'inventree/master' into partial-shipment
# Conflicts:
#	InvenTree/InvenTree/version.py
#	InvenTree/order/models.py
2021-11-11 12:35:59 +11:00
Matthias bae28e8207
Add setting for enabeling reports
Fixes #2278
2021-11-10 23:54:54 +01:00
Oliver 4a26f274af fixing silly bug I introduced 2021-11-10 14:00:30 +11:00
Oliver 1bb51a7309 Normalize "available stock" quantity before exporting 2021-11-10 13:27:59 +11:00
Oliver bd81eba380 PEP style fixes 2021-11-10 11:13:30 +11:00
Oliver 6a534e0322 Improve options for installing a part into another part
- Allow "variant" parts when the BOM specifies that variants are allowed for a particular BOM item
2021-11-10 11:11:52 +11:00
Oliver cb075ed2c2 Fix logic for converting stock items to applicable variants 2021-11-08 15:10:41 +11:00
Oliver bf4de526ac Typo fix 2021-11-05 10:20:47 +11:00
Oliver f27acde934 More fixes
- Allow stock item creation for inactive parts
- Better handling of successful stock item creation
- Disable fields rather than hiding them
2021-11-05 00:02:55 +11:00
Oliver f0e44f0efd Merge remote-tracking branch 'inventree/master' into stock-item-forms 2021-11-04 17:24:30 +11:00
Oliver 2130b02e7f
Merge pull request #2193 from matmair/matmair/issue2181
Add missing part import fields
2021-11-04 16:54:30 +11:00
Oliver 3a7f8c9196 Fix comparison operator 2021-11-04 16:18:49 +11:00
Oliver 5ae6241083 Fixes for low-stock emails
- Include variant stock in test
- Improve email template
2021-11-04 16:15:11 +11:00
Oliver 170d8d11d3
Merge pull request #2246 from SchrodingersGat/build-order-notification
Build order notification
2021-11-04 15:23:39 +11:00
Oliver 01191d84c5 Only run check stock function when updating an existing part 2021-11-04 14:32:42 +11:00
Oliver 6db6a70fc2 Add task to check required stock for build order 2021-11-04 13:32:14 +11:00
Oliver 9dba3c3f10 Refactored bom export 2021-11-04 12:10:36 +11:00
Oliver 3b56895f4d Merge branch 'master' into stock-item-forms 2021-11-04 10:34:49 +11:00