getTemperatureLog method

Future<List<BodyTemperatureData>> getTemperatureLog({
  1. required DateTime? startDate,
  2. required DateTime? endDate,
  3. BodyTemperatureUnits? bodyTemperatureUnits = BodyTemperatureUnits.celsius,
  4. int pageNumber = 1,
  5. int itemsPerPage = 7,
})

get user's temperature data

Implementation

Future<List<BodyTemperatureData>> getTemperatureLog(
    {required DateTime? startDate,
    required DateTime? endDate,
    BodyTemperatureUnits? bodyTemperatureUnits = BodyTemperatureUnits.celsius,
    int pageNumber = 1,
    int itemsPerPage = 7}) async {
  List<BodyTemperatureData> bodyTemperatureListData = [];

  List<UserLogReportData> usersLogDataList = await getSymptomsLogReport(
      startDate: startDate,
      endDate: endDate,
      isRequiredPagination: true,
      itemsPerPage: itemsPerPage,
      pageNumber: pageNumber);
  for (int i = 0; i < usersLogDataList.length; i++) {
    BodyTemperatureData bodyTemperatureData = BodyTemperatureData();
    UserLogReportData logReportData = usersLogDataList[i];
    double bodyTemp = double.parse(logReportData.bodyTemperature!);
    if (bodyTemp > 0) {
      double bodyTemperature = 0.0;
      if (logReportData.bodyTemperatureUnit ==
          bodyTemperatureUnits.toString()) {
        bodyTemperature = double.parse(logReportData.bodyTemperature!);
      } else {
        if (bodyTemperatureUnits == BodyTemperatureUnits.fahrenheit) {
          bodyTemperature = celsiusToFahrenheit(
              double.parse(logReportData.bodyTemperature!));
        } else {
          bodyTemperature = fahrenheitToCelsius(
              double.parse(logReportData.bodyTemperature!));
        }
      }
      bodyTemperatureData.bodyTemperature = bodyTemperature;
      bodyTemperatureData.dateTime =
          CalenderDateUtils.graphDateFormat(logReportData.logDate!);
      bodyTemperatureData.bodyTemperatureUnit =
          bodyTemperatureUnits.toString();

      bodyTemperatureListData.add(bodyTemperatureData);
    }
  }
  return bodyTemperatureListData;
}