节目建设支持搜索

This commit is contained in:
Jerry Yan 2022-11-01 17:55:12 +08:00
parent 0f7fc6a5f0
commit d9c490e768
2 changed files with 21 additions and 2 deletions

View File

@ -7,8 +7,7 @@ use App\Models\ProgramVideos;
use App\Models\VideoComments;
use App\Models\VideoParts;
use App\Util\ProgramVideoUtil;
use App\Util\TimeUtil;
use Carbon\Carbon;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\QueryException;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller as BaseController;
@ -18,8 +17,23 @@ class ProgramConstructController extends BaseController
{
// region Views
public function index(Request $request) {
$keyword = $request->get("keyword", "");
$status = $request->get("status", "0");
$query = Programs::query()->with(["appends", "video_pivots.video"])->where("status", $status, 0)->orderByDesc("created_at");
if ($keyword) {
$keyword_split = explode(" ", $keyword);
foreach ($keyword_split as $_keyword) {
$_keyword = trim($_keyword);
if (mb_strlen($_keyword) > 0) {
$query->where(function (Builder $_query) use ($_keyword) {
$_query
->where("name", "like", "%{$_keyword}%")
->orWhere("difficulty", "like", "%{$_keyword}%")
->orWhere("desc", "like", "%{$_keyword}%");
});
}
}
}
$programs = $query->paginate(10)->withQueryString();;
return view("program.construct.index", [
"programs"=>$programs,

View File

@ -7,6 +7,11 @@
</head>
<body>
@include("common.header")
<form class="form" action="">
<label for="keyword">查找节目关键词,空格隔开查找多个关键词</label>
<input class="border border-black" type="text" name="keyword" id="keyword" value="{{$keyword}}">
<input class="border border-black" type="submit">
</form>
<div class="block my-2">
<a class="px-6 py-2 inline-block rounded-full bg-cyan-600 text-white"
href="{{ route("program.construct.add") }}">添加</a>