public function update(ProjectRequest $request, $id = 0) { $speed = []; $time = $request->get('time'); $event = $request->get('event'); foreach ($time as $key => $value) { if ($time[$key] != '') { $speed[] = ['time' => strip_tags($time[$key]), 'event' => strip_tags($event[$key])]; } } $speed = array_sort($speed, function ($value) { return $value['time']; }); $speed = json_encode($speed); $project = Project::findOrFail($id); $project->update(['title' => $request->get('title'), 'category_id' => $request->get('category_id'), 'sort' => $request->get('sort'), 'views' => $request->get('views'), 'tag' => $request->get('tag'), 'is_recommend' => $request->get('is_recommend'), 'is_show' => $request->get('is_show'), 'cover' => $request->get('cover'), 'thumb' => $request->get('thumb'), 'cost' => $request->get('cost'), 'period' => $request->get('period'), 'person_id' => $request->get('person_id'), 'info' => $request->get('info'), 'url' => $request->get('url'), 'keywords' => $request->get('keywords'), 'description' => $request->get('description'), 'text' => $request->get('text'), 'speed' => $speed, 'hash' => $request->get('hash')]); if ($project) { Cache::store('project')->flush(); Attachment::where(['hash' => $project->hash, 'project_id' => 0])->update(['project_id' => $project->id]); $message = '项目修改成功,请选择操作!'; $url = []; $url['返回项目列表'] = ['url' => route('admin.projects.index')]; if ($project->category_id > 0) { $url['返回栏目项目列表'] = ['url' => route('admin.projects.show', $project->category_id)]; } $url['继续添加'] = ['url' => route('admin.projects.create')]; $url['继续编辑'] = ['url' => route('admin.projects.edit', $project->id)]; $url['查看项目'] = ['url' => route('project.show', $project->id), 'target' => '_blank']; return Theme::view('admin.message.show', compact('message', 'url')); } }
/** * プロジェクト削除(Ajax) */ public function postDelete(Request $request) { $this->isAjax($request); $result = DB::transaction(function () use($request) { // プロジェクト削除 $project = Project::findOrFail($request->id); $project->delete(); return $project->id; }); return \Response::json($result); }
/** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { /** @var Project $project */ $project = Project::findOrFail($id); /** @var Ticket $ticket */ foreach ($project->tickets()->get() as $ticket) { $ticket->delete(); } $project->delete(); return redirect('projects'); }