108 lines
2.1 KiB
Ruby
108 lines
2.1 KiB
Ruby
# encoding: utf-8
|
|
module QualityAnalysisHelper
|
|
|
|
def sonar_time sonar_name
|
|
sonar = open(@sonar_address + "/api/resources/index?resource=#{sonar_name}&depth=0").read
|
|
sonar =JSON.parse(sonar).first['date']
|
|
end
|
|
|
|
def sqale_rating_status val
|
|
arr = []
|
|
if val <= 5
|
|
arr << "很好"
|
|
arr << "b_green2"
|
|
arr << "A"
|
|
elsif val. > 5 && val <= 10
|
|
arr << "较好"
|
|
arr << "b_slow_yellow"
|
|
arr << "B"
|
|
elsif val > 10 && val <= 20
|
|
arr << "中等"
|
|
arr << "b_yellow"
|
|
arr << "C"
|
|
elsif val > 20 && val <= 50
|
|
arr << "较差"
|
|
arr << "b_slow_red"
|
|
arr << "D"
|
|
elsif val > 20
|
|
arr << "很差"
|
|
arr << "b_red"
|
|
arr << "E"
|
|
end
|
|
end
|
|
|
|
def complexity_status val
|
|
arr = []
|
|
if val <= 10
|
|
arr << "良好"
|
|
arr << "b_green2"
|
|
elsif val > 10 && val <= 15
|
|
arr << "较高"
|
|
arr << "b_yellow"
|
|
elsif val > 15
|
|
arr << "很高"
|
|
arr << "b_red"
|
|
end
|
|
end
|
|
|
|
def duplicated_lines_density_status val
|
|
arr = []
|
|
if val <= 30
|
|
arr << "良好"
|
|
arr << "b_green2"
|
|
elsif val > 30 && val <= 50
|
|
arr << "较高"
|
|
arr << "b_yellow"
|
|
elsif val > 50
|
|
arr << "很高"
|
|
arr << "b_red"
|
|
end
|
|
end
|
|
|
|
def comment_lines_density_status val
|
|
arr = []
|
|
if val <= 20
|
|
arr << "较低"
|
|
arr << "b_yellow"
|
|
elsif val > 20 && val <= 50
|
|
arr << "正常"
|
|
arr << "b_green2"
|
|
elsif val > 50
|
|
arr << "较高"
|
|
arr << "b_red"
|
|
end
|
|
end
|
|
|
|
def score_sqale_rating val
|
|
if val >= 0 && val <= 5
|
|
"5"
|
|
elsif val > 5 && val <= 10
|
|
"4"
|
|
elsif val > 10 && val <= 20
|
|
"3"
|
|
elsif val > 20 && val <= 50
|
|
"2"
|
|
elsif val > 50
|
|
"1"
|
|
end
|
|
end
|
|
|
|
def lines_scale val
|
|
if val.to_i < 5000
|
|
"小型"
|
|
elsif val.to_i >5000 && val.to_i < 50000
|
|
"中型"
|
|
else
|
|
"大型"
|
|
end
|
|
end
|
|
|
|
#统计答题百分比,统计结果保留两位小数
|
|
def statistics_result_percentage(e, t)
|
|
e = e.to_f
|
|
t = t.to_f
|
|
t == 0 ? 0 : format("%.2f", e*100/t)
|
|
end
|
|
|
|
end
|