Commit Graph

8607 Commits

Author SHA1 Message Date
Oliver Walters
b64a29b897 Display build pricing information 2019-05-18 23:09:00 +10:00
Oliver Walters
2b098942b0 Fix pricing bug
- Include BOM item pricing in API
2019-05-18 23:08:56 +10:00
Oliver Walters
2a1fd2b03b More complex pricing calculations
- Calculate BOM price for a part
- Calculate total pricing for a part (build or purchase)
- Display pricing information in BOM table
2019-05-18 23:08:51 +10:00
Oliver Walters
4c82714777 Allow 5 decimal places for pricing info 2019-05-18 23:08:47 +10:00
Oliver Walters
cdc55bb5d3 PEP fixes 2019-05-18 23:08:42 +10:00
Oliver Walters
a3d1591929 Display part pricing in Part view
- Calculate min_price and max_price based on provided supplier information
2019-05-18 23:08:38 +10:00
Oliver Walters
0cfb243eb3 Move SupplierPart and SupplierPriceBreak to the 'Company' app
- https://docs.djangoproject.com/en/2.2/ref/models/options/#django.db.models.Options.db_table
- https://stackoverflow.com/questions/3519143/django-how-to-specify-a-database-for-a-model
- And others, presumably
2019-05-18 23:08:34 +10:00
Oliver Walters
5043c354b1 Set default value for SupplierPriceBreak
Edit or Delete a SupplierPriceBreak
2019-05-18 23:08:30 +10:00
Oliver Walters
fc3072a459 Form for creating a new price break for a supplier part 2019-05-18 23:08:25 +10:00
Oliver Walters
1163f60b23 Return price breaks in the correct order 2019-05-18 23:08:21 +10:00
Oliver Walters
a3cd54875c Update validator for supplier price break 2019-05-18 23:08:17 +10:00
Oliver Walters
92632b2ef7 PartAttachment attachment file is actually required! 2019-05-18 23:08:13 +10:00
Oliver Walters
a1461de297 Add supplierpricebreak model to the admin interface 2019-05-18 23:08:09 +10:00
Oliver Walters
613c96e093 Part attachment comment field is required 2019-05-18 23:08:04 +10:00
Oliver Walters
a2dbdfe794 Remove 'single_price' field from supplier part
- Instead we will rely entirely on the SupplierPriceBreak model
2019-05-18 23:07:58 +10:00
Oliver Walters
001dacc14e Display 'no stock available' warning 2019-05-18 13:24:15 +10:00
Oliver Walters
04420b7f6b Improve display of allocation page 2019-05-18 13:06:19 +10:00
Oliver Walters
a95e77c429 Pre-fill allocation count 2019-05-18 12:17:57 +10:00
Oliver Walters
34d1ef7d8d Change label size for build status 2019-05-18 09:44:16 +10:00
Oliver Walters
0ce5240361 More UI stuff for the Build page 2019-05-17 16:35:23 +10:00
Oliver Walters
a2eeb7e946 Bug fix for part/stock
- Re-introduce the button to create a new stock item
2019-05-17 16:35:16 +10:00
Oliver Walters
3a3662ae14 Add part image 2019-05-17 00:31:35 +10:00
Oliver Walters
489d5de9c4 UI tweaks 2019-05-17 00:23:08 +10:00
Oliver Walters
2da3a022bf Add allocation tab 2019-05-17 00:20:48 +10:00
Oliver Walters
bf987f23f3 Add 'tabbed' page set for Build app 2019-05-17 00:14:29 +10:00
Oliver Walters
b77b6d2256 Display number of supplier parts in supplier list 2019-05-16 22:29:39 +10:00
Oliver Walters
5ebc7b040a Show current quantity in stocktake form 2019-05-16 22:23:31 +10:00
Oliver Walters
117fd701cd Refactor some code 2019-05-16 22:19:49 +10:00
Oliver Walters
0a1887477c Create template for stock table 2019-05-16 22:15:44 +10:00
Oliver Walters
b8f5c8cca7 Add confirmation box to stocktake form 2019-05-16 22:12:13 +10:00
Oliver Walters
7ef448d205 PEP 2019-05-16 21:26:53 +10:00
Oliver Walters
64a82389a2 Add ability for Company model to count stock sourced from that supplier 2019-05-16 21:26:12 +10:00
Oliver Walters
1b06cd23af Add 'stock' tab for supplier page 2019-05-16 21:16:19 +10:00
Oliver Walters
c1224048ad Add ability to filter stock by supplier 2019-05-16 21:01:34 +10:00
Oliver Walters
b4df96aaee Simplify extended filters 2019-05-16 19:14:43 +10:00
Oliver Walters
e1558a7a96 Add ability to filter stock items by part category
- Using the REST API
- Add &category=x to the query string
- Add &include_child_categories to include child categories
2019-05-16 18:54:14 +10:00
Oliver Walters
387711a9a1 Fix help string 2019-05-16 18:08:37 +10:00
Oliver Walters
fae44c3002 Bug fix for part deep-copy
- Don't copy an image if an image doesn't exist
2019-05-15 09:21:31 +10:00
Oliver Walters
292e29e95e Add some more secondary modals 2019-05-15 07:50:54 +10:00
Oliver Walters
a1d587b7f4 Rename 'Company' to 'Suppliers' in front-end 2019-05-15 07:44:13 +10:00
Oliver Walters
c6331255de Fixes 2019-05-15 07:23:55 +10:00
Oliver Walters
8c92c2c2a1 Display overage values in BOM table 2019-05-15 07:23:02 +10:00
Oliver Walters
68ae38a7d7 Calculate total quantity required for a build (including overages) 2019-05-15 00:36:02 +10:00
Oliver Walters
a80c11f3ce Add function to infer default_supplier for a Part 2019-05-15 00:22:10 +10:00
Oliver Walters
f6baf5d2ae Add 'overage' field to BOM item
- Accepts absolute or percentage numbers
- Default = blank
- Now with custom validator! (for limited time only, limit one per customer)
2019-05-15 00:16:34 +10:00
Oliver Walters
f979edef8e Prevent double loading of stock.js 2019-05-14 23:47:15 +10:00
Oliver Walters
2e5b3bfdf9 Prevent multiple loads of part.js 2019-05-14 23:44:33 +10:00
Oliver Walters
58cc1cda77 Only load api.js once 2019-05-14 23:43:16 +10:00
Oliver Walters
0ffe2666b3 Added some missing help text 2019-05-14 23:36:22 +10:00
Oliver Walters
505b7941b1 Add link to delete a part
- Part must first be deactivated
2019-05-14 23:33:25 +10:00
Oliver Walters
76e6094977 Add secondary modal to BOM 2019-05-14 23:30:32 +10:00
Oliver Walters
9d50f2a6ac Toot toot all aboard the refactor tractor
- launchModalForm now accepts a 'secondary' parameter which is a list of secondary modals to attach
2019-05-14 23:27:45 +10:00
Oliver Walters
97c4e5acbf Add some secondary buttons to the part-create form 2019-05-14 23:19:56 +10:00
Oliver Walters
be1b458634 Upon successful creation (in a secondary modal) update the field in the primary modal 2019-05-14 23:04:49 +10:00
Oliver Walters
a316681ec8 Pass object data back to modal when creating new object 2019-05-14 23:04:00 +10:00
Oliver Walters
21c238e96a Secondary modal is slightly smaller than primary
- So that the primary modal is still visible underneath
2019-05-14 22:44:57 +10:00
Oliver Walters
226644e59a Open a secondary modal over the top of a primary one 2019-05-14 22:37:45 +10:00
Oliver Walters
dc3abec899 Add a secondary modal in modals.html 2019-05-14 22:30:24 +10:00
Oliver Walters
a96cd2240c Function to insert a 'create new' button into a form
- Look for a label like <label for="id_<field>">
2019-05-14 22:12:22 +10:00
Oliver Walters
0cc2e71843 Provide an after_render callback
- User callback after the form data are rendered
2019-05-14 19:00:59 +10:00
Oliver Walters
2164cac28a PEP 2019-05-14 18:32:20 +10:00
Oliver Walters
46ab6e40eb Bug fix for build allocation
- If the part did not have an image file the template failed to render
2019-05-14 18:31:19 +10:00
Oliver Walters
9986df2074 Add confirmation to cancel a build 2019-05-14 18:20:54 +10:00
Oliver Walters
e87f545d75 Render zero stock as 'No Stock' in BOM table 2019-05-14 18:12:17 +10:00
Oliver Walters
d1de6eb1f9 Copy across default tags when creating a new part 2019-05-14 17:32:29 +10:00
Oliver Walters
0842bd5833 Add 'default_keywords' field to a category 2019-05-14 17:30:24 +10:00
Oliver Walters
02033c2157 Add 'keywords' field to Part
- Shows up in search results
2019-05-14 17:23:20 +10:00
Oliver Walters
7447561f77 Fix link for part stock in BOM table 2019-05-14 17:12:06 +10:00
Oliver Walters
74c8b6768d BOM table fixes
- Reorder columns
- Allow proper part name filtering
2019-05-14 15:43:16 +10:00
Oliver Walters
df227a375c Allow some more chars in part names 2019-05-14 15:42:53 +10:00
Oliver Walters
ba1e24cce8 PEP 2019-05-14 13:59:10 +10:00
Oliver Walters
b996c03f61 Add a 'set password' form 2019-05-14 13:58:23 +10:00
Oliver Walters
0032ea3409 Add a form to edit basic user settings
- First / last name
- Email address
2019-05-14 13:33:47 +10:00
Oliver Walters
3c6d5756c5 Create a simple user settings view 2019-05-14 13:21:20 +10:00
Oliver Walters
069cebb669 PEP 2019-05-13 23:03:37 +10:00
Oliver Walters
edc2cc49c2 Fix deletion form for BuildItem 2019-05-13 23:03:32 +10:00
Oliver Walters
06e95819c9 Update form for deleting a BOM item 2019-05-13 23:00:04 +10:00
Oliver Walters
d679ee9971 Update form for deleting stock location 2019-05-13 22:58:42 +10:00
Oliver Walters
00b37b62db Updated form to delete part category 2019-05-13 22:55:40 +10:00
Oliver Walters
ffa5a25fa9 Updated form for deleting part attachments 2019-05-13 22:53:58 +10:00
Oliver Walters
fcdddf6bb6 Cleaup for delete supplier part form 2019-05-13 22:52:20 +10:00
Oliver Walters
0e0096467c Update delete form for Company objects 2019-05-13 22:50:05 +10:00
Oliver Walters
a78106526a Remove launchDeleteForm JS function
- All should be consolidated upon launchModalForm
- StockItem delete now uses this
2019-05-13 22:47:36 +10:00
Oliver Walters
e35a9284eb Add a generic DeleteForm and update AjaxDeleteView 2019-05-13 22:46:47 +10:00
Oliver Walters
3e4d778539 Change menu ordering 2019-05-13 21:56:39 +10:00
Oliver Walters
e1e5cde60f Renamed copyBomFrom to deepCopy
- Allows passing of more data (in the future) e.g. tags, etc
- Performs copy of the part image
2019-05-13 21:54:52 +10:00
Oliver Walters
00f7ece6b4 PEP fixes 2019-05-13 21:42:05 +10:00
Oliver Walters
2408318eae Add new view to duplicate a part
- Allows 'deep_copy' (copies all BOM items for the duplicated part)
2019-05-13 21:41:32 +10:00
Oliver
6ae185ec0e
Merge pull request #316 from SchrodingersGat/stock-bug-fix
Fix part name display
2019-05-13 19:00:26 +10:00
Oliver Walters
fa7555e34b Fix part name display 2019-05-13 18:56:51 +10:00
Oliver Walters
150c68e65b Bug fix
- Turns out 'item_count' was actually used for something (that I wrote... recently...)
2019-05-13 18:52:54 +10:00
Oliver Walters
b7d3bbd836 PEP 2019-05-13 18:46:48 +10:00
Oliver Walters
0813f8cbd5 More test coverage for Stock 2019-05-13 18:45:52 +10:00
Oliver Walters
42bbf95c42 Include the sub_part ID in the BOM hash 2019-05-13 18:09:59 +10:00
Oliver Walters
f410957d8d Refactored Stock test to use fixtures 2019-05-12 21:46:38 +10:00
Oliver Walters
25e41b3fa2 Allow null values for StockItem.updated
- Just to make the tests run better
2019-05-12 21:20:43 +10:00
Oliver Walters
e3a9a70678 Add a form/view/etc for BOM validation 2019-05-12 16:27:50 +10:00
Oliver Walters
c7f0d56be4 Don't display BOM hash any more! 2019-05-12 16:09:11 +10:00
Oliver Walters
d17e36b9f9 Add BOM checksum info panels to the BOM view 2019-05-12 13:24:58 +10:00
Oliver Walters
9149619f38 Make BOM tab badge red if the BOM is not validated 2019-05-12 13:12:04 +10:00
Oliver Walters
06deccca1c Rename check_bom to validate_bom 2019-05-12 13:01:41 +10:00
Oliver Walters
985986a844 New functions for Part model
- is_bom_valid() - Tests if bom checksums match
- check_bom() function to mark the BOM as valid
2019-05-12 12:53:56 +10:00
Oliver Walters
2431ba2a04 Add new fields to Part model
- bom_checksum (stores checksum calculated when the BOM was checked)
- bom_checked_by (User who checked the BOM)
- bom_checked_date (When the BOM was last checked)
2019-05-12 12:47:28 +10:00
Oliver Walters
4c3032e2f0 Add function to calculate BOM hash
- Uses hashlib.md5
2019-05-12 12:42:20 +10:00
Oliver Walters
82fb43e1e3 PEP 2019-05-12 12:29:16 +10:00
Oliver Walters
d5dbc1b072 Display supplier part URL in table 2019-05-12 12:20:15 +10:00
Oliver Walters
1d36ea3e2e Add a 'full_name' field for Part
- Combines IPN | Name | Variant
- Use this to display in most views
2019-05-12 12:16:04 +10:00
Oliver
08d743a735
Merge pull request #309 from SchrodingersGat/fuzzy-search
Fuzzy search
2019-05-11 18:47:48 +10:00
Oliver Walters
988670cdbf PEP 2019-05-11 18:37:34 +10:00
Oliver Walters
b3cca1d851 Improve form management when possible part matches are found
- Display the checkbox always
- Display a warning message above the form
2019-05-11 18:07:37 +10:00
Oliver Walters
7b4584ba2f Add some more options for modal forms
- Ability to display info or warning panels before the form
2019-05-11 18:06:43 +10:00
Oliver Walters
19854b4709 Improve str2bool to validate checkbox return values
- A checked checkbox returns 'on' :|
2019-05-11 18:06:17 +10:00
Oliver Walters
2e5b0bc961 PEP 2019-05-11 12:29:51 +10:00
Oliver Walters
84d2fce8ca Add a 'confirm_creation' input if there are possible part matches 2019-05-11 12:29:02 +10:00
Oliver Walters
d9c0d2f5e3 Update PartCreate form
- Display list of close matches
- Invalidate form (for now)
2019-05-11 11:55:17 +10:00
Oliver Walters
4e4ee2742b Move modal form error messages to the top 2019-05-11 11:50:00 +10:00
Oliver Walters
1b8ca34ddb Added fuzzy search function for matching against part names 2019-05-11 10:36:24 +10:00
Oliver Walters
343850c4f0 Cleanup for part.views 2019-05-11 09:51:45 +10:00
Oliver Walters
b73583be40 Make the 'quantity' field optional in the stock move API
If not specified, the entire quantity will be moved
2019-05-11 09:02:30 +10:00
Oliver Walters
271c684b22 Making the frog happy 2019-05-11 00:43:02 +10:00
Oliver Walters
97b9cac205 Successfully move multiple parts with partial quantities 2019-05-11 00:42:24 +10:00
Oliver Walters
306a981ca1 Allow partial-quantity move
- Automatically split out the stock
- Move the specified quantity to the new location
2019-05-11 00:40:37 +10:00
Oliver Walters
c376f38a8d Added function to split stock
- Specify the quantity to move into the NEW stock item
- The left over quantity will remain in the current stock item
2019-05-11 00:37:54 +10:00
Oliver Walters
6561a613d7 Add extra validation step 2019-05-11 00:07:21 +10:00
Oliver Walters
8d5c4c521c Pass stock move quantity through per item 2019-05-11 00:04:45 +10:00
Oliver Walters
99c0921113 Add quantity selector to 'move items' modal form 2019-05-10 23:51:26 +10:00
Oliver
9ba91a9d80
Merge pull request #299 from SchrodingersGat/part-revision
Part revision
2019-05-10 23:26:28 +10:00
Oliver Walters
914fe8988e Merge remote-tracking branch 'inventree/master' into part-revision 2019-05-10 23:21:56 +10:00
Oliver Walters
b4074afbad Merge remote-tracking branch 'inventree/master' into select2-search 2019-05-10 23:21:03 +10:00
Oliver Walters
31b42ac3a6 Remove comment, maybe? 2019-05-10 23:18:13 +10:00
Oliver Walters
6c394728cd Modal dropdowns now implement a partial-match search
- SO MUCH BETTER ZOMG
- https://select2.org/searching
2019-05-10 23:06:38 +10:00
Oliver Walters
7f1cdaf73f PEP 2019-05-10 22:52:45 +10:00
Oliver Walters
8ac180a9e3 Add validator to part name
- Check for 'illegal' characters
- Mostly just as a test for validators!
2019-05-10 22:52:06 +10:00
Oliver Walters
68b273aae1 Fixed some more part name displays 2019-05-10 22:18:56 +10:00
Oliver Walters
f76f1f54ae Add 'variant' field to Part model
- Display 'long_name' which is concatenation of name and variant
2019-05-10 22:17:13 +10:00
Oliver
164f98540d
Merge pull request #297 from SchrodingersGat/field-doc
Field doc
2019-05-10 20:18:51 +10:00
Oliver Walters
01778f996e PEP fixes 2019-05-10 20:12:15 +10:00
Oliver Walters
ba2f565e35 docstring improvements
- Added Attribute docstring to all model objects
2019-05-10 20:11:52 +10:00
Oliver Walters
763e0a991c Limit user choices in the manual part allocation form 2019-05-10 19:12:56 +10:00
Oliver Walters
bbf46c4580 Display 'take_from' location on build detail page 2019-05-10 19:07:38 +10:00
Oliver Walters
3588161632 Build.getAutoAllocations() only selects parts from the designation location 2019-05-10 19:03:45 +10:00
Oliver Walters
468322fa9d Add field 'take_from' to Build 2019-05-10 19:03:10 +10:00
Oliver
7ba5f7869a
Merge pull request #290 from SchrodingersGat/auto-allocation
Auto allocation
2019-05-10 08:52:21 +10:00
Oliver Walters
66b729d579 Moved 'complete build' button to the build detail page 2019-05-10 08:44:07 +10:00
Oliver Walters
932c07287b Button fixes 2019-05-10 08:38:50 +10:00
Oliver Walters
b377efbbec Replaced button text with icons 2019-05-10 08:36:08 +10:00
Oliver Walters
05f5aa27c5 Add a 'Remove build allocation' function
- Removes all parts allocated to a given build
2019-05-10 08:33:54 +10:00
Oliver Walters
345913bc90 Improve rendering of 'Complete Build' form 2019-05-09 23:59:39 +10:00
Oliver Walters
7835562396 Auto-allocation form now working
- Displays a list of stock items which will be allocated
2019-05-09 23:55:30 +10:00
Oliver
e1fbd4611f
Merge pull request #289 from SchrodingersGat/delete_on_empty
Delete on empty
2019-05-09 23:26:19 +10:00
Oliver
793b4f8063
Merge pull request #288 from SchrodingersGat/tree-badges
Tree badges
2019-05-09 23:06:32 +10:00
Oliver Walters
027e1cf130 Add ability to edit 'delete_on_deplete' field 2019-05-09 23:06:19 +10:00
Oliver Walters
ac326c135f Auto delete stock items when they are depleted 2019-05-09 23:01:32 +10:00
Oliver Walters
61351a8f8d Renamed add_transaction_note to addTransactionNote 2019-05-09 22:52:38 +10:00
Oliver Walters
897c0b5261 Send item 'pk' in tree JSON 2019-05-09 22:42:43 +10:00
Oliver Walters
92930766c6 Tree view now supports root URL link 2019-05-09 22:23:56 +10:00
Oliver Walters
d04f38c724 Improve CSS for main page
- Breadcrumb now appears above sidenav tree
- Better margin / etc
2019-05-09 22:23:43 +10:00
Oliver Walters
34225193fa Improve tree toggle icon 2019-05-09 21:46:11 +10:00
Oliver Walters
bff0f30b13 Save tree state 'per tree'
- Separate save state for Part and Stock tree
2019-05-09 21:41:44 +10:00
Oliver Walters
45223fb607 Display count badges in sidenav tree
Uses the 'tags' parameter as according to the docs - https://github.com/jonmiles/bootstrap-treeview

