2
0
mirror of https://github.com/inventree/inventree-app.git synced 2025-04-28 05:26:47 +00:00

Barcode updates (#211)

* Adds API function for unlinking a barcode

* Show barcode unlink result

* Update release notes and version number
This commit is contained in:
Oliver 2022-09-15 14:22:40 +10:00 committed by GitHub
parent 87c8a21c3c
commit 6d796a2e32
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 56 additions and 16 deletions

View File

@ -5,6 +5,7 @@
--- ---
- Display list of assemblies which components are used in - Display list of assemblies which components are used in
- Fixes search input bug
### 0.8.2 - August 2022 ### 0.8.2 - August 2022
--- ---

View File

@ -877,6 +877,27 @@ class InvenTreeAPI {
); );
} }
/*
* Perform a request to unlink a custom barcode from a particular item
*/
Future<bool> unlinkBarcode(Map<String, dynamic> body) async {
HttpClientRequest? request = await apiRequest("/barcode/unlink/", "POST");
if (request == null) {
return false;
}
final response = await completeRequest(
request,
data: json.encode(body),
statusCode: 200,
);
return response.isValid() && response.statusCode == 200;
}
HttpClient createClient(String url, {bool strictHttps = false}) { HttpClient createClient(String url, {bool strictHttps = false}) {
var client = HttpClient(); var client = HttpClient();

View File

@ -417,25 +417,43 @@ class _StockItemDisplayState extends RefreshableState<StockDetailWidget> {
} }
/*
* Unassign (remove) a barcode from a StockItem.
*
* Note that for API version < 76 this action is performed on the StockItem endpoint.
* For API version 76 or above, this uses the barcode "unlink" endpoint
*/
Future<void> _unassignBarcode(BuildContext context) async { Future<void> _unassignBarcode(BuildContext context) async {
final response = await item.update(values: {"uid": ""}); if (InvenTreeAPI().apiVersion < 76) {
final response = await item.update(values: {"uid": ""});
switch (response.statusCode) { switch (response.statusCode) {
case 200: case 200:
case 201: case 201:
showSnackIcon( showSnackIcon(
L10().stockItemUpdateSuccess, L10().stockItemUpdateSuccess,
success: true success: true
); );
break; break;
default: default:
showSnackIcon( showSnackIcon(
L10().stockItemUpdateFailure, L10().stockItemUpdateFailure,
success: false, success: false,
); );
break; break;
}
} else {
final bool result = await InvenTreeAPI().unlinkBarcode({
"stockitem": item.pk,
});
showSnackIcon(
result ? L10().stockItemUpdateSuccess : L10().stockItemUpdateFailure,
success: result,
);
} }
refresh(context); refresh(context);
} }

View File

@ -1,7 +1,7 @@
name: inventree name: inventree
description: InvenTree stock management description: InvenTree stock management
version: 0.8.2+48 version: 0.8.3+49
environment: environment:
sdk: ">=2.16.0 <3.0.0" sdk: ">=2.16.0 <3.0.0"