diff --git a/docs/assets/images/stock/build_expired_stock.png b/docs/assets/images/stock/build_expired_stock.png new file mode 100644 index 0000000..6358877 Binary files /dev/null and b/docs/assets/images/stock/build_expired_stock.png differ diff --git a/docs/assets/images/stock/enable_stock_expiry.png b/docs/assets/images/stock/enable_stock_expiry.png new file mode 100644 index 0000000..36e1457 Binary files /dev/null and b/docs/assets/images/stock/enable_stock_expiry.png differ diff --git a/docs/assets/images/stock/expiry_date_create.png b/docs/assets/images/stock/expiry_date_create.png new file mode 100644 index 0000000..fa781ce Binary files /dev/null and b/docs/assets/images/stock/expiry_date_create.png differ diff --git a/docs/assets/images/stock/expiry_date_edit.png b/docs/assets/images/stock/expiry_date_edit.png new file mode 100644 index 0000000..c994db7 Binary files /dev/null and b/docs/assets/images/stock/expiry_date_edit.png differ diff --git a/docs/assets/images/stock/item_expired.png b/docs/assets/images/stock/item_expired.png new file mode 100644 index 0000000..09391b4 Binary files /dev/null and b/docs/assets/images/stock/item_expired.png differ diff --git a/docs/assets/images/stock/part_expiry.png b/docs/assets/images/stock/part_expiry.png new file mode 100644 index 0000000..1b6e144 Binary files /dev/null and b/docs/assets/images/stock/part_expiry.png differ diff --git a/docs/assets/images/stock/part_expiry_display.png b/docs/assets/images/stock/part_expiry_display.png new file mode 100644 index 0000000..cf5a294 Binary files /dev/null and b/docs/assets/images/stock/part_expiry_display.png differ diff --git a/docs/assets/images/stock/sell_expired_stock.png b/docs/assets/images/stock/sell_expired_stock.png new file mode 100644 index 0000000..11527ca Binary files /dev/null and b/docs/assets/images/stock/sell_expired_stock.png differ diff --git a/docs/assets/images/stock/stock_table_expiry.png b/docs/assets/images/stock/stock_table_expiry.png new file mode 100644 index 0000000..b21fc80 Binary files /dev/null and b/docs/assets/images/stock/stock_table_expiry.png differ diff --git a/docs/releases/0.1.5.md b/docs/releases/0.1.5.md index 47f0e2e..7df615f 100644 --- a/docs/releases/0.1.5.md +++ b/docs/releases/0.1.5.md @@ -21,6 +21,10 @@ Refer to the [build documentation](../../build/build/#overdue-builds) for more i [#1177](https://github.com/inventree/InvenTree/pull/1177) introduces the concept of *Target Date* for a Sales Order. This is the intended shipment date for the order. If the date is reached but the order is not yet complete, the order is considered *overdue*. +### Stock Item Expiry + +[#1202](https://github.com/inventree/InvenTree/pull/1202) introduces the concept of an *Expiry Date* for Stock Items. For further information, refer to the [expiry documentation](../../stock/expiry). + ## Major Bug Fixes | PR | Description | diff --git a/docs/stock/expiry.md b/docs/stock/expiry.md new file mode 100644 index 0000000..69a8611 --- /dev/null +++ b/docs/stock/expiry.md @@ -0,0 +1,85 @@ +--- +title: Stock Expiry +--- + +## Stock Expiry + +InvenTree supports stock expiration dates, which allows individual stock items to be automatically marked as *expired* past a certain calendar date. + +The stock expiry feature is disabled by default, and must be enabled via the settings menu: + +{% with id="stock_expiry", url="stock/enable_stock_expiry.png", description="Enable stock expiry feature" %} +{% include 'img.html' %} +{% endwith %} + +!!! info "Non Expiring Stock" + If a Stock Item is not expected to expire, + +### Add Expiry Date + +When creating a new stock item, the expiry date can be manually set by the user. + +{% with id="expiry_create", url="stock/expiry_date_create.png", description="Add expiry date" %} +{% include 'img.html' %} +{% endwith %} + +If an expiry date is defined for a particular stock item, it will be displayed on the detail page. If the expiry date has passed (and the stock item is *expired*) then this will also be indicated. + +{% with id="item_expired", url="stock/item_expired.png", description="Display expiry date" %} +{% include 'img.html' %} +{% endwith %} + +The expiry date can be adjusted in the stock item edit form. + +{% with id="expiry_edit", url="stock/expiry_date_edit.png", description="Edit expiry date" %} +{% include 'img.html' %} +{% endwith %} + +### Filter Expired Stock + +The various stock display tables can be filtered by *expired* status, and also display a column for the expiry date for each stock item. + +{% with id="stock_table_expiry", url="stock/stock_table_expiry.png", description="Filter by stock expiry" %} +{% include 'img.html' %} +{% endwith %} + +### Index Page + +If the stock expiry feature is enabled, expired stock are listed on the InvenTree home page, to provide visibility of expired stock to the users. + +## Part Expiry Time + +In addition to allowing manual configuration of expiry dates on a per-item basis, InvenTree also provides the ability to set a "default expiry time" for a particular Part. This expiry time (specified in *days*) is then used to automatically calculate the expiry date when creating a new Stock Item as an instance of the given Part. + +For example, if a Part has a default expiry time of 30 days, then any Stock Items created for that Part will automatically have their expiry date set to 30 days in the future. + +!!! info "Non Expiring Parts" + If a part is not expected to expire, set the default expiry time to 0 (zero) days. + +If a Part has a non-zero default expiry time, it will be displayed on the Part details page + +{% with id="part_expiry_display", url="stock/part_expiry_display.png", description="Part expiry" %} +{% include 'img.html' %} +{% endwith %} + +The Part expiry time can be altered using the Part editing form. + +{% with id="part_expiry_edit", url="stock/part_expiry.png", description="Edit part expiry" %} +{% include 'img.html' %} +{% endwith %} + +## Sales Orders + +By default, expired Stock Items cannot be added to a Sales Order. This behavior can be adjusted using the *Sell Expired Stock* setting. + +{% with id="sell_expired", url="stock/sell_expired_stock.png", description="Sell expired stock" %} +{% include 'img.html' %} +{% endwith %} + +## Build Orders + +By default, expires Stock Items cannot be added to a Build Order. This behaviour can be adjusted using the *Build Expired Stock* setting. + +{% with id="build_expired", url="stock/build_expired_stock.png", description="Build expired stock" %} +{% include 'img.html' %} +{% endwith %} \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index 938212e..45a9422 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -57,6 +57,7 @@ nav: - Stock Items: stock/stock.md - Adjusting Stock: stock/adjust.md - Stocktake: stock/stocktake.md + - Stock Expiry: stock/expiry.md - Test Results: stock/test.md - Build: - Build Parts: build/build.md