This commit is contained in:
erfan hayat'bakhsh
2020-08-01 14:16:20 +04:30
parent 30f10dca2e
commit e4d29c4e3c
71 changed files with 5018 additions and 2319 deletions
+52 -24
View File
@@ -6,16 +6,21 @@ import 'package:cssd/config/urls.dart';
import 'package:cssd/config/user.dart';
class Inputs with ChangeNotifier {
List<Map<String, dynamic>> inputItems = [];
Future<bool> getInputs({String testResultId = "", String name = "", String uniqueCode = "", String testTypeId = ""}) async {
print({
'test_type_id': testTypeId,
'test_result_id': testResultId,
'name': name,
'unique_code': uniqueCode,
},);
Future<bool> getInputs(
{String testResultId = "",
String name = "",
String uniqueCode = "",
String testTypeId = ""}) async {
print(
{
'test_type_id': testTypeId,
'test_result_id': testResultId,
'name': name,
'unique_code': uniqueCode,
},
);
var response = await http.post(
Url.getInputs,
body: {
@@ -35,15 +40,13 @@ class Inputs with ChangeNotifier {
return false;
}
final responseData = json.decode(response.body);
// print(responseData);
Map<String, dynamic> values;
if (testResultId.isNotEmpty) {
response = await http.get(Url.testResultFormValues(testResultId),
headers: {
'Authorization': User.token
});
headers: {'Authorization': User.token});
values = json.decode(response.body)['data'];
}
@@ -56,20 +59,41 @@ class Inputs with ChangeNotifier {
String deviceLabel;
if (values != null && values.isNotEmpty) {
result = values['result'] == 'Accept' ? true : false;
dateTime = values['date'] == null ? DateTime.now() : DateTime.parse(values['date']);
dateTime = values['date'] == null
? DateTime.now()
: DateTime.parse(values['date']);
deviceLabel = values['device_id'] ?? '';
}
inputItems.add({'type': 'Label', 'key': 'test_type_id', 'name': general['name'], 'value': general['id']});
inputItems.add({
'type': 'Label',
'key': 'test_type_id',
'name': general['name'],
'value': general['id']
});
inputItems.add({
'type': 'Text',
'key': 'device_id',
'name': general['device_label'],
'value': deviceLabel
});
inputItems.add(
{'type': 'Date', 'key': 'date', 'name': 'date', 'value': dateTime});
inputItems.add(
{'type': 'Switch', 'key': 'result', 'name': 'Result', 'value': result});
inputItems.add({'type': 'Text', 'key': 'device_id', 'name': general['device_label'], 'value': deviceLabel});
inputItems.add({'type': 'Date', 'key': 'date' , 'name': 'date', 'value': dateTime});
inputItems.add({'type': 'Switch', 'key': 'result', 'name': 'Result', 'value': result});
setValues(inputs, values);
for (var input in inputs) {
inputItems.add(input as Map<String, dynamic>);
}
inputItems.add({
'type': 'Image',
'key': 'test_type_id',
'name': general['name'],
'value': general['id']
});
notifyListeners();
return true;
}
@@ -81,13 +105,17 @@ class Inputs with ChangeNotifier {
}
var key = "${input['name']}_${input['id']}";
input['key'] = key;
if(values != null && values.isNotEmpty && values.containsKey(key)) {
if (input['type'] == 'Range' || input['type'] == 'Temperature' || input['type'] == 'Pressure') {
if (values != null && values.isNotEmpty && values.containsKey(key)) {
if (input['type'] == 'Range' ||
input['type'] == 'Temperature' ||
input['type'] == 'Pressure') {
input['value'] = double.parse(values[key]);
} else if (input['type'] == 'Switch'){
} else if (input['type'] == 'Switch') {
input['value'] = values[key] == "1" ? true : false;
} else if (input['type'] == 'Time'){
input['value'] = values[key] == null ? '' : values[key].substring(0, 2) + ":" + values[key].substring(2, 4);
} else if (input['type'] == 'Time') {
input['value'] = values[key] == null
? ''
: values[key].substring(0, 2) + ":" + values[key].substring(2, 4);
} else {
input['value'] = values[key];
}