- Part
- Stock
2019-05-09 20:30:23 +10:00
Oliver
f4941d55ed
Merge pull request #285 from SchrodingersGat/hide-supplier-part
Hide supplier_part field if the part cannot be purchased
2019-05-09 18:46:48 +10:00
Oliver
41d237c0e4
Merge pull request #284 from SchrodingersGat/hide-fields
Hide some fields from forms
2019-05-09 18:43:30 +10:00
Oliver Walters
2c5bb6b126 Hide supplier_part field if the part cannot be purchased 2019-05-09 18:43:22 +10:00
Oliver
a94f4baa55
Merge pull request #283 from SchrodingersGat/can-build
If a part has no bom items, the 'can_build' function now returns zero
2019-05-09 18:39:06 +10:00
Oliver Walters
ef9fb5b018 Hide some fields from forms 2019-05-09 18:38:37 +10:00
Oliver
459699bcd6
Merge pull request #282 from SchrodingersGat/stock-form-fix
Enable 'Submit' button for Move Stock form
2019-05-09 18:36:06 +10:00
Oliver Walters
1a115104d2 If a part has no bom items, the 'can_build' function now returns zero 2019-05-09 18:35:55 +10:00
Oliver
8bf09300bb
Merge pull request #281 from SchrodingersGat/page-title
Page title
2019-05-09 18:33:03 +10:00
Oliver Walters
d891c8d7ea Enable 'Submit' button for Move Stock form 2019-05-09 18:32:30 +10:00
Oliver Walters
6724717346 Added title for Index and Search pages 2019-05-09 18:28:19 +10:00
Oliver Walters
40ca468b51 Added title for 'Build' app 2019-05-09 18:27:16 +10:00
Oliver Walters
ca6bd0a999 Add page title for company page 2019-05-09 18:17:28 +10:00
Oliver Walters
a067d9f4cd Add page title for Part app 2019-05-09 18:13:54 +10:00
Oliver Walters
b9b17f39d9 Override page title for Stock app 2019-05-09 18:11:13 +10:00
Oliver Walters
873bd182f0 Vertical alignment of button toolbars 2019-05-09 18:04:42 +10:00
Oliver Walters
37405f4ec8 Align navigation bar with rest of content 2019-05-09 18:01:45 +10:00
Oliver Walters
4f56abf312 Fix scaling for thumbnail icons 2019-05-09 17:49:41 +10:00
Oliver Walters
6c4b5731db Reduce padding 2019-05-09 17:49:05 +10:00
Oliver Walters
9fc6268558 Increase size of part image display 2019-05-09 17:47:38 +10:00
Oliver Walters
15cd93a773 Display company thumb in company index 2019-05-09 00:49:19 +10:00
Oliver
b41ff3c42a
Merge pull request #266 from SchrodingersGat/side-bar-improvements
Side bar improvements
2019-05-09 00:43:57 +10:00
Oliver
fa2bf947ab
Merge pull request #267 from SchrodingersGat/bom-img
BOM table improvements
2019-05-09 00:42:33 +10:00
Oliver Walters
7ac4308c22 PEP fix 2019-05-09 00:40:44 +10:00
Oliver Walters
94ad378b9d Part and company images return the 'no image found' image if they do not have an image 2019-05-09 00:39:51 +10:00
Oliver Walters
4c4df194fa BOM table improvements
- Add part image
- Replace button text with icons
- Fix bug in BOM download
2019-05-09 00:29:16 +10:00
Oliver
aafc4e367d
Merge pull request #265 from SchrodingersGat/help-text
Help text
2019-05-09 00:15:55 +10:00
Oliver Walters
cc7fb31d6d Save and recall expansion state of tree
- Save choices to sessionStorage
2019-05-09 00:15:43 +10:00
Oliver Walters
206720849c Reduce icon size in sidenav bar 2019-05-09 00:12:50 +10:00
Oliver Walters
f05e05664b PEP fix 2019-05-08 23:33:37 +10:00
Oliver Walters
e9c904076f Added help text for model fields 2019-05-08 23:32:57 +10:00
Oliver
82eceac604
Merge pull request #264 from SchrodingersGat/build-image-fix
Improved part thumbnails in build allocation
2019-05-08 23:27:53 +10:00
Oliver Walters
d971747404 Improved part thumbnails in build allocation 2019-05-08 23:03:28 +10:00
Oliver Walters
92d0af4291 Modal fixes
- Increase width of modal dialog
- Select inputs inside modals are now 100% width
2019-05-08 22:29:23 +10:00
Oliver Walters
8fbba6846f Display part description in stock table 2019-05-08 22:05:46 +10:00
Oliver Walters
b4b9d1514e Mark 'inactive' parts in part list table
- Fix part display in search results page
2019-05-08 22:03:59 +10:00
Oliver Walters
1f9aa7a8fc Display thumbnail in Part 'used_in' detail view 2019-05-08 20:26:39 +10:00
Oliver Walters
58e5b10d26 Display supplier logo in part suppliers list
- Also add a background colour for popup image in case of transparent image file
2019-05-08 20:23:54 +10:00
Oliver Walters
0754afd5f5 Display icons in supplier_part list
- Bug fix for part list API query
2019-05-08 20:16:53 +10:00
Oliver Walters
88a1df75d2 Render part image in the stock location list display 2019-05-08 19:32:00 +10:00
Oliver Walters
0058207fad Functionalize loadPartTable 2019-05-08 19:31:43 +10:00
Oliver Walters
2a66224952 Part image hover preview working in part-category-list
- Yay for CSS!
2019-05-08 19:15:41 +10:00
Oliver Walters
afffd06fb8 Limit choices for 'parent' field when editing StockLocation 2019-05-08 18:00:34 +10:00
Oliver Walters
fb38ddb1b3 Limit choices for 'parent' field when editing PartCategory 2019-05-08 17:57:31 +10:00
Oliver Walters
ab76525da2 Initially sort part list by 'name' 2019-05-08 15:53:03 +10:00
Oliver Walters
416b5c9820 Include part image URL in Part API 2019-05-08 15:25:28 +10:00
Oliver Walters
6a04e8b059 Allow sorting by BOM notes 2019-05-08 14:14:46 +10:00
Oliver Walters
d96989f640 Reorder BOM table 2019-05-08 13:42:20 +10:00
Oliver Walters
40d8332e7f Add 'allocated' status code to build
- This means that parts have been taken from stock
2019-05-08 07:48:39 +10:00
Oliver Walters
cd514bf1db Mark who a build was completed by 2019-05-07 23:39:42 +10:00
Oliver Walters
85869c07f6 Add 'allocated' column to Build detail view 2019-05-07 23:31:41 +10:00
Oliver Walters
29b94c91f3 Display part images in build allocation list
(CSS needs some work)
2019-05-07 23:28:46 +10:00
Oliver Walters
7101d9cb7e Add part description to build allocation table 2019-05-07 23:09:36 +10:00
Oliver Walters
7dd7b68ed6 Improve functions 2019-05-07 23:03:05 +10:00
Oliver Walters
4f84febbd1 More intelligent BuildItem allocation
- Set initial value for quantity based on how many parts are left to allocate
- Auto select the StockItem to take from (if there is only one)
2019-05-07 22:46:37 +10:00
Oliver Walters
e58bed41b0 Visual style improvements 2019-05-07 21:24:09 +10:00
Oliver Walters
7e81d9021f Auto-show the active build table 2019-05-07 21:24:09 +10:00
Oliver Walters
c10ddab30c Improve display of Build index 2019-05-07 21:24:09 +10:00
Oliver Walters
ff14b0b363 Ensure that a StockItem is not already allocated to a Build 2019-05-07 21:24:09 +10:00
Oliver Walters
7c70b31af4 Build no longer auto-allocates on creation
- Provide 'auto allocation' function which can be run by the user
2019-05-07 21:24:09 +10:00
Oliver Walters
6ac3f58e97 Added favicon
generated using https://www.favicon-generator.org/
2019-05-07 20:24:27 +10:00
Oliver Walters
9a6cf259a6 PEP fixes 2019-05-07 14:48:35 +10:00
Oliver Walters
dcbd5d819c Enable DnD for Company image
- Can actually use the existing form to do partial upload!
- Generecise the drag-and-drop upload function
- Remove some (now unnecessary) Python View code
2019-05-07 14:47:31 +10:00
Oliver Walters
1cff778a29 Added extra CORS options
- Allows AJAX requests from external sites
- If DEBUG mode is enabled, all CORS requests are allowed
2019-05-07 10:24:39 +10:00
Oliver
b222897358
Merge pull request #250 from SchrodingersGat/tweaks
Some tweaks
2019-05-07 08:13:44 +10:00
Oliver Walters
983804fa1f PEP fix 2019-05-07 08:11:19 +10:00
Oliver Walters
0969edc431 Some tweaks
- Add (unused) function to download an external file
- JS tweaks
2019-05-07 08:07:33 +10:00
Oliver Walters
a03027ec9b Add makefile option for quick backup 2019-05-07 07:46:29 +10:00
Oliver
e0b4a59258
Merge pull request #247 from SchrodingersGat/drag-n-drop
Drag n drop
2019-05-07 00:18:37 +10:00
Oliver Walters
22ff085b15 PEP fixes 2019-05-07 00:11:27 +10:00
Oliver Walters
fe4acd48a7 Add the ability to extract image URL information when drag-and-dropping image URL from a browser window
- Can't do anything with it yet...
- Code is almost there but leaving for now
2019-05-07 00:04:35 +10:00
Oliver Walters
3c7238f29c Extract img URL from a drag-and-dropped image from another website
- https://stackoverflow.com/a/19268449
2019-05-06 22:34:38 +10:00
Oliver Walters
bb702367b6 Test that uploaded image is an image file, return error otherwise
- New javascript function inventreeFileUpload
2019-05-06 22:20:06 +10:00
Oliver Walters
c88149b9aa POST image data to View
- https://developer.mozilla.org/en-US/docs/Web/API/FormData/Using_FormData_Objects
- https://stackoverflow.com/questions/25390598/append-called-on-an-object-that-does-not-implement-interface-formdata#25390646
2019-05-06 21:49:01 +10:00
Oliver Walters
eec0fc34d2 Provide function callback when file is dropped
- https://stackoverflow.com/questions/6756583/prevent-browser-from-loading-a-drag-and-dropped-file
-
2019-05-06 21:28:49 +10:00
Oliver Walters
dca26b5810 Change the display of the part thumbnail when dragging a file overhead
Refs:
- https://stackoverflow.com/questions/26756176/jquery-dragenter-or-dragover-to-include-children#26777526
- https://stackoverflow.com/questions/10867506/dragleave-of-parent-element-fires-when-dragging-over-children-elements

