2
0
mirror of https://github.com/inventree/inventree-app.git synced 2025-06-16 20:25:26 +00:00

New barcode actions (#218)

* Bump release notes

* Adds method for linking custom barcodes

* Custom getter method for determining if an item has barcode data

* Add method to check if the API supports "modern" barcodes

* Refactor custom barcode implementation for StockItem

- Needs testing

* Unit testing for linking and unlinking barcodes

* Fixes

* Refactor code for "custom barcode action" tile

* Add custom barcode action to StockLocation

* Add extra debug to debug the debugging

* Unit test fix

* Change scope I guess?

* remove handler test
This commit is contained in:
Oliver
2022-12-05 23:39:40 +11:00
committed by GitHub
parent efb6fc353e
commit 730521fd00
11 changed files with 162 additions and 134 deletions

View File

@ -148,6 +148,23 @@ class InvenTreeModel {
// Legacy API provided external link as "URL", while newer API uses "link"
String get link => (jsondata["link"] ?? jsondata["URL"] ?? "") as String;
/* Extract any custom barcode data available for the model.
* Note that old API used 'uid' (only for StockItem),
* but this was updated to use 'barcode_hash'
*/
String get customBarcode {
if (jsondata.containsKey("uid")) {
return jsondata["uid"] as String;
} else if (jsondata.containsKey("barcode_hash")) {
return jsondata["barcode_hash"] as String;
} else if (jsondata.containsKey("barcode")) {
return jsondata["barcode"] as String;
}
// Empty string if no match
return "";
}
Future <void> goToInvenTreePage() async {
if (await canLaunch(webUrl)) {

View File

@ -276,8 +276,6 @@ class InvenTreeStockItem extends InvenTreeModel {
});
}
String get uid => (jsondata["uid"] ?? "") as String;
int get status => (jsondata["status"] ?? -1) as int;
String get packaging => (jsondata["packaging"] ?? "") as String;