diff --git a/app/Http/Controllers/ProgramConstructController.php b/app/Http/Controllers/ProgramConstructController.php
index 7f0c177..d191b62 100644
--- a/app/Http/Controllers/ProgramConstructController.php
+++ b/app/Http/Controllers/ProgramConstructController.php
@@ -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,10 +17,26 @@ 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", [
+            "keyword" => $keyword,
             "programs"=>$programs,
         ]);
     }
diff --git a/resources/views/program/construct/index.blade.php b/resources/views/program/construct/index.blade.php
index 8d5c0f4..94a49b1 100644
--- a/resources/views/program/construct/index.blade.php
+++ b/resources/views/program/construct/index.blade.php
@@ -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>