Thanks, StackOverflow!
2019-05-06 19:21:14 +10:00
Oliver Walters
abb8930702 Limit SupplierPart choices in EditStockItem view 2019-05-06 18:06:06 +10:00
Oliver Walters
02bd9c2d05 Search part by IPN 2019-05-06 11:23:55 +10:00
Oliver Walters
b9e5afa768 PEP 2019-05-05 22:35:39 +10:00
Oliver Walters
9bbcc35959 Builds can only be made for active parts 2019-05-05 22:34:14 +10:00
Oliver Walters
b85a4d0895 Limit choices for BomItem Part foreignkey fields
- Only allow 'active' Parts
2019-05-05 22:34:00 +10:00
Oliver Walters
726109457c Add icon to navbar dropdown 2019-05-05 11:51:35 +10:00
Oliver Walters
7987fcc7cc PEP fixes 2019-05-05 11:44:23 +10:00
Oliver Walters
c75d892fd7 Display collapsible list of starred-parts on the index page 2019-05-05 11:41:42 +10:00
Oliver Walters
aaff92ff9c Make the star icon yellow 2019-05-05 11:21:08 +10:00
Oliver Walters
fc5fd5e477 Toggle part star status using AJAX 2019-05-05 11:18:38 +10:00
Oliver Walters
d2d248c72e QR button code is now a template 2019-05-05 10:56:59 +10:00
Oliver Walters
bbd164407f Display 'starred' status on the Part information page 2019-05-05 10:54:35 +10:00
Oliver Walters
b2e935382b Override user field when creating a new PartStar
- Force it to be the currently logged-in user
2019-05-05 10:47:57 +10:00
Oliver Walters
3bd7c28558 Add API endpoint for viewing and deleting a PartStar entry 2019-05-05 10:36:48 +10:00
Oliver Walters
d245e58990 Only allow PartStar creation for the currently authenticated user 2019-05-05 09:14:12 +10:00
Oliver Walters
70f1097ea0 API endpoint for accessing part star information 2019-05-05 09:05:44 +10:00
Oliver Walters
86b5b8d16e Add PartStar model to the admin interface 2019-05-05 08:50:14 +10:00
Oliver Walters
919f04044b Enforce uniqueness constraint 2019-05-05 08:48:41 +10:00
Oliver Walters
9919bebaa2 Add PartStart model
- Links parts to users
2019-05-05 08:46:23 +10:00
Oliver Walters
16edcc4bd9 Add 'star' button to Part 2019-05-05 08:42:01 +10:00
Oliver Walters
8a6932e993 Improve QR code display
- Pretty little glyphicon button!
2019-05-05 08:39:16 +10:00
Oliver Walters
a66bc2fe72 Reload after adjusting Part attachments 2019-05-05 00:53:42 +10:00
Oliver Walters
ecb8e71d75 Fixed a missing form title 2019-05-05 00:46:11 +10:00
Oliver Walters
c383b2b246 Bug fix for modal question box 2019-05-05 00:38:19 +10:00
Oliver Walters
22afccd294 Add tests for the custom templates 2019-05-05 00:21:54 +10:00
Oliver Walters
fcc83ca7c7 Part API test suite now uses test data fixtures 2019-05-05 00:15:25 +10:00
Oliver Walters
e2ced18753 Added some more BomItem tests 2019-05-05 00:00:30 +10:00
Oliver Walters
c0e3007e4f Add some BomItem tests
- Add a bom fixture
2019-05-04 23:50:24 +10:00
Oliver Walters
1f80e8c655 More tests for Part
- barcode
- category_path
2019-05-04 23:35:52 +10:00
Oliver Walters
3fda5a3925 Convert test_part to use fixture data 2019-05-04 23:30:41 +10:00
Oliver Walters
663cc269b4 Test recursive child count 2019-05-04 23:22:32 +10:00
Oliver Walters
ab6673caa3 Add tests for default location traversal 2019-05-04 23:20:59 +10:00
Oliver Walters
6d803d48b5 Add fixtures to the part test
- Make development of further tests much easier
2019-05-04 22:58:55 +10:00
Oliver Walters
bc7f3f77de PEPEP 2019-05-04 21:57:43 +10:00
Oliver Walters
67eda51cd2 Add part category tree traversal
- If a category doesn't have a default_location, look at the parent category
- And so on and so on
2019-05-04 21:56:18 +10:00
Oliver Walters
71972f4454 Add function to get the default location for a part
- If field not specified, look at the part category
2019-05-04 19:06:39 +10:00
Oliver Walters
f270375847 Add ability to edit default_location for a PartCategory 2019-05-04 19:03:32 +10:00
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
Oliver
52cc7360b3 More betterer buttons for stock locationdetail 2018-05-04 00:48:36 +10:00
Oliver
1c5972e326 Cleaned up action buttons for StockLocation
- Merged edit/create/delete into a single drop-down button
2018-05-04 00:32:06 +10:00
Oliver
99fb466a6c Placeholder for ajax form 'complete' callback 2018-05-04 00:02:52 +10:00
Oliver
17e6147c47 Click on company image to edit it 2018-05-03 23:57:00 +10:00
Oliver
e9be3e9e06 Install django-cleanup
- Automatically removes orphaned ImageFIeld and FileField files
2018-05-03 23:56:39 +10:00
Oliver
bc716e25f7 Fixed bugs in Inventree/views.py
- Need to pass request.FILES to the form! (duh!) 
 - Prevent form data from being saved twice
