diff --git a/app/controllers/softapplications_controller.rb b/app/controllers/softapplications_controller.rb index 586bb509e..d72c0859c 100644 --- a/app/controllers/softapplications_controller.rb +++ b/app/controllers/softapplications_controller.rb @@ -47,7 +47,7 @@ class SoftapplicationsController < ApplicationController def show @softapplication = Softapplication.find(params[:id]) - @project = Project.find_by_identifier(@softapplication.deposit_project) + @project = @softapplication.project # 打分统计 stars_reates = @softapplication. rates(:quality) @@ -142,7 +142,8 @@ class SoftapplicationsController < ApplicationController def create @softapplication = Softapplication.new(params[:softapplication]) @softapplication.user = User.current - @softapplication.deposit_project = params[:project] + #@softapplication.deposit_project = params[:project] + @softapplication.project = Project.find_by_id(params[:project]) @softapplication.save_attachments(params[:attachments]) diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 96ea86da2..ca946bf7d 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -745,7 +745,7 @@ module ApplicationHelper tmp = Hash.new tmp={"" => ""} option.each do |project| - tmp[project.name] = project.identifier + tmp[project.name] = project.id end tmp end diff --git a/app/models/softapplication.rb b/app/models/softapplication.rb index 5e1e1bd50..f7eed43fc 100644 --- a/app/models/softapplication.rb +++ b/app/models/softapplication.rb @@ -6,10 +6,11 @@ class Softapplication < ActiveRecord::Base has_many :journals_for_messages, :as => :jour, :dependent => :destroy has_many :contesting_softapplications, :dependent => :destroy - has_many :projecting_softapplications, :dependent => :destroy + #has_many :projecting_softapplications, :dependent => :destroy belongs_to :user belongs_to :project has_many :contests, :through => :contesting_softapplications + belongs_to :project def add_jour(user, notes, reference_user_id = 0, options = {}) if options.count == 0 diff --git a/app/views/contests/show_attendingcontest.html.erb b/app/views/contests/show_attendingcontest.html.erb index 017659d72..8a567bd53 100644 --- a/app/views/contests/show_attendingcontest.html.erb +++ b/app/views/contests/show_attendingcontest.html.erb @@ -1,170 +1,177 @@ <%= render_flash_messages %>
-
<%= l(:label_wellmeaning_intimation_contentone)%>
-
1) <%= l(:label_wellmeaning_intimation_contenttwo)%>
-
2) <%= l(:label_wellmeaning_intimation_contentthree)%>
+
<%= l(:label_wellmeaning_intimation_contentone) %>
+
1) <%= l(:label_wellmeaning_intimation_contenttwo) %>
+
2) <%= l(:label_wellmeaning_intimation_contentthree) %>
<% if User.current.logged? %> -
-
- <%= l(:label_attending_contest)%>: - <%= link_to l(:label_new_attendingcontest_work), "javascript:void(0);", onclick: "$('#put-project-form').toggle();" %> -
- - -
+
+
+ <%= l(:label_attending_contest) %>: + <%= link_to l(:label_new_attendingcontest_work), "javascript:void(0);", onclick: "$('#put-project-form').toggle();" %> +
+
<% else %> -
- <%= l(:label_user_login_attending_contest) %> - <%= link_to l(:label_user_login_new), signin_path %> -
+
+ <%= l(:label_user_login_attending_contest) %> + <%= link_to l(:label_user_login_new), signin_path %> +
<% end %> @@ -176,173 +183,185 @@ <% if @contest.id == 2 or @contest.id == 3 or @contest.id == 6 %> -<% @contesting_project.sort.reverse.each do |c_project|%> -<% if c_project.project %> -
-
-
-
<%= l(:label_contest_work)%>: <%= link_to(c_project.project.name, project_path(c_project.project), :target => '_blank') %> -
- - - - <% if get_prize(c_project).nil? or get_prize(c_project) == "" %> + <% @contesting_project.sort.reverse.each do |c_project| %> + <% if c_project.project %> +
+
+
+
<%= l(:label_contest_work) %> + : <%= link_to(c_project.project.name, project_path(c_project.project), :target => '_blank') %> + +
+ + + + <% if get_prize(c_project).nil? or get_prize(c_project) == "" %> <% if @contest.deadline < Date.today %> - <%= l(:label_noawards)%> - <% else%> - <%= l(:label_noawards_current)%> + <%= l(:label_noawards) %> + <% else %> + <%= l(:label_noawards_current) %> <% end %> <% else %> - <% case get_prize(c_project) %> + <% case get_prize(c_project) %> <% when '-1' %> - <%= image_tag("/images/bid/special_reward.png")%> + <%= image_tag("/images/bid/special_reward.png") %> <% when '0' %> - <%= image_tag("/images/bid/first_reward.png")%> + <%= image_tag("/images/bid/first_reward.png") %> <% when '1' %> - <%= image_tag("/images/bid/second_reward.png")%> + <%= image_tag("/images/bid/second_reward.png") %> <% when '2' %> - <%= image_tag("/images/bid/third_reward.png")%> + <%= image_tag("/images/bid/third_reward.png") %> <% when '3' %> - <%= image_tag("/images/bid/forth_reward.png")%> + <%= image_tag("/images/bid/forth_reward.png") %> <% when '4' %> - <%= image_tag("/images/bid/fifth_reward.png")%> + <%= image_tag("/images/bid/fifth_reward.png") %> <% when '5' %> - <%= image_tag("/images/bid/qualified.png")%> + <%= image_tag("/images/bid/qualified.png") %> <% end %> <% end %> - - - - - <% if ((User.current.id == @contest.author_id) && (@contest.deadline > Date.today))||User.current.admin %> - - <%= toggle_link l(:label_reward), c_project.id.to_s %> - - + + + + <% if ((User.current.id == @contest.author_id) && (@contest.deadline > Date.today))||User.current.admin %> + + <%= toggle_link l(:label_reward), c_project.id.to_s %> + + - - <% end %> -
-
-

