140 lines
3.4 KiB
PHP
140 lines
3.4 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Admin;
|
|
|
|
use App\Models\Article;
|
|
use App\Models\Category;
|
|
use App\Models\NoticeArticle;
|
|
use App\Models\Sms;
|
|
use Illuminate\Http\Request;
|
|
use App\Http\Controllers\Controller;
|
|
|
|
class ArticleController extends BaseDefaultController
|
|
{
|
|
public function setPagesInfo()
|
|
{
|
|
$this->pages = [
|
|
'name' => '文章内容'
|
|
];
|
|
}
|
|
|
|
public function postDataDb($request, $id = '')
|
|
{
|
|
$data=$request->all();
|
|
return $data;
|
|
}
|
|
|
|
public function checkRule( $id='')
|
|
{
|
|
if (!$id) {
|
|
return [
|
|
'name' => 'required',
|
|
'content' =>'required',
|
|
|
|
];
|
|
}
|
|
return [
|
|
'name' => 'required',
|
|
'content' =>'required',
|
|
|
|
];
|
|
}
|
|
public function setErrorMsg(){
|
|
$messages = [
|
|
|
|
];
|
|
return $messages;
|
|
}
|
|
public function setModel()
|
|
{
|
|
return new Article();
|
|
}
|
|
public function content($id){
|
|
//单页内容设置
|
|
$category=Category::find($id);
|
|
//判断是否已经有内容
|
|
$article=$this->setModel()->where('category_id',$id)->first();
|
|
|
|
$data['category']=$category;
|
|
$data['article']=[];
|
|
if($article)
|
|
{
|
|
$data['article']=$article->toArray();
|
|
}
|
|
return $this->display($data);
|
|
}
|
|
public function contentPost(Request $request){
|
|
$data=[
|
|
'name'=>$request->input('name'),
|
|
'content'=>$request->input('content'),
|
|
'category_id'=>$request->input('category_id')
|
|
];
|
|
$modle=$this->setModel()::where('category_id',$request->category_id)->first();
|
|
if($modle)
|
|
{
|
|
$r=$modle->update($data);
|
|
|
|
|
|
}else
|
|
{
|
|
$r=$this->setModel()::create($data);
|
|
}
|
|
if($r)
|
|
{
|
|
|
|
|
|
$result=1;
|
|
$msg_str='内容更新成功';
|
|
}else
|
|
{
|
|
$result=0;
|
|
$msg_str='内容更新失败';
|
|
}
|
|
$this->insertLog($msg_str);
|
|
return response()->json([
|
|
'error'=>$result?0:1,
|
|
'msg'=>$msg_str
|
|
]);
|
|
}
|
|
|
|
public function apiJson(Request $request)
|
|
{
|
|
$offset = $request->input('page', 1);
|
|
$pagesize = $request->input('limit', 1);
|
|
$offset = ($offset - 1) * $pagesize;
|
|
|
|
$order_id = $request->input('sort', 'id');
|
|
$order_type = $request->input('order', 'desc');
|
|
$debug = $request->input('debug', 0);
|
|
$model = $this->setModel();
|
|
|
|
|
|
|
|
|
|
|
|
$total = $model->count();
|
|
$result = $model->skip($offset)->orderBy($order_id, $order_type)->orderBy('id', 'desc')->take($pagesize)->get();;
|
|
$narr = array();
|
|
|
|
foreach ($result as $k => $v) {
|
|
$v['edit_url']=action($this->route['controller_name'] . '@edit', ['id' => $v->id]);
|
|
$v['show_url']=action($this->route['controller_name'] . '@show', ['id' => $v->id]);
|
|
$v['edit_post_url']=action($this->route['controller_name'] . '@update', ['id' => $v->id]);
|
|
$v['user_name']=$v->user->real_name;
|
|
$narr[] = $v;
|
|
}
|
|
$json = [
|
|
"status"=>1,
|
|
'code'=>$total>0?0:1,
|
|
'msg'=>$total>0?'请求数据成功':'暂无数据',
|
|
'count' => $total,
|
|
'data' => $narr
|
|
];
|
|
|
|
if ($debug) {
|
|
return $this->jsonDebug($json);
|
|
}
|
|
return response()->json($json);
|
|
}
|
|
}
|