From 8079254089ed1b402eed840fa69f2a0fffcebabd Mon Sep 17 00:00:00 2001 From: huang Date: Fri, 11 Mar 2016 15:51:45 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E5=A2=9E=E5=8A=A0=E8=AE=BF?= =?UTF-8?q?=E9=97=AE=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/courses_controller.rb | 2 ++ app/controllers/organizations_controller.rb | 2 ++ app/controllers/projects_controller.rb | 2 ++ app/controllers/users_controller.rb | 4 ++++ db/migrate/20160311072540_add_visits_to_user.rb | 5 +++++ db/migrate/20160311072622_add_visits_to_project.rb | 5 +++++ db/migrate/20160311072718_add_visits_to_course.rb | 5 +++++ db/migrate/20160311072819_add_visits_to_organization.rb | 5 +++++ db/schema.rb | 6 +++++- 9 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 db/migrate/20160311072540_add_visits_to_user.rb create mode 100644 db/migrate/20160311072622_add_visits_to_project.rb create mode 100644 db/migrate/20160311072718_add_visits_to_course.rb create mode 100644 db/migrate/20160311072819_add_visits_to_organization.rb diff --git a/app/controllers/courses_controller.rb b/app/controllers/courses_controller.rb index 708ac9a14..08559b2ad 100644 --- a/app/controllers/courses_controller.rb +++ b/app/controllers/courses_controller.rb @@ -838,6 +838,8 @@ class CoursesController < ApplicationController # render_403 # return # end + # 统计访问量 + @course.update_attribute(:visits, @course.visits.to_i + 1) #更新创建课程消息状态 create_course_messages = @course.course_messages.where("user_id =? and course_message_type =? and course_id =? and viewed =?", User.current.id, 'Course', @course.id, 0) create_course_messages.update_all(:viewed => true) diff --git a/app/controllers/organizations_controller.rb b/app/controllers/organizations_controller.rb index f225e7f50..711663c3d 100644 --- a/app/controllers/organizations_controller.rb +++ b/app/controllers/organizations_controller.rb @@ -69,6 +69,8 @@ class OrganizationsController < ApplicationController def show if @organization.is_public? || User.current.admin? || User.current.member_of_org?(@organization) @organization = Organization.find(params[:id]) + # 统计访问量 + @organization.update_attribute(:visits, @organization.visits.to_i + 1) if params[:org_subfield_id] @org_subfield = OrgSubfield.find(params[:org_subfield_id]) @org_subfield_ids = @org_subfield.org_document_comments.map(&:id) << 0 diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index 3d5030c29..05c80a9fc 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -298,6 +298,8 @@ class ProjectsController < ApplicationController if params[:jump] && redirect_to_project_menu_item(@project, params[:jump]) return end + # 统计访问量 + @project.update_attribute(:visits, @project.visits.to_i + 1) =begin cond = @project.project_condition(Setting.display_subprojects_issues?) has = { diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index 96fb8cfce..7fe146926 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -1174,6 +1174,10 @@ class UsersController < ApplicationController end def show + # 统计访问量 + unless User.current == @user + @user.update_attribute(:visits, @user.visits.to_i + 1) + end #更新用户申请成为课程老师或教辅消息的状态 if params[:course_id] != nil join_course_messages = CourseMessage.where("course_id =? and course_message_type =? and user_id =? and course_message_id =? and viewed =?", diff --git a/db/migrate/20160311072540_add_visits_to_user.rb b/db/migrate/20160311072540_add_visits_to_user.rb new file mode 100644 index 000000000..2169a4b0b --- /dev/null +++ b/db/migrate/20160311072540_add_visits_to_user.rb @@ -0,0 +1,5 @@ +class AddVisitsToUser < ActiveRecord::Migration + def change + add_column :users, :visits, :integer, :default => 0 + end +end diff --git a/db/migrate/20160311072622_add_visits_to_project.rb b/db/migrate/20160311072622_add_visits_to_project.rb new file mode 100644 index 000000000..1e67d9409 --- /dev/null +++ b/db/migrate/20160311072622_add_visits_to_project.rb @@ -0,0 +1,5 @@ +class AddVisitsToProject < ActiveRecord::Migration + def change + add_column :projects, :visits, :integer, :default => 0 + end +end diff --git a/db/migrate/20160311072718_add_visits_to_course.rb b/db/migrate/20160311072718_add_visits_to_course.rb new file mode 100644 index 000000000..4d4b682cf --- /dev/null +++ b/db/migrate/20160311072718_add_visits_to_course.rb @@ -0,0 +1,5 @@ +class AddVisitsToCourse < ActiveRecord::Migration + def change + add_column :courses, :visits, :integer, :default => 0 + end +end diff --git a/db/migrate/20160311072819_add_visits_to_organization.rb b/db/migrate/20160311072819_add_visits_to_organization.rb new file mode 100644 index 000000000..74bbcb5c9 --- /dev/null +++ b/db/migrate/20160311072819_add_visits_to_organization.rb @@ -0,0 +1,5 @@ +class AddVisitsToOrganization < ActiveRecord::Migration + def change + add_column :organizations, :visits, :integer, :default => 0 + end +end diff --git a/db/schema.rb b/db/schema.rb index abaafdf80..d738b90c4 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 => 20160310033019) do +ActiveRecord::Schema.define(:version => 20160311072819) do create_table "activities", :force => true do |t| t.integer "act_id", :null => false @@ -508,6 +508,7 @@ ActiveRecord::Schema.define(:version => 20160310033019) do t.integer "is_excellent", :default => 0 t.integer "excellent_option", :default => 0 t.integer "is_copy", :default => 0 + t.integer "visits", :default => 0 end create_table "custom_fields", :force => true do |t| @@ -1284,6 +1285,7 @@ ActiveRecord::Schema.define(:version => 20160310033019) do t.datetime "created_at", :null => false t.datetime "updated_at", :null => false t.boolean "allow_guest_download", :default => true + t.integer "visits", :default => 0 end create_table "phone_app_versions", :force => true do |t| @@ -1443,6 +1445,7 @@ ActiveRecord::Schema.define(:version => 20160310033019) do t.integer "acts_count", :default => 0 t.integer "journals_count", :default => 0 t.integer "boards_reply_count", :default => 0 + t.integer "visits", :default => 0 end add_index "projects", ["lft"], :name => "index_projects_on_lft" @@ -1902,6 +1905,7 @@ ActiveRecord::Schema.define(:version => 20160310033019) do t.string "mail_notification", :default => "", :null => false t.string "salt", :limit => 64 t.integer "gid" + t.integer "visits", :default => 0 end add_index "users", ["auth_source_id"], :name => "index_users_on_auth_source_id"