fix: 规范ProjectEvaluation名称

This commit is contained in:
lexiaozhang 2023-08-14 21:30:34 +08:00
parent 1300229d49
commit af15971a3f
2 changed files with 19 additions and 15 deletions

View File

@ -103,7 +103,7 @@ class ProjectsController < ApplicationController
# result = Gitea::Repository::Branches::ListService.call(@owner, @project.identifier)
result = Gitea::Repository::Branches::ListNameService.call(@owner, @project.identifier, params[:name])
@branches = result.is_a?(Hash) ? (result.key?(:status) ? [] : result) : result
end
end
def branches_slice
return @branches = [] unless @project.forge?
@ -293,7 +293,7 @@ class ProjectsController < ApplicationController
def score
project_evaluation = ProjectEvaluations.find_by(project_id: @project.id)
project_evaluation = ProjectEvaluation.find_by(project_id: @project.id)
response_data = {
influence_norm_score: project_evaluation&.norm_influence || 0,

View File

@ -17,13 +17,17 @@
# score :float(24) default("0")
# created_at :datetime not null
# updated_at :datetime not null
# weekly_score :float(24)
# monthly_score :float(24)
# quarterly_score :float(24)
# yearly_score :float(24)
#
# Indexes
#
# fk_rails_f2d256da0f (project_id)
# index_project_evaluations_on_project_id (project_id)
#
class ProjectEvaluations < ApplicationRecord
class ProjectEvaluation < ApplicationRecord
belongs_to :project
def self.calculate_influence(project)
@ -128,22 +132,22 @@ class ProjectEvaluations < ApplicationRecord
end
def self.update_normalized_scores
max_influence = ProjectEvaluations.maximum(:influence)
min_influence = ProjectEvaluations.minimum(:influence)
max_influence = ProjectEvaluation.maximum(:influence)
min_influence = ProjectEvaluation.minimum(:influence)
max_community = ProjectEvaluations.maximum(:community)
min_community = ProjectEvaluations.minimum(:community)
max_community = ProjectEvaluation.maximum(:community)
min_community = ProjectEvaluation.minimum(:community)
max_vitality = ProjectEvaluations.maximum(:vitality)
min_vitality = ProjectEvaluations.minimum(:vitality)
max_vitality = ProjectEvaluation.maximum(:vitality)
min_vitality = ProjectEvaluation.minimum(:vitality)
max_health = ProjectEvaluations.maximum(:health)
min_health = ProjectEvaluations.minimum(:health)
max_health = ProjectEvaluation.maximum(:health)
min_health = ProjectEvaluation.minimum(:health)
max_trend = ProjectEvaluations.maximum(:trend)
min_trend = ProjectEvaluations.minimum(:trend)
max_trend = ProjectEvaluation.maximum(:trend)
min_trend = ProjectEvaluation.minimum(:trend)
ProjectEvaluations.all.each do |evaluation|
ProjectEvaluation.find_each do |evaluation|
evaluation.norm_influence = (evaluation.influence - min_influence) / (max_influence - min_influence)
evaluation.norm_community = (evaluation.community - min_community) / (max_community - min_community)
evaluation.norm_vitality = (evaluation.vitality - min_vitality) / (max_vitality - min_vitality)