2018-05-03 23:40:27 +10:00
Oliver
68cf6919a7 Updated part views
- Allocation table now uses bootstrap-table
- Added checkbox column to supplier table (no function yet)
2018-05-03 23:39:08 +10:00
Oliver
de176ecac9 Updated modal form code
- Modal form template now uses multipart-data (to allow file uploads)
- Cleaned modal_form.js code (split into separate functions)
2018-05-03 23:38:32 +10:00
Oliver
9311164825 Using jquery-forms plugin
- Allows AJAX file uploads
- Works!
- Provides upload progress (not yet tested)
2018-05-03 23:37:19 +10:00
Oliver
f995f54390 More API / JSON stuff
- SupplierPart JSON API
- Part supplier list
- Company part list
2018-05-03 00:47:03 +10:00
Oliver
49287c0c61 Part 'used-in' view now uses API
- Ajax calls to JSON API
- BootstrapTable
2018-05-03 00:25:01 +10:00
Oliver
0f3150c705 Part stock table now uses API / BootstrapTable 2018-05-02 23:54:28 +10:00
Oliver
1d63147380 Reload BOM table without refreshing enitre page 2018-05-02 23:46:08 +10:00
Oliver
7d21c4ef1c BOM now uses DRF / ajax 2018-05-02 23:42:57 +10:00
Oliver
be0797c6e6 Bootstrap table to company list 2018-05-02 23:17:24 +10:00
Oliver
1899d8f3e9 Stock location part list now uses bootstrap table
- Serializers within serializers!
2018-05-02 23:08:45 +10:00
Oliver
211edb23bb Removed footable
- Now using bootstrap-table
2018-05-02 22:22:43 +10:00
Oliver
024fe04e0e Implemented bootstrap-table for parts list 2018-05-02 22:18:58 +10:00
Oliver
fb9142c3fd Add static bootstrap-table files 2018-05-02 22:08:10 +10:00
Oliver
45510b1adc Add category info to part serializer 2018-05-02 20:57:04 +10:00
8cfbf2657e Removed unused maths tag 2018-05-01 10:03:20 +10:00
Oliver
f337291db8 Stock tables now searchable 2018-05-01 09:04:52 +10:00
Oliver
7c3b1f9bb4 Function to test if enough parts for a build 2018-05-01 09:00:09 +10:00
Oliver
dad594dc7a Tweaked build detail page 2018-05-01 08:55:51 +10:00
Oliver
a2ff1d16f3 Introspection of build allocation
Yay for dicts
2018-04-30 22:45:11 +10:00
Oliver
b24ddac0b8 Part stuff 2018-04-30 22:30:15 +10:00
Oliver
4a2b6a5674 Formatting fixes 2018-04-30 21:56:46 +10:00
Oliver
b2bb1ea1fe Pressing enter on a modal form now does the right thing 2018-04-30 21:56:36 +10:00
Oliver
37b109b8fc First pass of automated tracking data
- When stock item is moved
- When stocktake is performed
- Yes it is  bad - needs improvement!
2018-04-30 21:36:50 +10:00
Oliver
f9138f4997 Item stocktake form 2018-04-30 21:03:25 +10:00
Oliver
feff4f0ddd Add 'Contact' model to Company app 2018-04-30 17:20:01 +10:00
Oliver
f988c9af87 Tweaks for part page(s) 2018-04-30 01:16:57 +10:00
Oliver
d68b51e007 Add ability to move a stock item 2018-04-30 01:00:18 +10:00
Oliver
bee760d184 Deleted extraneous form code 2018-04-30 00:59:36 +10:00
Oliver
39530831d8 CSS fixes for .notification-area and .alert
Missed from previous commit
2018-04-30 00:30:04 +10:00
Oliver
5c902397e3 CSS fixes for .notificaiton-area and .alert 2018-04-30 00:29:39 +10:00
Oliver
5185173639 Updates for build app
- Added 'allocate' page (empty thus far)
- Added 'cancel' button and view
2018-04-30 00:23:44 +10:00
Oliver
a9c20f5d95 Added modal form success messages
- More to be done, just a start
- Create / edit / delete
2018-04-30 00:23:02 +10:00
Oliver
a2c1eda5c0 Added a form that only contains csrf tags
- e.g. blank form only required to validate POST data
2018-04-30 00:21:13 +10:00
Oliver
2d35116c79 Updated AjaxView
- Aded "AjaxMixin"
- Base mixin does NOT require a form (allowing more generic json views)
- Add in any other context data with get_data() function
2018-04-30 00:20:33 +10:00
Oliver
a6fdda1c1a Improved modal forms
- JSON POST response can include feedback messages
- Either displayed immediately or after page is reloaded
2018-04-30 00:01:20 +10:00
Oliver
e62bf92bd6 Notifications work through page-reload / page-redirect
- Uses session storage
2018-04-29 23:47:16 +10:00
Oliver
b6665ec2a7 Added dismissable notifications
- Bootstrap alert
- Can close manually
- Also set to disappear after configurable time
2018-04-29 23:29:38 +10:00
Oliver
46dea22cd4 Simplified part stock display 2018-04-29 22:07:58 +10:00
Oliver
f74e176579 JSON api for stock items 2018-04-29 21:02:40 +10:00
Oliver
9cc0780367 Sidenav toggles 2018-04-29 20:30:34 +10:00
Oliver
3403af18c8 Trackable items must have serial number set 2018-04-29 17:06:22 +10:00
Oliver
feb45513f7 Prevent serial number for stock item with quantity > 1 2018-04-29 13:20:02 +10:00
Oliver
9ea3d7bf71 Build tab shows active builds 2018-04-29 13:11:31 +10:00
Oliver
aca0d236ee Javascript consolidation 2018-04-29 12:25:07 +10:00
Oliver
55310be393 Display part stock in build detail window 2018-04-28 23:32:03 +10:00
Oliver
8d0789c37c Implemented tree view
Using library bootstrap-treeview
- part category tree
- stock location tree
- Currenly is functional but looks terrible
2018-04-28 23:22:12 +10:00
Oliver
095492203f Simplified javascript templating
- Load js modules in block js_load
- Write $(document).ready script in block js_ready
- Write any other js in block_js
2018-04-28 12:45:12 +10:00
Oliver
7ebb723d15 Revert "Set initial value fields to disabled for some forms"
This reverts commit c1271367bd.
2018-04-28 12:19:50 +10:00
Oliver
c1271367bd Set initial value fields to disabled for some forms
- Prevent user from changing certain fields
- Only when a form is launched from a particular view
2018-04-28 12:14:18 +10:00
Oliver
2e7253ebc4 Tweak javascript for category detail pages 2018-04-28 11:43:26 +10:00
Oliver
bc597d7c21 Style fixes 2018-04-28 01:16:47 +10:00
Oliver
0dcdce82f8 Modals dialogs for 'Build' 2018-04-28 01:06:42 +10:00
Oliver
1df42b2397 Sanity checking for StockItem
- If a SupplierPart is selected, it must point to the same Part type as the Part field!
2018-04-28 00:06:39 +10:00
Oliver
f49474ace5 Prevent recursive BOMs
- If A has B in its BOM, A cannot be added to the BOM of B
2018-04-27 23:42:23 +10:00
Oliver
06f9c67b11 Prevent part from adding itself as a BOM item 2018-04-27 23:23:44 +10:00
Oliver
1b5dbfbe26 Reload page when adding BOM item to part 2018-04-27 23:14:25 +10:00
Oliver
4d6e2aca2c Modal forms for stock app 2018-04-27 22:59:08 +10:00
Oliver
b705f3c62a Merge remote-tracking branch 'origin/master' 2018-04-27 22:51:17 +10:00
Oliver
3de80fe059 Modalized 'new-supplier-part' from supplier page 2018-04-27 22:14:25 +10:00
Oliver
4794714a09 Modal form for company-delete 2018-04-27 22:07:11 +10:00
Oliver
36cf946a78 Modal for company create
- Ajax modals now return the URL of the item they are operating on
- passing {follow: true} to the modal caller will go to that URL on success
- footable'd company list
2018-04-27 21:58:22 +10:00
Oliver
c4e305bde6 Loaded both modals into single include 2018-04-27 21:35:36 +10:00
Oliver
e1e3cc71e6 More modal forms
- supplier-part-edit
- supplier-part-delete
2018-04-27 21:32:48 +10:00
Oliver
bc3dca3aba Modal for edit and delete part category 2018-04-27 20:42:12 +10:00
28e6d50f08 Check for null StockItem location 2018-04-27 09:33:05 +10:00
Oliver
5162c1d11f Inline deletion for BOM items 2018-04-27 00:54:01 +10:00
Oliver
507e3de05b Generecised launchModalForm
- Add 'options' e.g. redirect / data
2018-04-27 00:16:54 +10:00
Oliver
784b0dec02 Added AjaxDeleteView
- AjaxDeleteView handles ajaxified delete GET and POST events
- Added modal deletion window
- Added launchDeleteForm jQuery function
2018-04-27 00:06:44 +10:00
Oliver
9fd275ed3e Part Edit view now ajaxified 2018-04-26 23:28:27 +10:00
Oliver
c0902626f4 footable working with BOM items
- Event delegation to capture 'edit' button
2018-04-26 23:05:35 +10:00
Oliver
8aa6dbdb04 Improved display of checkbox in forms
Still not quite right, but a lot better
2018-04-26 22:43:25 +10:00
Oliver
b4ff8f79f0 Fixed position header + footer for modals
- Fun with CSS!
- Header title provided by AJAX data
- Footer static
- Submit button text can be customized via JSON dat
2018-04-26 22:38:48 +10:00
Oliver
8c9442193b Enable escape-key dismiss for modal 2018-04-26 18:27:28 +10:00
Oliver
280f2c36cb Modal form for part creation 2018-04-26 18:22:41 +10:00
Oliver
d02b6f3583 Added scroll-bar to long modals
Required to fix a bug in select2 where select boxes are drawn incorrecly in a long scrolling modal. 
Enforcing a scrollbar for overflow prevents this (magic)?

