Commit fb00509d by wanggang

修改后台BUG,细节

parent 18ed0222
...@@ -18,7 +18,7 @@ class Admin extends AuthBase ...@@ -18,7 +18,7 @@ class Admin extends AuthBase
$map = array(); $map = array();
if ($keyword) { if ($keyword) {
$map['name'] = ['like', "%".$keyword."%"]; $map['name'] = ['like', "%" . $keyword . "%"];
} }
$admins = AmdinModel::where($map) $admins = AmdinModel::where($map)
->order('id', 'desc')->paginate(20, false, [ ->order('id', 'desc')->paginate(20, false, [
...@@ -34,7 +34,7 @@ class Admin extends AuthBase ...@@ -34,7 +34,7 @@ class Admin extends AuthBase
/** /**
* 显示指定的资源 * 显示指定的资源
* *
* @param int $id * @param int $id
* @return \think\Response * @return \think\Response
*/ */
public function read($id) public function read($id)
...@@ -42,16 +42,16 @@ class Admin extends AuthBase ...@@ -42,16 +42,16 @@ class Admin extends AuthBase
$admin = AmdinModel::get(trim($id)); $admin = AmdinModel::get(trim($id));
if ($admin) { if ($admin) {
$data['user'] = $admin; $data['user'] = $admin;
return json_encode(['error'=>0, 'msg'=>'获取成功', 'data'=>$data]); return json_encode(['error' => 0, 'msg' => '获取成功', 'data' => $data]);
} else { } else {
return json_encode(['error'=>1, 'msg'=>'获取失败']); return json_encode(['error' => 1, 'msg' => '获取失败']);
} }
} }
/** /**
* 更新 * 更新
* *
* @param int $id * @param int $id
* @return \think\Response * @return \think\Response
*/ */
public function update($id) public function update($id)
...@@ -66,26 +66,26 @@ class Admin extends AuthBase ...@@ -66,26 +66,26 @@ class Admin extends AuthBase
$admin->name = $name; $admin->name = $name;
$update = true; $update = true;
} }
if ($password && md5($password)!=$admin->password) { if ($password && md5($password) != $admin->password) {
$admin->password = md5($password); $admin->password = md5($password);
$update = true; $update = true;
} }
if ($update && $admin->save()) { if ($update && $admin->save()) {
// 更改当前管理员的session名称 // 更改当前管理员的session名称
if (session("uid")==$admin->id) { if (session("uid") == $admin->id) {
session('username', $admin->name); session('username', $admin->name);
} }
return json_encode(['error'=>0, 'msg'=>'更新成功']); return json_encode(['error' => 0, 'msg' => '更新成功']);
}else{ } else {
return json_encode(['error'=>1, 'msg'=>'没有任何修改']); return json_encode(['error' => 1, 'msg' => '没有任何修改']);
} }
}else{ } else {
return json_encode(['error'=>1, 'msg'=>'未找到对象']); return json_encode(['error' => 1, 'msg' => '未找到对象']);
} }
}else{ } else {
return json_encode(['error'=>1, 'msg'=>'请求方法错误']); return json_encode(['error' => 1, 'msg' => '请求方法错误']);
} }
} }
} }
<?php <?php
namespace app\admin\controller; namespace app\admin\controller;
use app\admin\controller\AuthBase; use app\admin\controller\AuthBase;
use app\common\model\Admin as AdminModel; use app\common\model\Admin as AdminModel;
use app\admin\controller\Upload; use app\admin\controller\Upload;
class Banner extends AuthBase{ class Banner extends AuthBase
public function _initialize(){ {
parent::_initialize(); public function _initialize()
} {
public function index(){ parent::_initialize();
$status = input('get.status');
$condition = [];
if($status){
$condition['status'] = $status;
} }
$banner_model = model('banner');
$banner_list = $banner_model->where($condition)->order('created_at','desc')->paginate(10,false,['query'=>['status'=>$status]]);
$this->assign('banner_list',$banner_list);
return $this -> fetch();
}
public function create(){
if(request()->isPost()){
$data = input('post.');
$banner_model = model('banner');
$upload = new Upload();
$result = $upload->sava(input('file.image')); public function index()
if(!$result['error']){ {
$image = $result['result']['url']; $status = input('get.status');
$data['image'] = $image; $condition = [];
} if ($status) {
$res = $banner_model->data($data)->save(); $condition['status'] = $status;
if($res){ }
$this->success('添加成功',url('admin/banner/index'),'',1); $banner_model = model('banner');
}else{ $banner_list = $banner_model->where($condition)->order('created_at', 'desc')->paginate(10, false, ['query' => ['status' => $status]]);
$this->error('添加失败','','',1); $this->assign('banner_list', $banner_list);
} return $this->fetch();
}else{
return $this->fetch();
} }
} //新建banner
public function update($id){ public function create()
$banner_model = model('banner'); {
$resource_model = model('resource'); if (request()->isPost()) {
if(request()->isPost()){ $data = input('post.');
$data = input('post.'); $banner_model = model('banner');
if(input('file.image')){ $upload = new Upload();
$banner_info = ($banner_model->find('id'));
$old_image = $banner_info['image']; $result = $upload->sava(input('file.image'));
$upload = new Upload(); if (!$result['error']) {
$result = $upload->sava(input('file.image')); $image = $result['result']['url'];
if(!$result['error']){ $data['image'] = $image;
$resource_model -> where('address',$old_image)->delete(); }
$image = $result['result']['url']; $res = $banner_model->data($data)->save();
$data['image'] = $image; if ($res) {
$this->success('添加成功', url('admin/banner/index'), '', 1);
} else {
$this->error('添加失败', $_SERVER['HTTP_REFERER'], '', 1);
}
} else {
$this->assign('banner_info', 0);
return $this->fetch('update');
} }
}
$res = $banner_model->save($data,['id'=>$id]);
if($res){
$this->success('修改成功',url('admin/banner/index'),'',1);
}else{
$this->error('修改失败','','',1);
}
}else{
$banner_info = $banner_model->find($id);
$this->assign('banner_info',$banner_info);
return $this->fetch();
} }
} //更新banner
public function delete(){ public function update($id)
$id = input('post.id'); {
$res = model('banner')->destroy($id); $banner_model = model('banner');
$banner_info = model('banner')->find($id); if (request()->isPost()) {
$old_image = $banner_info['image']; $data = input('post.');
model('resource') -> where('address',$old_image)->delete(); if (input('file.image')) {
if($res){ $banner_info = ($banner_model->find('id'));
$this->success('删除成功','','',1); $old_image = $banner_info['image'];
}else{ $upload = new Upload();
$this->error('删除失败','','',1); $result = $upload->sava(input('file.image'));
if (!$result['error']) {
$image = $result['result']['url'];
$data['image'] = $image;
}
}
$res = $banner_model->save($data, ['id' => $id]);
if ($res) {
$this->success('修改成功', url('admin/banner/index'), '', 1);
} else {
$this->error('修改失败', $_SERVER['HTTP_REFERER'], '', 1);
}
} else {
$banner_info = $banner_model->find($id);
$this->assign('banner_info', $banner_info);
return $this->fetch();
}
}
//删除banner
public function delete()
{
$id = input('post.id');
$res = model('banner')->destroy($id);
$banner_info = model('banner')->find($id);
$old_image = $banner_info['image'];
model('resource')->where('address', $old_image)->delete();
if ($res) {
$this->success('删除成功', '', '', 1);
} else {
$this->error('删除失败', '', '', 1);
}
} }
}
} }
<?php <?php
namespace app\admin\controller; namespace app\admin\controller;
use think\Db; use think\Db;
...@@ -16,19 +17,26 @@ class Guide extends AuthBase ...@@ -16,19 +17,26 @@ class Guide extends AuthBase
// 模糊查询title // 模糊查询title
if ($title) { if ($title) {
$map['title'] = ['like', "%".$title."%"]; $map['title'] = ['like', "%" . $title . "%"];
} }
$posts = PostModel::where($map)->order('id desc')->paginate(10); $posts = model('guide')->where($map)->order('id desc')->paginate(10);
$this->assign('articles', $posts); $this->assign('articles', $posts);
return view("index"); return view("index");
} }
//新建攻略
public function create() public function create()
{ {
$tag_model = model("tags"); $tag_model = model("tags");
$tag_list = $tag_model -> order('sort','asc') -> select(); //反显数据处理,新建则设为空
$this -> assign('tag_list', $tag_list); $tag_list = $tag_model->order('sort', 'asc')->select();
$this->assign('tag_list', $tag_list);
$this->assign('article', 0);
$this->assign('tag_arr', []);
$this->assign('tags', '');
if (request()->isPost()) { if (request()->isPost()) {
$type = input("post.type"); $type = input("post.type");
$data = array( $data = array(
...@@ -36,10 +44,10 @@ class Guide extends AuthBase ...@@ -36,10 +44,10 @@ class Guide extends AuthBase
'tags' => input("post.tags"), 'tags' => input("post.tags"),
'poster' => input('file.poster') 'poster' => input('file.poster')
); );
if($type == 1){ if ($type == 1) {
$data['content'] =input("post.content"); $data['content'] = input("post.content");
}else{ } else {
$data['content'] =input("post.href"); $data['content'] = input("post.href");
} }
$validate = validate('Post'); $validate = validate('Post');
if (!$validate->scene('create')->check($data)) { if (!$validate->scene('create')->check($data)) {
...@@ -47,10 +55,10 @@ class Guide extends AuthBase ...@@ -47,10 +55,10 @@ class Guide extends AuthBase
$this->assign('msg', $msg); $this->assign('msg', $msg);
return view(); return view();
} }
// 上传封面到七牛云 //上传封面到七牛云
$upload = new Upload(); $upload = new Upload();
$result = $upload -> sava(input('file.poster')); $result = $upload->sava(input('file.poster'));
if($result['error']){ if ($result['error']) {
$this->assign('msg', $result['error']); $this->assign('msg', $result['error']);
return view(); return view();
} }
...@@ -61,48 +69,49 @@ class Guide extends AuthBase ...@@ -61,48 +69,49 @@ class Guide extends AuthBase
'title' => $data['title'], 'title' => $data['title'],
'type' => $type, 'type' => $type,
'intro' => input('post.intro'), 'intro' => input('post.intro'),
'content' => htmlspecialchars($data['content']) 'content' => htmlspecialchars_decode($data['content'])
]); ]);
if ($article->save()) { if ($article->save()) {
$this->redirect(url('@admin/Guide/index')); $this->success('添加成功', url('@admin/Guide/index'), '', 1);
} else { } else {
return view(); $this->error('添加失败', $_SERVER['HTTP_REFERER'], '', 1);
} }
} else { } else {
return view(); return view('update');
} }
} }
/** /**
* 修改文章 * 修改攻略
* *
* @return \think\Response * @return \think\Response
*/ */
public function update($id) public function update($id)
{ {
//反显数据处理
$tag_model = model("tags"); $tag_model = model("tags");
$tag_list = $tag_model -> order('sort','asc') -> select(); $tag_list = $tag_model->order('sort', 'asc')->select();
$this -> assign('tag_list', $tag_list); $this->assign('tag_list', $tag_list);
$article = PostModel::get($id); $article = PostModel::get($id);
$tags =$article['tags']; $tags = $article['tags'];
$this->assign('tags',$tags); $this->assign('tags', $tags);
if($tags!=''){ if ($tags != '') {
$tag_arr = explode(',',$tags); $tag_arr = explode(',', $tags);
}else{ } else {
$tag_arr = []; $tag_arr = [];
} }
$this->assign('tag_arr', $tag_arr);
$this->assign('tag_arr',$tag_arr);
if (request()->isPost()) { if (request()->isPost()) {
$type = input("post.type"); $type = input("post.type");
$data = array( $data = array(
'title' => input("post.title"), 'title' => input("post.title"),
'tags' => input("post.tags") 'tags' => input("post.tags")
); );
if($type == 1){ if ($type == 1) {
$data['content'] =input("post.content"); $data['content'] = input("post.content");
}else{ } else {
$data['content'] =input("post.href"); $data['content'] = input("post.href");
} }
$validate = validate('Post'); $validate = validate('Post');
if (!$validate->scene('update')->check($data)) { if (!$validate->scene('update')->check($data)) {
...@@ -115,59 +124,56 @@ class Guide extends AuthBase ...@@ -115,59 +124,56 @@ class Guide extends AuthBase
'title' => $data['title'], 'title' => $data['title'],
'intro' => input('post.intro'), 'intro' => input('post.intro'),
'type' => $type, 'type' => $type,
'content' => htmlspecialchars($data['content']) 'content' => htmlspecialchars_decode($data['content'])
]; ];
if(input('file.poster')){ if (input('file.poster')) {
// 上传封面到七牛云 //上传封面到七牛云
$upload = new Upload(); $upload = new Upload();
$result = $upload -> sava(input('file.poster')); $result = $upload->sava(input('file.poster'));
if($result['error']){ if ($result['error']) {
$this->assign('msg', $result['error']); $this->assign('msg', $result['error']);
return view(); return view();
} }
// 将资源目录该图的引用设为0 $condition['poster'] = $result['result']['url'];
// $resource_model = model('Resource');
// $res = $resource_model->where('address',input('post.old_poster'))->setDec("use_num");
$condition['poster'] = $result['result']['url'];
} }
$res = model('post')->save($condition,['id'=>$id]); $res = model('post')->save($condition, ['id' => $id]);
if ($res) { if ($res) {
$this->redirect(url('@admin/Guide/index')); $this->success('修改成功', url('@admin/Guide/index'), '', 1);
} else { } else {
return view(); $this->success('修改失败', $_SERVER['HTTP_REFERER'], '', 1);
} }
}else{ } else {
$this->assign('article', $article); $this->assign('article', $article);
return view(); return view();
} }
} }
/** /**
* 删除文章 * 删除攻略
* *
* @return \think\Response * @return \think\Response
*/ */
public function delete() public function delete()
{ {
$result["error"] = 0; $result["error"] = 0;
$result["msg"] = '删除成功'; $result["msg"] = '删除成功';
if( request()->isPost() ) { if (request()->isPost()) {
$id = input("post.id"); $id = input("post.id");
$article = PostModel::get($id); $article = PostModel::get($id);
if( $article ) { if ($article) {
if( $article->delete() ){ if ($article->delete()) {
}else{ } else {
$result["error"] = 1; $result["error"] = 1;
$result["msg"] = '删除失败!'; $result["msg"] = '删除失败!';
} }
}else{ } else {
$result["error"] = 1; $result["error"] = 1;
$result["msg"] = '删除对象不存在'; $result["msg"] = '删除对象不存在';
} }
}else{ } else {
$result["error"] = 1; $result["error"] = 1;
$result["msg"] = '不支持的请求方法'; $result["msg"] = '不支持的请求方法';
} }
......
...@@ -20,26 +20,26 @@ class Index extends AuthBase ...@@ -20,26 +20,26 @@ class Index extends AuthBase
$comment_model = model('comment'); $comment_model = model('comment');
$refund_model = model('refund'); $refund_model = model('refund');
// 统计用户总数 //统计用户总数
$user_num = $user_model->count(); $user_num = $user_model->count();
$this->assign('user_num',$user_num); $this->assign('user_num',$user_num);
// 统计今日新增用户数 //统计今日新增用户数
$user_num_today = $user_model->where('created_at','>',date('Y-m-d',time()).' 00:00:00')->count(); $user_num_today = $user_model->where('created_at','>',date('Y-m-d',time()).' 00:00:00')->count();
$this->assign('user_num_today',$user_num_today); $this->assign('user_num_today',$user_num_today);
// 统计订单总数 //统计订单总数
$order_num = $order_model->count(); $order_num = $order_model->count();
$this->assign('order_num',$order_num); $this->assign('order_num',$order_num);
// 统计今日订单总数 //统计今日订单总数
$order_num_today = $order_model->where('created_at','>',date('Y-m-d',time()).' 00:00:00')->count(); $order_num_today = $order_model->where('created_at','>',date('Y-m-d',time()).' 00:00:00')->count();
$this->assign('order_num_today',$order_num_today); $this->assign('order_num_today',$order_num_today);
// 统计待审核退款 //统计待审核退款
$wait_num_r = $refund_model->where('status',1)->count(); $wait_num_r = $refund_model->where('status',1)->count();
$this->assign('wait_num_r',$wait_num_r); $this->assign('wait_num_r',$wait_num_r);
// 统计待审核评论 //统计待审核评论
$wait_num_c = $comment_model->where('status',1)->count(); $wait_num_c = $comment_model->where('status',1)->count();
$this->assign('wait_num_c',$wait_num_c); $this->assign('wait_num_c',$wait_num_c);
......
<?php <?php
namespace app\admin\controller; namespace app\admin\controller;
use app\admin\controller\AuthBase; use app\admin\controller\AuthBase;
class Order extends AuthBase class Order extends AuthBase
{ {
protected $order_model; protected $order_model;
public function _initialize()
{
parent::_initialize();
$this->order_model = model('Order');
}
// 订单列表
public function index(){
$status = input('get.status','-1');
$id = input('get.id');
$start_time = input('get.start_time');
$end_time = input('get.end_time');
$type = input('get.type');
$condition = [];
if($status!='-1'){
$condition['status']=$status;
}
if($id){
$condition['id']=$id;
}
if($type){
$condition['type']=$type;
}
if($start_time&&$end_time){
$condition['created_at'] = ['between',[$start_time.' 00:00:00',$end_time.' 00:00:00']];
}else{
if($start_time){
$condition['created_at'] = ['>',$start_time.' 00:00:00'];
}elseif($end_time){
$condition['created_at'] = ['<',$end_time.' 00:00:00'];
}
}
$order_list = $this->order_model->where($condition)->order('created_at desc')->paginate(10,false,['query'=>['status'=>$status,'start_time'=>$start_time,'end_time'=>$end_time,'type'=>$type]]);
$this->assign("order_list",$order_list);
$this->assign("status",$status);
return $this->fetch();
}
public function orderOutput(){
$status = input('get.status','-1');
$start_time = input('get.start_time');
$end_time = input('get.end_time');
$type = input('get.type');
$condition = [];
if($status!='-1'){
$condition['status']=$status;
}
if($type){
$condition['type']=$type;
}
if($start_time&&$end_time){
$condition['created_at'] = ['between',[$start_time.' 00:00:00',$end_time.' 00:00:00']];
}else{
if($start_time){
$condition['created_at'] = ['>',$start_time.' 00:00:00'];
}elseif($end_time){
$condition['created_at'] = ['<',$end_time.' 00:00:00'];
}
}
$order_list = $this->order_model->where($condition)->order('created_at desc')->select();
// 导出用户信息、活动信息、订单信息,如:姓名、手机号、活动名称、价格、家庭组数、大人数量、孩子数量、孩子年龄、备注等
//导出到excel数据处理
$mulit_arr = [];
$mulit_arr['data'] = [];
$cont = [['订单标题','订单来源','用户名','电话','vip购买信息','活动名称','活动价格','家庭组数','大人数量','孩子数量','孩子年龄','订单总价','下单时间','订单状态']];
// [
// 'data'=>
// [
// [
// ['昵称','性别','电话','是否是会员','注册时间','更新时间','会员到期时间'],
// ['a','b','c'],
// ['d','e','f']
// ]
// ],
// 'sheet'=>
// [
// ['title'=>'工作空间1名称'],
// ['title'=>'工作空间2名称'],
// ]
// ];
foreach ($order_list as $vo){
$arr = [];
$arr[] = $vo['title'];
$arr[] = $vo['type']==1?'活动报名':'购买会员卡订单';
$arr[] = $vo->user_info['nickname'];
$arr[] = $vo->user_info['phone'];
$arr[] = isset($vo['extras']['vip_endtime'])?$vo['extras']['vip_endtime'].'到期':'';
$arr[] = $vo->project['title'];
$arr[] = $vo->project['price'];
$arr[] = isset($vo['extras']['sign_limits'])?$vo['extras']['sign_limits']:'';
$arr[] = isset($vo['extras']['adult_number'])?$vo['extras']['adult_number']:'';
$arr[] = isset($vo['extras']['children_number'])?$vo['extras']['children_number']:'';
$arr[] = isset($vo['extras']['children_age'])?$vo['extras']['children_age']:'';
$arr[] = $vo['total_fee'];
$arr[] = $vo['created_at'];
$arr[] = $vo->status_text;
public function _initialize()
{
parent::_initialize();
$this->order_model = model('Order');
}
// $arr[] = $vo['extras']; //订单列表
// $arr[] = $vo['extras']; public function index()
// $arr[] = $vo['extras']; {
// $arr[] = $vo['extras']; //搜索筛选
// $arr[] = $vo['extras']; $status = input('get.status', '-1');
$cont[] = $arr; $id = input('get.id');
} $start_time = input('get.start_time');
$mulit_arr['data'][] =$cont; $end_time = input('get.end_time');
$mulit_arr['sheet'] = [['title'=>'用户信息表']]; $type = input('get.type');
// dump($mulit_arr); $condition = [];
// return;
/*调用*/ //判断如果存在筛选字段,将其添加到筛选数组$condition中
$title = '订单表';//这是标题 if ($status != '-1') {
$Subject='';//这是备注 $condition['status'] = $status;
$Description='美行者订单导出';//这是描述; }
$Keywords='';//这是关键字 if ($id) {
$Category='';//这是分类 $condition['id'] = $id;
$filename = '美行者订单导出';//文件名 }
$obj = new OutputExcel(); if ($type) {
$obj->export($mulit_arr,$filename,$title,$Subject,$Description,$Keywords,$Category); $condition['type'] = $type;
} }
// 退款审核 if ($start_time && $end_time) {
public function refund(){ $condition['created_at'] = ['between', [$start_time . ' 00:00:00', $end_time . ' 00:00:00']];
$id = input('get.id'); } else {
$status = input('get.status','-1'); if ($start_time) {
$condition = []; $condition['created_at'] = ['>', $start_time . ' 00:00:00'];
if($status!='-1'){ } elseif ($end_time) {
$condition['status']=$status; $condition['created_at'] = ['<', $end_time . ' 00:00:00'];
} }
if($id){ }
$condition['id']=$id; //根据筛选条件查询
} $order_list = $this->order_model->where($condition)->order('created_at desc')->paginate(10, false, ['query' => ['status' => $status, 'start_time' => $start_time, 'end_time' => $end_time, 'type' => $type]]);
$refund_list = model('Refund')->where($condition)->order('created_at desc')->paginate(10,false,['query'=>['status'=>$status]]); $this->assign("order_list", $order_list);
$this->assign('status',$status); $this->assign("status", $status);
$this->assign('refund_list',$refund_list); return $this->fetch();
return $this->fetch();
}
// 评论审核
public function comment(){
$id = input('get.id');
$status = input('get.status','-1');
$condition = [];
if($status!='-1'){
$condition['status']=$status;
}
if($id){
$condition['id']=$id;
}
$comment_list = model('comment')->where($condition)->order('created_at desc')->paginate(10,false,['query'=>['status'=>$status]]);
$this->assign('status',$status);
$this->assign('comment_list',$comment_list);
return $this->fetch();
}
public function commentStatus($status,$id){
$comment_model = model('comment');
$res = $comment_model->save(['status'=>$status],['id' => $id]);
if($status==2){
$is_comment = 3;
}elseif($status==3){
$is_comment = 2;
} }
$status_str = array(
'2'=>'请求成功,已审核通过该评论',
'3'=>'请求成功,该评论审核不通过'
);
if($res){
$comment_info = $comment_model->get($id);
if($comment_info){
$set_order_res = model('order')->save(['is_comment'=>$is_comment],['id'=>$comment_info['order_id']]);
}
$this->success($status_str[$status]);
}else{
$this->error('修改失败,本次审核无效');
//订单表导出
public function orderOutput()
{
//根据筛选条件查询数据
$status = input('get.status', '-1');
$start_time = input('get.start_time');
$end_time = input('get.end_time');
$type = input('get.type');
$condition = [];
if ($status != '-1') {
$condition['status'] = $status;
}
if ($type) {
$condition['type'] = $type;
}
if ($start_time && $end_time) {
$condition['created_at'] = ['between', [$start_time . ' 00:00:00', $end_time . ' 00:00:00']];
} else {
if ($start_time) {
$condition['created_at'] = ['>', $start_time . ' 00:00:00'];
} elseif ($end_time) {
$condition['created_at'] = ['<', $end_time . ' 00:00:00'];
}
}
$order_list = $this->order_model->where($condition)->order('created_at desc')->select();
//导出用户信息、活动信息、订单信息,如:姓名、手机号、活动名称、价格、家庭组数、大人数量、孩子数量、孩子年龄、备注等
//导出到excel之前数据处理
$mulit_arr = [];
$mulit_arr['data'] = [];
$cont = [['订单标题', '订单来源', '用户名', '电话', 'vip购买信息', '活动名称', '活动价格', '家庭组数', '大人数量', '孩子数量', '孩子年龄', '订单总价', '下单时间', '订单状态']];
foreach ($order_list as $vo) {
$arr = [];
$arr[] = $vo['title'];
$arr[] = $vo['type'] == 1 ? '活动报名' : '购买会员卡订单';
$arr[] = $vo->user_info['nickname'];
$arr[] = $vo->user_info['phone'];
$arr[] = isset($vo['extras']['vip_endtime']) ? $vo['extras']['vip_endtime'] . '到期' : '';
$arr[] = $vo->project['title'];
$arr[] = $vo->project['price'];
$arr[] = isset($vo['extras']['sign_limits']) ? $vo['extras']['sign_limits'] : '';
$arr[] = isset($vo['extras']['adult_number']) ? $vo['extras']['adult_number'] : '';
$arr[] = isset($vo['extras']['children_number']) ? $vo['extras']['children_number'] : '';
$arr[] = isset($vo['extras']['children_age']) ? $vo['extras']['children_age'] : '';
$arr[] = $vo['total_fee'];
$arr[] = $vo['created_at'];
$arr[] = $vo->status_text;
$cont[] = $arr;
}
$mulit_arr['data'][] = $cont;
$mulit_arr['sheet'] = [['title' => '用户信息表']];
$title = '订单表';//这是标题
$Subject = '';//这是备注
$Description = '美行者订单导出';//这是描述;
$Keywords = '';//这是关键字
$Category = '';//这是分类
$filename = '美行者订单导出';//文件名
$obj = new OutputExcel();
/*调用excle导出类*/
$obj->export($mulit_arr, $filename, $title, $Subject, $Description, $Keywords, $Category);
} }
}
public function refundStatus($status,$id){ //退款审核 未完成
public function refund()
{
$id = input('get.id');
$status = input('get.status', '-1');
$condition = [];
if ($status != '-1') {
$condition['status'] = $status;
}
if ($id) {
$condition['id'] = $id;
}
$refund_list = model('Refund')->where($condition)->order('created_at desc')->paginate(10, false, ['query' => ['status' => $status]]);
$this->assign('status', $status);
$this->assign('refund_list', $refund_list);
return $this->fetch();
}
//评论审核
public function comment()
{
$id = input('get.id');
$status = input('get.status', '-1');
$condition = [];
if ($status != '-1') {
$condition['status'] = $status;
}
if ($id) {
$condition['id'] = $id;
}
$comment_list = model('comment')->where($condition)->order('created_at desc')->paginate(10, false, ['query' => ['status' => $status]]);
$this->assign('status', $status);
$this->assign('comment_list', $comment_list);
return $this->fetch();
}
public function commentStatus($status, $id)
{
$comment_model = model('comment');
$res = $comment_model->save(['status' => $status], ['id' => $id]);
if ($status == 2) {
$is_comment = 3;
} elseif ($status == 3) {
$is_comment = 2;
}
$status_str = array(
'2' => '请求成功,已审核通过该评论',
'3' => '请求成功,该评论审核不通过'
);
if ($res) {
$comment_info = $comment_model->get($id);
if ($comment_info) {
$save_condition = [];
$save_condition['is_comment'] = $is_comment;
$order_info = model('order')->get($comment_info['order_id']);
if ($status == 2) {
//评论审核成功
//如果订单状态为待评价,则修改状态为已完成
if ($order_info['status'] == config('order_status.wait_comment')) {
$save_condition['status'] = config('order_status.complete');
};
} elseif ($status == 3) {
//评论审核失败
if ($order_info['status'] == config('order_status.complete')) {
$save_condition['status'] = config('order_status.wait_comment');
}
}
$set_order_res = model('order')->save($save_condition, ['id' => $comment_info['order_id']]);
}
$this->success($status_str[$status]);
} else {
$this->error('修改失败,本次审核无效');
}
}
public function refundStatus($status, $id)
{
$refund_model = model('refund'); $refund_model = model('refund');
$res = $refund_model->save(['status'=>$status],['id' => $id]); $res = $refund_model->save(['status' => $status], ['id' => $id]);
if($status==2){ if ($status == 2) {
$is_refund = 3; $is_refund = 3;
}elseif($status==3){ } elseif ($status == 3) {
$is_refund = 2; $is_refund = 2;
} }
$status_str = array( $status_str = array(
'2'=>'请求成功,已退款', '2' => '请求成功,已退款',
'3'=>'请求成功,已驳回该退款申请' '3' => '请求成功,已驳回该退款申请'
); );
if($res){ if ($res) {
$refund_info = $refund_model->get($id); $refund_info = $refund_model->get($id);
if($refund_info){ if ($refund_info) {
$set_order_res = model('order')->save(['is_refund'=>$is_refund],['id'=>$refund_info['order_id']]); $set_order_res = model('order')->save(['is_refund' => $is_refund], ['id' => $refund_info['order_id']]);
} }
$this->success($status_str[$status]); $this->success($status_str[$status]);
}else{ } else {
$this->error('修改失败,本次审核无效'); $this->error('修改失败,本次审核无效');
} }
} }
......
...@@ -5,7 +5,9 @@ ...@@ -5,7 +5,9 @@
* Date: 2018/9/13 * Date: 2018/9/13
* Time: 20:59 * Time: 20:59
*/ */
namespace app\admin\controller; namespace app\admin\controller;
use app\admin\controller\AuthBase; use app\admin\controller\AuthBase;
use app\common\model\Admin as AdminModel; use app\common\model\Admin as AdminModel;
use app\admin\controller\Upload; use app\admin\controller\Upload;
...@@ -16,6 +18,7 @@ class Project extends AuthBase ...@@ -16,6 +18,7 @@ class Project extends AuthBase
protected $city_model; protected $city_model;
protected $catalog_model; protected $catalog_model;
protected $project_model; protected $project_model;
public function _initialize() public function _initialize()
{ {
$this->project_model = model("project"); $this->project_model = model("project");
...@@ -24,433 +27,465 @@ class Project extends AuthBase ...@@ -24,433 +27,465 @@ class Project extends AuthBase
$this->catalog_model = model("Catalogs"); $this->catalog_model = model("Catalogs");
parent::_initialize(); parent::_initialize();
} }
//活动列表
public function index(){
// $title = input('get.title','');
// $city = input('get.city','');
// $tags = input('get.tags','');
// $catalogs = input('get.catalogs','');
// $this->project_mode->where('title','like',"%".$title."%")
// ->where(function($query,$tags){
// $tag_arr = explode(',',$tags);
//
// });
$title = input('get.title'); //活动列表
$type = input('get.type'); public function index()
$catalog_id = input('get.catalog_id'); {
$condition = [];
if($title){
$condition['title'] = ['like',"%".$title."%"];
}
if($type){
$condition['type'] = $type;
}
if($catalog_id){
$condition['catalog_id'] = $catalog_id;
}
$catalog_list = $this->catalog_model->order('sort','asc')->select();
$this -> assign('catalog_list', $catalog_list);
$project_list =
$this->project_model
->where($condition)->order('created_at desc')
->paginate(10,false,['query'=>['title'=>$title,'type'=>$type,'catalog_id'=>$catalog_id]]);
$this->assign('project_list',$project_list);
return $this->fetch('');
}
// 添加项目
public function create(){
if (request()->isPost()) { $title = input('get.title');
// 引入上传类 $type = input('get.type');
$upload = new Upload(); $catalog_id = input('get.catalog_id');
$file = input('file.'); $condition = [];
$data = input('post.'); if ($title) {
$poster = ''; $condition['title'] = ['like', "%" . $title . "%"];
$kf_qrcode = '';
$banners = [];
if($data['type']==2){
$result = $upload->sava($file['kf_qrcode']);
if(!$result['error']){
$kf_qrcode = $result['result']['url'];
$data['kf_qrcode'] = $kf_qrcode;
}
} }
$result = $upload->sava($file['poster']); if ($type) {
if(!$result['error']){ $condition['type'] = $type;
$poster = $result['result']['url'];
$data['poster'] = $poster;
} }
foreach ($file['banners'] as $name => $f) { if ($catalog_id) {
$result = $upload->sava($f); $condition['catalog_id'] = $catalog_id;
if(!$result['error']){
$banners[] = $result['result']['url'];
$data['banners'] = json_encode($banners);
}
} }
// $result = $upload -> sava(input('file.banners')); $catalog_list = $this->catalog_model->order('sort', 'asc')->select();
//写入数据库 $this->assign('catalog_list', $catalog_list);
// $data['description'] = htmlspecialchars($data['description']); $project_list =
$res = $this->project_model->data($data)->save(); $this->project_model
if($res){ ->where($condition)->order('created_at desc')
$this->success('添加成功','','',1); ->paginate(10, false, ['query' => ['title' => $title, 'type' => $type, 'catalog_id' => $catalog_id]]);
}else{ $this->assign('project_list', $project_list);
$this->error('添加到数据库失败','','',1); return $this->fetch('');
}
// 添加项目
public function create()
{
if (request()->isPost()) {
// 引入上传类
$upload = new Upload();
$file = input('file.');
$data = input('post.');
$poster = '';
$kf_qrcode = '';
$banners = [];
//如果是商家则保存客服二维码
if ($data['type'] == 2) {
$result = $upload->sava($file['kf_qrcode']);
if (!$result['error']) {
$kf_qrcode = $result['result']['url'];
$data['kf_qrcode'] = $kf_qrcode;
}
}
//保存封面
$result = $upload->sava($file['poster']);
if (!$result['error']) {
$poster = $result['result']['url'];
$data['poster'] = $poster;
}
//遍历banner数组并保存
foreach ($file['banners'] as $name => $f) {
$result = $upload->sava($f);
if (!$result['error']) {
$banners[] = $result['result']['url'];
$data['banners'] = json_encode($banners);
}
}
//写入数据库
$res = $this->project_model->data($data)->save();
if ($res) {
$this->success('添加成功', '', '', 1);
} else {
$this->error('添加到数据库失败', '', '', 1);
}
} else {
$tag_list = $this->tag_model->order('sort', 'asc')->select();
$this->assign('tag_list', $tag_list);
$catalog_list = $this->catalog_model->order('sort', 'asc')->select();
$this->assign('catalog_list', $catalog_list);
$city_list = $this->city_model->order('sort', 'asc')->select();
$this->assign('city_list', $city_list);
$this->assign('project_info', 0);
$this->assign('tags', 0);
return $this->fetch('updateproject');
} }
}else{
$tag_list = $this->tag_model -> order('sort','asc') -> select();
$this -> assign('tag_list', $tag_list);
$catalog_list = $this->catalog_model->order('sort','asc')->select();
$this -> assign('catalog_list', $catalog_list);
$city_list = $this->city_model->order('sort','asc')->select();
$this -> assign('city_list', $city_list);
return $this->fetch();
}
} }
public function delete(){ //删除项目、商家
$id = input('post.id'); public function delete()
$used = model('Orders')->where('pid',$id)->count(); {
if($used>0){ $id = input('post.id');
$this->error('该项目已有用户下单,不可删除!','','',1); $used = model('Orders')->where('pid', $id)->count();
} if ($used > 0) {
$this->error('该项目已有用户下单,不可删除!', '', '', 1);
}
$res = model('project')->destroy($id); $res = model('project')->destroy($id);
if($res){ if ($res) {
$this->success('删除成功','','',1); $this->success('删除成功', '', '', 1);
}else{ } else {
$this->error('删除失败','','',1); $this->error('删除失败', '', '', 1);
} }
} }
// 修改项目
public function updateProject($id){
if (request()->isPost()) { // 修改项目
// 引入上传类 public function updateProject($id)
$id = input('post.id'); {
$upload = new Upload();
$file = input('file.');
$data = input('post.');
$data = array_merge(array_diff($data, array('id'=>$id)));
$poster = '';
$kf_qrcode = '';
$banners = [];
$project_info = $this->project_model -> find($id);
$old_banners = json_decode($project_info['banners_native']); if (request()->isPost()) {
$old_poster = $project_info['poster']; // 引入上传类
$old_kf_qrcode = $project_info['kf_qrcode']; $id = input('post.id');
$upload = new Upload();
$file = input('file.');
$data = input('post.');
$data = array_merge(array_diff($data, array('id' => $id)));
$poster = '';
$kf_qrcode = '';
$banners = [];
$project_info = $this->project_model->find($id);
// $resource_model = model('resource'); $old_banners = json_decode($project_info['banners_native']);
$old_poster = $project_info['poster'];
$old_kf_qrcode = $project_info['kf_qrcode'];
if($data['type']==2){ //如果是商家则保存客服二维码
if(input('file.kf_qrcode')){ if ($data['type'] == 2) {
$result = $upload->sava(input('file.kf_qrcode')); if (input('file.kf_qrcode')) {
if(!$result['error']){ $result = $upload->sava(input('file.kf_qrcode'));
// $resource_model -> where('address',$old_kf_qrcode)->delete(); if (!$result['error']) {
$kf_qrcode = $result['result']['url']; $kf_qrcode = $result['result']['url'];
$data['kf_qrcode'] = $kf_qrcode; $data['kf_qrcode'] = $kf_qrcode;
}
}
} }
} //保存封面
} if (input('file.poster')) {
if(input('file.poster')){ $result = $upload->sava(input('file.poster'));
$result = $upload->sava(input('file.poster')); if (!$result['error']) {
if(!$result['error']){ $poster = $result['result']['url'];
// $resource_model -> where('address',$old_poster)->delete(); $data['poster'] = $poster;
$poster = $result['result']['url']; }
$data['poster'] = $poster; }
} //遍历banner数组并保存
} if (input('file.banners')) {
if(input('file.banners')){ $file_banners = input('file.banners');
$file_banners = input('file.banners'); foreach ($file_banners as $name => $f) {
foreach ($file_banners as $name => $f) { $result = $upload->sava($f);
$result = $upload->sava($f); if (!$result['error']) {
if(!$result['error']){ $banners[] = $result['result']['url'];
$banners[] = $result['result']['url']; }
}
$data['banners'] = json_encode(array_merge($banners, $old_banners));
} }
}
$data['banners'] = json_encode(array_merge($banners,$old_banners));
}
// $result = $upload -> sava(input('file.banners')); //写入数据库
//写入数据库 $res = $this->project_model->save($data, ['id' => $id]);
// $data['description'] = htmlspecialchars($data['description']); if ($res) {
$res = $this->project_model->save($data,['id'=>$id]); $this->success('修改成功', '', '', 1);
if($res){ } else {
$this->success('修改成功','','',1); $this->error('修改失败', '', '', 1);
}else{ }
$this->error('修改失败','','',1); } else {
$project_info = $this->project_model->find($id);
// return;
$this->assign('project_info', $project_info);
//反显,处理项目/商品已使用标签
$value = $project_info->tags_id_str;
$value = trim($value, '|');
$tags = explode('|', $value);
$this->assign('tags', $tags);
//反显,读取所有tags
$tag_list = $this->tag_model->order('sort', 'asc')->select();
$this->assign('tag_list', $tag_list);
//反显,读取所有分类
$catalog_list = $this->catalog_model->order('sort', 'asc')->select();
$this->assign('catalog_list', $catalog_list);
//反显,读取所有城市
$city_list = $this->city_model->order('sort', 'asc')->select();
$this->assign('city_list', $city_list);
return $this->fetch();
} }
}else{
$project_info = $this->project_model->find($id);
// return;
$this->assign('project_info',$project_info);
$value = $project_info->tags_id_str;
$value = trim($value,'|');
$tags = explode('|', $value);
$this->assign('tags',$tags);
$tag_list = $this->tag_model -> order('sort','asc') -> select();
$this -> assign('tag_list', $tag_list);
$catalog_list = $this->catalog_model->order('sort','asc')->select();
$this -> assign('catalog_list', $catalog_list);
$city_list = $this->city_model->order('sort','asc')->select();
$this -> assign('city_list', $city_list);
return $this->fetch();
}
} }
// 标签管理 // 标签管理
public function tags(){ public function tags()
$title = input('get.name',''); {
$tag_list = $this->tag_model->where('name','like',"%".$title."%") -> order('sort','asc')->paginate(15,false,['query'=>['name'=>$title]]); $title = input('get.name', '');
$this->assign("tag_list",$tag_list); $tag_list = $this->tag_model->where('name', 'like', "%" . $title . "%")->order('sort', 'asc')->paginate(15, false, ['query' => ['name' => $title]]);
$this->assign("tag_list", $tag_list);
return $this->fetch(''); return $this->fetch('');
} }
public function addTag(){ //添加标签
public function addTag()
{
$data = array( $data = array(
'name' => trim(input('post.name')), 'name' => trim(input('post.name')),
'sort' => input('post.sort',0), 'sort' => input('post.sort', 0),
); );
$validate = validate('Project'); $validate = validate('Project');
if(!$validate->scene('addTag')->check($data)){ if (!$validate->scene('addTag')->check($data)) {
$this->error($validate->getError(),$_SERVER["HTTP_REFERER"],'',1); $this->error($validate->getError(), $_SERVER["HTTP_REFERER"], '', 1);
}else{ } else {
$res = $this->tag_model->data($data)->save(); $res = $this->tag_model->data($data)->save();
if(!$res){ if (!$res) {
$this->error('添加失败',$_SERVER["HTTP_REFERER"],'',1); $this->error('添加失败', $_SERVER["HTTP_REFERER"], '', 1);
}else{ } else {
$this->redirect($_SERVER["HTTP_REFERER"]); $this->redirect($_SERVER["HTTP_REFERER"]);
} }
} }
} }
public function editTag($id){
$this->assign('id',$id); public function editTag($id)
$tag_info = $this->tag_model->where('id',$id)->find(); {
$this->assign('tag_info',$tag_info); $this->assign('id', $id);
$tag_info = $this->tag_model->where('id', $id)->find();
$this->assign('tag_info', $tag_info);
return $this->fetch(); return $this->fetch();
} }
public function updateTag(){ //修改标签
public function updateTag()
{
$id = input('post.id'); $id = input('post.id');
$data = array( $data = array(
'id' => $id, 'id' => $id,
'name' => trim(input('post.name')), 'name' => trim(input('post.name')),
'sort' => input('post.sort',0) 'sort' => input('post.sort', 0)
); );
$validate = validate('Project'); $validate = validate('Project');
if(!$validate->scene('updateTag')->check($data)){ if (!$validate->scene('updateTag')->check($data)) {
$this->error($validate->getError(),$_SERVER["HTTP_REFERER"],'',1); $this->error($validate->getError(), $_SERVER["HTTP_REFERER"], '', 1);
}else{ } else {
$res = $this->tag_model->save($data,['id'=>$id]); $res = $this->tag_model->save($data, ['id' => $id]);
if(!$res){ if (!$res) {
$this->error('修改失败',$_SERVER["HTTP_REFERER"],'',1); $this->error('修改失败', $_SERVER["HTTP_REFERER"], '', 1);
}else{ } else {
$this->redirect(url('admin/project/tags')); $this->redirect(url('admin/project/tags'));
} }
} }
} }
public function deleteTag(){ //删除标签
$id = input('post.id'); public function deleteTag()
$used = $this->project_model->where('tags','like',"%".'|'.$id.'|'."%")->count(); {
if($used>0){ $id = input('post.id');
$this->error('该标签已在项目中引用,不可删除!','','',1); $used = $this->project_model->where('tags', 'like', "%" . '|' . $id . '|' . "%")->count();
} if ($used > 0) {
$res = model('tags')->destroy($id); $this->error('该标签已在项目中引用,不可删除!', '', '', 1);
if($res){ }
$this->success('删除成功','','',1); $res = model('tags')->destroy($id);
}else{ if ($res) {
$this->error('删除失败','','',1); $this->success('删除成功', '', '', 1);
} } else {
$this->error('删除失败', '', '', 1);
}
} }
// 城市管理
public function citys(){ //城市管理
$title = input('get.name',''); public function citys()
$tag_list = $this->city_model->where('name','like',"%".$title."%") -> order('sort','asc')->paginate(15,false,['query'=>['name'=>$title]]); {
$this->assign("tag_list",$tag_list); $title = input('get.name', '');
$tag_list = $this->city_model->where('name', 'like', "%" . $title . "%")->order('sort', 'asc')->paginate(15, false, ['query' => ['name' => $title]]);
$this->assign("tag_list", $tag_list);
return $this->fetch(''); return $this->fetch('');
} }
public function addCity(){ //添加城市
public function addCity()
{
$data = array( $data = array(
'name' => trim(input('post.name')), 'name' => trim(input('post.name')),
'sort' => input('post.sort',0), 'sort' => input('post.sort', 0),
); );
$validate = validate('Project'); $validate = validate('Project');
if(!$validate->scene('addTag')->check($data)){ if (!$validate->scene('addTag')->check($data)) {
$this->error($validate->getError(),$_SERVER["HTTP_REFERER"],'',1); $this->error($validate->getError(), $_SERVER["HTTP_REFERER"], '', 1);
}else{ } else {
$res = $this->city_model->data($data)->save(); $res = $this->city_model->data($data)->save();
if(!$res){ if (!$res) {
$this->error('添加失败',$_SERVER["HTTP_REFERER"],'',1); $this->error('添加失败', $_SERVER["HTTP_REFERER"], '', 1);
}else{ } else {
$this->redirect($_SERVER["HTTP_REFERER"]); $this->redirect($_SERVER["HTTP_REFERER"]);
} }
} }
} }
public function editCity($id){ public function editCity($id)
$this->assign('id',$id); {
$tag_info = $this->city_model->where('id',$id)->find(); $this->assign('id', $id);
$this->assign('tag_info',$tag_info); $tag_info = $this->city_model->where('id', $id)->find();
$this->assign('tag_info', $tag_info);
return $this->fetch(); return $this->fetch();
} }
public function updateCity(){ //编辑城市
public function updateCity()
{
$id = input('post.id'); $id = input('post.id');
$data = array( $data = array(
'id' => $id, 'id' => $id,
'name' => trim(input('post.name')), 'name' => trim(input('post.name')),
'sort' => input('post.sort',0) 'sort' => input('post.sort', 0)
); );
$validate = validate('Project'); $validate = validate('Project');
if(!$validate->scene('updateTag')->check($data)){ if (!$validate->scene('updateTag')->check($data)) {
$this->error($validate->getError(),$_SERVER["HTTP_REFERER"],'',1); $this->error($validate->getError(), $_SERVER["HTTP_REFERER"], '', 1);
}else{ } else {
$res = $this->city_model->save($data,['id'=>$id]); $res = $this->city_model->save($data, ['id' => $id]);
if(!$res){ if (!$res) {
$this->error('修改失败',$_SERVER["HTTP_REFERER"],'',1); $this->error('修改失败', $_SERVER["HTTP_REFERER"], '', 1);
}else{ } else {
$this->redirect(url('admin/project/citys')); $this->redirect(url('admin/project/citys'));
} }
} }
} }
public function deleteCity(){ //删除城市
$id = input('post.id'); public function deleteCity()
$used = $this->project_model->where('city',$id)->count(); {
if($used>0){ $id = input('post.id');
$this->error('该城市已在项目中引用,不可删除!','','',1); $used = $this->project_model->where('city', $id)->count();
} if ($used > 0) {
$this->error('该城市已在项目中引用,不可删除!', '', '', 1);
}
$res = model('citys')->destroy($id); $res = model('citys')->destroy($id);
if($res){ if ($res) {
$this->success('删除成功','','',1); $this->success('删除成功', '', '', 1);
}else{ } else {
$this->error('删除失败','','',1); $this->error('删除失败', '', '', 1);
} }
} }
// 分类管理 // 分类管理
public function catalogs(){ public function catalogs()
$title = input('get.name',''); {
$tag_list = $this->catalog_model->where('name','like',"%".$title."%") -> order('sort','asc')->paginate(15,false,['query'=>['name'=>$title]]); $title = input('get.name', '');
$this->assign("tag_list",$tag_list); $tag_list = $this->catalog_model->where('name', 'like', "%" . $title . "%")->order('sort', 'asc')->paginate(15, false, ['query' => ['name' => $title]]);
$this->assign("tag_list", $tag_list);
return $this->fetch(''); return $this->fetch('');
} }
public function addCatalogs(){ //添加分类
if (request()->isPost()) { public function addCatalogs()
$data = array( {
'name' => trim(input('post.name')), if (request()->isPost()) {
'sort' => input('post.sort',0), $data = array(
'poster' => input('file.poster') 'name' => trim(input('post.name')),
); 'sort' => input('post.sort', 0),
$validate = validate('Project'); 'poster' => input('file.poster')
if(!$validate->scene('addCatalogs')->check($data)){ );
$this->error($validate->getError(),$_SERVER["HTTP_REFERER"],'',1); $validate = validate('Project');
}else{ if (!$validate->scene('addCatalogs')->check($data)) {
$upload = new Upload(); $this->error($validate->getError(), $_SERVER["HTTP_REFERER"], '', 1);
$result = $upload -> sava(input('file.poster')); } else {
if($result['error']){ $upload = new Upload();
$this->assign('msg', $result['error']); $result = $upload->sava(input('file.poster'));
return view(); if ($result['error']) {
} $this->assign('msg', $result['error']);
$data['poster'] = $result['result']['url']; return view();
$res = $this->catalog_model->data($data)->save(); }
if(!$res){ $data['poster'] = $result['result']['url'];
$this->error('添加失败',$_SERVER["HTTP_REFERER"],'',1); $res = $this->catalog_model->data($data)->save();
}else{ if (!$res) {
$this->success('添加成功',$_SERVER["HTTP_REFERER"],'',1); $this->error('添加失败', $_SERVER["HTTP_REFERER"], '', 1);
} else {
$this->success('添加成功', $_SERVER["HTTP_REFERER"], '', 1);
}
} }
} else {
$this->assign('id', null);
$this->assign('tag_info', 0);
return $this->fetch('editcatalogs');
} }
}else{
return $this->fetch();
}
} }
public function editCatalogs($id){
$this->assign('id',$id); public function editCatalogs($id)
$tag_info = $this->catalog_model->where('id',$id)->find(); {
$this->assign('tag_info',$tag_info); $this->assign('id', $id);
$tag_info = $this->catalog_model->where('id', $id)->find();
$this->assign('tag_info', $tag_info);
return $this->fetch(); return $this->fetch();
} }
public function updateCatalogs(){ //编辑分类
public function updateCatalogs()
{
$id = input('post.id'); $id = input('post.id');
$data = array( $data = array(
'id' => $id, 'id' => $id,
'name' => trim(input('post.name')), 'name' => trim(input('post.name')),
'sort' => input('post.sort',0) 'sort' => input('post.sort', 0)
); );
$validate = validate('Project'); $validate = validate('Project');
if(!$validate->scene('updateTag')->check($data)){ if (!$validate->scene('updateTag')->check($data)) {
$this->error($validate->getError(),$_SERVER["HTTP_REFERER"],'',1); $this->error($validate->getError(), $_SERVER["HTTP_REFERER"], '', 1);
}else{ } else {
if(input('file.poster')){ if (input('file.poster')) {
// 上传封面到七牛云 // 上传封面到七牛云
$upload = new Upload(); $upload = new Upload();
$result = $upload -> sava(input('file.poster')); $result = $upload->sava(input('file.poster'));
if($result['error']){ if ($result['error']) {
$this->assign('msg', $result['error']); $this->assign('msg', $result['error']);
return view(); return view();
} }
// 将资源目录该图的引用设为0 $data['poster'] = $result['result']['url'];
// $resource_model = model('Resource');
// $res = $resource_model->where('address',input('post.old_poster'))->setDec("use_num");
$data['poster'] = $result['result']['url'];
} }
$res = $this->catalog_model->save($data,['id'=>$id]); $res = $this->catalog_model->save($data, ['id' => $id]);
if(!$res){ if (!$res) {
$this->error('修改失败',$_SERVER["HTTP_REFERER"],'',1); $this->error('修改失败', $_SERVER["HTTP_REFERER"], '', 1);
}else{ } else {
$this->redirect(url('admin/project/catalogs')); $this->redirect(url('admin/project/catalogs'));
} }
} }
} }
public function deleteCatalog(){ //删除分类
$id = input('post.id'); public function deleteCatalog()
$used = $this->project_model->where('catalog_id',$id)->count(); {
if($used>0){ $id = input('post.id');
$this->error('该分类下有项目,不可删除!','','',1); $used = $this->project_model->where('catalog_id', $id)->count();
} if ($used > 0) {
// $catalog_info = model('catalogs')->find($id); $this->error('该分类下有项目,不可删除!', '', '', 1);
// $old_image = $catalog_info['poster']; }
// model('resource') -> where('address',$old_image)->delete(); $res = model('catalogs')->destroy($id);
$res = model('catalogs')->destroy($id); if ($res) {
if($res){ $this->success('删除成功', '', '', 1);
$this->success('删除成功','','',1); } else {
}else{ $this->error('删除失败', '', '', 1);
$this->error('删除失败','','',1); }
}
} }
// 处理删除某一张bannner图 // 处理删除某一张bannner图
public function deleteBanners(){ public function deleteBanners()
$id = input('post.id'); {
$address = input('post.address'); $id = input('post.id');
$address = input('post.address');
// $resource_model = model('resource'); $project_info = $this->project_model->find($id);
// $del_res = $resource_model -> where('address',$address)->delete(); $banners = json_decode($project_info['banners_native']);
$new_banners = array_merge(array_diff($banners, array($address)));
$project_info = $this->project_model -> find($id); $up_res = 0;
$banners = json_decode($project_info['banners_native']); if ($new_banners != $banners) {
$new_banners = array_merge(array_diff($banners, array($address))); $up_res = $this->project_model->save([
$up_res = 0; 'banners' => json_encode($new_banners)
if($new_banners!=$banners){ ], ['id' => $id]);
$up_res = $this->project_model -> save([ }
'banners' => json_encode($new_banners) if ($up_res) {
],['id' => $id]); return array(
} 'success' => '成功删除该图',
if($up_res){ 'data' => input('post.'),
return array( 'old_banners' => $banners,
'success' => '成功删除该图', 'new_banner' => $new_banners,
'data' => input('post.'), );
'old_banners' => $banners, } else {
'new_banner' => $new_banners, return array(
// 'del_res' => $del_res 'error' => '删除失败,该图片不存在或已经被删除',
); 'data' => input('post.'),
}else{ 'old_banners' => $banners,
return array( 'new_banner' => $new_banners,
'error' => '删除失败,该图片不可能已经被删除', );
'data' => input('post.'), }
'old_banners' => $banners, }
'new_banner' => $new_banners, //设置置顶排序
// 'del_res' => $del_res public function setHeat(){
); $heat = input('post.heat');
} $id = input('post.id');
$res = model('project')->save(['heat'=>$heat],['id'=>$id]);
if($res){
$this->success('修改置顶排序成功');
}else{
$this->success('修改置顶排序失败');
}
} }
} }
...@@ -49,7 +49,11 @@ ...@@ -49,7 +49,11 @@
{volist name="banner_list" id="vo" key="k" empty="暂时没有数据"} {volist name="banner_list" id="vo" key="k" empty="暂时没有数据"}
<tr id="tr_{$vo.id}"> <tr id="tr_{$vo.id}">
<td>{$vo.id}</td> <td>{$vo.id}</td>
<td><img src="{$vo.image}" style="width:170px" alt=""></td> <td>
<a href="<?=$vo->image?>" target="_blank" data-fancybox="images">
<img src="<?=$vo->image?>" width='100' height='50'>
</a>
</td>
<td> <td>
{if condition="$vo.type==1"} {if condition="$vo.type==1"}
小程序页面路径 小程序页面路径
......
...@@ -14,7 +14,12 @@ ...@@ -14,7 +14,12 @@
<section class="wrapper"> <section class="wrapper">
<h3 class=""> <h3 class="">
<a href="<?php echo url('@admin/Post/index')?>"> <a href="<?php echo url('@admin/Post/index')?>">
<i class="fa fa-angle-right"></i> <a href="{:url('admin/banner/index')}">轮播图管理</a> <i class="fa fa-angle-right"></i> 修改 <i class="fa fa-angle-right"></i> <a href="{:url('admin/banner/index')}">轮播图管理</a> <i class="fa fa-angle-right"></i>
{if condition="$banner_info"}
修改轮播图
{else/}
添加轮播图
{/if}
</a> </a>
</h3> </h3>
<hr> <hr>
...@@ -32,7 +37,7 @@ ...@@ -32,7 +37,7 @@
<div class="row margin-bottom"> <div class="row margin-bottom">
<div class="col-md-12"> <div class="col-md-12">
<form name="myFrom" id="myFrom" class="form-horizontal" enctype="multipart/form-data" method="POST" action="{:url('admin/banner/update',['id'=>$banner_info.id])}" id="article-create-form"> <form name="myFrom" id="myFrom" class="form-horizontal" enctype="multipart/form-data" method="POST" {if condition="$banner_info"}action="{:url('admin/banner/update',['id'=>$banner_info.id])}"{else/}action="{:url('admin/banner/create')}"{/if} id="article-create-form">
<div class="form-group"> <div class="form-group">
<label for="title" class="col-sm-1 control-label text-right" >图片</label> <label for="title" class="col-sm-1 control-label text-right" >图片</label>
<div class="col-lg-10 col-md-8 col-lg-6"> <div class="col-lg-10 col-md-8 col-lg-6">
...@@ -96,15 +101,14 @@ initFileInput($("#input-b1"),"{$banner_info.image}"); ...@@ -96,15 +101,14 @@ initFileInput($("#input-b1"),"{$banner_info.image}");
// 单文件上传 // 单文件上传
function initFileInput(el,initArr,initConfig){ function initFileInput(el,initArr,initConfig){
var initialPreview = []; var initialPreview = [];
initialPreview.push(initArr); if(initArr){
initialPreview.push(initArr);
}
el.fileinput({ el.fileinput({
language: 'zh', language: 'zh',
uploadExtraData:{'name':name},
initialPreview: initialPreview, initialPreview: initialPreview,
uploadExtraData:{'name':'banner-choose'}, uploadExtraData:{'name':'banner-choose'},
// initialPreviewConfig: initConfig,
autoReplace : true, autoReplace : true,
showUpload:false, //是否显示上 传按钮
initialPreviewShowDelete:true, initialPreviewShowDelete:true,
initialPreviewAsData: true, initialPreviewAsData: true,
dropZoneEnabled: false, dropZoneEnabled: false,
......
{layout name="public/layout_main"}
<section class="wrapper">
<h3><i class="fa fa-angle-right"></i> 分类管理</h3>
<!-- 分割线 -->
<hr>
<div class="row margin-bottom">
<div class="col-md-12">
<form class="form-inline pull-left" method="GET" action="{:url('admin/project/Catalogs')}" >
<div class="form-group margin-right">
<label for="name">分类名</label>
<input class="form-control" type="text" name="name" id="name" value="<?php echo input('title');?>" />
</div>
<button type="submit" class="btn btn-primary">搜索</button>
</form>
<div class=" pull-right">
<a href="{:url('admin/project/addCatalogs')}" class="btn btn-success">添加分类</a>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="table-responsive">
<table class="table table-bordered table-striped">
<!--<colgroup>-->
<!--<col style="width: 2%;">-->
<!--<col style="width: 80%;">-->
<!--<col style="width: 5%;">-->
<!--<col style="width: 5%;">-->
<!--<col style="width: 10%;">-->
<!--</colgroup>-->
<thead>
<tr>
<th>#</th>
<th>分类名称</th>
<th>分类图标</th>
<th>引用次数</th>
<th>排序</th>
<th>发布时间</th>
<th>操作</th>
</tr>
</thead>
<tbody>
{volist name="tag_list" id="vo" key="k" empty="暂时没有数据"}
<tr>
<td>{$k}</td>
<td>{$vo.name}</td>
<td><img style="width:170px" src="{$vo.poster}" alt=""></td>
<td>{$vo.used_num}</td>
<td>{$vo.sort}</td>
<td>{$vo.created_at}</td>
<td>
<a href="{:url('admin/project/editCatalogs',['id'=>$vo.id])}" class="btn btn-xs btn-primary"><i class="fa fa-pencil"></i></a>
<a href="###" class="btn btn-xs btn-danger"><i class="fa fa-trash"></i></a>
</td>
</tr>
{/volist}
</tbody>
</table>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
{$tag_list->render()}
</div>
</div>
</section>
<script type="text/javascript">
$("#myModal").modal();
// 文档加载完毕之后,会进入该方法
$(function(){
$(".btn-delete").click(function(){
var _this = $(this);
var url = "delete";
var oid = _this.attr('oid');
showDialog("提示", "确定删除这篇文章吗?", function () {
// ajax post 方法
$.post(url, {id:oid}, function (res) {
var res = JSON.parse(res);
if (res.error == 1) {
// javascript 的默认弹出提示方法
alert(res.msg);
} else {
_this.remove();
$("#tr_"+oid).fadeOut();
}
});
});
});
});
</script>
{layout name="public/fullscreen"}
<link rel="stylesheet" href="/static/fileinput/css/fileinput.css">
<link rel="stylesheet" href="/static/bootstrap-select/css/bootstrap-select.min.css">
<style type="text/css">
.progress-bar{
text-align: center;
}
.dropdown-menu{
z-index: 100000;
}
</style>
<section class="wrapper">
<h3 class="">
<a href="<?php echo url('@admin/Guide/index')?>">
<i class="fa fa-angle-right"></i> <a href="{:url('admin/Guide/index')}">美行攻略</a> <i class="fa fa-angle-right"></i> 发布攻略
</a>
</h3>
<hr>
<?php if(isset($msg) && $msg):?>
<div class="row margin-bottom">
<div class="col-md-12">
<div class="alert alert-danger alert-dismissible fade in" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
<?php echo $msg;?>
</div>
</div>
</div>
<?php endif;?>
<div class="row margin-bottom">
<div class="col-md-12">
<form name="myFrom" class="form-horizontal" enctype="multipart/form-data" method="POST" action="<?php echo url("@admin/Guide/create")?>" id="article-create-form">
<div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">攻略标题</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<input type="text" class="form-control validate[required]" name="title" id="title" placeholder="请输入美行攻略的标题">
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">攻略简介</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<textarea name="intro" id="" cols="30" rows="3" class="form-control" placeholder="请输入美行攻略的简单描述"></textarea>
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-2 control-label text-right" >攻略封面</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<input id="input-b1" name="poster" type="file">
<span class="form-group-tip"> * 尺寸建议:260px*190px </span>
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">攻略标签</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<input type="hidden" name="tags" id="tags" value="">
<select class="selectpicker form-control" id="tags_select" multiple data-live-search="true" onchange="setTags()">
{volist name="tag_list" name="tag_list" id="vo"}
<option value="{$vo.id}">{$vo.name}</option>
{/volist}
</select>
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">攻略类型</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<select class="form-control" name="type" id="post_type">
<option value="1">手动编写文章</option>
<option value="2">链接到网络文章</option>
</select>
</div>
</div>
<div class="form-group" id="href" style="display: none">
<label for="title" class="col-sm-2 control-label text-right">请输入url</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<input type="text" name="href" class="form-control">
<code>http:// + 网址 或 https:// + 网址</code>
</div>
</div>
<div class="form-group" id="content">
<label for="content" class="col-sm-2 control-label text-right">攻略详情</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<!-- 加载编辑器的容器 -->
<script id="post_container" name="content" type="text/plain" style="width: 100%">
</script>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-success" id="btn-save">提交</button>
</div>
</div>
</form>
</div>
</div>
</section>
<!-- 文件上传和select插件 -->
<script type="text/javascript" src="/static/fileinput/js/fileinput.min.js"></script>
<script type="text/javascript" src="/static/fileinput/js/locales/zh.js"></script>
<script type="text/javascript" src="/static/bootstrap-select/js/bootstrap-select.min.js"></script>
<script type="text/javascript" src="/static/bootstrap-select/js/i18n/defaults-zh_CN.js"></script>
<!-- 配置文件 -->
<script type="text/javascript" src="/static/ueditor/ueditor.config.js"></script>
<!-- 编辑器源码文件 -->
<script type="text/javascript" src="/static/ueditor/ueditor.all.js"></script>
<script type="text/javascript">
$(function(){
// 即时显示封面图
$('#poster').change(function(e){
var file = e.target.files[0];
preview(file, 0);
});
var type = $("#post_type").val();
if(type == 1){
$("#content").show();
$("#href").hide();
}else{
$("#href").show();
$("#content").hide();
}
});
$("#post_type").change(function(){
var type = $(this).val();
if(type == 1){
$("#content").show();
$("#href").hide();
}else{
$("#href").show();
$("#content").hide();
}
});
// 初始化文件上传
$("#input-b1").fileinput({
language: 'zh',
showUpload:false, //是否显示上传按钮
allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀
})
function setTags(){
var slected = $("#tags_select").val();
if(slected){
$("#tags").val(slected.toString());
}else{
$("#tags").val("");
}
}
UE.getEditor('post_container', {
//编辑区域大小
'initialFrameHeight' : '350',
'elementPathEnabled':false,
'autoHeight': true,
'autoHeightEnabled':true,
'autoFloatEnabled': true,
'iframeCssUrl': '/static/ueditor/themes/iframe.css',// 引入css
//定制菜单
'toolbars' : [
[
'fullscreen', 'source', 'undo', 'redo', '|',
'fontsize',
'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'removeformat',
'formatmatch', 'blockquote', 'pasteplain', '|',
'forecolor', 'backcolor', '|',
'lineheight', '|',
'indent', '|', 'insertimage', '|',
'justifyleft', //居左对齐
'justifyright', //居右对齐
'justifycenter', //居中对齐
'justifyjustify', //两端对齐
],
]
});
</script>
...@@ -31,6 +31,7 @@ ...@@ -31,6 +31,7 @@
<th>攻略标题</th> <th>攻略标题</th>
<th>类型</th> <th>类型</th>
<th>简介</th> <th>简介</th>
<th>标签</th>
<th>封面</th> <th>封面</th>
<th>发布时间</th> <th>发布时间</th>
<th>操作</th> <th>操作</th>
...@@ -53,6 +54,9 @@ ...@@ -53,6 +54,9 @@
</td> </td>
<td> <?=$article->type=='1'?'自建文章':'网络文章';?> </td> <td> <?=$article->type=='1'?'自建文章':'网络文章';?> </td>
<td style="max-width:200px;"> <?=$article->intro;?> </td> <td style="max-width:200px;"> <?=$article->intro;?> </td>
<td style="max-width: 200px">
{volist name="$article.tags" id="tag" key="k"}{if condition="$k!=1"}/{/if}{$tag}{/volist}
</td>
<td> <td>
<a href="<?=$article->poster?>" target="_blank" data-fancybox="images"> <a href="<?=$article->poster?>" target="_blank" data-fancybox="images">
<img src="<?=$article->poster?>" width='100' height='50'> <img src="<?=$article->poster?>" width='100' height='50'>
......
...@@ -13,7 +13,12 @@ ...@@ -13,7 +13,12 @@
<section class="wrapper"> <section class="wrapper">
<h3 class=""> <h3 class="">
<a href="<?php echo url('@admin/Guide/index')?>"> <a href="<?php echo url('@admin/Guide/index')?>">
<i class="fa fa-angle-right"></i> <a href="{:url('admin/Guide/index')}">美行攻略</a> <i class="fa fa-angle-right"></i> 修改攻略 <i class="fa fa-angle-right"></i> <a href="{:url('admin/Guide/index')}">美行攻略</a> <i class="fa fa-angle-right"></i>
{if condition="$article"}
修改攻略
{else/}
发布攻略
{/if}
</a> </a>
</h3> </h3>
<hr> <hr>
...@@ -31,7 +36,7 @@ ...@@ -31,7 +36,7 @@
<div class="row margin-bottom"> <div class="row margin-bottom">
<div class="col-md-12"> <div class="col-md-12">
<form name="myFrom" class="form-horizontal" enctype="multipart/form-data" method="POST" action="<?php echo url("@admin/Guide/update/id/".$article['id'])?>" id="article-create-form"> <form name="myFrom" class="form-horizontal" enctype="multipart/form-data" method="POST" {if condition="$article"}action="{:url('admin/Guide/update',['id'=>$article['id']])}"{else/}action="{:url('admin/Guide/create')}"{/if} id="article-create-form">
<div class="form-group"> <div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">攻略标题</label> <label for="title" class="col-sm-2 control-label text-right">攻略标题</label>
<div class="col-sm-20 col-md-8 col-lg-6"> <div class="col-sm-20 col-md-8 col-lg-6">
...@@ -48,8 +53,11 @@ ...@@ -48,8 +53,11 @@
<label for="title" class="col-sm-2 control-label text-right" >攻略封面</label> <label for="title" class="col-sm-2 control-label text-right" >攻略封面</label>
<div class="col-sm-20 col-md-8 col-lg-6"> <div class="col-sm-20 col-md-8 col-lg-6">
<input type="hidden" name='old_poster' value="{$article.poster}"> <input type="hidden" name='old_poster' value="{$article.poster}">
<img src="{$article.poster}" style="width:170px;margin-bottom:10px" alt="" id="poster_view"> <a href="{$article.poster}" target="_blank" data-fancybox="images" id="poster_view">
<img src="{$article.poster}" style="width:170px;margin-bottom:10px">
</a>
<input id="input-b1" name="poster" type="file"> <input id="input-b1" name="poster" type="file">
<span class="form-group-tip"> * 尺寸建议:260px*190px </span>
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
...@@ -99,7 +107,7 @@ ...@@ -99,7 +107,7 @@
</div> </div>
<div class="form-group"> <div class="form-group">
<div class="col-sm-offset-2 col-sm-10"> <div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-success" id="btn-save">修改</button> <button type="submit" class="btn btn-success" id="btn-save">提交</button>
</div> </div>
</div> </div>
</form> </form>
...@@ -148,6 +156,8 @@ $("#post_type").change(function(){ ...@@ -148,6 +156,8 @@ $("#post_type").change(function(){
var fileInput = $("#input-b1").fileinput({ var fileInput = $("#input-b1").fileinput({
language: 'zh', language: 'zh',
showUpload:false, //是否显示上传按钮 showUpload:false, //是否显示上传按钮
showClose:false,
showRemove :false,
allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀 allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀
}) })
$("#input-b1").change(function(data){ $("#input-b1").change(function(data){
......
{layout name="public/layout_main"}
<style type="text/css">
.progress-bar{
text-align: center;
}
</style>
<section class="wrapper">
<h3 class="top-back">
<a href="<?php echo url('@admin/Post/index')?>">
<i class="fa fa-angle-left"></i> 编辑文章
</a>
</h3>
<hr>
<?php if(isset($msg) && $msg !== ''):?>
<div class="row margin-bottom">
<div class="col-md-12">
<div class="alert alert-danger alert-dismissible fade in" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
<?php echo $msg;?>
</div>
</div>
</div>
<?php endif;?>
<div class="row margin-bottom">
<div class="col-md-12">
<form class="form-horizontal" enctype="multipart/form-data" method="POST" id="robot-create-form">
<div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">文章标题</label>
<div class="col-lg-8">
<input type="text" class="form-control validate[required]" name="title" id="title" value="<?php echo $article->title;?>">
</div>
</div>
<div class="form-group">
<label for="content" class="col-sm-2 control-label text-right">文章内容</label>
<div class="col-lg-8">
<!-- 加载编辑器的容器 -->
<script id="post_container" name="content" type="text/plain"><?php echo htmlspecialchars_decode($article->content); ?></script>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-default">提交</button>
</div>
</div>
</form>
</div>
</div>
</section>
<!-- 配置文件 -->
<script type="text/javascript" src="/static/ueditor/ueditor.config.js"></script>
<!-- 编辑器源码文件 -->
<script type="text/javascript" src="/static/ueditor/ueditor.all.js"></script>
<script type="text/javascript">
var ue = UE.getEditor('post_container',{
// 图片上传配置路径
'serverUrl': "{:url('@admin/Ueditor/index')}",
'elementPathEnabled':false,
// autoHeight: true,
'autoHeightEnabled':false,
//编辑区域大小
'initialFrameHeight' : '300',
//定制菜单
'toolbars' : [
[
'fullscreen', 'source', 'undo', 'redo', '|',
'fontsize',
'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'removeformat',
'formatmatch', 'blockquote', 'pasteplain', '|',
'forecolor', 'backcolor', '|',
'lineheight', '|',
'indent', '|', 'insertimage', '|',
'justifyleft', //居左对齐
'justifyright', //居右对齐
'justifycenter', //居中对齐
'justifyjustify', //两端对齐
],
]
});
/*
* 初始化分类
*/
$(function () {
});
</script>
\ No newline at end of file
...@@ -40,9 +40,13 @@ ...@@ -40,9 +40,13 @@
{volist name="$comment_list" id="vo" key="k" empty="暂时没有数据"} {volist name="$comment_list" id="vo" key="k" empty="暂时没有数据"}
<tr> <tr>
<td>{$vo.id}</td> <td>{$vo.id}</td>
<td> <td style="text-align: center">
<img src="{$vo.project.poster}" style="width:70px;display:block;margin:0 auto;" alt=""> {if condition="$vo.project"}
<p style="padding:0;margin:0;text-align:center">{$vo.project.title}</p> <a href="{$vo.project.poster}" target="_blank" data-fancybox="images">
<img src="{$vo.project.poster}" width='100' height='50'>
</a>
<p style="padding:0;margin:0;">{$vo.project.title}</p>
{/if}
</td> </td>
<td> <td>
<p style="padding:0;margin:0;text-align:center">{$vo.user.nickname}</p> <p style="padding:0;margin:0;text-align:center">{$vo.user.nickname}</p>
......
...@@ -69,9 +69,13 @@ ...@@ -69,9 +69,13 @@
购买会员卡订单 购买会员卡订单
{/if} {/if}
</td> </td>
<td> <td style="text-align: center">
<img src="{$vo.project.poster}" style="width:70px;display:block;margin:0 auto;" alt=""> {if condition="$vo.project"}
<p style="padding:0;margin:0;text-align:center">{$vo.project.title}</p> <a href="{$vo.project.poster}" target="_blank" data-fancybox="images">
<img src="{$vo.project.poster}" width='100' height='50'>
</a>
<p style="padding:0;margin:0;">{$vo.project.title}</p>
{/if}
</td> </td>
<td> <td>
<p style="padding:0;margin:0;text-align:center">{$vo.user_info.nickname}</p> <p style="padding:0;margin:0;text-align:center">{$vo.user_info.nickname}</p>
......
...@@ -52,9 +52,15 @@ ...@@ -52,9 +52,15 @@
购买会员卡订单 购买会员卡订单
{/if} {/if}
</td> </td>
<td> <td style="text-align: center">
<img src="{$vo.order.project.poster}" style="width:70px;display:block;margin:0 auto;" alt=""> {if condition="$vo.order.project"}
<p style="padding:0;margin:0;text-align:center">{$vo.order.project.title}</p> <a href="{$vo.order.project.poster}" target="_blank" data-fancybox="images">
<img src="{$vo.order.project.poster}" width='100' height='50'>
</a>
<p style="padding:0;margin:0;">{$vo.order.project.title}</p>
{/if}
<!--<img src="{$vo.order.project.poster}" style="width:70px;display:block;margin:0 auto;" alt="">-->
<!--<p style="padding:0;margin:0;text-align:center">{$vo.order.project.title}</p>-->
</td> </td>
<td> <td>
<p style="padding:0;margin:0;text-align:center">{$vo.order.user_info.nickname}</p> <p style="padding:0;margin:0;text-align:center">{$vo.order.user_info.nickname}</p>
......
{layout name="public/layout_main"}
<link rel="stylesheet" href="/static/fileinput/css/fileinput.css">
<section class="wrapper">
<h3><i class="fa fa-angle-right"></i> <a href="{:url('admin/project/catalogs')}">分类管理</a> <i class="fa fa-angle-right"></i> 修改分类</h3>
<!-- 分割线 -->
<hr>
<div class="col-xs-12" >
<form method="post" class="form-horizontal" enctype="multipart/form-data" action="{:url('admin/project/addCatalogs')}">
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">分类名</label>
<div class="col-lg-10">
<input type="text" class="form-control" name="name">
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right" >分类图标</label>
<div class="col-lg-10">
<input type="hidden" name='old_poster'>
<input id="input-b1" name="poster" type="file">
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">排序</label>
<div class="col-lg-10">
<input type="number" class="form-control" name="sort">
</div>
</div>
<button type="submit" class="btn btn-success">修改</button>
</form>
</div>
</section>
<!-- 文件上传和select插件 -->
<script type="text/javascript" src="/static/fileinput/js/fileinput.min.js"></script>
<script type="text/javascript" src="/static/fileinput/js/locales/zh.js"></script>
<script type="text/javascript">
// 文档加载完毕之后,会进入该方法
// 初始化文件上传
var fileInput = $("#input-b1").fileinput({
language: 'zh',
showUpload:false, //是否显示上传按钮
allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀
})
$("#input-b1").change(function(data){
if(this.files.length>0){
$("#poster_view").hide();
}else{
$("#poster_view").show();
}
})
$("#input-b1").on("fileclear",function(event, data, msg){
$("#poster_view").show();
});
$(function(){
$(".btn-delete").click(function(){
var _this = $(this);
var url = "delete";
var oid = _this.attr('oid');
showDialog("提示", "确定删除这篇文章吗?", function () {
// ajax post 方法
$.post(url, {id:oid}, function (res) {
var res = JSON.parse(res);
if (res.error == 1) {
// javascript 的默认弹出提示方法
alert(res.msg);
} else {
_this.remove();
$("#tr_"+oid).fadeOut();
}
});
});
});
});
</script>
...@@ -45,7 +45,11 @@ ...@@ -45,7 +45,11 @@
<tr id="tr_{$vo.id}"> <tr id="tr_{$vo.id}">
<td>{$vo.id}</td> <td>{$vo.id}</td>
<td>{$vo.name}</td> <td>{$vo.name}</td>
<td><img style="width:90px" src="{$vo.poster}" alt=""></td> <td>
<a href="<?=$vo->poster?>" target="_blank" data-fancybox="images">
<img src="<?=$vo->poster?>" width='100' height='50'>
</a>
</td>
<td>{$vo.sort}</td> <td>{$vo.sort}</td>
<td>{$vo.created_at}</td> <td>{$vo.created_at}</td>
<td> <td>
......
{layout name="public/layout_main"}
<link rel="stylesheet" href="/static/validation/css/validationEngine.jquery.css">
<link rel="stylesheet" href="/static/fileinput/css/fileinput.css">
<link rel="stylesheet" href="/static/bootstrap-select/css/bootstrap-select.min.css">
<link rel="stylesheet" href="/static/datetimepicker/css/bootstrap-datetimepicker.min.css">
<style type="text/css">
.progress-bar{
text-align: center;
}
.dropdown-menu{
z-index: 100000;
}
.control-label{
width: 150px;
}
</style>
<section class="wrapper">
<h3 class="">
<a href="<?php echo url('@admin/Guide/index')?>">
<i class="fa fa-angle-right"></i> 发布活动、商家
</a>
</h3>
<hr>
<?php if(isset($msg) && $msg):?>
<div class="row margin-bottom">
<div class="col-md-12">
<div class="alert alert-danger alert-dismissible fade in" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
<?php echo $msg;?>
</div>
</div>
</div>
<?php endif;?>
<div class="row margin-bottom">
<div class="col-md-12">
<form name="myFrom" id="myFrom" class="form-horizontal" enctype="multipart/form-data" method="POST" action="<?php echo url("@admin/project/create")?>" id="article-create-form">
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">类型</label>
<div class="col-lg-10">
<select name="type" id="peoject_type" class="form-control">
<option value="1">活动</option>
<option value="2">商家</option>
</select>
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">名称</label>
<div class="col-lg-10">
<input type="text" class="form-control validate[required]" name="title" id="title" placeholder="活动/商家名称">
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">国内/国外</label>
<div class="col-lg-10">
<select name="region_type" id="" class="form-control">
<option value="1">国内</option>
<option value="2">国外</option>
</select>
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">活动时间</label>
<div class="col-lg-10">
<input type="text" class="form-control validate[required,custom[dateTime]]" name="time_period" id="start" placeholder="请填写活动时间">
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">报名截止时间</label>
<div class="col-lg-10">
<input type="text" class="form-control validate[required,custom[dateTime]]" name="sign_endtime" id="end" placeholder="请填写报名截止时间">
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">组数限制</label>
<div class="col-lg-10">
<input type="text" class="form-control validate[required,custom[number]]" name="sign_limits" placeholder="限制家庭组数">
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">分类</label>
<div class="col-lg-10">
<select class="form-control" name='catalog_id'>
{volist name="catalog_list" id="vo"}
<option value="{$vo.id}">{$vo.name}</option>
{/volist}
</select>
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">城市</label>
<div class="col-lg-10">
<select class="form-control" name='city'>
{volist name="city_list" id="vo"}
<option value="{$vo.id}">{$vo.name}</option>
{/volist}
</select>
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">标签</label>
<div class="col-lg-10">
<input type="hidden" name="tags" id="tags" value="">
<select class="selectpicker form-control" id="tags_select" multiple data-live-search="true" onchange="setTags()">
{volist name="tag_list" id="vo"}
<option value="{$vo.id}">{$vo.name}</option>
{/volist}
</select>
</div>
</div>
<input type="hidden" id="poster" name="poster">
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right" >封面</label>
<div class="col-lg-10">
<input id="input-b1" name="poster-choose" type="file">
</div>
</div>
<input type="hidden" name="banners" id="banners">
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right" >轮播图</label>
<div class="col-lg-10">
<input id="input-b2" name="banner-choose" multiple="multiple" type="file">
</div>
</div>
<input type="hidden" name="kf_qrcode" id="kf_qrcode">
<div class="form-group" id="qrcode" style="display:none">
<label for="title" class="col-sm-1 control-label text-right" >客服二维码</label>
<div class="col-lg-10">
<input id="input-b3" name="qrcode-choose" type="file">
</div>
</div>
<div class="form-group" id="content">
<label for="content" class="col-sm-1 control-label text-right">详细介绍</label>
<div class="col-lg-10">
<!-- 加载编辑器的容器 -->
<script id="post_container" name="description" type="text/plain" style="width: 100%">
</script>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-default" id="btn-save">提交</button>
</div>
</div>
</form>
</div>
</div>
</section>
<!-- 文件上传和select插件 -->
<script type="text/javascript" src="/static/fileinput/js/fileinput.min.js"></script>
<script type="text/javascript" src="/static/fileinput/js/locales/zh.js"></script>
<script type="text/javascript" src="/static/bootstrap-select/js/bootstrap-select.min.js"></script>
<script type="text/javascript" src="/static/bootstrap-select/js/i18n/defaults-zh_CN.js"></script>
<script type="text/javascript" src="/static/validation/js/jquery.validationEngine-zh_CN.js"></script>
<script type="text/javascript" src="/static/validation/js/jquery.validationEngine.js"></script>
<script type="text/javascript" src="/static/datetimepicker/js/bootstrap-datetimepicker.min.js"></script>
<script type="text/javascript" src="/static/datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js"></script>
<!-- 配置文件 -->
<script type="text/javascript" src="/static/ueditor/ueditor.config.js"></script>
<!-- 编辑器源码文件 -->
<script type="text/javascript" src="/static/ueditor/ueditor.all.js"></script>
<script type="text/javascript">
$(function(){
$("#myFrom").validationEngine();
// 即时显示封面图
$('#poster').change(function(e){
var file = e.target.files[0];
preview(file, 0);
});
});
$("#peoject_type").change(function(){
if($(this).val()==2){
$("#qrcode").show();
}else{
$("#qrcode").hide();
}
});
$("#start").datetimepicker({
language: 'zh-CN',
autoclose: true,
format: 'yyyy-mm-dd hh:ii:00'
});
$("#end").datetimepicker({
language: 'zh-CN',
autoclose: true,
format: 'yyyy-mm-dd hh:ii:00'
});
// 初始化文件上传
initFileInput($("#input-b1"),"poster-choose",true,$("#poster"));
initFileInput($("#input-b3"),"qrcode-choose",true,$("#kf_qrcode"));
// 单文件上传
function initFileInput(el,name,overwrite,save){
el.fileinput({
language: 'zh',
uploadExtraData:{'name':name},
uploadUrl:"{:url('admin/Upload/savaAsync')}", //上传的地址
// initialPreviewAsData: true,
dropZoneEnabled: false,
// showRemove :false,
// autoReplace : overwrite,
// showUpload:true, //是否显示上 传按钮
// dropZoneEnabled: false,
// overwriteInitial:overwrite,
// showUploadedThumbs:true,
maxFileCount:1,
allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀
}).on("fileuploaded", function (event, data, previewId){
$("#"+previewId).attr("data-server-id",data.response.result.server_id);
$("#"+previewId).attr("data-url",data.response.result.url);
// banners.push(data.response.result.url);
// $("#banners").val(JSON.stringify(banners));
save.val(data.response.result.url);
// console.log(event);
// console.log(data.response.result.url);
// console.log(previewId);
}).on('filesuccessremove', function(event, id) {
var dp = $("#"+id).data("server-id");
var url = $("#"+id).data("url")
// banners.splice($.inArray(url,banners),1);
// banners.splice($.inArray(url,banners),1);
save.val('');
$.post("{:url('admin/Upload/deleteAsync')}", {'id':dp},function(data){
if(data.code == 0){
return false;
}
},function(err){
return false;
})
})
}
// 多文件上传
var banners = [];
$("#input-b2").fileinput({
language: 'zh',
// initialPreview: [
// 'http://upload.wikimedia.org/wikipedia/commons/thumb/e/e1/FullMoon2010.jpg/631px-FullMoon2010.jpg',
// 'http://upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Earth_Eastern_Hemisphere.jpg/600px-Earth_Eastern_Hemisphere.jpg'
// ],
uploadExtraData:{'name':'banner-choose'},
// initialPreviewConfig: [{
// url: '{:url('admin/project/upProjectPoster')}',// 预展示图片的删除调取路径
// key: 100,// 可修改 场景2中会用的
// extra: {id: 100} //调用删除路径所传参数
// }],
initialPreviewShowDelete:true,
initialPreviewAsData: true,
uploadUrl:"{:url('admin/Upload/savaAsync')}", //上传的地址
dropZoneEnabled: false,
showRemove :false,
autoReplace : false,
showUpload:true, //是否显示上 传按钮
dropZoneEnabled: false,
overwriteInitial:false,
showUploadedThumbs:true,
allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀
}).on("fileuploaded", function (event, data, previewId){
$("#"+previewId).attr("data-server-id",data.response.result.server_id);
$("#"+previewId).attr("data-url",data.response.result.url);
banners.push(data.response.result.url);
$("#banners").val(JSON.stringify(banners));
// console.log(event);
// console.log(data.response.result.url);
// console.log(previewId);
}).on('filesuccessremove', function(event, id) {
var dp = $("#"+id).data("server-id");
var url = $("#"+id).data("url")
// banners.splice($.inArray(url,banners),1);
banners.splice($.inArray(url,banners),1);
$("#banners").val(JSON.stringify(banners));
$.post("{:url('admin/Upload/deleteAsync')}", {'id':dp},function(data){
if(data.code == 0){
return false;
}
},function(err){
return false;
})
})
function setTags(){
var slected = $("#tags_select").val();
if(slected){
$("#tags").val(slected.toString());
}else{
$("#tags").val("");
}
}
UE.getEditor('post_container', {
//编辑区域大小
'initialFrameHeight' : '350',
'elementPathEnabled':false,
'autoHeight': true,
'autoHeightEnabled':true,
'autoFloatEnabled': true,
'iframeCssUrl': '/static/ueditor/themes/iframe.css',// 引入css
//定制菜单
'toolbars' : [
[
'fullscreen', 'source', 'undo', 'redo', '|',
'fontsize',
'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'removeformat',
'formatmatch', 'blockquote', 'pasteplain', '|',
'forecolor', 'backcolor', '|',
'lineheight', '|',
'indent', '|', 'insertimage', '|',
'justifyleft', //居左对齐
'justifyright', //居右对齐
'justifycenter', //居中对齐
'justifyjustify', //两端对齐
],
]
});
function test(){
console.log(document.getElementById("input-b2").files);
}
</script>
{layout name="public/layout_main"} {layout name="public/layout_main"}
<link rel="stylesheet" href="/static/fileinput/css/fileinput.css"> <link rel="stylesheet" href="/static/fileinput/css/fileinput.css">
<section class="wrapper"> <section class="wrapper">
<h3><i class="fa fa-angle-right"></i> <a href="{:url('admin/project/catalogs')}">分类管理</a> <i class="fa fa-angle-right"></i> 修改分类</h3> <h3><i class="fa fa-angle-right"></i> <a href="{:url('admin/project/catalogs')}">分类管理</a> <i class="fa fa-angle-right"></i>
{if condition="$tag_info"}
修改分类
{else/}
添加分类
{/if}
</h3>
<!-- 分割线 --> <!-- 分割线 -->
<hr> <hr>
<div class="col-xs-12" > <div class="col-xs-12" >
<form method="post" class="form-horizontal" enctype="multipart/form-data" action="{:url('admin/project/updateCatalogs')}"> <form method="post" class="form-horizontal" enctype="multipart/form-data" {if condition="$tag_info"}action="{:url('admin/project/updateCatalogs')}"{else/}action="{:url('admin/project/addCatalogs')}"{/if}>
<div class="form-group"> <div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">分类名</label> <label for="title" class="col-sm-2 control-label text-right">分类名</label>
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
...@@ -17,8 +23,11 @@ ...@@ -17,8 +23,11 @@
<label for="title" class="col-sm-2 control-label text-right" >文章封面</label> <label for="title" class="col-sm-2 control-label text-right" >文章封面</label>
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
<input type="hidden" name='old_poster' value="{$tag_info.poster}"> <input type="hidden" name='old_poster' value="{$tag_info.poster}">
<img src="{$tag_info.poster}" style="width:170px;margin-bottom:10px" alt="" id="poster_view"> <a href="{$tag_info.poster}" target="_blank" data-fancybox="images" id="poster_view">
<img src="{$tag_info.poster}" style="width:170px;margin-bottom:10px">
</a>
<input id="input-b1" name="poster" type="file"> <input id="input-b1" name="poster" type="file">
<span class="form-group-tip"> * 尺寸建议:90px*90px </span>
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
...@@ -29,7 +38,7 @@ ...@@ -29,7 +38,7 @@
</div> </div>
<div class="form-group"> <div class="form-group">
<div class="col-sm-offset-2 col-sm-10"> <div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-success">修改</button> <button type="submit" class="btn btn-success">提交</button>
</div> </div>
</div> </div>
</form> </form>
...@@ -45,6 +54,8 @@ ...@@ -45,6 +54,8 @@
var fileInput = $("#input-b1").fileinput({ var fileInput = $("#input-b1").fileinput({
language: 'zh', language: 'zh',
showUpload:false, //是否显示上传按钮 showUpload:false, //是否显示上传按钮
showRemove :false,
showClose:false,
allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀 allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀
}) })
$("#input-b1").change(function(data){ $("#input-b1").change(function(data){
......
{layout name="public/layout_main"} {layout name="public/layout_main"}
<style>
.table-detail-left{
float: left;
width: 40%;
}
.table-detail-right{
float: left;
width: 60%;
}
.table-detail-row{
margin-bottom: 5px;
padding-left: 80px;
}
.table-detail-row span{
display: inline-block;
width: 70px;
text-align: right;
margin-left: -80px;
}
.table-detail-full{
width: 100%;
float: left;
}
</style>
<section class="wrapper"> <section class="wrapper">
<h3><i class="fa fa-angle-right"></i> 活动商家列表</h3> <h3><i class="fa fa-angle-right"></i> 活动商家列表</h3>
<!-- 分割线 --> <!-- 分割线 -->
...@@ -53,15 +77,10 @@ ...@@ -53,15 +77,10 @@
<th>封面图</th> <th>封面图</th>
<th>国内/国外</th> <th>国内/国外</th>
<th>城市</th> <th>城市</th>
<th>活动时间</th>
<th>报名截止时间</th>
<th>分类</th> <th>分类</th>
<th>标签</th> <th>活动/商家信息</th>
<th>价格</th>
<th>会员价</th>
<th>状态</th> <th>状态</th>
<th>总量</th> <th>推荐置顶</th>
<th>已售</th>
<th>操作</th> <th>操作</th>
</tr> </tr>
</thead> </thead>
...@@ -70,7 +89,11 @@ ...@@ -70,7 +89,11 @@
<tr id="tr_{$vo.id}"> <tr id="tr_{$vo.id}">
<td>{$vo.id}</td> <td>{$vo.id}</td>
<td>{$vo.title}</td> <td>{$vo.title}</td>
<td><img style="width:90px" src="{$vo.poster}" alt=""></td> <td>
<a href="<?=$vo->poster?>" target="_blank" data-fancybox="images">
<img src="<?=$vo->poster?>" width='100' height='50'>
</a>
</td>
<td> <td>
{if condition="$vo.region_type==1"} {if condition="$vo.region_type==1"}
国内 国内
...@@ -79,17 +102,40 @@ ...@@ -79,17 +102,40 @@
{/if} {/if}
</td> </td>
<td>{$vo.city_str.name}</td> <td>{$vo.city_str.name}</td>
<td>{$vo.time_period}</td>
<td>{$vo.sign_endtime}</td>
<td>{$vo.catalog_id_str.name}</td> <td>{$vo.catalog_id_str.name}</td>
<td width="170px"> <td style="width: 500px">
{$vo.tags} {if condition="$vo.type==1"}
<div class="clearfix" style="width: 500px">
<div class="table-detail-left">
<p class="table-detail-row"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;型:</span>活动</p>
<p class="table-detail-row"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;数:</span>{$vo.night_num}</p>
<p class="table-detail-row"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;格:</span>¥{$vo.price}</p>
<p class="table-detail-row"><span>会员价:</span>¥{$vo.vip_price}</p>
</div>
<div class="table-detail-right">
<p class="table-detail-row"><span>&nbsp;&nbsp;&nbsp;&nbsp;数:</span>{$vo.sign_limits}</p>
<p class="table-detail-row"><span>已售组数:</span>{$vo.sign_num}</p>
<p class="table-detail-row"><span>活动时间:</span>{$vo.time_period}</p>
<p class="table-detail-row"><span>报名截至:</span>{$vo.sign_endtime}</p>
</div>
<div class="table-detail-full">
<p class="table-detail-row"><span>所在地:</span>{$vo.location}</p>
<p class="table-detail-row"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;签:</span>{$vo.tags}</p>
</div>
</div>
{else/}
<div class="clearfix" style="width: 500px">
<p class="table-detail-row"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;型:</span>商家</p>
<p class="table-detail-row"><span>所在地:</span>{$vo.location}</p>
<p class="table-detail-row"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;签:</span>{$vo.tags}</p>
</div>
{/if}
</td> </td>
<td>{$vo.price}</td>
<td>{$vo.vip_price}</td>
<td>{$vo.sign_endtime_str}</td> <td>{$vo.sign_endtime_str}</td>
<td>{$vo.sign_limits}</td> <td>
<td>{$vo.sign_num}</td> <input type="number" size="4" style="width:50px" onchange="setHeat(this,{$vo.id},{$vo.heat})" value="{$vo.heat}">
</td>
<td> <td>
<a href="{:url('admin/project/updateProject',['id'=>$vo.id])}" class="btn btn-xs btn-primary"><i class="fa fa-pencil"></i></a> <a href="{:url('admin/project/updateProject',['id'=>$vo.id])}" class="btn btn-xs btn-primary"><i class="fa fa-pencil"></i></a>
<a href="javascript:" oid="{$vo.id}" class="btn btn-xs btn-danger btn-delete"><i class="fa fa-trash"></i></a> <a href="javascript:" oid="{$vo.id}" class="btn btn-xs btn-danger btn-delete"><i class="fa fa-trash"></i></a>
...@@ -109,26 +155,42 @@ ...@@ -109,26 +155,42 @@
</section> </section>
<script type="text/javascript"> <script type="text/javascript">
$("#myModal").modal(); // 设置推荐置顶
function setHeat(that,id,oldHeat){
var heat = $(that).val();
if(heat<0){
$(that).val(oldHeat);
return;
}
$.post("{:url('admin/project/setHeat')}", {id: id,heat:heat}, function (res) {
// var res = JSON.parse(res);
if (res.code == 0) {
// javascript 的默认弹出提示方法
alert(res.msg);
$(that).val(oldHeat);
}
});
}
// 文档加载完毕之后,会进入该方法 // 文档加载完毕之后,会进入该方法
$(function(){ $(function () {
$(".btn-delete").click(function(){ $(".btn-delete").click(function () {
var _this = $(this); var _this = $(this);
var url = "{:url('admin/project/delete')}"; var url = "{:url('admin/project/delete')}";
var oid = _this.attr('oid'); var oid = _this.attr('oid');
showDialog("提示", "确定删除该项目/商家吗?", function(){ showDialog("提示", "确定删除该项目/商家吗?", function () {
// ajax post 方法 // ajax post 方法
$.post(url, {id:oid}, function (res) { $.post(url, {id: oid}, function (res) {
// var res = JSON.parse(res); // var res = JSON.parse(res);
if(res.code == 1){ if (res.code == 1) {
// javascript 的默认弹出提示方法 // javascript 的默认弹出提示方法
_this.remove(); _this.remove();
$("#tr_"+oid).fadeOut(); $("#tr_" + oid).fadeOut();
}else{ } else {
alert(res.msg); alert(res.msg);
} }
}); });
}); });
}); });
}); });
</script> </script>
...@@ -16,7 +16,8 @@ ...@@ -16,7 +16,8 @@
</style> </style>
<section class="wrapper"> <section class="wrapper">
<h3 class=""> <h3 class="">
<i class="fa fa-angle-right"></i> <a href="{:url('admin/project/index')}">活动/商家列表</a> <i class="fa fa-angle-right"></i> 修改活动/商家 <i class="fa fa-angle-right"></i> <a href="{:url('admin/project/index')}">活动/商家列表</a> <i class="fa fa-angle-right"></i>
{if condition="$project_info"}修改活动/商家 {else/} 创建活动/商家{/if}
</h3> </h3>
<hr> <hr>
...@@ -59,24 +60,30 @@ ...@@ -59,24 +60,30 @@
</select> </select>
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group type_toggle" {if condition="$project_info.type==2"} style="display:none"{/if}>
<label for="title" class="col-sm-2 control-label text-right">活动时间</label> <label for="title" class="col-sm-2 control-label text-right">活动时间</label>
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
<input type="text" class="form-control validate[required]" name="time_period" id="start" placeholder="请填写活动时间" value="{$project_info.time_period}"> <input type="text" class="form-control validate[required]" name="time_period" id="start" placeholder="请填写活动时间" value="{$project_info.time_period}">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group type_toggle" {if condition="$project_info.type==2"} style="display:none"{/if}>
<label for="title" class="col-sm-2 control-label text-right">报名截止时间</label> <label for="title" class="col-sm-2 control-label text-right">报名截止时间</label>
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
<input type="text" class="form-control validate[required,custom[dateTime]]" name="sign_endtime" id="end" value="{$project_info.sign_endtime}" placeholder="请填写报名截止时间"> <input type="text" class="form-control validate[required,custom[dateTime]]" name="sign_endtime" id="end" value="{$project_info.sign_endtime}" placeholder="请填写报名截止时间">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group type_toggle" {if condition="$project_info.type==2"} style="display:none"{/if}>
<label for="title" class="col-sm-2 control-label text-right">组数限制</label> <label for="title" class="col-sm-2 control-label text-right">组数限制</label>
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
<input type="text" class="form-control validate[required,custom[number]]" name="sign_limits" id="sign_limits" value="{$project_info.sign_limits}" placeholder="限制家庭组数"> <input type="text" class="form-control validate[required,custom[number]]" name="sign_limits" id="sign_limits" value="{$project_info.sign_limits}" placeholder="限制家庭组数">
</div> </div>
</div> </div>
<div class="form-group type_toggle" {if condition="$project_info.type==2"} style="display:none"{/if}>
<label for="title" class="col-sm-2 control-label text-right">晚数</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<input type="text" class="form-control validate[required,custom[number]]" name="night_num" id="night_num" value="{$project_info.sign_limits}" placeholder="晚数">
</div>
</div>
<div class="form-group"> <div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">分类</label> <label for="title" class="col-sm-2 control-label text-right">分类</label>
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
...@@ -102,18 +109,36 @@ ...@@ -102,18 +109,36 @@
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
<select class="selectpicker form-control" id="tags_select" multiple data-live-search="true"> <select class="selectpicker form-control" id="tags_select" multiple data-live-search="true">
{volist name="tag_list" id="vo"} {volist name="tag_list" id="vo"}
<option value="{$vo.id}" {if condition="in_array($vo.id,$tags)"}selected{/if}>{$vo.name}</option> <option value="{$vo.id}" {if condition="$tags&&in_array($vo.id,$tags)"}selected{/if}>{$vo.name}</option>
{/volist} {/volist}
</select> </select>
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">地点</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<input type="text" class="form-control validate[required]" name="location" id="location" placeholder="地点" value="{$project_info.location}">
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">经纬度</label>
<div class="col-sm-10 col-md-8 col-lg-6 ">
<div class="input-group">
<span class="input-group-addon">经度</span>
<input type="text" class="form-control validate[required]" name="longitude" id="longitude" placeholder="经度" value="{$project_info.longitude}">
<span class="input-group-addon">纬度</span>
<input type="text" class="form-control validate[required]" name="latitude" id="latitude" placeholder="纬度" value="{$project_info.latitude}">
</div>
<span class="form-group-tip"> 经纬度在地图上搜索并复制粘贴过来即可, <a href="http://www.gpsspg.com/maps.htm" target="_blank">立即查看地图</a></span>
</div>
</div>
<div class="form-group type_toggle" {if condition="$project_info.type==2"} style="display:none"{/if}>
<label for="title" class="col-sm-2 control-label text-right">价格</label> <label for="title" class="col-sm-2 control-label text-right">价格</label>
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
<input type="text" class="form-control validate[required,custom[number]]" name="" id="price" placeholder="价格" value="{$project_info.price}"> <input type="text" class="form-control validate[required,custom[number]]" name="" id="price" placeholder="价格" value="{$project_info.price}">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group type_toggle" {if condition="$project_info.type==2"} style="display:none"{/if}>
<label for="title" class="col-sm-2 control-label text-right">会员价</label> <label for="title" class="col-sm-2 control-label text-right">会员价</label>
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
<input type="text" class="form-control validate[required,custom[number]]" name="" id="vip_price" placeholder="价格" value="{$project_info.vip_price}"> <input type="text" class="form-control validate[required,custom[number]]" name="" id="vip_price" placeholder="价格" value="{$project_info.vip_price}">
...@@ -124,6 +149,7 @@ ...@@ -124,6 +149,7 @@
<label for="title" class="col-sm-2 control-label text-right" >封面</label> <label for="title" class="col-sm-2 control-label text-right" >封面</label>
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
<input id="input-b1" name="" type="file"> <input id="input-b1" name="" type="file">
<span class="form-group-tip"> * 尺寸建议:260px*190px </span>
</div> </div>
</div> </div>
...@@ -132,13 +158,15 @@ ...@@ -132,13 +158,15 @@
<label for="title" class="col-sm-2 control-label text-right" >轮播图</label> <label for="title" class="col-sm-2 control-label text-right" >轮播图</label>
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
<input id="input-b2" name="" multiple type="file"> <input id="input-b2" name="" multiple type="file">
<span class="form-group-tip"> * 尺寸建议:260px*190px </span>
</div> </div>
</div> </div>
<!-- <input type="hidden" name="kf_qrcode" id="kf_qrcode"> --> <!-- <input type="hidden" name="kf_qrcode" id="kf_qrcode"> -->
<div class="form-group" id="qrcode" {if condition="$project_info.type!=2"}style="display:none"{/if}> <div class="form-group type_toggle_2" id="qrcode" {if condition="$project_info.type!=2"} style="display:none"{/if}>
<label for="title" class="col-sm-2 control-label text-right" >客服二维码</label> <label for="title" class="col-sm-2 control-label text-right" >客服二维码</label>
<div class="col-sm-10 col-md-8 col-lg-6"> <div class="col-sm-10 col-md-8 col-lg-6">
<input id="input-b3" name="" type="file"> <input id="input-b3" name="" type="file">
<span class="form-group-tip"> * 尺寸建议:100px*100px </span>
</div> </div>
</div> </div>
...@@ -154,7 +182,7 @@ ...@@ -154,7 +182,7 @@
</form> </form>
<div class="form-group"> <div class="form-group">
<div class="col-sm-offset-2 col-sm-20"> <div class="col-sm-offset-2 col-sm-20">
<button class="btn btn-success" id="btn-save">修改</button> <button class="btn btn-success" id="btn-save">保存</button>
</div> </div>
</div> </div>
</div> </div>
...@@ -178,207 +206,215 @@ ...@@ -178,207 +206,215 @@
<script type="text/javascript"> <script type="text/javascript">
$(function(){ $(function(){
$("#myFrom").validationEngine(); $("#myFrom").validationEngine();
// 即时显示封面图
// $('#poster').change(function(e){
// var file = e.target.files[0];
// preview(file, 0);
// });
});
$("#peoject_type").change(function(){ $("#peoject_type").change(function(){
if($(this).val()==2){ if($(this).val() == 1){
$("#qrcode").show(); $(".type_toggle").fadeIn();
}else{ $(".type_toggle_2").fadeOut();
$("#qrcode").hide(); $(".type_toggle").children('input').removeAttr('disabled');
} }else{
}); $(".type_toggle").fadeOut();
$(".type_toggle").find('input').attr('disabled',true);
$(".type_toggle_2").fadeIn();
}
});
// 初始化时间选择器 // 初始化时间选择器
// $("#start").datetimepicker({ $("#end").datetimepicker({
// language: 'zh-CN', language: 'zh-CN',
// autoclose: true, autoclose: true,
// format: 'yyyy-mm-dd hh:ii:00' format: 'yyyy-mm-dd hh:ii:00'
// }); });
$("#end").datetimepicker({
language: 'zh-CN',
autoclose: true,
format: 'yyyy-mm-dd hh:ii:00'
});
// 文件上传反显数据初始化 // 文件上传反显数据初始化
var deleteUrl = "{:url('admin/project/deleteBanners')}"; var deleteUrl = "{:url('admin/project/deleteBanners')}";
var project_id = "{$project_info.id}"; var project_id = "";
var posterInit = "{$project_info.poster}"; var posterInit = "";
var qrcodeInit = "{$project_info.kf_qrcode}"; var qrcodeInit = "";
var bannersInit = [];
var bannerConfig = [];
var saveUrl = "{:url('admin/project/create')}";
{if condition="$project_info"}
project_id = "{$project_info.id}";
posterInit = "{$project_info.poster}";
qrcodeInit = "{$project_info.kf_qrcode}";
bannersInit = {$project_info.banners_native};
saveUrl = "{:url('admin/project/updateProject')}";
{/if}
var bannersInit = {$project_info.banners_native};
var bannerConfig = [];
for(var i=0;i<bannersInit.length;i++){
var obj = {
url: deleteUrl,
extra: {
id: project_id,
address: bannersInit[i]
}
}
bannerConfig.push(obj);
}
for(var i=0;i<bannersInit.length;i++){
var obj = {
url: deleteUrl,
extra: {
id: project_id,
address: bannersInit[i]
}
}
bannerConfig.push(obj);
}
// 初始化文件上传 // 初始化文件上传
initFileInput($("#input-b1"),posterInit); initFileInput($("#input-b1"),posterInit);
initFileInput($("#input-b3"),qrcodeInit); initFileInput($("#input-b3"),qrcodeInit);
// 单文件上传 // 单文件上传
function initFileInput(el,initArr,initConfig){ function initFileInput(el,initArr,initConfig){
var initialPreview = []; var initialPreview = [];
initialPreview.push(initArr); if(initArr){
el.fileinput({ initialPreview.push(initArr);
language: 'zh', }
uploadExtraData:{'name':name}, el.fileinput({
initialPreview: initialPreview, language: 'zh',
uploadExtraData:{'name':'banner-choose'}, initialPreview: initialPreview,
// initialPreviewConfig: initConfig, uploadExtraData:{'name':'banner-choose'},
autoReplace : true, // initialPreviewConfig: initConfig,
showUpload:false, //是否显示上 传按钮 autoReplace : true,
initialPreviewShowDelete:true, showUpload:false, //是否显示上 传按钮
initialPreviewAsData: true, initialPreviewShowDelete:true,
dropZoneEnabled: false, initialPreviewAsData: true,
showRemove :false, dropZoneEnabled: false,
showUpload:false, //是否显示上 传按钮 showRemove :false,
overwriteInitial:true, overwriteInitial:true,
showUploadedThumbs:false, showUploadedThumbs:false,
allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀 showClose:false,
}) allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀
} })
}
// 多文件上传 // 多文件上传
var fileUpload = $("#input-b2").fileinput({ var fileUpload = $("#input-b2").fileinput({
language: 'zh', language: 'zh',
initialPreview:bannersInit, initialPreview:bannersInit,
uploadExtraData:{'name':'banner-choose'}, uploadExtraData:{'name':'banner-choose'},
// initialPreviewConfig: [{ initialPreviewConfig: bannerConfig,
// url: '{:url('admin/project/upProjectPoster')}',// 预展示图片的删除调取路径 initialPreviewShowDelete:true,
// key: 100,// 可修改 场景2中会用的 initialPreviewAsData: true,
// extra: {id: 100} //调用删除路径所传参数 dropZoneEnabled: false,
// }], showRemove :false,
initialPreviewConfig: bannerConfig, showClose:false,
initialPreviewShowDelete:true, autoReplace : true,
initialPreviewAsData: true, showUpload:false, //是否显示上 传按钮
dropZoneEnabled: false, overwriteInitial:false,
showRemove :false, showUploadedThumbs:false,
autoReplace : true, removeLabel:'remove',
showUpload:false, //是否显示上 传按钮 allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀
dropZoneEnabled: false, }).on('filepredelete', function(event, key, three, four) {
overwriteInitial:false, if(!confirm('将立即从数据库中删除该图片,且不可撤回,是否继续')){
showUploadedThumbs:false, four.abort();
removeLabel:'remove', }
allowedFileExtensions: ['bmp','jpg','png','tif','gif','pcx','tga','exif','fpx','svg','cdr','pcd','dxf','ufo','eps','raw','WMF','webp'],//接收的文件后缀 });
}).on('filepredelete', function(event, key, three, four) {
if(!confirm('将立即从数据库中删除该图片,且不可撤回,是否继续')){
four.abort();
}
});
// function setTags(that,name){ var ueditor = UE.getEditor('post_container', {
// var slected = $(that).val(); //编辑区域大小
// if(slected){ 'initialFrameHeight' : '350',
// $("input[name=\'"+name+"\']").val(slected.toString()); 'elementPathEnabled':false,
// }else{ 'autoHeight': true,
// $("input[name=\'"+name+"\']").val(""); 'autoHeightEnabled':true,
// } 'autoFloatEnabled': true,
// } 'iframeCssUrl': '/static/ueditor/themes/iframe.css',// 引入css
var ueditor = UE.getEditor('post_container', { //定制菜单
//编辑区域大小 'toolbars' : [
'initialFrameHeight' : '350', [
'elementPathEnabled':false, 'fullscreen', 'source', 'undo', 'redo', '|',
'autoHeight': true, 'fontsize',
'autoHeightEnabled':true, 'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'removeformat',
'autoFloatEnabled': true, 'formatmatch', 'blockquote', 'pasteplain', '|',
'iframeCssUrl': '/static/ueditor/themes/iframe.css',// 引入css 'forecolor', 'backcolor', '|',
//定制菜单 'lineheight', '|',
'toolbars' : [ 'indent', '|', 'insertimage', '|',
[ 'justifyleft', //居左对齐
'fullscreen', 'source', 'undo', 'redo', '|', 'justifyright', //居右对齐
'fontsize', 'justifycenter', //居中对齐
'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'removeformat', 'justifyjustify', //两端对齐
'formatmatch', 'blockquote', 'pasteplain', '|', ],
'forecolor', 'backcolor', '|', ]
'lineheight', '|', });
'indent', '|', 'insertimage', '|', //表单AJAX提交 ,使用formData
'justifyleft', //居左对齐 $("#btn-save").click(function(){
'justifyright', //居右对齐 $(this).attr("disabled","true");
'justifycenter', //居中对齐 var validate = $('#myFrom').validationEngine('validate')
'justifyjustify', //两端对齐 if(!validate){
], $(this).removeAttr("disabled");
] return;
}); }
$("#btn-save").click(function(){ var poster = $('#input-b1').fileinput('getFileStack');
$(this).attr("disabled","true"); var banners = $('#input-b2').fileinput('getFileStack');
var validate = $('#myFrom').validationEngine('validate') var qcode = $('#input-b3').fileinput('getFileStack');
if(!validate){
$(this).removeAttr("disabled");
return;
}
var poster = $('#input-b1').fileinput('getFileStack');
var banners = $('#input-b2').fileinput('getFileStack');
var qcode = $('#input-b3').fileinput('getFileStack');
var formValue = new FormData(); var formValue = new FormData();
formValue.append('id',"{$project_info.id}"); formValue.append('id',"{$project_info.id}");
formValue.append('type',$("#peoject_type").val()); formValue.append('type',$("#peoject_type").val());
formValue.append('title',$("#title").val()); formValue.append('title',$("#title").val());
formValue.append('region_type',$("#region_type").val()); formValue.append('region_type',$("#region_type").val());
formValue.append('time_period',$("#start").val()); formValue.append('catalog_id',$("#catalog_id").val());
formValue.append('sign_endtime',$("#end").val()); formValue.append('city',$("#city").val());
formValue.append('sign_limits',$("#sign_limits").val()); formValue.append('location',$("#location").val());
formValue.append('catalog_id',$("#catalog_id").val()); formValue.append('longitude',$("#longitude").val());
formValue.append('city',$("#city").val()); formValue.append('latitude',$("#latitude").val());
var tagArr = $("#tags_select").val(); if($("#peoject_type").val()==1){
var tagStr = null; formValue.append('time_period',$("#start").val());
if(tagArr){ formValue.append('sign_endtime',$("#end").val());
for(var i=0;i<tagArr.length;i++){ formValue.append('sign_limits',$("#sign_limits").val());
if(i==0){ formValue.append('night_num',$("#night_num").val());
tagStr = '|'; formValue.append('price',$("#price").val());
} formValue.append('vip_price',$("#vip_price").val());
tagStr+=tagArr[i]+'|'; }else{
} formValue.append('time_period','');
} formValue.append('sign_endtime',null);
formValue.append('tags',tagStr); formValue.append('sign_limits',null);
formValue.append('price',$("#price").val()); formValue.append('night_num',null);
formValue.append('vip_price',$("#vip_price").val()); formValue.append('price',null);
formValue.append('description',ueditor.getContent()); formValue.append('vip_price',null);
// var formValue = new FormData(document.getElementById('myFrom')); }
var tagArr = $("#tags_select").val();
var tagStr = null;
if(tagArr){
for(var i=0;i<tagArr.length;i++){
if(i==0){
tagStr = '|';
}
tagStr+=tagArr[i]+'|';
}
}
formValue.append('tags',tagStr);
formValue.append('description',ueditor.getContent());
// var formValue = new FormData(document.getElementById('myFrom'));
// formValue.append('poster[]',poster);
if(poster.length>0){
formValue.append('poster',poster[0]);
}
if(banners.length>0){
for(var i=0; i<banners.length; i++){
formValue.append('banners[]',banners[i]);
}
}
if($("#peoject_type").val()==2){
if(qcode.length>0){
formValue.append('kf_qrcode',qcode[0]);
}
}
$.ajax({
url: saveUrl,
type: "POST",
data: formValue,
processData: false, // 不处理数据
contentType: false, // 不设置内容类型
success:function(data){
if (data['code'] == 1) {
showDialog("提示", data['msg'], function () {
window.location.href = "{:url('admin/project/index')}";
});
} else {
showDialog("提示", data['msg'], function () {
$("#btn-save").removeAttr("disabled");
});
}
}
});
});
});
// formValue.append('poster[]',poster);
if(poster.length>0){
formValue.append('poster',poster[0]);
}
if(banners.length>0){
for(var i=0; i<banners.length; i++){
formValue.append('banners[]',banners[i]);
}
}
if($("#peoject_type").val()==2){
if(qcode.length>0){
formValue.append('kf_qrcode',qcode[0]);
}
}
$.ajax({
url: "{:url('admin/project/updateProject')}",
type: "POST",
data: formValue,
processData: false, // 不处理数据
contentType: false, // 不设置内容类型
success:function(data){
if (data['code'] == 1) {
showDialog("提示", data['msg'], function () {
window.location.href = "{:url('admin/project/index')}";
});
} else {
showDialog("提示", data['msg'], function () {
$("#btn-save").removeAttr("disabled");
});
}
}
});
});
</script> </script>
...@@ -58,7 +58,9 @@ ...@@ -58,7 +58,9 @@
{volist name="user_list" id="vo" key="k" empty="暂时没有数据"} {volist name="user_list" id="vo" key="k" empty="暂时没有数据"}
<tr id="tr_{$vo.id}"> <tr id="tr_{$vo.id}">
<td>{$vo.id}</td> <td>{$vo.id}</td>
<td><img src="{$vo.avatar}" onerror="this.src='/static/img/default_avatar.png'" alt="" style="width:40px;margin-right: 5px">{$vo.nickname}</td> <td>
<img src="{$vo.avatar}" onerror="this.src='/static/img/default_avatar.png'" alt="" style="width:40px;margin-right: 5px">{$vo.nickname}
</td>
<td> <td>
<!--{$vo.gender}--> <!--{$vo.gender}-->
{if condition="$vo.gender == 1"} {if condition="$vo.gender == 1"}
......
...@@ -15,6 +15,9 @@ ...@@ -15,6 +15,9 @@
#first_div{ #first_div{
padding: 15px 10px; padding: 15px 10px;
} }
#first_div img{
width: 100%;
}
#seconde_div { #seconde_div {
color: #494949; color: #494949;
padding-top: 15px; padding-top: 15px;
...@@ -29,6 +32,7 @@ ...@@ -29,6 +32,7 @@
<section class="wrapper"> <section class="wrapper">
<div id="first_div"> <div id="first_div">
<img src="{$post.poster}" alt="">
<span class="post_title"> <span class="post_title">
<?=$post->title?> <?=$post->title?>
</span> </span>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment