<?php
namespace app\admin\controller;
//use think\facade\View; //view创建静态代理
use app\admin\model\PorModel;
use think\Controller;
use app\admin\controller\Common;
use think\facade\Request;//系统控制器
use think\facade\Session;
class Product extends Common
{
//渲染编辑页面
public function index()
{
$news = new PorModel();
$new = $news->order('id', 'desc')->paginate(8);
$this->view->new = $new;
return $this->fetch();
}
//渲染添加界面
public function add()
{
return $this->fetch();
}
//上传方法
public function upload()
{
//获取上传的图片
$file = Request::file('img');
//验证图片信息并保存到指定位置
if ($info = $file->validate(['ext'=> 'jpg,jpeg,png,gif'])->move('uploads')) {
//返回上传成功信息
return json(['errno' => 0,'data' => ['/uploads/' . $info->getSaveName()]]);
}else{
//返回错误信息
return $file->getError();
}
}
//缩略图上传方法
public function uploads()
{
//获取上传文件
$file = Request::file('file');
//对图片的验证
if ($info = $file->validate(['ext'=> 'jpg,jpeg,png,gif'])->move('uploads')) {
//返回上传成功信息
$fileName = '/uploads/' . $info->getSaveName();
return json([1,'上传成功!','data' => $fileName]);
}else{
//返回错误信息
return $file->getError();
}
}
//添加操作
public function DoAdd()
{
//获取用户添加信息
$data = Request::param();
//获取当时时间
$data['time'] = time();
//提取session中的用户名
$data['username'] = Session::get('username');
//获取添加标题
$title = $data['title'];
//查找数据库标题是否存在
$news = PorModel::where('title',$title)->find();
if($news == true){
return['res'=>0,'msg'=>'新闻标题重复!'];
}
//实例化模型
$new = new PorModel();
//发布信息
if($new->save($data)){
return ['res'=>1,'msg'=>'发布成功!'];
}else{
return['res'=>0,'msg'=>'发布失败!'];
}
}
//渲染编辑页面
public function edit()
{
//获取信息id
$newId = Request::param('id');
//使用得到的id查询数据库信息
$new = PorModel::get($newId);
//将数据赋值到模板
$this->view->new = $new;
//渲染新闻修改页模板
return $this->fetch();
}
public function DoEdit()
{
//获取提交的数据
$data = Request::param();
//实例化模型
$new = new PorModel();
//修改的内容
$res = $new->save([
'title' => $data['title'],
'pic' => $data['pic'],
'desc' => $data['desc'],
'content' => $data['content'],
'username' => Session::get('username'),
'time' => time(),
],['id' => $data['id']]);
if($res) {
return['res'=>1,'msg'=>'修改成功!'];
}else{
return['res'=>0,'msg'=>'修改失败!'];
}
}
public function del()
{
//获取新闻id
$newId = Request::param('id');
//实例化模型
$new = new PorModel();
//删除验证
if($new->destroy($newId)){
return['res'=>1,'msg'=>'删除成功!'];
}else{
return['res'=>0,'msg'=>'删除失败!'];
}
}
}