Ref: https://github.com/select2/select2/issues/3897
2018-04-26 18:22:14 +10:00
Oliver
59ea4a3a24 Auto-scroll modal to top when opened 2018-04-26 18:19:41 +10:00
Oliver
5f19b37c6e Added 'select2' to modal foms
- Drop down lists are now text filterable
- Yay for libraries
2018-04-26 17:37:23 +10:00
Oliver
e395d89a7f Fix issues for AjaxUdpateView
- Works properly now!
- Can edit BOM item inline
- Can add BOM item inline too
2018-04-26 09:26:43 +10:00
Oliver
55e7f365df Added AjaxUpdateView class
Also cleaned up the modal form javascript
2018-04-26 08:18:53 +10:00
Oliver
99743c6bd0 Modal form now working on multiple pages
- Part index
- Part category detail page(s)
2018-04-25 15:34:12 +10:00
Oliver
e3b2bd7129 Abstracted jquery code to load a modal form
- static/scripts/modal_form.js
- bindModalForm function takes care of the mechanics
2018-04-25 15:28:57 +10:00
Oliver
ab05c6ce1e Updated AjaxCreateView
- Return PK of newly-created object
- Populate fields with initial values as necessary
2018-04-25 15:27:23 +10:00
Oliver
d88da28871 Generic AjaxCreateView
- Allows for same form to be posted
2018-04-25 14:10:56 +10:00
Oliver
8bc4050d05 Modal form is working for 'create new category'
- Had to set form.helper.form_tag to False (so we could control form tags manually)
- Created a 'json' model view
2018-04-25 12:46:58 +10:00
Oliver
9004086632 Add button to launch modal form 2018-04-25 00:09:25 +10:00
Oliver
db49e98f37 Load bootstrap.min.js 2018-04-24 23:41:01 +10:00
Oliver
50fcf5363c Download bootstrap and jquery to static dir
- Allow to run offline
2018-04-24 22:50:56 +10:00
Oliver
1df1bf2c07 Added 'URL' field to company 2018-04-24 18:01:15 +10:00
Oliver
b114001678 Fixed display of part allocation count 2018-04-24 17:59:20 +10:00
Oliver
f46c09e3a7 Added part category path string to serializer 2018-04-24 17:54:08 +10:00
Oliver
25fcd3e9f1 Simple search filtering for part list
- Needs to be 'generecised'
- Working well for now
2018-04-24 09:06:30 +10:00
Oliver
08ed128bea PEP style fixes 2018-04-23 21:18:35 +10:00
Oliver
86a9b36c99 Add part-list API
- Deleted some old serializers
- Simply list of parts
- Search by name / description
- Orderable by name
2018-04-23 21:10:13 +10:00
Oliver
f1a5b3c1ca Add AJAX filtering of company list
- Search across NAME and DESCRIPTION fields
- TODO - Implement pagination (how?)
2018-04-23 20:37:36 +10:00
Oliver
6c1784b5b9 Implement (basic) JSON API for company model
- Pagination
- Search company name and description
- Filter by is_customer and is_supplier
2018-04-23 19:46:40 +10:00
Oliver
97f05f85de Added TODO entry 2018-04-22 23:16:12 +10:00
Oliver
ac3de4ce3d Add part detail page for company / supplier 2018-04-22 23:07:23 +10:00
Oliver
4ebd8cd6b1 Added company details tab 2018-04-22 22:44:49 +10:00
Oliver
d44a4e174b Added 'tabs' to company view 2018-04-22 22:38:35 +10:00
Oliver
ee2f262e19 Company index / detail / edit pages working 2018-04-22 22:21:50 +10:00
Oliver
4bedf0ed4c Finally got migrations working together 2018-04-22 21:54:12 +10:00
Oliver
cef3c664f9 Moving 'supplier' to 'company' 2018-04-19 09:01:25 +10:00
Oliver
3bb434ae98 Migration fix 2018-04-19 09:01:20 +10:00
Oliver
433f670e1c Removed 'customer' app 2018-04-19 09:01:17 +10:00
Oliver
f1357cfb7c Adde 'system' Field to StockItemTracking 2018-04-18 08:44:08 +10:00
Oliver
a4621295a6 Fixed spash page for customer index
Added 'notes' field to Part object
2018-04-18 01:44:55 +10:00
Oliver
f66a751608 Add 'recevied' field to SupplierOrderLineItem 2018-04-18 01:23:08 +10:00
Oliver
1400128f9f SupplierOrderLineItem gets reference to internal part
- For keeping track of how many of an internal part is on order!
2018-04-18 01:21:18 +10:00
Oliver
12a97204b1 Merged migration files 2018-04-18 01:18:15 +10:00
Oliver
24f4c95060 Merge branch 'PO' 2018-04-18 01:17:07 +10:00
Oliver
d8d3509b5e Changes 'notes' fields to be textfield - not charfield 2018-04-18 01:16:30 +10:00
Oliver
d00f9f74e4 Added details page for SupplierOrder 2018-04-18 01:13:42 +10:00
Oliver
f4aa09a354 Added 'status' and 'delivery_date' fields to SupplierOrder 2018-04-18 00:50:05 +10:00
Oliver
7045443d7b Add tab view for supplier page
- "Parts" tab
- "Orders" tab
2018-04-18 00:42:44 +10:00
James Newlands
cd903112cc Merge branch 'master' of https://github.com/inventree/InvenTree
# Conflicts:
#	InvenTree/customer/templates/customer/order_index.html
2018-04-18 00:39:15 +10:00
James Newlands
5bb08053e0 Added table of orders and details for each order showing table of lines 2018-04-18 00:38:06 +10:00
Oliver
5769befb04 Add model for supplier order (PO)
- Added create page
- Added detail page
2018-04-18 00:22:25 +10:00
Oliver
192f823b1a PEP fixes (not all yet) 2018-04-18 00:03:42 +10:00
Oliver
3f33a921ae Renamed URLs for /customer/ 2018-04-17 23:56:25 +10:00
Oliver
8b1dbd4500 Merge remote-tracking branch 'origin/master' 2018-04-17 23:42:30 +10:00
Oliver
34d240c6e8 Moved top-level templates to a top-level dir
It just seems fitting is all
2018-04-17 23:42:25 +10:00
Oliver
8856d7f793 Renamed 'customer-order' app to 'customer'
- This app should manage more than just orders
- Moved the 'Customer' model into this app
2018-04-17 23:39:53 +10:00
James Newlands
6535126069 Fixed weird line break in string 2018-04-17 23:32:50 +10:00
James Newlands
e8f9b31f44 Merge branch 'customer_orders' 2018-04-17 23:28:34 +10:00
James Newlands
65ed493283 Admin readability 2018-04-17 23:27:06 +10:00
Oliver
53d7fd2c46 Removed Customer model from supplier app 2018-04-17 23:25:14 +10:00
Oliver
05cb2fe167 Moved "Customer" to CustomerOrders models 2018-04-17 23:24:19 +10:00
Oliver
b547f6b309 CustomerOrderLine quantity must be positive 2018-04-17 23:20:54 +10:00
Oliver
81afd3a47d Merge remote-tracking branch 'origin/customer_orders' 2018-04-17 23:18:08 +10:00
Oliver
291992ab7f Added views and pages for Build model
- Edit / create
- View details
- View build index at /build/
2018-04-17 23:13:41 +10:00
James Newlands
6434bfc24a Split table of customer orders into separate template from customer orders index page 2018-04-17 23:12:35 +10:00
James Newlands
121315f15e Add link to table of orders to nav bar 2018-04-17 23:10:06 +10:00
James Newlands
f2dc7380c2 Merge in some migrations from master 2018-04-17 23:07:55 +10:00
James Newlands
45a14b4350 Merge branch 'master' into customer_orders 2018-04-17 23:06:41 +10:00
James Newlands
bc04ca3727 First rough pass at adding customer orders model and some views/templates/admin stuff for same 2018-04-17 23:05:22 +10:00
Oliver
11b9fb10d8 Parts now know how many builds they are allocated to
- allocated_builds returns lists of active builds this part is allocated to
- allocated_build_count returns the total number of this part allocated to builds
- allocation_count returns total number of allocated parts (in the future this will also include those parts allocated to customer orders)
2018-04-17 22:26:57 +10:00
Oliver
0b40197cd2 Update 'Build'
- Part model now has active_builds and inactive_builds properties
-
2018-04-17 20:25:43 +10:00
Oliver
256f8eb924 Add 'batch' field to BuildOutput object
This 'batch' output will be copied to any parts produced as part of this build
2018-04-17 19:10:38 +10:00
Oliver
982803a0a7 Updated Part model
- Added 'default_location'
- Added 'default_supplier'
2018-04-17 18:23:39 +10:00
Oliver
45c5edee4d Added 'salable' field to Part model 2018-04-17 18:11:34 +10:00
Oliver
9dc41ba122 Fix requirements
>= rather than ==
2018-04-17 16:58:37 +10:00
Oliver
fa23767150 Added skeleton for 'build' app 2018-04-17 00:32:02 +10:00
Oliver
86b3092b5e Change action on deleting top-level stock location 2018-04-16 23:29:11 +10:00
Oliver
937470750b Added helper functions, improved UI 2018-04-16 23:26:02 +10:00
Oliver
a67d5b58db UI improvements 2018-04-16 23:09:45 +10:00
Oliver
b6b4189c49 UI tweaks 2018-04-16 22:23:29 +10:00
Oliver
118d045e50 Improved part logic
- Added field 'buildable' - can this part be made from other parts?
- Added @propery 'supplier_count'
- Improved part detail page with new features
2018-04-16 22:13:31 +10:00
Oliver
e43439ef5b Function to calculate how many parts can be made with current stock 2018-04-16 21:49:38 +10:00
Oliver
202a8e65b9 Added URL field to stock item 2018-04-16 21:07:57 +10:00
Oliver
9191d1ae21 PEP fixes 2018-04-16 20:46:21 +10:00
Oliver
09b357976d Admin for part tracking
- Added 'has_tracking_info' function for StockItem
2018-04-16 20:17:58 +10:00
Oliver
76ee150ca4 Moved tracking information to StockItem 2018-04-16 20:08:04 +10:00
Oliver
f7eff8ae98 Added URL field to UniquePart
- e.g. link to external part tracking info page
2018-04-16 01:25:13 +10:00
Oliver
a80cf0aace Added some missing data on supplier pages 2018-04-16 01:14:19 +10:00
Oliver
a91ff58d84 Flakey
Fixing python style errors
2018-04-16 01:02:17 +10:00
Oliver
1027e812bc Use django_import_export
- Allows import / export to multiple file formats
- Provides admin interface
- Work to be done to perform data tweaking
- It would be really cool if the data fields could be associated 'intelligently'
 (i.e. not just based on PK, but name-lookup too).
