123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182 |
- <?php
- namespace app\admin\controller;
- use app\admin\AdminBaseController;
- use app\common\model\ArticleModel;
- use app\common\model\ArticleCateModel;
- use app\common\validate\ArticleCateValidate;
- use app\common\validate\ArticleValidate;
- use think\exception\ValidateException;
- class Article extends AdminBaseController
- {
- /**
- * 列表
- */
- public function index()
- {
- $cate_list = ArticleCateModel::order(['priority' => 'desc', 'id' => 'desc'])->select();
- return view('', [
- 'cate_list' => $cate_list,
- 'type_list' => ArticleModel::TYPE,
- 'status_list' => ArticleModel::STATUS,
- ]);
- }
- public function articleForm()
- {
- $cate_list = ArticleCateModel::order(['priority' => 'desc', 'id' => 'desc'])->select();
- $id = input('id/d, 0');
- $info = ArticleModel::find($id);
- return view('', [
- 'cate_list' => $cate_list,
- 'info' => $info,
- 'type_list' => ArticleModel::TYPE,
- 'status_list' => ArticleModel::STATUS,
- ]);
- }
- public function listArticle()
- {
- $map = $this->dealEqualInput($this->dealLikeInput([], ['title']), ['cate_id', 'type', 'status']);
- $list = ArticleModel::with('cate')
- ->where($map)
- ->order(['priority' => 'desc', 'id' => 'desc'])
- ->limit(input('limit'))
- ->page(input('page'))
- ->append(['type_text', 'status_text'])
- ->select();
- $count = ArticleModel::where($map)->count();
- if ($count == 0) {
- ajax_return(1, '未查询到数据');
- }
- list_return($list, $count);
- }
- public function delArticle()
- {
- $id_arr = input('id_arr/a');
- ArticleModel::destroy($id_arr);
- ajax_return();
- }
- public function editArticle()
- {
- $data = input('post.');
- try {
- validate(ArticleValidate::class)->check($data);
- } catch (ValidateException $e) {
- ajax_return(1, $e->getError());
- }
- if ($data['type'] == 1 && empty($data['content'])) {
- ajax_return(1, '详情不能为空');
- }
- if ($data['type'] == 2 && empty($data['url'])) {
- ajax_return(1, '链接不能为空');
- }
- if (empty($data['id'])) {
- ArticleModel::create($data, ArticleModel::EDIT_ALLOW);
- } else {
- ArticleModel::update($data, ['id' => $data['id']], ArticleModel::EDIT_ALLOW);
- }
- ajax_return();
- }
- public function fieldArticle()
- {
- $id = input('id/d', 0);
- $article = ArticleModel::find($id);
- if (empty($article)) {
- ajax_return(1, '信息不存在');
- } else {
- $article->save([
- input('field/s') => input('value/s', ""),
- ]);
- }
- ajax_return();
- }
- /**
- * 分类
- */
- public function cate()
- {
- return view();
- }
- public function cateForm()
- {
- $id = input('id/d, 0');
- $info = ArticleCateModel::find($id);
- return view('', [
- 'info' => $info,
- ]);
- }
- public function listCate()
- {
- $list = ArticleCateModel::order(['priority' => 'desc', 'id' => 'desc'])
- ->limit(input('limit'))
- ->page(input('page'))
- ->append(['status_text'])
- ->select();
- $count = ArticleCateModel::count();
- if ($count == 0) {
- ajax_return(1, '未查询到数据');
- }
- list_return($list, $count);
- }
- public function fieldCate()
- {
- $id = input('id/d');
- $cate = ArticleCateModel::find($id);
- if (empty($cate)) {
- ajax_return(1, '分类信息不存在');
- } else {
- $cate->save([
- input('field/s') => input('value/s', ""),
- ]);
- }
- ajax_return();
- }
- public function editCate()
- {
- $data = input('post.');
- try {
- validate(ArticleCateValidate::class)->check($data);
- } catch (ValidateException $e) {
- ajax_return(1, $e->getError());
- }
- if (empty($data['id'])) {
- ArticleCateModel::create($data, ArticleCateModel::EDIT_ALLOW);
- } else {
- ArticleCateModel::update($data, ['id' => $data['id']], ArticleCateModel::EDIT_ALLOW);
- }
- ajax_return();
- }
- public function delCate()
- {
- $id = input('id/d');
- $check = ArticleModel::where('cate_id',$id)->find();
- if (!empty($check)) {
- ajax_return(1,'该分类下还有文章,无法删除');
- }
- ArticleCateModel::destroy($id);
- ajax_return();
- }
- }
|