Help us understand the problem. What is going on with this article?

Redmine Checklists pluginで未チェックの検証を雑に行う

More than 5 years have passed since last update.

Redmine Checklists pluginという、チケットにチェックリストを付与できる大変便利なRedmineのプラグインがあるのですが、チェックに強制力を持たせられないのが困りものです。
(タスクが残ってるのにレビュー依頼とか出されても困る...)

とりあえず上記を解決するにはlib/redmine_checklists/patches/issues_patch.rbをいじればよいです。
※Railsのルートから見ると、plugins/redmine_checklists/lib/redmine_checklists/patches/issues_patch.rb

issue_patch.rb
require_dependency 'issue'

module RedmineChecklists
  module Patches

    module IssuePatch
      def self.included(base) # :nodoc:
          # ~~~ 省略 ~~~

          # ここから
          validate :complete_tasks

          def complete_tasks
            # 未チェックの項目が一つでもあると設定できないようにしたいステータスのIDを指定
            # この例だと、全部チェックしないとステータスを"解決"(status_id:3)に更新できないようにしている
            return unless status_id == 3
            return if checklists.all? {|checklist| checklist.is_done}
            errors.add(:base, 'チェックリストに未チェックの項目が存在します。タスクを全て完了させてください。')
          end
          # ここまでを追加

        end
      end

    end

  end
end

こうしておくと、タスクを完了させないと怒られるようになります。

プラグインの設定画面でステータスを設定できるようにして、さらにプルリクも送ったらカッコイイと思うんだけど、そんな気力はなかった。

convcha
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした