1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.kpme.tklm.time.rules.overtime.weekly.service;
17
18 import java.util.List;
19
20 import org.joda.time.LocalDate;
21 import org.kuali.kpme.tklm.time.rules.overtime.weekly.WeeklyOvertimeRule;
22 import org.kuali.kpme.tklm.time.timesheet.TimesheetDocument;
23 import org.kuali.kpme.tklm.time.util.TkTimeBlockAggregate;
24 import org.springframework.cache.annotation.CacheEvict;
25 import org.springframework.cache.annotation.Cacheable;
26
27 public interface WeeklyOvertimeRuleService {
28
29
30
31
32 @CacheEvict(value={WeeklyOvertimeRule.CACHE_NAME}, allEntries = true)
33 public void saveOrUpdate(WeeklyOvertimeRule weeklyOvertimeRule);
34
35
36
37
38 @CacheEvict(value={WeeklyOvertimeRule.CACHE_NAME}, allEntries = true)
39 public void saveOrUpdate(List<WeeklyOvertimeRule> weeklyOvertimeRules);
40
41
42
43
44
45 @Cacheable(value= WeeklyOvertimeRule.CACHE_NAME, key="'asOfDate=' + #p1")
46 public List<WeeklyOvertimeRule> getWeeklyOvertimeRules(LocalDate asOfDate);
47
48
49
50
51
52 public void processWeeklyOvertimeRule(TimesheetDocument timesheetDocument, TkTimeBlockAggregate aggregate);
53
54
55
56
57
58 @Cacheable(value= WeeklyOvertimeRule.CACHE_NAME, key="'tkWeeklyOvertimeRuleId=' + #p0")
59 public WeeklyOvertimeRule getWeeklyOvertimeRule(String tkWeeklyOvertimeRuleId);
60 }