BannerController.php 4.7 KB
<?php
// +----------------------------------------------------------------------
// | ThinkCMF [ WE CAN DO IT MORE SIMPLE ]
// +----------------------------------------------------------------------
// | Copyright (c) 2013-2018 http://www.thinkcmf.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: 老猫 <thinkcmf@126.com>
// +----------------------------------------------------------------------
namespace app\portal\controller;

use app\portal\model\BannerModel;
use app\portal\model\CooperationModel;
use app\portal\model\ProcessModel;
use cmf\controller\AdminBaseController;
use app\portal\model\PortalTagModel;
use app\portal\service\PostService;
use think\Db;
use think\Request;
use think\Loader;

class BannerController extends AdminBaseController
{
    /**
     * 列表
     * @adminMenu(
     *     'name'   => '文章管理',
     *     'parent' => 'portal/AdminIndex/default',
     *     'display'=> true,
     *     'hasView'=> true,
     *     'order'  => 10000,
     *     'icon'   => '',
     *     'remark' => '文章列表',
     *     'param'  => ''
     * )
     */
    public function index(Request $request)
    {
        $where_coo['status'] = 1;
        if($request->post()){
            $search = $request->post();
            if($search['start_time']){
                $start = strtotime($search['start_time']);
                if($search['end_time']){
                    $end = strtotime($search['end_time']);
                }else{
                    $end = time();
                }
                $where_coo['update_time'] = array('between',"$start,$end");
                $this->assign('start_time',date('Y-m-d H:i',$start));
                $this->assign('end_time',date('Y-m-d H:i',$end));
            }
        }
        $coo_list = Db::name('Banner')->where($where_coo)->order('score desc , create_time desc')
            ->paginate(10);
//            ->select()->toArray();
        $page = $coo_list->render();
        $this->assign('page',$page);
        $this->assign('list',$coo_list);
        return $this->fetch();
    }


    /**
     * 添加、修改
     * @adminMenu(
     *     'name'   => '添加文章',
     *     'parent' => 'index',
     *     'display'=> false,
     *     'hasView'=> true,
     *     'order'  => 10000,
     *     'icon'   => '',
     *     'remark' => '添加文章',
     *     'param'  => ''
     * )
     */
    public function add(Request $request)
    {
        if($request->post()){
//            添加数据
            $data = $request->post();
            if($request->Post('id')){
//                修改
                $add['pic'] = $data['pic'];
                $add['score'] = $data['score'];
                $validate = Loader::validate('Banner');
                if(!$validate->scene('edit')->check($add)){
                    $mes = $validate->getError();
                    $this->error("$mes");
                }
                $add['id'] = $request->Post('id');
                $model = new BannerModel();
                $final = $model->isUpdate(true)->allowField(true)->save($add);
            }else{
//                添加
                $add['pic'] = $data['pic'];
                $add['score'] = $data['score'];
                $validate = Loader::validate('Banner');
                if(!$validate->scene('add')->check($add)){
                    $mes = $validate->getError();
                    $this->error("$mes");
                }
                $model = new BannerModel();
                $final = $model->save($add);
            }
            if($final){
                $this->success('成功',url('index'));
            }else{
                $this->error('失败');
            }
        }else{
            $where_find['id'] = $request->param('id');
            $list = Db::name('Banner')->where($where_find)->find();
//            $list['content'] = htmlspecialchars_decode($list['content']);
            $this->assign('list',$list);
            return $this->fetch('add');
        }
    }

//  删除
    public function del(Request $request){
        $ids = $this->request->post();
        $id = $request->param('id');
        if($ids){
            $add_del['id'] = array('in',$ids['ids']);
        }else if($id){
            $add_del['id'] = $request->param('id');
        }else{
            $this->error('删除失败');
        }
        $add_del['status'] = 9;
        $model = new BannerModel();
        $del = $model->isUpdate(true)->allowField(true)->save($add_del);
        if($del){
            $this->success('删除成功',url('index'));
        }else{
            $this->error('删除失败');
        }
    }

}