import com.atlassian.jira.bc.issue.search.SearchService; import com.atlassian.jira.component.ComponentAccessor; import com.atlassian.jira.config.properties.ApplicationProperties; import com.atlassian.jira.issue.CustomFieldManager; import com.atlassian.jira.issue.Issue; import com.atlassian.jira.issue.fields.CustomField; import com.atlassian.jira.issue.link.IssueLink; import com.atlassian.jira.issue.search.SearchException; import com.atlassian.jira.issue.search.SearchResults; import com.atlassian.jira.issue.worklog.Worklog; import com.atlassian.jira.project.version.Version; import com.atlassian.jira.user.ApplicationUser; import com.atlassian.jira.web.bean.PagerFilter; import com.atlassian.query.Query; import com.atlassian.jira.security.JiraAuthenticationContext; import java.util.ArrayList; import java.util.List; Issue currIssue= issue; List<Issue> linklissue = new ArrayList(); double allTs = 0d;//总换体天数 ApplicationProperties applicationProperties = ComponentAccessor.getApplicationProperties(); String jql = applicationProperties.getString("HKTXPROPERTIESKEY.FIELD.01-dev-sql"); String jqlNew = String.format(jql, issue.getKey()); log.debug("queryBussReqFromDevReq:"+jqlNew); ApplicationUser user = ComponentAccessor.getComponent(JiraAuthenticationContext.class).getLoggedInUser(); List<Issue> issueList = new ArrayList(); try { SearchService searchService = ComponentAccessor.getComponentOfType(SearchService.class); SearchService.ParseResult parseResult = searchService.parseQuery(user, jqlNew); if (!parseResult.isValid()) { return issueList; } Query query = parseResult.getQuery(); SearchResults searchResults = searchService.search(user, query, PagerFilter.getUnlimitedFilter()); issueList = searchResults.getResults(); } catch (SearchException e) { e.printStackTrace(); } log.debug("issueList.size : "+issueList.size()) //01-实际预估人天 CustomField tsCf = ComponentAccessor.getCustomFieldManager().getCustomFieldObject(11614L); for (int i = 0; i <issueList.size() ; i++) { List<Issue> subtaskList = new ArrayList(); subtaskList.addAll(issueList.get(i).getSubTaskObjects()); log.debug("subtaskList.size : "+subtaskList.size()) for (int j = 0; j <subtaskList.size() ; j ++) { allTs += subtaskList.get(j).getOriginalEstimate(); } } allTs/(60*60*8)
Overview
Content Tools