getCurrentPeriodDay method

Future<int> getCurrentPeriodDay()

get current period day

Implementation

Future<int> getCurrentPeriodDay() async {
  int currentPeriodDay = 0;
  DateTime lastPeriodDate = await getPreviousPeriodDate();
  DateTime expEndPeriodDate =
      lastPeriodDate.add(Duration(days: getPeriodDuration()));
  DateTime today = DateTime.now();

  if (today.isAfter(lastPeriodDate) && today.isBefore(expEndPeriodDate)) {
    currentPeriodDay = DateTime.now().difference(lastPeriodDate).inDays + 1;
  } else if (today.isAtSameMomentAs(lastPeriodDate) ||
      today.isAtSameMomentAs(expEndPeriodDate)) {
    currentPeriodDay = (DateTime.now().difference(lastPeriodDate).inDays) + 1;
  }

  return currentPeriodDay;
}