BUG: Image loading of businesses

This commit is contained in:
2025-11-27 12:40:34 +02:00
parent cc3f18f7e2
commit ee7d3881e6
11 changed files with 232 additions and 70 deletions

View File

@@ -10,6 +10,7 @@ import 'package:mzansi_innovation_hub/mih_providers/mzansi_profile_provider.dart
import 'package:mzansi_innovation_hub/mih_config/mih_colors.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_business_details_services.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_file_services.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_mzansi_directory_services.dart';
import 'package:provider/provider.dart';
@@ -37,14 +38,22 @@ class _MihAddBookmarkAlertState extends State<MihAddBookmarkAlert> {
directoryProvider,
);
List<Business> favBus = [];
Map<String, ImageProvider<Object>?> favBusImages = {};
String businessLogoUrl = "";
for (var bus in directoryProvider.bookmarkedBusinesses) {
await MihBusinessDetailsServices()
.getBusinessDetailsByBusinessId(bus.business_id)
.then((business) {
.then((business) async {
favBus.add(business!);
businessLogoUrl = await MihFileApi.getMinioFileUrl(business.logo_path);
favBusImages[business.business_id] =
businessLogoUrl != "" ? NetworkImage(businessLogoUrl) : null;
});
}
directoryProvider.setFavouriteBusinesses(businesses: favBus);
directoryProvider.setFavouriteBusinesses(
businesses: favBus,
businessesImages: favBusImages,
);
}
Future<void> addBookmark(

View File

@@ -15,6 +15,7 @@ import 'package:mzansi_innovation_hub/mih_packages/mzansi_profile/business_profi
import 'package:mzansi_innovation_hub/mih_providers/mzansi_profile_provider.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_business_details_services.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_file_services.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_mzansi_directory_services.dart';
import 'package:provider/provider.dart';
import 'package:redacted/redacted.dart';
@@ -573,8 +574,17 @@ class _MihBusinessCardState extends State<MihBusinessCard> {
businessSearchResults = await MihBusinessDetailsServices()
.searchBusinesses(directoryProvider.searchTerm,
directoryProvider.businessTypeFilter, context);
Map<String, ImageProvider<Object>?> busImages = {};
String businessLogoUrl = "";
for (var bus in businessSearchResults) {
businessLogoUrl = await MihFileApi.getMinioFileUrl(bus.logo_path);
busImages[bus.business_id] =
businessLogoUrl != "" ? NetworkImage(businessLogoUrl) : null;
}
directoryProvider.setSearchedBusinesses(
searchedBusinesses: businessSearchResults);
searchedBusinesses: businessSearchResults,
businessesImages: busImages,
);
setState(() {
_businessReviewFuture = getUserReview();
});

View File

@@ -11,6 +11,7 @@ import 'package:mzansi_innovation_hub/mih_providers/mzansi_directory_provider.da
import 'package:mzansi_innovation_hub/mih_providers/mzansi_profile_provider.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_alert_services.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_business_details_services.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_file_services.dart';
import 'package:mzansi_innovation_hub/mih_services/mih_mzansi_directory_services.dart';
import 'package:provider/provider.dart';
@@ -42,14 +43,22 @@ class _MihDeleteBookmarkAlertState extends State<MihDeleteBookmarkAlert> {
directoryProvider,
);
List<Business> favBus = [];
Map<String, ImageProvider<Object>?> favBusImages = {};
String businessLogoUrl = "";
for (var bus in directoryProvider.bookmarkedBusinesses) {
await MihBusinessDetailsServices()
.getBusinessDetailsByBusinessId(bus.business_id)
.then((business) {
.then((business) async {
favBus.add(business!);
businessLogoUrl = await MihFileApi.getMinioFileUrl(business.logo_path);
favBusImages[business.business_id] =
businessLogoUrl != "" ? NetworkImage(businessLogoUrl) : null;
});
}
directoryProvider.setFavouriteBusinesses(businesses: favBus);
directoryProvider.setFavouriteBusinesses(
businesses: favBus,
businessesImages: favBusImages,
);
}
Future<void> deleteBookmark(int idbookmarked_businesses) async {