From 27b81a5479091d64b1dc97d5129a151895003481 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=91=B1=E5=91=B1=E5=91=B1?= Date: Thu, 25 Jan 2024 09:01:35 +0800 Subject: [PATCH] update burndown_charts --- .../api/pm/sprint_issues_controller.rb | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/app/controllers/api/pm/sprint_issues_controller.rb b/app/controllers/api/pm/sprint_issues_controller.rb index 14e26c76a..dc3ce1d5b 100644 --- a/app/controllers/api/pm/sprint_issues_controller.rb +++ b/app/controllers/api/pm/sprint_issues_controller.rb @@ -13,15 +13,16 @@ class Api::Pm::SprintIssuesController < Api::Pm::BaseController @issues = Issue.where(pm_sprint_id: params[:pm_sprint_id]) start_time = Date.parse params[:start_time] end_time = Date.parse params[:end_time] - x = (end_time - start_time).to_i + 1 #计算间隔时间 加上最后一天 - base_number = (@issues.count / x).to_f + time_count = (end_time - start_time).to_i + 1 #计算间隔时间 加上最后一天 data = [] curren_issues = @issues.group(:status_id,:due_date).count - x.times do |time| - e_time = start_time + time - undone = curren_issues[[1,nil]].to_i + curren_issues[[1,e_time]].to_i + curren_issues[[2,e_time]].to_i + curren_issues[[3,e_time]].to_i - completed = curren_issues[[4,e_time]].to_i + curren_issues[[5,e_time]].to_i - data << {time: e_time, undone: undone, completed:completed, base_number: (base_number * (x - time))} + total_count = @issues.count + cardinality = (total_count / time_count).to_f + time_count.times do |x| + e_time = start_time + x + completed = curren_issues[[5,e_time]].to_i + curren_issues[[3, e_time]].to_i - @issues.where(pm_issue_type: 3, status_id: 3).size + total_count = total_count - completed + data << {time: e_time, undone: total_count, completed:completed, base_number: (cardinality * (time_count - x))} end render_ok(data: data) end