forked from Trustie/forgeplus
新增:一些json数据返回
This commit is contained in:
parent
935274fcaf
commit
31e8b8384b
|
|
@ -1,4 +1,6 @@
|
|||
class Api::V1::ResidentExpertsController < Api::V1::BaseController
|
||||
before_action :require_login, except: [:index]
|
||||
|
||||
def index
|
||||
all_resident_experts = ResidentExpert.approved.includes(:user)
|
||||
@resident_experts = all_resident_experts.where(expert_category: params[:expert_category]) if params[:expert_category].present?
|
||||
|
|
|
|||
|
|
@ -0,0 +1,18 @@
|
|||
class Api::V1::Users::MemosController < Api::V1::BaseController
|
||||
before_action :load_observe_user
|
||||
|
||||
def index
|
||||
@resident_expert = @observe_user.resident_expert
|
||||
@memos = @observe_user.memos.order("#{sort_by} #{sort_direction}")
|
||||
@memos = kaminari_paginate(@memos)
|
||||
end
|
||||
|
||||
private
|
||||
def sort_by
|
||||
Memo.column_names.include?(params[:sort_by]) ? params[:sort_by] : "created_at"
|
||||
end
|
||||
|
||||
def sort_direction
|
||||
%w(asc desc).include?(params[:sort_direction]) ? params[:sort_direction] : "desc"
|
||||
end
|
||||
end
|
||||
|
|
@ -42,6 +42,11 @@
|
|||
|
||||
|
||||
class Memo < ApplicationRecord
|
||||
include Watchable
|
||||
|
||||
belongs_to :author, :class_name => "User", foreign_key: :author_id, counter_cache: true
|
||||
|
||||
def meno_tag_name
|
||||
tag_id.to_i > 3 ? "" : ["", "交流", "求助", "新闻"][tag_id.to_i]
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -0,0 +1,17 @@
|
|||
json.user do
|
||||
json.partial! 'user_simple', locals: { user: resident_expert.user }
|
||||
end
|
||||
json.id resident_expert.id
|
||||
json.name resident_expert.name
|
||||
json.gender resident_expert.gender
|
||||
json.expert_category resident_expert.expert_category
|
||||
json.academic_degree resident_expert.academic_degree
|
||||
json.department resident_expert.department
|
||||
json.title resident_expert.title
|
||||
json.territory_area1 resident_expert.territory_area1
|
||||
json.territory_area2 resident_expert.territory_area2
|
||||
json.territory_area3 resident_expert.territory_area3
|
||||
json.introduction resident_expert.introduction
|
||||
json.status resident_expert.status
|
||||
json.created_at resident_expert.created_at.strftime("%Y-%m-%d %H:%M:%S")
|
||||
json.updated_at resident_expert.updated_at.strftime("%Y-%m-%d %H:%M:%S")
|
||||
|
|
@ -4,11 +4,19 @@ if user.present?
|
|||
json.name user.real_name
|
||||
json.login user.login
|
||||
json.image_url url_to_avatar(user)
|
||||
json.admin user.admin
|
||||
json.identity user.identity
|
||||
json.memos_count user.memos_count
|
||||
json.fans_count user.watcher_users.size
|
||||
json.stars_count user.watchers.size
|
||||
else
|
||||
json.name "已注销"
|
||||
json.login user&.login
|
||||
json.type "User"
|
||||
json.image_url Rails.application.config_for(:configuration)['platform_url'] + "/" + "images/account/del.svg"
|
||||
json.admin false
|
||||
json.identity nil
|
||||
json.memos_count 0
|
||||
json.fans_count 0
|
||||
json.stars_count 0
|
||||
end
|
||||
|
|
@ -1,3 +1,6 @@
|
|||
json.user do
|
||||
json.partial! 'user_simple', locals: { user: @resident_expert.user }
|
||||
end
|
||||
json.id @resident_expert.id
|
||||
json.name @resident_expert.name
|
||||
json.gender @resident_expert.gender
|
||||
|
|
|
|||
|
|
@ -0,0 +1,18 @@
|
|||
json.apply_destroy memo.apply_destroy
|
||||
json.banned_permission memo.banned_permission
|
||||
json.content memo.content
|
||||
json.cover_url memo.cover_url
|
||||
json.forum_section_id memo.forum_section_id
|
||||
json.forum_section_title memo.forum_section_title
|
||||
json.id memo.id
|
||||
json.is_fine memo.is_fine
|
||||
json.is_original memo.is_original
|
||||
json.memo_watched current_user.watched?(memo)
|
||||
json.new_reply memo.new_reply
|
||||
json.praises_count memo.praises_count
|
||||
json.published_time memo.published_at.strftime("%Y-%m-%d %H:%M:%S")
|
||||
json.replies_count memo.replies_count
|
||||
json.sticky memo.sticky
|
||||
json.subject memo.subject
|
||||
json.viewed_count memo.viewed_count
|
||||
json.tag_name memo.meno_tag_name
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
json.total_count @memos.total_count
|
||||
json.resident_expert do
|
||||
json.partial! 'api/v1/resident_experts/resident_expert', locals: { resident_expert: @resident_expert }
|
||||
end
|
||||
json.memos do |memo|
|
||||
json.partial! 'api/v1/users/memos/memo', locals: { memo: memo }
|
||||
end
|
||||
Loading…
Reference in New Issue