admin-shixuns

dev_aliyun_beta
SylorHuang 6 years ago
parent 43110605c1
commit 5d1acd8a5d

@ -0,0 +1,46 @@
class Managements::ProjectPackageAppliesController < Managements::BaseController
before_filter :set_menu_type
def index
applies = ProjectPackageApply.order('project_package_applies.updated_at desc')
search = params[:search].to_s.strip
if search.present?
applies = applies.joins(:project_package).where('project_packages.title like :search', search: "%#{search}%")
end
applies = applies.where(status: params[:status].presence || :pending)
@applies = paginateHelper applies.includes(project_package: { creator: :user_extensions })
respond_to do |format|
format.js
format.html
end
end
def agree
ProjectPackages::AgreeApplyService.new(current_apply).call
render json: { status: 0 }
rescue ProjectPackages::AgreeApplyService::Error => e
render json: { status: -1, message: e.message }
end
def refuse
ProjectPackages::RefuseApplyService.new(current_apply, reason: params[:reason]).call
render json: { status: 0 }
rescue ProjectPackages::RefuseApplyService::Error => e
render json: { status: -1, message: e.message }
end
private
def current_apply
@_current_apply ||= ProjectPackageApply.find(params[:id])
end
def set_menu_type
@menu_type = 10
@sub_type = 9
end
end

@ -0,0 +1,16 @@
class Admins::ShiXunsController < Admins::BaseController
def index
params[:status] ||= 'pending'
applies = Admins::LibraryApplyQuery.call(params)
@library_applies = paginate applies.preload(library: :user)
end
def destroy
end
end

@ -0,0 +1,38 @@
class Admins::ShiXunQuery < ApplicationQuery
include CustomSortable
attr_reader :params
sort_columns :updated_at, default_by: :updated_at, default_direction: :desc
def initialize(params)
@params = params
end
def call
status =
case params[:status]
when "editing" then [0]
when "pending" then [1]
when "processed" then [2]
else
[0,1,2]
end
applies = LibraryApply.where(status: status) if status.present?
look_name = params[:look_name]
if look_name.present?
applies = applies.where()
end
# 关键字模糊查询
keyword = params[:keyword].to_s.strip
if keyword.present?
applies = applies.joins(:library)
.where('title LIKE :keyword OR uuid LIKE :keyword', keyword: "%#{keyword}%")
end
custom_sort(applies, params[:sort_by], params[:sort_direction])
end
end

@ -36,6 +36,11 @@
<!-- <li><%#= sidebar_item('#', '自动授权列表', icon: 'id-card', controller: '') %></li>-->
<% end %>
</li>
<li>
<%= sidebar_item_group('#shixuns-menu', '实训列表', icon: 'jsfiddle') do %>
<li><%= sidebar_item(admins_shixuns_path, '精选实训', icon: 'fire', controller: 'admins-shixuns') %></li>
<% end %>
</li>
<li>
<%= sidebar_item_group('#apply-review-submenu', '审核', icon: 'gavel') do %>

@ -792,6 +792,13 @@ Rails.application.routes.draw do
post :refuse
end
end
resources :project_package_applies, only: [:index] do
member do
post :agree
post :refuse
end
end
resources :shixuns, only: [:index,:destroy]
end
#git 认证回调

Loading…
Cancel
Save