This commit is contained in:
yystopf 2026-03-24 14:36:06 +08:00
parent ba17f2c3bd
commit 935274fcaf
3 changed files with 11 additions and 6 deletions

View File

@ -1,10 +1,10 @@
class Api::V1::ResidentExpertsController < Api::V1::BaseController
def index
@resident_experts = ResidentExpert.approved.includes(:user)
@resident_experts = @resident_experts.where(expert_category: params[:expert_category]) if params[:expert_category].present?
@resident_experts = @resident_experts.where("name like ? or department like ?", "%#{params[:search]}%", "%#{params[:search]}%") if params[:keyword].present?
@resident_expert_category_list = @resident_experts.group(:expert_category).count
@resident_expert_memos_rank_list = @resident_experts.order("users.memos_count desc").limit(5)
all_resident_experts = ResidentExpert.approved.includes(:user)
@resident_experts = all_resident_experts.where(expert_category: params[:expert_category]) if params[:expert_category].present?
@resident_experts = @resident_experts.where("name like ? or department like ?", "%#{params[:keyword]}%", "%#{params[:keyword]}%") if params[:keyword].present?
@resident_expert_category_list = all_resident_experts.group(:expert_category).count
@resident_expert_memos_rank_list = all_resident_experts.order("users.memos_count desc").limit(5)
@resident_experts = @resident_experts.order(created_at: :desc)
@resident_experts = kaminari_paginate(@resident_experts)
end
@ -27,7 +27,7 @@ class Api::V1::ResidentExpertsController < Api::V1::BaseController
end
end
def update
def reset
@resident_expert = ResidentExpert.find_by(user_id: current_user.id)
@resident_expert.attributes = resident_expert_params
@resident_expert.status = ResidentExpert::statuses[:pending]

View File

@ -1,3 +1,7 @@
class ResidentExpertAction < ApplicationRecord
belongs_to :resident_expert
enum action_type: {pending: 0, approved: 1, rejected: 2, todo: 3}
validates :action_name, presence: true
end

View File

@ -72,6 +72,7 @@ defaults format: :json do
namespace :v1 do
resources :resident_experts do
collection do
post :reset
get :current
get :actions
end