import com.deniz.jira.worklog.approval.*;
import com.atlassian.jira.component.ComponentAccessor;
import com.atlassian.jira.project.*;
import com.atlassian.jira.*;
import com.atlassian.jira.user.util.*;
TimesheetApprovalService approvalService = ComponentAccessor.getOSGiComponentInstanceOfType(TimesheetApprovalService.class);
UserManager userManager = ComponentAccessor.getUserManager();
ProjectManager projectManager = ComponentAccessor.getProjectManager();
def user = userManager.getUserByKey(timesheetApprovalAction.userKey);
def project = projectManager.getProjectByCurrentKey(timesheetApprovalAction.projectKey);
def approvalStatus = approvalService.getTimesheetApprovalStatus(user.getKey(), timesheetApprovalAction.period.id, [project.id] as Set);
def projectApprovalStatus = approvalStatus.projectApproval.get(project.key);
if (projectApprovalStatus.approvalStatus != TimesheetApprovalStatus.SUBMITTED) {
return "This timesheet is already approved/rejected or not submitted yet!"
} |