Hi All,
I have the need to have a user enter in a number of pay periods, along with
a starting year, and I then need to generate the corresponding date ranges
for display. So, for instance, the user inputs 52 pay periods, ie every
week, and I generate a beginning date, which is the first Monday of the week
to the following Sunday.
Now the problem I've run into involves when the first Monday of the year is
not in the starting year, as in 2008 for instance. The first Monday is
actually Dec 31, 2007. I've accounted for that in my code, but I would
appreciate if someone could tell me if this algorithm is sound as my Joda
experience is limited.
Thanks,
- Elam Daly
private void generateDates() {
// 2008, 2007 etc.
int startY = Integer.valueOf( startYear.getText() );
int periods = Integer.valueOf( numOfPeriods.getText() ).intValue();
int numOfWeeksPerPeriod = 52/periods;
// Start at the first monday of the year.
DateTime startDate = new DateTime( startY, DateTimeConstants.JANUARY,
DateTimeConstants.MONDAY, 0, 0, 0, 0);
// For years(ie 2008) that the first Monday falls on the previous
year.
startDate = startDate.withDayOfWeek(DateTimeConstants.MONDAY);
// Create rows for JTable
Vector<Vector> rows = new Vector();
// Row data is Pay Period, Start Date, End Date.
Vector row = new Vector(
Arrays.asList(1,startDate,startDate.plusDays(numOfWeeksPerPeriod*7-1) );
rows.add(row);
for(int i=2;i<=periods;i++) {
startDate = startDate.plusWeeks(numOfWeeksPerPeriod);
row = new Vector(
Arrays.asList(i,startDate,startDate.plusDays(numOfWeeksPerPeriod*7-1) );
rows.add(row);
}
((DefaultTableModel)groupTable.getModel()).setDataVector(rows,
columns);
}
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Joda-interest mailing list
Joda-interest@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/joda-interest