|
|
@ -8,8 +8,13 @@ class Weapps::ShixunSearchService < ApplicationService
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
def call
|
|
|
|
def call
|
|
|
|
|
|
|
|
# 全部实训/我的实训
|
|
|
|
|
|
|
|
type = params[:type] || "all"
|
|
|
|
shixuns = laboratory.shixuns.published.no_jupyter
|
|
|
|
shixuns = laboratory.shixuns.published.no_jupyter
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if type == "mine"
|
|
|
|
|
|
|
|
@shixuns = @shixuns.where(id: User.current.shixuns)
|
|
|
|
|
|
|
|
else
|
|
|
|
# 超级管理员用户显示所有未隐藏的实训、非管理员显示所有已发布的实训(对本单位公开且未隐藏未关闭)
|
|
|
|
# 超级管理员用户显示所有未隐藏的实训、非管理员显示所有已发布的实训(对本单位公开且未隐藏未关闭)
|
|
|
|
if User.current.admin? || User.current.business? || !User.current.school_id
|
|
|
|
if User.current.admin? || User.current.business? || !User.current.school_id
|
|
|
|
shixuns = shixuns.where(hidden: 0)
|
|
|
|
shixuns = shixuns.where(hidden: 0)
|
|
|
@ -19,6 +24,7 @@ class Weapps::ShixunSearchService < ApplicationService
|
|
|
|
|
|
|
|
|
|
|
|
shixuns = shixuns.where("use_scope = 0 or shixuns.id in (#{shixun_ids})").unhidden.publiced.or(shixuns.where(id: User.current.shixuns))
|
|
|
|
shixuns = shixuns.where("use_scope = 0 or shixuns.id in (#{shixun_ids})").unhidden.publiced.or(shixuns.where(id: User.current.shixuns))
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
## 筛选 难度
|
|
|
|
## 筛选 难度
|
|
|
|
if params[:diff].present? && params[:diff].to_i != 0
|
|
|
|
if params[:diff].present? && params[:diff].to_i != 0
|
|
|
|