2018-04-16 00:44:32 +10:00
Oliver
8e6de1b832 Add pages for part tracking
- Edit / Delete / Create tracking info
- Improvements to many pages
2018-04-16 00:30:57 +10:00
Oliver
55b533d3ef Added edit views for stock
- StockItem
- StockLocation
2018-04-15 23:27:56 +10:00
Oliver
3c844fc77f Redirect some links 2018-04-15 21:47:20 +10:00
Oliver
5861296974 Add view for BomItem model
- Create BOM item (auto-add to a parent part)
- Edit / delete
- View details
2018-04-15 21:29:24 +10:00
Oliver
0632609a80 Remove weird line in Inventree/urls.py 2018-04-15 20:14:53 +10:00
Oliver
99bb51c76d Migrations 2018-04-15 20:11:27 +10:00
Oliver
9d89db34b2 Improvements to stock page
- Fixed URL / view (use class views)
- Better slug lookup
- Better table rendering using ol' mate bootstrap
2018-04-15 20:10:49 +10:00
Oliver
ab4b91cd46 Added pages for /supplier/
- Supplier list view
- Supplier detail view /supplier/<pk>/
- Added create / edit / delete views for supplier
- Supplier part detail at /supplier/part/<pk>
- Added create / edit / delete views for supplier part
- Added some templates to make things easier
2018-04-15 15:35:01 +10:00
Oliver
8232baeed7 Improved list and detail views for supplier
Huzzah for bootstrap
2018-04-15 13:49:47 +10:00
Oliver
9e6c7350f9 Skeleton for part tracking
- Added  list and detail view
- Fixed some links
2018-04-15 12:35:56 +10:00
Oliver
9f42085731 Add list page for tracking info
- Needs filtering (currently displays ALL unique parts)
2018-04-15 12:07:14 +10:00
Oliver
cb5e2f1a8c Danger button fix 2018-04-15 11:41:27 +10:00
Oliver
17b9f4ec8c Added pages for editing categories
- category-detail
- category-delete
- category-edit
- category-new
2018-04-15 11:40:03 +10:00
Oliver
5b5b8f4d12 Fix parent error when deleting category
- Any child categories have their parent set to the parent of the deleted category
2018-04-15 11:25:57 +10:00
Oliver
2c2db4fffb Added "new part" feature
- Create a new part
- Button provided on the "category" list page
2018-04-15 10:08:44 +10:00
Oliver
ff2082b156 Fixes for bootstrap
- Now using bootstrap3 which seems to work better
- Had to make changes to navbar and part image preview
2018-04-15 09:38:59 +10:00
Oliver
54e78bf468 Ability to delete part
- Provides confirmation form
- Shows the flow-on effects (model.CASCADE) from deleting this part
- Bootstrap makes it prettyful
2018-04-15 09:08:35 +10:00
Oliver
21e3f415c6 Added ability to edit parts
- installed django_crispy_forms
- added EditPartForm in part/forms.py
- Vastly simplified parts views by using class views 
  (need to do this for the other apps too!)
