mirror of
https://gitee.com/dolphinscheduler/DolphinScheduler.git
synced 2024-12-03 04:39:00 +08:00
Merge pull request #373 from feloxx/feature/thisMonth_thisWeek
Feature request: add depend item interval "thisWeek, thisMonth"
This commit is contained in:
commit
1cc916a1fe
@ -95,6 +95,9 @@ public class DependentUtils {
|
||||
case "last7Days":
|
||||
result = DependentDateUtils.getLastDayInterval(businessDate, 7);
|
||||
break;
|
||||
case "thisWeek":
|
||||
result = DependentDateUtils.getThisWeekInterval(businessDate);
|
||||
break;
|
||||
case "lastWeek":
|
||||
result = DependentDateUtils.getLastWeekInterval(businessDate);
|
||||
break;
|
||||
@ -119,6 +122,9 @@ public class DependentUtils {
|
||||
case "lastSunday":
|
||||
result = DependentDateUtils.getLastWeekOneDayInterval(businessDate, 7);
|
||||
break;
|
||||
case "thisMonth":
|
||||
result = DependentDateUtils.getThisMonthInterval(businessDate);
|
||||
break;
|
||||
case "lastMonth":
|
||||
result = DependentDateUtils.getLastMonthInterval(businessDate);
|
||||
break;
|
||||
|
@ -76,6 +76,16 @@ public class DependentDateUtils {
|
||||
return dateIntervals;
|
||||
}
|
||||
|
||||
/**
|
||||
* get interval between this month first day and businessDate
|
||||
* @param businessDate
|
||||
* @return
|
||||
*/
|
||||
public static List<DateInterval> getThisMonthInterval(Date businessDate) {
|
||||
Date firstDay = DateUtils.getFirstDayOfMonth(businessDate);
|
||||
return getDateIntervalListBetweenTwoDates(firstDay, businessDate);
|
||||
}
|
||||
|
||||
/**
|
||||
* get interval between last month first day and last day
|
||||
* @param businessDate
|
||||
@ -108,6 +118,16 @@ public class DependentDateUtils {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* get interval between monday to businessDate of this week
|
||||
* @param businessDate
|
||||
* @return
|
||||
*/
|
||||
public static List<DateInterval> getThisWeekInterval(Date businessDate) {
|
||||
Date mondayThisWeek = DateUtils.getMonday(businessDate);
|
||||
return getDateIntervalListBetweenTwoDates(mondayThisWeek, businessDate);
|
||||
}
|
||||
|
||||
/**
|
||||
* get interval between monday to sunday of last week
|
||||
* default set monday the first day of week
|
||||
|
@ -80,6 +80,26 @@ public class DependentUtilsTest {
|
||||
Assert.assertEquals(dateIntervals.get(0), diCur);
|
||||
|
||||
|
||||
dateValue = "thisWeek";
|
||||
Date firstWeekDay = DateUtils.getMonday(curDay);
|
||||
dateIntervals = DependentUtils.getDateIntervalList(curDay, dateValue);
|
||||
|
||||
DateInterval weekHead = new DateInterval(DateUtils.getStartOfDay(firstWeekDay), DateUtils.getEndOfDay(firstWeekDay));
|
||||
DateInterval weekThis = new DateInterval(DateUtils.getStartOfDay(curDay), DateUtils.getEndOfDay(curDay));
|
||||
|
||||
Assert.assertEquals(dateIntervals.get(0), weekHead);
|
||||
Assert.assertEquals(dateIntervals.get(dateIntervals.size() - 1), weekThis);
|
||||
|
||||
|
||||
dateValue = "thisMonth";
|
||||
Date firstMonthDay = DateUtils.getFirstDayOfMonth(curDay);
|
||||
dateIntervals = DependentUtils.getDateIntervalList(curDay, dateValue);
|
||||
|
||||
DateInterval monthHead = new DateInterval(DateUtils.getStartOfDay(firstMonthDay), DateUtils.getEndOfDay(firstMonthDay));
|
||||
DateInterval monthThis = new DateInterval(DateUtils.getStartOfDay(curDay), DateUtils.getEndOfDay(curDay));
|
||||
|
||||
Assert.assertEquals(dateIntervals.get(0), monthHead);
|
||||
Assert.assertEquals(dateIntervals.get(dateIntervals.size() - 1), monthThis);
|
||||
|
||||
}
|
||||
|
||||
|
@ -64,6 +64,10 @@ const dateValueList = {
|
||||
}
|
||||
],
|
||||
'week': [
|
||||
{
|
||||
value: 'thisWeek',
|
||||
label: `${i18n.$t('ThisWeek')}`
|
||||
},
|
||||
{
|
||||
value: 'lastWeek',
|
||||
label: `${i18n.$t('LastWeek')}`
|
||||
@ -98,6 +102,10 @@ const dateValueList = {
|
||||
}
|
||||
],
|
||||
'month': [
|
||||
{
|
||||
value: 'thisMonth',
|
||||
label: `${i18n.$t('ThisMonth')}`
|
||||
},
|
||||
{
|
||||
value: 'lastMonth',
|
||||
label: `${i18n.$t('LastMonth')}`
|
||||
|
@ -395,6 +395,7 @@ export default {
|
||||
'Last2Days': 'Last2Days',
|
||||
'Last3Days': 'Last3Days',
|
||||
'Last7Days': 'Last7Days',
|
||||
'ThisWeek': 'ThisWeek',
|
||||
'LastWeek': 'LastWeek',
|
||||
'LastMonday': 'LastMonday',
|
||||
'LastTuesday': 'LastTuesday',
|
||||
@ -403,6 +404,7 @@ export default {
|
||||
'LastFriday': 'LastFriday',
|
||||
'LastSaturday': 'LastSaturday',
|
||||
'LastSunday': 'LastSunday',
|
||||
'ThisMonth': 'ThisMonth',
|
||||
'LastMonth': 'LastMonth',
|
||||
'LastMonthBegin': 'LastMonthBegin',
|
||||
'LastMonthEnd': 'LastMonthEnd',
|
||||
|
@ -395,6 +395,7 @@ export default {
|
||||
'Last2Days': '前两天',
|
||||
'Last3Days': '前三天',
|
||||
'Last7Days': '前七天',
|
||||
'ThisWeek': '本周',
|
||||
'LastWeek': '上周',
|
||||
'LastMonday': '上周一',
|
||||
'LastTuesday': '上周二',
|
||||
@ -403,6 +404,7 @@ export default {
|
||||
'LastFriday': '上周五',
|
||||
'LastSaturday': '上周六',
|
||||
'LastSunday': '上周日',
|
||||
'ThisMonth': '本月',
|
||||
'LastMonth': '上月',
|
||||
'LastMonthBegin': '上月初',
|
||||
'LastMonthEnd': '上月末',
|
||||
|
Loading…
Reference in New Issue
Block a user