check for issue duplicates

Story:
"As a user i will get an Information that an issue already exists when i create a new issue and enter the material number in a custom field"

I thought that i can solve this via script in the behaviour plug-in, this is my attempt but it does not work:

import com.atlassian.jira.component.ComponentAccessor;
import com.atlassian.jira.issue.Issue;
import com.atlassian.jira.bc.issue.search.SearchService;
import com.atlassian.jira.web.bean.PagerFilter;
import org.apache.log4j.Logger;
import org.apache.log4j.Category;
// Create Log for Level DEBUG
def Category log = Category.getInstance("com.onresolve.jira.groovy");
log.setLevel(org.apache.log4j.Level.DEBUG);
// Get Information about Material No
def material = getFieldById(getFieldChanged())
// Search for issues with same Material No
String jql = 'project = MAT AND resolution = Unresolved AND Material IN ("' + material + '")';
// Get a search-Object
SearchService searchService = ComponentAccessor.getComponent(SearchService.class);
// For JIRA 7.X must be ApplicationUser, doesn't work in 6.X
def user = ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser()
List<Issue>issues = null;
SearchService.ParseResult parseResult =  searchService.parseQuery(user, jql);
if (parseResult.isValid()) {
    issues = searchService.search(user, parseResult.getQuery(), PagerFilter.getUnlimitedFilter()).getIssues();
} else {
    // JQL couldn't be parsed, show Error
    log.debug("Invalid JQL: " + jql);
    material.setHelpText("Invalid JQL: " + jql);
}
// Check for other Issues
if(issues.size()>=1){
    // We have another Issue
    issues.each{
        // For Debugging Purposes log the Issue Key of the other issues
        log.debug("Other Issue (" + it.getKey() + ") dealing with same Material!");
        material.setHelpText ("Issue is duplicated by (" + it.getKey() + ")")
    }
}

Is this apporach wrong? Does anyone have a solution?
Buying another plugin is no solution ;-)

1 answer

0 votes
Alexey Matveev Community Champion Nov 29, 2017

Hello,

Could you give more infromation on the error. What exactly does not work?

I can`t see anything in the log or on the create issue screen.

 

I`m wondering if someone has a working solution for the Story.  

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted Sep 18, 2018 in Jira

What modern development practices are at the heart of how your team delivers software?

Hey Community mates! Claire here from the Software Product Marketing team. We all know software development changes rapidly, and it's often tough to keep up. But from our research, we've found the h...

27,006 views 2 7
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you