diff --git a/app/Http/Controllers/ProgramAppendConstructController.php b/app/Http/Controllers/ProgramAppendConstructController.php index f1c009a..7ecf263 100644 --- a/app/Http/Controllers/ProgramAppendConstructController.php +++ b/app/Http/Controllers/ProgramAppendConstructController.php @@ -4,6 +4,7 @@ namespace App\Http\Controllers; use App\Models\ProgramAppends; use App\Models\Programs; +use Carbon\Carbon; use Illuminate\Http\Request; use Illuminate\Routing\Controller as BaseController; @@ -36,8 +37,18 @@ class ProgramAppendConstructController extends BaseController } public function copy_view(Request $request, Programs $program) { + $programsId = Programs::query()->select("id") + ->where("created_at", "<", $program->created_at->addWeeks(2)) + ->where("created_at", ">", $program->created_at->addWeeks(-2)) + ->pluck("id"); + $broadcastList = ProgramAppends::query()->groupBy("name", "from") + ->whereIn("program_id", $programsId) + ->where("broadcast", "=", 1) + ->select("name", "from")->selectRaw("max(id) as id") + ->orderBy("id")->get(); return view("program.construct.append.copy_broadcast", [ "program" => $program, + "broadcastList" => $broadcastList, ]); } // endregion @@ -61,13 +72,15 @@ class ProgramAppendConstructController extends BaseController public function copy_append(Request $request, Programs $program) { $payload = $request->validate([ - "id" => ["required", "numeric", "exists:App\Models\ProgramAppends,id"] + "ids" => ["required", "array", "exists:App\Models\ProgramAppends,id"] ]); - $original_append = ProgramAppends::query()->findOrFail($payload["id"]); - $append = $original_append->replicate(); - $program->appends()->save($append); + $original_appends = ProgramAppends::query()->findMany($payload["ids"]); + $appends = $original_appends->map(function ($append) { + return $append->replicate(); + }); + $program->appends()->saveMany($appends); return redirect(route("program.construct.append.list", [ - "program"=>$append->program->id, + "program"=>$program->id, ])); } // endregion diff --git a/app/View/Components/Appends/AppendList.php b/app/View/Components/Appends/AppendList.php new file mode 100644 index 0000000..666b271 --- /dev/null +++ b/app/View/Components/Appends/AppendList.php @@ -0,0 +1,34 @@ +appends = $appends; + $this->enableEdit = $enableEdit; + } + + public function render() + { + return view('components.appends.list'); + } +} diff --git a/app/View/Components/Appends/AppendListItem.php b/app/View/Components/Appends/AppendListItem.php new file mode 100644 index 0000000..3ff5d2a --- /dev/null +++ b/app/View/Components/Appends/AppendListItem.php @@ -0,0 +1,32 @@ +append = $append; + $this->enableEdit = $enableEdit; + } + + public function render() + { + return view('components.appends.item'); + } +} diff --git a/resources/views/components/appends/item.blade.php b/resources/views/components/appends/item.blade.php new file mode 100644 index 0000000..eab7b71 --- /dev/null +++ b/resources/views/components/appends/item.blade.php @@ -0,0 +1,24 @@ + + + @if($enableEdit) + $append->id])}}">编辑 + @endif + + + + @if($append->is_original) + 点播 + @else + 追加 + @endif + + + @if($append->is_original) + 点播 + @else + {{$append->name}} + @endif + + {{$append->price}} + {{$append->append}} + diff --git a/resources/views/components/appends/list.blade.php b/resources/views/components/appends/list.blade.php new file mode 100644 index 0000000..0c569a3 --- /dev/null +++ b/resources/views/components/appends/list.blade.php @@ -0,0 +1,16 @@ + + + + + + + + + + + + @foreach($appends as $append) + + @endforeach + +
老板类型要求分值补充说明
diff --git a/resources/views/program/construct/append/copy_broadcast.blade.php b/resources/views/program/construct/append/copy_broadcast.blade.php index b6fe38a..ba30275 100644 --- a/resources/views/program/construct/append/copy_broadcast.blade.php +++ b/resources/views/program/construct/append/copy_broadcast.blade.php @@ -25,17 +25,28 @@ @endif @endif -