支持追加内容,补充大部分地方的SubQuery提示

This commit is contained in:
Jerry Yan 2022-08-10 22:25:45 +08:00
parent fb132cc088
commit 4b3e614a2d
4 changed files with 20 additions and 7 deletions

View File

@ -4,6 +4,7 @@ namespace App\Http\Controllers;
use App\Models\VideoDanmakus;
use App\Models\Videos;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller as BaseController;
@ -29,7 +30,7 @@ class DanmakuQueryController extends BaseController
$keyword_split = explode(" ", $keyword);
foreach ($keyword_split as $_keyword) {
if (mb_strlen(trim($_keyword)) > 0) {
$query->where(function ($_query) use ($_keyword) {
$query->where(function (Builder $_query) use ($_keyword) {
$_query->where("content", "like", "%{$_keyword}%", "or")->where("from", "like", "%${_keyword}%", "or");
});
}

View File

@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use App\Models\Programs;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller as BaseController;
@ -15,15 +16,25 @@ class ProgramQueryController extends BaseController
$keyword_split = explode(" ", $keyword);
foreach ($keyword_split as $_keyword) {
if (mb_strlen(trim($_keyword)) > 0) {
$query->where(function ($_query) use ($_keyword) {
$query->where(function (Builder $_query) use ($_keyword) {
$_query
->where("name", "like", "%{$_keyword}%", "or")
->where("difficulty", "like", "%{$_keyword}%", "or")
->where("desc", "like", "%${_keyword}%", "or");
->where("name", "like", "%{$_keyword}%")
->orWhere("difficulty", "like", "%{$_keyword}%")
->orWhere("desc", "like", "%{$_keyword}%")
->orWhereHas("appends", function (Builder $__query) use ($_keyword) {
$__query->where("from", "like", "%{$_keyword}%");
$__query->orWhere(function (Builder $sub_query) use ($_keyword) {
$sub_query
->where("is_original", "=", 0)
->where("name", "like", "%{$_keyword}%");
});
})
;
});
}
}
}
$query->dump();
$programs = $query->paginate(10)->withQueryString();
return view("program.index", [
"keyword" => $keyword,

View File

@ -4,6 +4,7 @@ namespace App\Http\Controllers;
use App\Models\Programs;
use App\Models\ProgramVideos;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Support\Carbon;
@ -129,7 +130,7 @@ class ProgramVideoConstructController extends BaseController
$program_videos = ProgramVideos::query()
->where("video_bvid", "=", $program_video->video_bvid)
->where("id", "!=", $program_video->id)
->where(function ($query) use ($program_video) {
->where(function (Builder $query) use ($program_video) {
$query->where("created_at", ">", $program_video->created_at)->orWhere("created_at", "=", null);
})
->get();

View File

@ -9,7 +9,7 @@
@include("common.header")
<div class="font-bold">数据待补充完整,需要查较为久远的节目,请先点击上方节目单查询</div>
<form class="form" action="">
<label for="keyword">查找节目关键词,空格隔开查找多个关键词,暂不支持通过点播老板搜索</label>
<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>