You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
educoder/app/controllers/admins/project_package_applies_con...

46 lines
1.3 KiB

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