-
-
- - <%= l(:label_profile)%>: - <%= c_project.project.description.truncate(90, omission: '...') %> -
-
-
- <%= l(:label_attendingcontest_time)%>:<%= format_time c_project.created_at%> - <%= l(:label_attendingcontest_spoksman)%>:<%= c_project.user.name %> -
+ + + <% end %> +
+
+
+
+
+
+ + <%= l(:label_profile) %>: + <%= c_project.project.description.truncate(90, omission: '...') %> + +
+
+
+ <%= l(:label_attendingcontest_time) %> + :<%= format_time c_project.created_at %> + <%= l(:label_attendingcontest_spoksman) %> + :<%= c_project.user.name %> +
-
+
-
-
-<% end %> -
-<% end %> +
+
+ <% end %> +
+ <% end %> <% else %> -<% @contesting_softapplication.each do |c_softapplication|%> -<% if c_softapplication.softapplication %> -
-
- - <%= l(:label_contest_work)%>: - <%= link_to(c_softapplication.softapplication.name, softapplication_path(c_softapplication.softapplication), :target => '_blank') %> -
-
- -
- - <%= l(:label_profile)%>: - <%= c_softapplication.softapplication.description.truncate(90, omission: '...') %> -
-
- -
- <%= l(:label_attendingcontest_time)%>:<%= format_time c_softapplication.created_at %> - <%= l(:label_attendingcontest_spoksman)%>:<%= c_softapplication.softapplication.user.name %> -
- - -
- <%= l(:label_final_scores)%>:<%= c_softapplication.softapplication.average(:quality).try(:avg).try(:round, 2).to_i.to_s%>分 + <% @contesting_softapplication.each do |c_softapplication| %> + <% if c_softapplication.softapplication %> +
+
+ + <%= l(:label_contest_work) %>: + <%= link_to(c_softapplication.softapplication.name, softapplication_path(c_softapplication.softapplication), :target => '_blank') %> + +
+
+ +
+ + <%= l(:label_profile) %>: + <%= c_softapplication.softapplication.description.truncate(90, omission: '...') %> + +
+
+ +
+ <%= l(:label_attendingcontest_time) %> + :<%= format_time c_softapplication.created_at %> + <%= l(:label_attendingcontest_spoksman) %> + :<%= c_softapplication.softapplication.user.name %> +
+ + +
+ <%= l(:label_final_scores) %> + :<%= c_softapplication.softapplication.average(:quality).try(:avg).try(:round, 2).to_i.to_s %> + 分 - - - <% if get_prize(c_softapplication).nil? or get_prize(c_softapplication) == "" %> + + + <% if get_prize(c_softapplication).nil? or get_prize(c_softapplication) == "" %> <% if @contest.deadline < Date.today %> - <%= l(:label_noawards)%> - <% else%> - <%= l(:label_noawards_current)%> + <%= l(:label_noawards) %> + <% else %> + <%= l(:label_noawards_current) %> <% end %> <% else %> - <% case get_prize(c_softapplication) %> + <% case get_prize(c_softapplication) %> <% when '-1' %> - <%= image_tag("/images/bid/special_reward.png")%> + <%= image_tag("/images/bid/special_reward.png") %> <% when '0' %> - <%= image_tag("/images/bid/first_reward.png")%> + <%= image_tag("/images/bid/first_reward.png") %> <% when '1' %> - <%= image_tag("/images/bid/second_reward.png")%> + <%= image_tag("/images/bid/second_reward.png") %> <% when '2' %> - <%= image_tag("/images/bid/third_reward.png")%> + <%= image_tag("/images/bid/third_reward.png") %> <% when '3' %> - <%= image_tag("/images/bid/forth_reward.png")%> + <%= image_tag("/images/bid/forth_reward.png") %> <% when '4' %> - <%= image_tag("/images/bid/fifth_reward.png")%> + <%= image_tag("/images/bid/fifth_reward.png") %> <% when '5' %> - <%= image_tag("/images/bid/qualified.png")%> + <%= image_tag("/images/bid/qualified.png") %> <% end %> <% end %> - - + + - <% if ((User.current.id == @contest.author_id) && (@contest.deadline > Date.today))||User.current.admin %> -
+ <% if ((User.current.id == @contest.author_id) && (@contest.deadline > Date.today))||User.current.admin %> +
<%= toggle_link '评奖', c_softapplication.id.to_s %> -
+ +
<% end %> -
-
-
-<% end %> -
-<% end %> + +
+
+ <% end %> +
+ <% end %> <% end %> diff --git a/app/views/softapplications/index.html.erb b/app/views/softapplications/index.html.erb index 841a8a207..5b355f65c 100644 --- a/app/views/softapplications/index.html.erb +++ b/app/views/softapplications/index.html.erb @@ -16,13 +16,13 @@
<%= softapplication.description.truncate(95, omission: '...') %>
<%contest = softapplication.contests.first%> -