2018-04-15 01:18:12 +10:00
Oliver
8578c8a1a7 Updated breadcrumbs to use bootstrap 2018-04-14 23:42:24 +10:00
Oliver
204874dcb4 Changed some category views to use boostrap list-group
- Looks much fancier!
2018-04-14 23:05:36 +10:00
Oliver
0e2c5e6af5 Add tabs to part detail view
- Currently each "tab" reloads the entire page but with the new tab selected
- We could use bootstrap js to do this without reloading (load ALL part data)
2018-04-14 22:10:19 +10:00
Oliver
830d33763e Fix deletion of part category and stock location
- Category up part updated to parent
- Location of item updated to parent
2018-04-14 20:33:53 +10:00
Oliver
0550dad2d4 Added ability to attach file(s) to a part object
- Not yet fully working!
2018-04-14 18:44:56 +10:00
Oliver
226828791f Added migration files to git index 2018-04-14 18:36:06 +10:00
Oliver
a31ec388f4 Added static files directory
- Improved display of part image
2018-04-14 18:22:31 +10:00
Oliver
72b44e15f4 Added image field to part
- Images are automatically renamed upon upload
- Part page displays img
2018-04-14 17:44:22 +10:00
Oliver
bc7e29aeb4 Update navbar with category links
- Part
- Stock
- Supplier
2018-04-14 16:32:41 +10:00
Oliver
6a98846a8f Added supplier web interface
- Display list of suppliers
- Supplier detail page
- Supplier part detail page
- Part detail now includes list of supplier parts
2018-04-14 16:26:26 +10:00
Oliver
ce854e3119 Add 'detail' view for stock item 2018-04-14 15:26:42 +10:00
Oliver
89ee09b01f Implemented bidirectional traversal for PART and STOCK apps
- Added list view for StockItems
2018-04-14 15:13:16 +10:00
Oliver
e30a089c76 Move BomItem into the Part app
- Does not make sense to keep these separate
- Removed bom app entirely
2018-04-14 14:19:03 +10:00
Oliver
1da6df0c5e Separate API views into api.py
- Web views are still in views.py
- Files were getting too cluttered and hard to grok
2018-04-14 14:11:46 +10:00
Oliver
63f7fe640c Added 'part tracking' page
- e.g. /part/<pk>/track
2018-04-14 00:46:18 +10:00
Oliver
eec725d90f A good start on web interface
- Added details for "part" app
- Added BOM page for each part
- Added Stock page for each part
- Bootstrap! CSS!
2018-04-14 00:08:30 +10:00
Oliver
bd46f66d6b Begin to add views for part models
- List BOM items
- Show category listing as linked items
- Fix some pathing issues with InvenTreeTree class
2018-04-13 22:36:59 +10:00
Oliver
77fe0dc542 Remove requirement for unique IPN
- Blank IPN values did not count as 'unique'
2018-04-12 19:14:07 +10:00
Oliver
ed61ebe5b7 Starting to implement BOM management
- Each part can be made of other parts
- Disable tracking and project apps for now
- Project will change (eventually) to work order
- Part parameters have been disabled (for now)
2018-04-12 16:27:26 +10:00
Oliver Walters
7478371d0c Added stockhistory
using django-simple-history
2017-04-21 23:47:04 +10:00
Oliver Walters
76b086aab8 Style fixes 2017-04-20 22:53:28 +10:00
Oliver Walters
db45e3625f Category validation errors 2017-04-20 22:45:18 +10:00
Oliver Walters
4777b02080 Added User API and serializer 2017-04-20 22:40:59 +10:00
Oliver Walters
92cbd43f0f Code cleanup 2017-04-20 22:20:41 +10:00
Oliver Walters
41485e0e0f Style fix 2017-04-20 22:10:13 +10:00
Oliver Walters
2c28ef6b3c Added update endpoints for StockItem
- Stocktake
- Take-Stock
2017-04-20 22:08:27 +10:00
Oliver Walters
7efb4c21d3 Added ProjectRun API 2017-04-16 17:50:28 +10:00
Oliver Walters
6c7f5fdaf3 Added MinValue validator(s) 2017-04-16 17:05:02 +10:00
Oliver Walters
057fd1dd20 Filtering improvements 2017-04-16 14:24:15 +10:00
Oliver Walters
883efd0945 Removed 'pending' tag 2017-04-16 14:11:20 +10:00
Oliver Walters
a65f85df87 Added StockTracking model 2017-04-16 01:43:30 +10:00
Oliver Walters
d0a66390f5 db unique_together 2017-04-16 01:24:00 +10:00
Oliver Walters
4f6802b9bf Part model updates 2017-04-16 01:11:04 +10:00
Oliver Walters
d3781427ad Part parameter fixes 2017-04-16 01:08:43 +10:00
Oliver Walters
7e1fbf8a04 Style fixes 2017-04-16 01:01:48 +10:00
Oliver Walters
2e133b7744 Start of exception handler 2017-04-16 00:58:40 +10:00
Oliver Walters
a139a00843 Updated track API 2017-04-16 00:13:22 +10:00
Oliver Walters
d75ed57d48 Updated Supplier URLs and API docs 2017-04-15 23:34:01 +10:00
Oliver Walters
e8dc592ec7 Fixed Project URLs and API docs 2017-04-15 23:21:45 +10:00
Oliver Walters
a20987f122 Added part filters 2017-04-15 23:14:16 +10:00
Oliver Walters
4259c6f9eb Fixed stock URLs and API docs 2017-04-15 23:14:10 +10:00
Oliver Walters
71d7895148 Improved Part API docs 2017-04-15 23:04:09 +10:00
Oliver Walters
7d7579d3d6 Style fixes 2017-04-15 00:55:30 +10:00
Oliver Walters
bf1c7125a4 Added API documentation 2017-04-15 00:15:38 +10:00
Oliver Walters
f7107008f0 Part API now hyperlinked 2017-04-15 00:10:35 +10:00
Oliver Walters
9e287d85d8 Project API is hyperlinked 2017-04-15 00:00:55 +10:00
Oliver Walters
a1db0c90e4 Tracking API is hyperlinked 2017-04-14 23:53:27 +10:00
Oliver Walters
7c5261bc4a Stock API now hyperlinkd 2017-04-14 23:44:24 +10:00
Oliver Walters
e641a913f2 Supplier API now hyperlinked 2017-04-14 23:29:58 +10:00
Oliver Walters
f85489bc0e Supplier API is hyperlinked 2017-04-14 22:44:20 +10:00
Oliver Walters
41eb427c02 Fix for FilterChildren function 2017-04-14 22:05:29 +10:00
Oliver Walters
2c628c8ab4 Prepend /api/ to API URL 2017-04-14 21:59:52 +10:00
Oliver Walters
858a7fe089 Tweaking URL patterns 2017-04-14 21:44:01 +10:00
Oliver Walters
e5f6de5d2b Style fixes 2017-04-14 16:12:54 +10:00
Oliver Walters
5b49cff09a Prevent duplication of unique parts 2017-04-14 16:09:05 +10:00
Oliver Walters
6f31e3447c Added /track/ API 2017-04-14 15:49:10 +10:00
Oliver Walters
37808f3834 Simplified PART and PROJECT APIs 2017-04-14 15:25:10 +10:00
Oliver Walters
fe52610fcc Style fixes 2017-04-14 15:16:57 +10:00
Oliver Walters
9064b23cd8 Added 404 2017-04-14 15:16:16 +10:00
Oliver Walters
e8ec11e3cc Added supplier API 2017-04-14 14:45:17 +10:00
Oliver Walters
f80918554d Removed old templates 2017-04-14 14:13:00 +10:00
Oliver Walters
f21a05dfa3 Style fixes 2017-04-14 13:31:07 +10:00
Oliver Walters
15d27cafec Further API improvements 2017-04-14 13:29:24 +10:00
Oliver Walters
22ac5f4f79 Improved FilterChildren function 2017-04-14 13:28:37 +10:00
Oliver Walters
7fe1c21ebd Updated Part API
- categories can now be filtered by parent
- Added FilterChildren func to invenTree.models
2017-04-14 13:09:24 +10:00
Oliver Walters
c4b7b80e1a Added stock permissison 2017-04-14 12:58:43 +10:00
Oliver Walters
0441eb4c38 API improvements for Stock app 2017-04-14 12:54:34 +10:00
Oliver Walters
2299cd0700 Further API improvements 2017-04-14 12:14:50 +10:00
Oliver Walters
6f9bf45e22 Added django_filter app 2017-04-14 12:11:42 +10:00
Oliver Walters
39a6bcdf3e Improved Part API 2017-04-14 11:46:18 +10:00
Oliver Walters
817a67cd41 Fix for project API
If project is not specified in URL, take value from JSON
2017-04-14 11:46:05 +10:00
Oliver Walters
b13f135d8e Project API improvements
- Added DetailView for ProjectPart
- Improved URL structure
2017-04-14 11:16:49 +10:00
Oliver Walters
04524d38ab Prevent duplicate ProjectParts 2017-04-14 10:54:18 +10:00
Oliver Walters
7acae4ea47 ProjectPart API fix
When a new ProjectPart is added, the Project link is automatically set
2017-04-14 10:54:07 +10:00
Oliver Walters
56ba30eb52 Added ability to delete project 2017-04-14 09:29:58 +10:00
Oliver Walters
2f3e29ab13 more api fixes 2017-04-14 08:52:25 +10:00
Oliver Walters
e0f86db664 Fixed unused import 2017-04-13 00:31:54 +10:00
Oliver Walters
f7ba84495b Fix for stock serializer 2017-04-13 00:31:03 +10:00
Oliver Walters
8ab1e4a3da Improve API for Project app 2017-04-13 00:29:59 +10:00
Oliver Walters
0772b8d780 Major improvements to Parts API
- Requires authentication (or read only)
- Separated URL patterns
- Better use of generics
- Can add/edit parts and part categories
2017-04-13 00:27:29 +10:00
Oliver Walters
48f9914a49 Added API authentication 2017-04-13 00:24:10 +10:00
Oliver
eb4ef9de98 Fixed import that was not used 2017-04-11 23:50:25 +10:00
Oliver
5853a5767c Fix for part category API 2017-04-11 23:36:01 +10:00
Oliver
4c07e8d8a0 Updated part API 2017-04-11 23:33:08 +10:00
Oliver
08fc21eb9b Added ability to mark project part as "output" (generated BY project) 2017-04-11 23:22:05 +10:00
Oliver
4a74cd2199 style errors 2017-04-11 23:15:17 +10:00
Oliver
0ca8a75166 Added projects API 2017-04-11 23:12:07 +10:00
Oliver
3704ad34dc Updated part API 2017-04-11 23:07:02 +10:00
Oliver
15582369d2 API for stock app 2017-04-11 18:58:44 +10:00
Oliver
338dcd3b72 Fixing python errors 2017-04-11 17:21:05 +10:00
Oliver
1cddec1035 - Fixes for getUniqueChildren
- Flattened API structure
2017-04-11 09:58:45 +10:00
Oliver
91d3aecd9d Merge remote-tracking branch 'inventree/master' 2017-04-11 09:41:49 +10:00
Oliver
e06121ebda Updated API URLs 2017-04-11 09:41:03 +10:00
zakx
428015ecf5 Adding reminder to remove pre-generated SECRET_KEY
Later on, we'll need environment-based default configs anyway,
so this will probably be done together.
2017-04-10 22:56:09 +02:00
Oliver Walters
9a9a039fc9 Documentation for part fields 2017-04-01 13:31:48 +11:00
Oliver Walters
0151eb18da Improvements for unique part 2017-03-30 08:52:54 +11:00
Oliver Walters
1a8944519a Added extra fields to supplierpart 2017-03-30 08:48:52 +11:00
Oliver Walters
4046c6f0bf Added gitattributes file 2017-03-29 23:45:27 +11:00
Oliver Walters
6e0a02a885 Added extra fields to stock item 2017-03-29 23:36:06 +11:00
Oliver Walters
9db1f99e26 updated supplier model 2017-03-29 23:32:21 +11:00
Oliver Walters
d0489d692a PEP fixes 2017-03-29 23:21:54 +11:00
Oliver Walters
8ba4ea344e updates 2017-03-29 23:19:53 +11:00
Oliver Walters
b2eca2aa48 Added ETA for part stock 2017-03-29 22:55:36 +11:00
Oliver Walters
2355adb044 Added lead-time for supplier part 2017-03-29 22:55:16 +11:00
Oliver Walters
591ae5dc5c Single price field for supplier part 2017-03-29 22:47:17 +11:00
Oliver Walters
aafa8781d7 Added "ProjectRun" model 2017-03-29 22:44:59 +11:00
Oliver Walters
2b998a1931 Added function to get all parents for a tree item 2017-03-29 20:23:21 +11:00
Oliver Walters
68ae1110ad Updates
- Improved some models
- Added PEP check script
2017-03-29 08:37:41 +11:00
Oliver Walters
4fafe93d9c Updated part parameter 2017-03-29 15:45:50 +11:00
Oliver Walters
4dc0179484 Fixed PEP issues 2017-03-29 15:12:14 +11:00
Oliver Walters
11b790c3ec Added Part Templates 2017-03-29 15:02:59 +11:00
Oliver Walters
8b9002fa68 oops 2017-03-29 00:28:39 +11:00
Oliver Walters
ecab28de2c Added 'manufacturer' model 2017-03-29 00:23:51 +11:00
Oliver Walters
f14ae18080 - moved database
- added django db test
2017-03-28 23:59:57 +11:00
Oliver Walters
4912d5507b peppercord 2017-03-28 23:46:17 +11:00
Oliver Walters
1a875811b7 not a pep 2017-03-28 23:44:32 +11:00
Oliver Walters
433dc7b3e3 Pep goes the weasel 2017-03-28 23:41:05 +11:00
Oliver Walters
7ce5a9a7e5 Papa Pep 2017-03-28 23:38:12 +11:00
Oliver Walters
b5dc22f33a peppa pig 2017-03-28 23:31:41 +11:00
Oliver Walters
14f60e1292 Pepsi 2017-03-28 23:29:00 +11:00
Oliver Walters
c111aaf9b2 peps 2017-03-28 23:25:38 +11:00
Oliver Walters
a5009147c3 pepe is a racist meme 2017-03-28 23:21:26 +11:00
Oliver Walters
9aebdab1c2 pepper 2017-03-28 23:17:56 +11:00
Oliver Walters
18c39e7680 added newline 2017-03-28 23:16:47 +11:00
Oliver Walters
a793b344e8 PEP test 2017-03-28 23:14:36 +11:00
Oliver Walters
8781b572c0 bug fix for part serializer 2017-03-28 23:10:43 +11:00
Oliver Walters
09cb067627 PEP fixes 2017-03-28 23:09:51 +11:00
Oliver Walters
f3fbd8dc14 Renamed Company 2017-03-28 23:00:40 +11:00
Oliver Walters
7eb00e8d47 More model updates 2017-03-28 22:45:43 +11:00
Oliver Walters
deda73a50f Added stock status field 2017-03-28 22:27:46 +11:00
Oliver Walters
7bcea2f3ac Added REST framework
- /part/ URL is now a JSON api
2017-03-28 22:12:02 +11:00
Oliver Walters
5c8cc035a4 Started work on cross-referencing
- part admin now shows total quantity in stock
- part model can return a list of projects it is associated with
2017-03-28 21:24:00 +11:00
Oliver Walters
be030991a5 Added PartRevision model
- Added 'trackable' field to Part
2017-03-28 18:17:32 +11:00
Oliver Walters
6aa9f14b46 Fixed part display bug 2017-03-28 18:03:55 +11:00
Oliver Walters
155151e98b More admin updates 2017-03-28 17:59:28 +11:00
Oliver Walters
a082eb2c81 Improved project admin 2017-03-28 17:53:54 +11:00
Oliver Walters
492c651324 Improved admin view for part 2017-03-28 17:49:01 +11:00
Oliver Walters
5420f83114 Added Project category 2017-03-27 23:33:13 +11:00
Oliver Walters
8229f02db6 BugFix and docs for InvenTreeTree 2017-03-27 23:08:03 +11:00
Oliver Walters
f17e9de37b Added 'track' app
- Keeping track of UniquePart objects
2017-03-27 22:32:34 +11:00
Oliver Walters
af679a1ac6 Added some docstrings 2017-03-27 22:21:19 +11:00
Oliver Walters
abe0bbf2e4 Simple supplier template 2017-03-27 22:05:35 +11:00
Oliver Walters
ffcd56d5ba Removed debug output 2017-03-27 21:55:34 +11:00
Oliver Walters
8e3672f3a1 Supplier app
- Supplier
- SupplierPart
- SupplierPartBreak
2017-03-27 21:54:21 +11:00
Oliver Walters
726e8dce48 Changed admin title 2017-03-27 21:14:35 +11:00
Oliver Walters
e98c20048b Added stock page 2017-03-27 21:05:19 +11:00
Oliver Walters
cc7593b44f Tree parent filtering
- Prevents recursion
2017-03-27 21:03:46 +11:00
Oliver Walters
514bd7a6bc Fixed recursion issues
Added InvenTreeTree base class
2017-03-27 09:05:54 +11:00
Oliver Walters
b919418fb5 Added a categorylist page
Displays list of all top-level part categories
2017-03-26 10:45:38 +11:00
Oliver Walters
3f81046a26 Added links to child categories 2017-03-26 10:23:22 +11:00
Oliver Walters
ef8cfa794f Added category link for part view 2017-03-26 10:14:38 +11:00
Oliver Walters
ddd927c436 Added views for part and part category
- Worked out simple linking
- Category path displaying correctly
- Category page lists parts in category
2017-03-26 10:06:00 +11:00
Oliver Walters
ffb9132de2 Added "Part"
- Has IPN (internal part number)
- Linked to a PartCategory
2017-03-25 23:19:49 +11:00
Oliver Walters
bb4fc9820f Added PartCategory
- Parent can be null (top-level category)
- Parent can be other PartCategory
2017-03-25 23:07:43 +11:00
Oliver Walters
2863ea1b70 Initial app commit 2017-03-25 22:51:13 +11:00