loadRatings function

Future<String?> loadRatings(
  1. String providerid
)

Implementation

Future<String?> loadRatings(String providerid) async{
  try{
    rating1 = 0;
    rating2 = 0;
    rating3 = 0;
    rating4 = 0;
    rating5 = 0;

    List<ProductData> _list = await dbGetAllDocumentInTable("service", field1: "providers", arrayContains1: providerid);
    // var querySnapshot = await FirebaseFirestore.instance.collection("service").
    // where("providers", arrayContains: providerData.id).get();

    for (var _service in _list) {
      // var _data = result.data();
      // print("loadRatings $_data");
      // var _service = ProductData.fromJson(result.id, _data);
      rating1 += _service.rating1;
      rating2 += _service.rating2;
      rating3 += _service.rating3;
      rating4 += _service.rating4;
      rating5 += _service.rating5;
    }
    // 2 - ?%
    ratingCount = rating1+rating2+rating3+rating4+rating5; // 5 - 100%
    rating = (rating1*1 + rating2*2 + rating3*3 + rating4*4 + rating5*5)/ratingCount;
    ratingsLoad = true;
    ratingIndex1 = (100/ratingCount*rating1)/100;
    ratingIndex2 = (100/ratingCount*rating2)/100;
    ratingIndex3 = (100/ratingCount*rating3)/100;
    ratingIndex4 = (100/ratingCount*rating4)/100;
    ratingIndex5 = (100/ratingCount*rating5)/100;
  }catch(ex){
    return "loadRatings " + ex.toString();
  }
  return null;
}