This commit is contained in:
unknown
2023-12-09 17:52:53 +03:30
parent 6464557956
commit ede10a2efe
36 changed files with 2252 additions and 1821 deletions
+15 -8
View File
@@ -5,6 +5,8 @@ import 'package:cssd/models/my_item_model.dart';
import 'package:dio/dio.dart';
import 'package:file_picker/file_picker.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter_downloader/flutter_downloader.dart';
import 'package:path_provider/path_provider.dart';
import 'package:random_string/random_string.dart';
import '../config/urls.dart';
@@ -102,7 +104,6 @@ class ItemProvider extends ChangeNotifier {
FormData formData = new FormData.fromMap(
{
"batch_id": batchId,
'model_type': 'Item',
"file": MultipartFile.fromBytes(imageListInt, filename: fileName)
},
);
@@ -139,7 +140,7 @@ class ItemProvider extends ChangeNotifier {
'specific': specific,
'name': name,
'udi': udi,
'file_batch_id': batchId,
'batch_id': batchId,
},
),
headers: {
@@ -288,6 +289,7 @@ class ItemProvider extends ChangeNotifier {
userName: item['user'] != null ? item['user']['name'] : '',
status: item['status'],
udi: item['udi'],
packageId: item['package_id'],
),
);
}
@@ -306,6 +308,7 @@ class ItemProvider extends ChangeNotifier {
description: 'null',
name: 'null',
userName: 'null',
userCreator: 'null',
specific: 'null',
hospital: 'null',
size: 'null',
@@ -313,6 +316,7 @@ class ItemProvider extends ChangeNotifier {
udi: 'null',
status: 0,
filePath: [],
packageId: 'null',
);
}
var data = json.decode(response.body)['data'];
@@ -333,11 +337,13 @@ class ItemProvider extends ChangeNotifier {
hospital:
data['user'] != null ? data['user']['medical_center']['name'] : '',
userName: data['user'] != null ? data['user']['name'] : '',
userCreator: data['creator'] != null ? data['creator']['name'] : '',
size: data['size'] != null ? data['size'] : '',
specific: data['specific'] != null ? data['specific'] : '',
createdAt: data['created_at'] != null ? data['created_at'] : '',
udi: data['udi'] != null ? data['udi'] : '',
status: data['status'],
packageId: data['package_id'],
filePath: mediaList,
);
return result!;
@@ -369,13 +375,14 @@ class ItemProvider extends ChangeNotifier {
}
Future<bool> exportItems() async {
var response = await http.get(
Uri.parse(
Url.exportItems,
),
headers: {'Authorization': User.token},
final baseStorage = await getExternalStorageDirectory();
final taskId = await FlutterDownloader.enqueue(
url: Url.exportItems,
savedDir: baseStorage!.path,
showNotification: true,
openFileFromNotification: true,
);
print(response.body);
print(taskId);
return true;
}
}
+76 -75
View File
@@ -11,13 +11,13 @@ class MyItemProvider extends ChangeNotifier {
String searchBoxValue = '';
bool filterOn = false;
List<MyItemResultObject>? myItems;
List<MyItemResultObject>? hospitalItems;
// List<MyItemResultObject>? hospitalItems;
List<MyItemResultObject>? originalMyItems;
List<MyItemResultObject>? originalHospitalItems;
// List<MyItemResultObject>? originalHospitalItems;
List<MyItemResultObject>? originalMyItemsRequests;
List<MyItemResultObject>? originalHospitalItemsRequests;
// List<MyItemResultObject>? originalHospitalItemsRequests;
List<ItemHistoryObject>? itemHistory;
@@ -52,16 +52,16 @@ class MyItemProvider extends ChangeNotifier {
notifyListeners();
}
void searchHospitalItems(String value) {
hospitalItems = [];
searchBoxValue = value;
originalHospitalItems!.forEach((result) {
if (result.udi.toString().contains(searchBoxValue)) {
hospitalItems!.add(result);
}
});
notifyListeners();
}
// void searchHospitalItems(String value) {
// hospitalItems = [];
// searchBoxValue = value;
// originalHospitalItems!.forEach((result) {
// if (result.udi.toString().contains(searchBoxValue)) {
// hospitalItems!.add(result);
// }
// });
// notifyListeners();
// }
void setFilters(
id,
@@ -127,6 +127,7 @@ class MyItemProvider extends ChangeNotifier {
id: item['id'].toString(),
size: item['size'].toString(),
udi: item['udi'],
userName: item['user'] != null ? item['user']['name'] : '',
),
);
}
@@ -134,50 +135,50 @@ class MyItemProvider extends ChangeNotifier {
searchMyItems('');
}
Future<void> getHospitalItems() async {
String url = Url.getHospitalItems(pageNumber);
if (filterOn) {
if (filters!.id != '') {
url += '&item_id=${filters!.id}';
}
if (filters!.name != '') {
url += '&name=${filters!.name}';
}
if (filters!.size != '') {
url += '&size=${filters!.size}';
}
if (filters!.specific != '') {
url += '&specific=${filters!.specific}';
}
if (filters!.udi != '') {
url += '&udi=${filters!.udi}';
}
}
var response = await http.get(
Uri.parse(url),
headers: {'Authorization': User.token, "Accept": "application/json"},
);
// Future<void> getHospitalItems() async {
// String url = Url.getHospitalItems(pageNumber);
// if (filterOn) {
// if (filters!.id != '') {
// url += '&item_id=${filters!.id}';
// }
// if (filters!.name != '') {
// url += '&name=${filters!.name}';
// }
// if (filters!.size != '') {
// url += '&size=${filters!.size}';
// }
// if (filters!.specific != '') {
// url += '&specific=${filters!.specific}';
// }
// if (filters!.udi != '') {
// url += '&udi=${filters!.udi}';
// }
// }
// var response = await http.get(
// Uri.parse(url),
// headers: {'Authorization': User.token, "Accept": "application/json"},
// );
var itemsData = json.decode(response.body);
// var itemsData = json.decode(response.body);
if (pageNumber == 1) {
originalHospitalItems = [];
}
// if (pageNumber == 1) {
// originalHospitalItems = [];
// }
for (var item in itemsData['data']['data']) {
originalHospitalItems!.add(
MyItemResultObject(
name: item['name'],
id: item['id'].toString(),
size: item['size'].toString(),
userName: item['user'] != null ? item['user']['name'] : '',
udi: item['udi'],
),
);
}
pageNumber += 1;
searchHospitalItems('');
}
// for (var item in itemsData['data']['data']) {
// originalHospitalItems!.add(
// MyItemResultObject(
// name: item['name'],
// id: item['id'].toString(),
// size: item['size'].toString(),
// userName: item['user'] != null ? item['user']['name'] : '',
// udi: item['udi'],
// ),
// );
// }
// pageNumber += 1;
// searchHospitalItems('');
// }
Future<void> getItemsHistory(String id) async {
String url = Url.getItemResult(id);
@@ -230,30 +231,30 @@ class MyItemProvider extends ChangeNotifier {
}
}
Future<void> getHospitalItemRequests() async {
String url = Url.getHospitalItemRequests;
var response = await http.get(
Uri.parse(url),
headers: {'Authorization': User.token, "Accept": "application/json"},
);
// Future<void> getHospitalItemRequests() async {
// String url = Url.getHospitalItemRequests;
// var response = await http.get(
// Uri.parse(url),
// headers: {'Authorization': User.token, "Accept": "application/json"},
// );
var itemsData = json.decode(response.body);
print(itemsData);
// var itemsData = json.decode(response.body);
// print(itemsData);
originalHospitalItemsRequests = [];
// originalHospitalItemsRequests = [];
for (var item in itemsData['data']) {
originalHospitalItemsRequests!.add(
MyItemResultObject(
name: item['transferable']['name'].toString(),
id: item['transferable']['id'].toString(),
size: item['transferable']['size'].toString(),
userName: item['user'] != null ? item['user']['name'] : '',
requestId: item['id'].toString(),
),
);
}
}
// for (var item in itemsData['data']) {
// originalHospitalItemsRequests!.add(
// MyItemResultObject(
// name: item['transferable']['name'].toString(),
// id: item['transferable']['id'].toString(),
// size: item['transferable']['size'].toString(),
// userName: item['user'] != null ? item['user']['name'] : '',
// requestId: item['id'].toString(),
// ),
// );
// }
// }
Future<void> transferItems(String itemId, String userId) async {
var response = await http.post(
+68 -67
View File
@@ -11,13 +11,13 @@ class MyPackageProvider extends ChangeNotifier {
String searchBoxValue = '';
bool filterOn = false;
List<MyPackageResultObject>? myPackages;
List<MyPackageResultObject>? hospitalPackages;
// List<MyPackageResultObject>? hospitalPackages;
List<MyPackageResultObject>? originalMyPackages;
List<MyPackageResultObject>? originalHospitalPackages;
// List<MyPackageResultObject>? originalHospitalPackages;
List<MyPackageResultObject>? originalMyPackagesRequests;
List<MyPackageResultObject>? originalHospitalPackagesRequests;
// List<MyPackageResultObject>? originalHospitalPackagesRequests;
List<PackageHistoryObject>? packageHistory;
@@ -50,16 +50,16 @@ class MyPackageProvider extends ChangeNotifier {
notifyListeners();
}
void searchHospitalPackages(String value) {
hospitalPackages = [];
searchBoxValue = value;
originalHospitalPackages!.forEach((result) {
if (result.id.toString().contains(searchBoxValue)) {
hospitalPackages!.add(result);
}
});
notifyListeners();
}
// void searchHospitalPackages(String value) {
// hospitalPackages = [];
// searchBoxValue = value;
// originalHospitalPackages!.forEach((result) {
// if (result.id.toString().contains(searchBoxValue)) {
// hospitalPackages!.add(result);
// }
// });
// notifyListeners();
// }
void setFilters(
id,
@@ -110,6 +110,7 @@ class MyPackageProvider extends ChangeNotifier {
name: package['name'],
id: package['id'].toString(),
createdAt: package['created_at'].toString(),
userName: package['user'] != null ? package['user']['name'] : '',
),
);
}
@@ -117,43 +118,43 @@ class MyPackageProvider extends ChangeNotifier {
searchMyPackages('');
}
Future<void> getHospitalPackages() async {
String url = Url.getHospitalPackages(pageNumber);
if (filterOn) {
if (filters!.id != '') {
url += '&package_id=${filters!.id}';
}
if (filters!.name != '') {
url += '&name=${filters!.name}';
}
// if (filters!.udi != '') {
// url += '&package_id=${filters!.udi}';
// }
}
var response = await http.get(
Uri.parse(url),
headers: {'Authorization': User.token, "Accept": "application/json"},
);
// Future<void> getHospitalPackages() async {
// String url = Url.getHospitalPackages(pageNumber);
// if (filterOn) {
// if (filters!.id != '') {
// url += '&package_id=${filters!.id}';
// }
// if (filters!.name != '') {
// url += '&name=${filters!.name}';
// }
// // if (filters!.udi != '') {
// // url += '&package_id=${filters!.udi}';
// // }
// }
// var response = await http.get(
// Uri.parse(url),
// headers: {'Authorization': User.token, "Accept": "application/json"},
// );
var packagesData = json.decode(response.body);
// var packagesData = json.decode(response.body);
if (pageNumber == 1) {
originalHospitalPackages = [];
}
// if (pageNumber == 1) {
// originalHospitalPackages = [];
// }
for (var package in packagesData['data']) {
originalHospitalPackages!.add(
MyPackageResultObject(
name: package['name'],
id: package['id'].toString(),
createdAt: package['created_at'].toString(),
userName: package['user'] != null ? package['user']['name'] : '',
),
);
}
pageNumber += 1;
searchHospitalPackages('');
}
// for (var package in packagesData['data']) {
// originalHospitalPackages!.add(
// MyPackageResultObject(
// name: package['name'],
// id: package['id'].toString(),
// createdAt: package['created_at'].toString(),
// userName: package['user'] != null ? package['user']['name'] : '',
// ),
// );
// }
// pageNumber += 1;
// searchHospitalPackages('');
// }
Future<void> getMyPackageRequests() async {
String url = Url.getMyPackageRequests;
@@ -178,29 +179,29 @@ class MyPackageProvider extends ChangeNotifier {
}
}
Future<void> getHospitalPackageRequests() async {
String url = Url.getHospitalPackageRequests;
var response = await http.get(
Uri.parse(url),
headers: {'Authorization': User.token, "Accept": "application/json"},
);
// Future<void> getHospitalPackageRequests() async {
// String url = Url.getHospitalPackageRequests;
// var response = await http.get(
// Uri.parse(url),
// headers: {'Authorization': User.token, "Accept": "application/json"},
// );
var packagesData = json.decode(response.body);
// var packagesData = json.decode(response.body);
originalHospitalPackagesRequests = [];
// originalHospitalPackagesRequests = [];
for (var package in packagesData['data']) {
originalHospitalPackagesRequests!.add(
MyPackageResultObject(
name: package['transferable']['name'],
id: package['transferable']['id'].toString(),
createdAt: package['created_at'].toString(),
userName: package['user'] != null ? package['user']['name'] : '',
requestId: package['id'].toString(),
),
);
}
}
// for (var package in packagesData['data']) {
// originalHospitalPackagesRequests!.add(
// MyPackageResultObject(
// name: package['transferable']['name'],
// id: package['transferable']['id'].toString(),
// createdAt: package['created_at'].toString(),
// userName: package['user'] != null ? package['user']['name'] : '',
// requestId: package['id'].toString(),
// ),
// );
// }
// }
Future<void> getPackagesHistory(String id) async {
String url = Url.getPackageResult(id);
+18
View File
@@ -2,6 +2,8 @@ import 'dart:convert';
import 'package:cssd/models/item_model.dart';
import 'package:cssd/models/package_model.dart';
import 'package:flutter_downloader/flutter_downloader.dart';
import 'package:path_provider/path_provider.dart';
import '../config/urls.dart';
import '../config/user.dart';
@@ -307,6 +309,8 @@ class PackageProvider extends ChangeNotifier {
hospitalName: 'null',
// udi: 'null',
items: [],
userName: 'null',
userCreator: 'null',
);
}
var data = json.decode(response.body)['data'];
@@ -326,8 +330,22 @@ class PackageProvider extends ChangeNotifier {
createDate: data['created_at'] != null ? data['created_at'] : '',
hospitalName:
data['user'] != null ? data['user']['medical_center']['name'] : '',
userName: data['user'] != null ? data['user']['name'] : '',
userCreator: data['creator'] != null ? data['creator']['name'] : '',
items: itemsList,
);
return result!;
}
Future<bool> exportPackages() async {
final baseStorage = await getExternalStorageDirectory();
final taskId = await FlutterDownloader.enqueue(
url: Url.exportPackages,
savedDir: baseStorage!.path,
showNotification: true,
openFileFromNotification: true,
);
print(taskId);
return true;
}
}
+1 -2
View File
@@ -246,7 +246,6 @@ class TestResultsProvider with ChangeNotifier {
};
di.FormData formData = new di.FormData.fromMap({
"batch_id": batchId,
'model_type': 'TestResult',
"file": di.MultipartFile.fromBytes(imageListInt, filename: fileName)
});
@@ -268,7 +267,7 @@ class TestResultsProvider with ChangeNotifier {
await addImage(batchId, image.bytes, image.path!);
}
dynamic vals = values;
vals['file_batch_id'] = batchId;
vals['batch_id'] = batchId;
// int counter = 0;
// if (images.length != 0) {