diff --git a/lib/config/urls.dart b/lib/config/urls.dart index 0510a1d..f663185 100755 --- a/lib/config/urls.dart +++ b/lib/config/urls.dart @@ -190,4 +190,7 @@ class Url { static String searchItems(String value) { return '$baseUrl/Items?name=$value'; } + static String searchMyItems(String value) { + return '$baseUrl/MyItems?name=$value'; + } } diff --git a/lib/pages/ItemPages/item_result_screen.dart b/lib/pages/ItemPages/item_result_screen.dart index ffd9121..1f85f0f 100755 --- a/lib/pages/ItemPages/item_result_screen.dart +++ b/lib/pages/ItemPages/item_result_screen.dart @@ -234,7 +234,7 @@ class _ItemResultScreenState extends State { text: 'item', deviceBlockSize: _deviceBlockSize, textInputType: TextInputType.visiblePassword, - text2: "Udi", + text2: "name", onChanged: (value) { searchVal = value; }, diff --git a/lib/pages/MyItemsPages/Result/my_items_mine_screen.dart b/lib/pages/MyItemsPages/Result/my_items_mine_screen.dart index 90e8f62..71bff8b 100755 --- a/lib/pages/MyItemsPages/Result/my_items_mine_screen.dart +++ b/lib/pages/MyItemsPages/Result/my_items_mine_screen.dart @@ -68,6 +68,7 @@ class _MyItemsMineScreenState extends State { final double _devicewidth = _media.size.width; final double _deviceBlockSize = _devicewidth / 100; final userData = Provider.of(context, listen: false).user; + var searchVal; return Consumer( builder: (ct, connection, _) { return connection.conStatus != 'offline' @@ -155,14 +156,18 @@ class _MyItemsMineScreenState extends State { ResultSearchBox( searchCTRL: searchCTRL, text: 'item', - text2: "Udi", + text2: "name", textInputType: TextInputType.visiblePassword, deviceBlockSize: _deviceBlockSize, - onChanged: (value) { - Provider.of(context, listen: false) - .searchMyItems(value); + onChanged: (value) async { + searchVal = value; + }, + onTap: () async { + var myItems = await Provider.of(context, + listen: false); + myItems.setLoading(); + await myItems.searchMyItems(searchVal); }, - onTap: () {}, ), SizedBox( height: 20, diff --git a/lib/providers/my_items.dart b/lib/providers/my_items.dart index 8a90556..d17f9e9 100755 --- a/lib/providers/my_items.dart +++ b/lib/providers/my_items.dart @@ -43,17 +43,31 @@ class MyItemProvider extends ChangeNotifier { void setLoading() { isloading = true; - // notifyListeners(); + notifyListeners(); } - void searchMyItems(String value) { + Future searchMyItems(String value) async { myItems = []; searchBoxValue = value; - originalMyItems!.forEach((result) { - if (result.udi.toString().contains(searchBoxValue)) { - myItems!.add(result); - } - }); + var response = await http.get( + Uri.parse(Url.searchMyItems(value)), + headers: {'Authorization': User.token, "Accept": "application/json"}, + ); + + var itemsData = json.decode(response.body); + + for (var item in itemsData['data']) { + myItems!.add( + MyItemResultObject( + name: item['name'], + id: item['id'].toString(), + size: item['size'].toString(), + udi: item['udi'], + userName: item['user'] != null ? item['user']['name'] : '', + ), + ); + } + resetLoading(); notifyListeners(); } @@ -136,8 +150,9 @@ class MyItemProvider extends ChangeNotifier { ), ); } + myItems = originalMyItems; pageNumber += 1; - searchMyItems(''); + notifyListeners(); } // Future getHospitalItems() async {