123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181 |
- <?php
- namespace App\Http\Controllers;
- use App\Models\Article;
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\Storage;
- use Illuminate\Support\Facades\Auth;
- use Illuminate\Support\Facades\Log;
- class ArticleController extends Controller
- {
- //获取文章信息列表
- public function getArticleList(Request $request){
- $input=$request->all();
- $page_size=$input['page_size'];
- $page_index=$input['page_index'];
- $num = ($page_index - 1) * $page_size;
- $search_name=$input['search_name'];
- $where=[];
- $count=Article::where('title', 'like', '%' . $search_name . '%')
- ->where(function ($query) {
- $query->where('type', '=', '1')
- ->orWhere('type', '=', '0');
- })
- ->where($where)
- ->count();
- if($count==0){
- $this->error('400001','没有数据');
- }
- $list=Article::where('title', 'like', '%' . $search_name . '%')
- ->where(function ($query) {
- $query->where('type', '=', '1')
- ->orWhere('type', '=', '0');
- })
- ->where($where)
- ->orderBy('id','desc')
- ->skip($num)->take($page_size)
- ->get();
- if(empty($list)){
- return $this->error('400002','没有获取到数据');
- }
- return $this->success_list($list,'success',$count);
- }
- //获取直播信息列表
- public function getLiveViewList(Request $request){
- $input=$request->all();
- $page_size=$input['page_size'];
- $page_index=$input['page_index'];
- $num = ($page_index - 1) * $page_size;
- $search_name=$input['search_name'];
- $where=[];
- $where['type']=2;
- $count=Article::where('title', 'like', '%' . $search_name . '%')
- ->where($where)
- ->count();
- if($count==0){
- $this->error('400001','没有数据');
- }
- $list=Article::where('title', 'like', '%' . $search_name . '%')
- ->where($where)
- ->orderBy('id','desc')
- ->skip($num)->take($page_size)
- ->get();
- if(empty($list)){
- return $this->error('400002','没有获取到数据');
- }
- return $this->success_list($list,'success',$count);
- }
- //上传图片
- public function uploadArticleImage(Request $request){
- $path = $request->file('file')->store('articel');
- $url = Storage::url($path);
- if($url){
- return $this->success($url);
- }
- return $this->error();
- }
- //添加直播信息
- public function uploadLiveView(Request $request){
- $input=$request->all();
- $data['title']=$input['title'];
- $data['label']=2;// 1表示clwz,2表示其他
- $data['aid']=Auth::user()->id;
- $data['status']=1; // 0为草稿 1为正常 2为删除
- $data['type']=2;// 1表示视频, 0表示文章 ,2直播
- $data['imgurl']=$input['thumb'];
- $data['contents']=$input['link'];
- $data['summary']=$input['desc'];
- $data['startime']=$input['start_time'];
- $row=Article::create($data);
- if($row){
- Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')添加直播成功,id:'.$row->id);
- return $this->success([]);
- }
- return $this->error();
- }
- //添加社区信息
- public function uploadArticle(Request $request){
- $input=$request->all();
- $data['title']=$input['title'];
- $data['label']=$input['label'];// 1表示clwz,2表示其他
- $data['aid']=Auth::user()->id;
- $data['author']=$input['author'];
- $data['status']=1;
- $data['type']=$input['type'];// 1表示视频,0表示文章
- $data['contents']=$input['contents'];
- $data['summary']=$this->make_excerpt($input['contents']);
- $row=Article::create($data);
- if($row){
- Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')添加文章成功,id:'.$row->id);
- return $this->success([]);
- }
- return $this->error();
- }
- //截取简介
- function make_excerpt($value, $length = 200)
- {
- $excerpt = trim(preg_replace('/\r\n|\r|\n+/', ' ', strip_tags($value)));
- return str_limit($excerpt, $length);
- }
- //修改社区信息
- public function updateArticle(Request $request){
- $input=$request->all();
- $data['title']=$input['title'];
- $data['label']=$input['label'];// 1表示clwz,2表示其他
- $data['aid']=Auth::user()->id;
- $data['author']=$input['author'];
- $data['type']=$input['type'];// 1表示视频,0表示文章
- // $data['imgurl']=$input['imgurl'];
- $data['contents']=$input['contents'];
- $data['summary']=$this->make_excerpt($input['contents']);
- $row=Article::where('id',$input['id'])->update($data);
- if($row){
- Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')修改文章成功,id:'.$input['id']);
- return $this->success([]);
- }
- return $this->error();
- }
- //删除社区信息
- public function destoryArticle(Request $request){
- $input=$request->all();
- $article=Article::find($input['id']);
- $row=$article->delete();
- if($row){
- Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')删除文章成功,id:'.$input['id']);
- return $this->success([]);
- }
- return $this->error();
- }
- //修改直播信息
- public function updateArticleLive(Request $request){
- $input=$request->all();
- $data['title']=$input['title'];
- // $data['label']=2;// 1表示clwz,2表示其他
- $data['aid']=Auth::user()->id;
- // $data['status']=1; // 0为草稿 1为正常 2为删除
- // $data['type']=2;// 1表示视频, 0表示文章 ,2直播
- $data['imgurl']=$input['thumb'];
- $data['contents']=$input['link'];
- $data['summary']=$input['desc'];
- $data['startime']=$input['start_time'];
- $row=Article::where('id',$input['id'])->update($data);
- if($row){
- Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')修改直播成功,id:'.$input['id']);
- return $this->success([]);
- }
- return $this->error();
- }
- //删除直播信息
- public function destoryArticleLive(Request $request){
- $input=$request->all();
- $article=Article::find($input['id']);
- $row=$article->delete();
- if($row){
- Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')删除直播成功,id:'.$input['id']);
- return $this->success([]);
- }
- return $this->error();
- }
- }
|