所属竞赛:<%= contest ? link_to(contest.name.truncate(14, omission: '...'), show_attendingcontest_contest_path(contest), title: contest.name.to_s ) : '尚未加入竞赛'%>

-

所属类别:<%= softapplication.app_type_name.truncate(10, omission: '...') %>

-

系统支持:<%= softapplication.android_min_version_available %>

+

<%=l(:label_attendingcontestwork_belongs_contest)%>:<%= contest ? link_to(contest.name.truncate(14, omission: '...'), show_attendingcontest_contest_path(contest), title: contest.name.to_s ) : '尚未加入竞赛'%>

+

<%=l(:label_attendingcontestwork_belongs_type)%>:<%= softapplication.app_type_name.truncate(10, omission: '...') %>

+

<%=l(:label_attendingcontestwork_adaptive_system)%>:<%= softapplication.android_min_version_available %>

- 开发人员:<%= softapplication.application_developers %> - 发布时间:<%=format_time softapplication.created_at %> + <%=l(:label_attendingcontestwork_developers)%>:<%= softapplication.application_developers %> + <%=l(:label_attendingcontestwork_release_time)%>:<%=format_time softapplication.created_at %>
diff --git a/app/views/softapplications/show.html.erb b/app/views/softapplications/show.html.erb index 8b9b3260d..700a326fd 100644 --- a/app/views/softapplications/show.html.erb +++ b/app/views/softapplications/show.html.erb @@ -16,38 +16,35 @@ - 所属类别:<%= @softapplication.app_type_name %> + <%=l(:label_attendingcontestwork_belongs_type)%>:<%= @softapplication.app_type_name %> <% contest = @softapplication.contests.first %> - 所属竞赛:<%= contest ? link_to(contest.name, show_attendingcontest_contest_path(contest)) : '尚未加入竞赛' %> + <%=l(:label_attendingcontestwork_belongs_contest)%>:<%= contest ? link_to(contest.name, show_attendingcontest_contest_path(contest)) : '尚未加入竞赛' %> - 发布人员:<%= @softapplication.user.name %> - 系统支持:<%= @softapplication.android_min_version_available %> + <%=l(:label_attendingcontestwork_release_person)%>:<%= @softapplication.user.name %> + <%=l(:label_attendingcontestwork_adaptive_system)%>:<%= @softapplication.android_min_version_available %> - 作品下载: + <%=l(:label_attendingcontestwork_download)%>: <% options = {:author => true, :deletable => @softapplication.user.eql?(User.current)} %><%= render :partial => 'attachments/app_link', :locals => {:attachments => @app_items, :options => options} %> - 开发人员:<%= @softapplication.application_developers %> + <%=l(:label_attendingcontestwork_developers)%>:<%= @softapplication.application_developers %> - 平均评分: <%= rating_for @softapplication, :static => true, dimension: :quality, class: 'rateable div_inline' %> - 发布时间:<%=format_time @softapplication.created_at %> + <%=l(:label_attendingcontestwork_average_scores)%>: <%= rating_for @softapplication, :static => true, dimension: :quality, class: 'rateable div_inline' %> + <%=l(:label_attendingcontestwork_release_time)%>:<%=format_time @softapplication.created_at %> - <% if (@softapplication.deposit_project != "nil" && @softapplication.deposit_project != "") %> - <%#= textilizable ("托管项目: " + @project.name) %> - 托管项目:<%= link_to "#@project", project_path(@project.id) %> - <% end %> + <% if @project %> + 托管项目:<%= link_to "#@project", project_path(@project) %> + <% end %> - - @@ -56,7 +53,7 @@
-
作品简介:
+
<%=l(:label_work_description)%>:
<%= @softapplication.description %>
@@ -64,11 +61,11 @@
-
作品得分:
+
<%=l(:label_work_scores)%>:
-
得分比例
+
<%=l(:label_work_scores_proportion)%>
<% 100.step(20, -20) do |star| %>
@@ -83,14 +80,12 @@
-
最终得分
-
<%= @softapplication.average(:quality).try(:avg).try(:round, 2).to_i.to_s %> - 分 -
+
<%=l(:label_final_scores)%>
+
<%= @softapplication.average(:quality).try(:avg).try(:round, 2).to_i.to_s %>分
<%= rating_for @softapplication, :static => true, dimension: :quality, class: 'rateable div_inline' %>
-
打分总人数
+
<%=l(:label_rating_person_amount)%>
<%= @softapplication.raters(:quality).count %>
@@ -100,7 +95,7 @@
-
作品截图:
+
<%=l(:label_work_photo)%>:
@@ -119,9 +114,9 @@
-
作品评论:
+
<%=l(:label_work_comment)%>:
<% if (User.current.logged? and User.current.id != @softapplication.user_id) %> -
评分: <%= rating_for @softapplication, dimension: :quality, class: 'rateable div_inline' %> +
<%=l(:label_work_rating)%>: <%= rating_for @softapplication, dimension: :quality, class: 'rateable div_inline' %> (您可以重新打分,打分结果以最后一次打分为主!)
<% end %> diff --git a/db/migrate/20140526104509_add_project_to_softapplication.rb b/db/migrate/20140526104509_add_project_to_softapplication.rb new file mode 100644 index 000000000..f7b6690c9 --- /dev/null +++ b/db/migrate/20140526104509_add_project_to_softapplication.rb @@ -0,0 +1,5 @@ +class AddProjectToSoftapplication < ActiveRecord::Migration + def change + add_column :softapplications, :project_id, :integer + end +end diff --git a/db/schema.rb b/db/schema.rb index 686c55260..68b9ad655 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20140526031949) do +ActiveRecord::Schema.define(:version => 20140526104509) do create_table "activities", :force => true do |t| t.integer "act_id", :null => false @@ -803,6 +803,7 @@ ActiveRecord::Schema.define(:version => 20140526031949) do t.string "application_developers" t.string "deposit_project_url" t.string "deposit_project" + t.integer "project_id" end create_table "students_for_courses", :force => true do |t|