getCurrentTrimester method

Future<int> getCurrentTrimester()

get Current trimester of pregnancy

Implementation

Future<int> getCurrentTrimester() async {
  final dbHelper = MenstrualCycleDbHelper.instance;
  String lastPeriodDate = await dbHelper.getLastPeriodDate();
  if (lastPeriodDate.isNotEmpty) {
    final difference =
        DateTime.now().difference(DateTime.parse(lastPeriodDate)).inDays + 1;
    int gestationalWeeks = (difference / 7).floor() + 1;
    if (gestationalWeeks <= 12) {
      return 1;
    } else if (gestationalWeeks <= 27) {
      return 2;
    } else if (gestationalWeeks <= 40) {
      return 3;
    } else {
      return 4;
    }
  }
  return 0;
}