📖 File Reader
<?php
namespace app\admin\controller;
use adminCreate\form\Form;
use think\facade\Db;
use think\facade\View;
class Video extends Base
{
/*分类列表*/
public function act_list()
{
return View::fetch();
}
/*分类列表数据*/
public function act_list_ajax()
{
$keyword = input("param.keyword");
$where = 1;
if (!empty($keyword)){
$where .= " and name like '%".$keyword."%'";
}
$list = db::name("video_act")->where($where)->order("sort desc")->select()->toArray();
foreach ($list as $k => $v){
$list[$k]["time_add"] = date("Y-m-d H:i",$v["time_add"]);
}
$count = db::name("video_act")->where($where)->count();
return $this->layui_json($count,$list);
}
/*分类列表字段修改*/
public function act_field_update()
{
$id = input("param.id");
$field_name = input("param.field_name");
$info[$field_name] = input("param.value");
db::name("video_act")->where("id = $id")->data($info)->update();
return $this->succeed_json("操作成功");
}
/*分类上传处理*/
public function act_update()
{
$id = input("param.id");
if (input("post.")){
$info = [
'name'=>input("param.name"),
'sort'=>input("param.sort"),
'time_add'=>time(),
];
if (empty($id)){
db::name("video_act")->insertGetId($info);
}else{
db::name("video_act")->where("id = $id")->data($info)->update();
}
return $this->succeed_json("操作成功");
}else {
$info = ['name'=>'','sort'=>0];
if (!empty($id)){
$info = db::name("video_act")->where("id = $id")->find();
}
$form = new Form();
$form->tabs('tabs1', '基本信息');
$form->input('name', '名称',$info["name"])->required()->tabs('tabs1');
$form->number('sort', '排序', $info["sort"])->tabs('tabs1');
$form->hidden('id',$id);
$form->button('/admin/Video/act_update');
return $form;
}
}
/*分类删除*/
public function act_del()
{
$id = input("param.id");
$video_count = db::name("video")->where("act_id = $id")->count();
if (!empty($video_count)){
return $this->error_json("该分类下存在数据,不可删除!");
}
db::name("video_act")->where("id = $id")->delete();
return $this->succeed_json("删除成功");
}
/*视频列表*/
public function video_list()
{
$list = db::name("video_act")->order("sort desc")->select()->toArray();
View::assign([
'list'=>$list,
]);
return View::fetch();
}
/*视频列表数据*/
public function video_list_ajax()
{
$title = input("param.title");
$act_id = input("param.act_id");
$where = 1;
if (!empty($title)){
$where .= " and a.title like '%".$title."%'";
}
if ($act_id != ''){
$where .= " and a.act_id = $act_id";
}else{
$where .= " and a.act_id != 0";
}
$list = db::name("video")->alias("a")
->join("video_act b","a.act_id = b.id","LEFT")
->field("a.id,a.act_id,a.title,a.img,a.is_show,a.browse_sum,a.time_add,b.name as name_act")
->where($where)
->order("a.id desc")
->page($this->page,$this->limit)
->select();
$list = json_decode($list,true);
foreach ($list as $k => $v){
$list[$k]["time_add"] = date("Y-m-d H:i",$v["time_add"]);
$list[$k]["img"] = str_replace('\\', "/", $v["img"]);
}
//获取总页数
$count = db::name("video")->alias("a")
->join("video_act b","a.act_id = b.id","LEFT")
->where($where)
->count();
return $this->layui_json($count,$list);
}
/*视频列表字段修改*/
public function video_field_update()
{
$id = input("param.id");
$field_name = input("param.field_name");
$info[$field_name] = input("param.value");
db::name("video")->where("id = $id")->data($info)->update();
return $this->succeed_json("操作成功");
}
/*视频上传处理*/
public function video_update()
{
$id = input("param.id");
if ($_POST){
$info = [
'title'=>input("param.title"),
'act_id'=>input("param.act_id"),
'img'=>implode(",",input("param.img")),
'video_url'=>implode(",",input("param.video_url")),
'browse_sum'=>input("param.browse_sum"),
'time_add'=>time(),
];
if (empty($id)){
db::name("video")->insertGetId($info);
}else{
db::name("video")->where("id = $id")->data($info)->update();
}
return $this->succeed_json("操作成功");
}else{
$info = ['title'=>'','act_id'=>'','img'=>'','video_url'=>'','browse_sum'=>0,'content'=>''];
if (!empty($id)){
$info = db::name("video")->where("id = $id")->find();
}
$form = new Form();
$form->tabs('tabs1', '基本信息');
$form->input('title', '标题',$info["title"])->required()->tabs('tabs1');
$form->selectOne('act_id', '所属分类',$info["act_id"])->setOptions(function(){
$list_act = db::name("video_act")->order("sort desc")->select()->toArray();
$menus = [];
foreach ($list_act as $k => $v){
$menus[] = ['label'=>$v["name"],'value'=>$v["id"]];
}
return $menus;
})->multiple(false)->filterable(false)->required()->tabs('tabs1');
$form->upload('img', '封面', '/admin/ad/uploads', [$info['img']])->nultiple(false)->required('',"array")->tabs('tabs1');
$form->upload('video_url', '视频上传', '/admin/ad/uploads', [$info['video_url']],'mp4')->nultiple(false)->required('',"array")->tabs('tabs1');
$form->number('browse_sum', '浏览量', $info["browse_sum"])->tabs('tabs1');
$form->hidden('id',$id);
$form->button('/admin/Video/video_update');
return $form;
}
}
/*视频删除*/
public function video_del()
{
$id = input("param.id");
$info = db::name("video")->where("id = $id")->find();
if(file_exists($_SERVER["DOCUMENT_ROOT"].$info["video_url"])){
unlink($_SERVER["DOCUMENT_ROOT"].$info["video_url"]);
}
if(file_exists($_SERVER["DOCUMENT_ROOT"].$info["img"])){
unlink($_SERVER["DOCUMENT_ROOT"].$info["img"]);
}
db::name("video")->where("id = $id")->delete();
return $this->succeed_json("删除成功");
}
}