diff --git a/app/controllers/api/v1/issues/milestones_controller.rb b/app/controllers/api/v1/issues/milestones_controller.rb new file mode 100644 index 00000000..f25ec498 --- /dev/null +++ b/app/controllers/api/v1/issues/milestones_controller.rb @@ -0,0 +1,31 @@ +class Api::V1::Issues::MilestonesController < Api::V1::BaseController + before_action :require_public_and_member_above, only: [:index] + + # 里程碑列表 + def index + if params[:only_name] + @milestones = @project.versions + else + @milestones = @project.versions.includes(:issues) + end + @milestones = kaminary_select_paginate(@milestones) + end + + # 里程碑详情 + def show + end + + def create + end + + def update + end + + def destroy + end + + + private + + +end \ No newline at end of file diff --git a/app/views/api/v1/issues/milestones/_simple_detail.json.jbuilder b/app/views/api/v1/issues/milestones/_simple_detail.json.jbuilder new file mode 100644 index 00000000..667f7b6a --- /dev/null +++ b/app/views/api/v1/issues/milestones/_simple_detail.json.jbuilder @@ -0,0 +1 @@ +json.(milestone, :id, :name) \ No newline at end of file diff --git a/app/views/api/v1/issues/milestones/index.json.jbuilder b/app/views/api/v1/issues/milestones/index.json.jbuilder new file mode 100644 index 00000000..012549bd --- /dev/null +++ b/app/views/api/v1/issues/milestones/index.json.jbuilder @@ -0,0 +1,6 @@ +json.total_count @milestones.total_count +json.milestones @milestones.each do |milestone| + if params[:only_name] + json.partial! "simple_detail", locals: {milestone: milestone} + end +end \ No newline at end of file