领导急了,那该如何在钉钉群中推送团队的过期任务?

2023年 8月 13日 49.3k 0

前言

最近部门要求大家下班前挪动jira中敏捷迭代的任务,但是团队中总有些同事忘记,然后第二天早上被通报批评,领导后面直接发话这些同事有可能成为年底的淘汰对象。我在想能否通过程序每天定时获取jira中的过期任务,然后通知到敏捷团队钉钉群中呢,这样团队成员就不会忘记了。

Jira任务获取功能

jira是一个应用广发的项目管理工具,我们公司也使用这个工具去管理需求、任务、bug等。那么通过程序如何获取jira中的任务、bug信息呢?

  • 引入jira-client依赖
  • 我这边使用了一个开源的依赖包jira-client, maven坐标如下:

     
        net.rcarz
        jira-client
        0.5
        compile
    
    

    github地址:https://github.com/bobcarroll/jira-client

  • 创建JiraClient的Bean
  • @Configuration
    @EnableConfigurationProperties({JiraAuthProperties.class, DingTalkProperties.class})
    public class JiraConfig {
    
        @Autowired
        private JiraAuthProperties jiraAuthProperties;
    
        /**
         * jira client的bean
         * @return
         */
        @Bean
        public JiraClient createJiraClient() {
            BasicCredentials creds = new BasicCredentials(jiraAuthProperties.getUsername(), jiraAuthProperties.getPassword());
            JiraClient jiraClient = new JiraClient(jiraAuthProperties.getUrl(), creds);
            return jiraClient;
        }
    
    }
    
    • BasicCredentials对象中传入jira账号和密码
    • 根据jira的地址和认证信息创建JiraClient
  • 获取团队成员过期的任务和bug
  • /**
    * 获取所有过期的任务
    *
    * @param endDate 截止时间
    * @return
    * @throws JiraException
    */
    public List getAllExpireTasks(Date endDate) throws JiraException {
    List allUserNames = EmployeeManager.getAllUserNames();
    String endDateStr = DateUtil.format(endDate, DATE_FORMATE);
    String userTasksJql = getUserExpireTasksJql(allUserNames, endDateStr);
    Issue.SearchResult searchResult = jiraClient.searchIssues(userTasksJql, 100000);
    return searchResult.issues;
    }

    /**
    * 获取用户过期的查询语句
    *
    * @param users
    * @param dueDateStr
    * @return
    */
    public static String getUserExpireTasksJql(List users, String dueDateStr) {
    String jqlTmpl = "resolution = Unresolved and due

    相关文章

    JavaScript2024新功能:Object.groupBy、正则表达式v标志
    PHP trim 函数对多字节字符的使用和限制
    新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
    使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
    为React 19做准备:WordPress 6.6用户指南
    如何删除WordPress中的所有评论

    发布评论