mirror of
https://github.com/inventree/inventree-app.git
synced 2025-04-28 13:36:50 +00:00
Error fixes / catches
- Barcode scan returns invalid response - model.reload() returns invalid response - model.create() returns invalid response - model.get() returns invalid response
This commit is contained in:
parent
ca73ff0d35
commit
ca35f44dc8
@ -1,4 +1,5 @@
|
||||
import 'package:inventree/app_settings.dart';
|
||||
import 'package:inventree/inventree/sentry.dart';
|
||||
import 'package:inventree/widget/dialogs.dart';
|
||||
import 'package:inventree/widget/snacks.dart';
|
||||
import 'package:audioplayers/audioplayers.dart';
|
||||
@ -98,18 +99,28 @@ class BarcodeHandler {
|
||||
expectedStatusCode: 200
|
||||
);
|
||||
|
||||
if (!response.isValid()) {
|
||||
return;
|
||||
}
|
||||
_controller?.resumeCamera();
|
||||
|
||||
if (response.data.containsKey('error')) {
|
||||
_controller?.resumeCamera();
|
||||
// Handle strange response from the server
|
||||
if (!response.isValid() || response.data == null || !(response.data is Map)) {
|
||||
onBarcodeUnknown(context, {});
|
||||
|
||||
// We want to know about this one!
|
||||
await sentryReportMessage(
|
||||
"BarcodeHandler.processBarcode returned strange value",
|
||||
context: {
|
||||
"data": response.data?.toString() ?? "null",
|
||||
"barcode": barcode,
|
||||
"url": url,
|
||||
"statusCode": response.statusCode.toString(),
|
||||
"valid": response.isValid().toString(),
|
||||
}
|
||||
);
|
||||
} else if (response.data.containsKey('error')) {
|
||||
onBarcodeUnknown(context, response.data);
|
||||
} else if (response.data.containsKey('success')) {
|
||||
_controller?.resumeCamera();
|
||||
onBarcodeMatched(context, response.data);
|
||||
} else {
|
||||
_controller?.resumeCamera();
|
||||
onBarcodeUnhandled(context, response.data);
|
||||
}
|
||||
}
|
||||
|
@ -2,6 +2,7 @@ import 'dart:async';
|
||||
|
||||
import 'package:inventree/api.dart';
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:inventree/inventree/sentry.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
|
||||
import 'package:path/path.dart' as path;
|
||||
@ -148,8 +149,21 @@ class InvenTreeModel {
|
||||
|
||||
var response = await api.get(url, params: defaultGetFilters(), expectedStatusCode: 200);
|
||||
|
||||
if (!response.isValid()) {
|
||||
if (!response.isValid() || response.data == null || !(response.data is Map)) {
|
||||
|
||||
// Report error
|
||||
await sentryReportMessage(
|
||||
"InvenTreeModel.reload() returned invalid response",
|
||||
context: {
|
||||
"url": url,
|
||||
"statusCode": response.statusCode.toString(),
|
||||
"data": response.data?.toString() ?? "null",
|
||||
"valid": response.isValid().toString(),
|
||||
}
|
||||
);
|
||||
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
jsondata = response.data;
|
||||
@ -200,8 +214,20 @@ class InvenTreeModel {
|
||||
|
||||
var response = await api.get(url, params: params);
|
||||
|
||||
if (!response.isValid()) {
|
||||
if (!response.isValid() || response.data == null || !(response.data is Map)) {
|
||||
|
||||
await sentryReportMessage(
|
||||
"InvenTreeModel.get() returned invalid response",
|
||||
context: {
|
||||
"url": url,
|
||||
"statusCode": response.statusCode.toString(),
|
||||
"data": response.data?.toString() ?? "null",
|
||||
"valid": response.isValid().toString()
|
||||
}
|
||||
);
|
||||
|
||||
return null;
|
||||
|
||||
}
|
||||
|
||||
return createFromJson(response.data);
|
||||
@ -222,7 +248,18 @@ class InvenTreeModel {
|
||||
var response = await api.post(URL, body: data);
|
||||
|
||||
// Invalid response returned from server
|
||||
if (!response.isValid()) {
|
||||
if (!response.isValid() || response.data == null || !(response.data is Map)) {
|
||||
|
||||
await sentryReportMessage(
|
||||
"InvenTreeModel.create() returned invalid response",
|
||||
context: {
|
||||
"url": url,
|
||||
"statusCode": response.statusCode.toString(),
|
||||
"data": response.data?.toString() ?? "null",
|
||||
"valid": response.isValid().toString(),
|
||||
}
|
||||
);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user