Skip to content

Instantly share code, notes, and snippets.

@joshbirk
Last active August 29, 2015 14:08
Show Gist options
  • Save joshbirk/673f87036dada73ed90c to your computer and use it in GitHub Desktop.
Save joshbirk/673f87036dada73ed90c to your computer and use it in GitHub Desktop.
public class VerifyDate {
//method to handle potential checks against two dates
public static Date CheckDates(Date date1, Date date2) {
//if date2 is within the next 30 days of date1, use date2. Otherwise use the end of the month
if(DateWithin30Days(date1,date2)) {
return date2;
} else {
return SetEndOfMonthDate(date1);
}
}
//method to check if date2 is within the next 30 days of date1
private static Boolean DateWithin30Days(Date date1, Date date2) {
Date date30Days = date1.addDays(30); //create a date 30 days away from date1
if( date2 > date30Days ) { return false; }
else { return true; }
}
//method to return the end of the month of a given date
private static Date SetEndOfMonthDate(Date date1) {
Integer totalDays = Date.daysInMonth(date1.year(), date1.month());
Date lastDay = Date.newInstance(date1.year(), date1.month(), totalDays);
return lastDay;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment