sdk菜单配置修改

master
zhanglingsheng 5 years ago
parent 14e36e31bb
commit 3453de757f

@ -2,175 +2,151 @@
namespace Admin\Controller; namespace Admin\Controller;
class SdkMenuController extends ThinkController{ class SdkMenuController extends ThinkController
{
public $but_type = [ public $but_type = [
'0' => 'h5页面', '0' => 'h5页面',
'1' => '原生', '1' => '原生',
'2' => '外部链接', '2' => '外部链接',
'3' => 'h5资源', '3' => 'h5资源',
]; ];
public $menu_version = [ public $menu_version = [
'0' => '双平台', '0' => '双平台',
'1' => '安卓', '1' => '安卓',
'2' => 'ios', '2' => 'ios',
]; ];
public function lists() public function lists()
{ {
$menu_name = I('get.menu_name','sdk_menu'); $menu_name = I('get.menu_name', 'sdk_menu');
$sdkMenus = M('tool','tab_')->where(['name' => $menu_name])->find(); $sdkMenus = M('tool', 'tab_')->where(['name' => $menu_name])->find();
$config = json_decode($sdkMenus['config'],true); $config = json_decode($sdkMenus['config'], true);
if(!empty($config)) if (!empty($config)) {
{ foreach ($config as $k => $v) {
foreach($config as $k => $v) $config[$k]['icon'] = is_https() ? 'https://' : 'http://' . $_SERVER['HTTP_HOST'] . $v['icon'];
{ $config[$k]['type'] = $this->but_type[$v['type']];
$config[$k]['icon'] = is_https()?'https://':'http://' . $_SERVER['HTTP_HOST'] . $v['icon']; $config[$k]['menu_version'] = $this->menu_version[$v['menu_version']];
$config[$k]['type'] = $this->but_type[$v['type']]; }
$config[$k]['menu_version'] = $this->menu_version[$v['menu_version']]; }
} $this->assign('list', $config);
} $this->assign('menu_name', $menu_name);
$this->assign('list',$config); $this->assign('menu_list', $this->getMenuList());
$this->assign('menu_name',$menu_name); $this->meta_title = '悬浮球菜单';
$this->assign('menu_list',$this->getMenuList()); $this->display('lists');
$this->meta_title = '悬浮球菜单'; }
$this->display('lists');
}
public function add() public function add()
{ {
$menu_name = I('get.menu_name','sdk_menu'); $menu_name = I('get.menu_name', 'sdk_menu');
$sdkMenus = M('tool','tab_')->where(['name' => $menu_name])->find(); $sdkMenus = M('tool', 'tab_')->where(['name' => $menu_name])->find();
$config = json_decode($sdkMenus['config'],true); $config = json_decode($sdkMenus['config'], true);
if(!empty($config)) if (!empty($config)) {
{ $config1 = $config;
$config1 = $config; $id = array_pop($config1);
$id = array_pop($config1); $id = $id['id'] + 1;
$id = $id['id'] + 1; } else {
}else $config = [];
{ $id = 1;
$config = []; }
$id = 1;
}
if(IS_POST) if (IS_POST) {
{ $post = I('post.');
$post = I('post.'); $post['cover'] = $post['icon'];
$cover = $_REQUEST['icon']; $post['id'] = $id;
$post['cover'] = $cover; $post['icon'] = get_cover($post['icon'], "path");
$post['id'] = $id; array_push($config, $post);
array_push($config,$post); $sdkMenus['config'] = json_encode($config);
$sdkMenus['config'] = json_encode($config); if (empty($sdkMenus['name'])) {
if(empty($sdkMenus['name'])) $sdkMenus['name'] = $menu_name;
{ $sdkMenus['title'] = '悬浮球菜单';
$sdkMenus['name'] = $menu_name; M('tool', 'tab_')->data($sdkMenus)->add();
$sdkMenus['title'] = '悬浮球菜单'; } else {
M('tool','tab_')->data($sdkMenus)->add(); M('tool', 'tab_')->where(['name' => $menu_name])->data($sdkMenus)->save();
}else }
{ $this->success('新增成功', U('lists', ['menu_name' => $menu_name]));
M('tool','tab_')->where(['name' => $menu_name])->data($sdkMenus)->save(); }
}
$this->success('新增成功', U('lists',['menu_name' => $menu_name]));
}
$data['sort'] = $id; $data['sort'] = $id;
$this->meta_title = '悬浮球菜单'; $this->meta_title = '悬浮球菜单';
$this->assign('type','add'); $this->assign('type', 'add');
$this->assign('data',$data); $this->assign('data', $data);
$this->assign('menu_name',$menu_name); $this->assign('menu_name', $menu_name);
$this->assign('but_type',$this->but_type); $this->assign('but_type', $this->but_type);
$this->assign('menu_version',$this->menu_version); $this->assign('menu_version', $this->menu_version);
$this->display('add'); $this->display('add');
} }
public function edit($id) public function edit($id)
{ {
$menu_name = I('get.menu_name','sdk_menu'); $menu_name = I('get.menu_name', 'sdk_menu');
$sdkMenus = M('tool','tab_')->where(['name' => $menu_name])->find(); $sdkMenus = M('tool', 'tab_')->where(['name' => $menu_name])->find();
$config = json_decode($sdkMenus['config'],true); $config = json_decode($sdkMenus['config'], true);
if(IS_POST) if (IS_POST) {
{ foreach ($config as $k => $v) {
foreach($config as $k => $v) if ($v['id'] == $id) {
{ $post = I('post.');
if($v['id'] == $id) foreach ($post as $key => $val) {
{ if ($key == 'icon') {
$post = I('post.'); $config[$k]['cover'] = $post['icon'];
foreach($post as $key => $val) $config[$k]['icon'] = get_cover($post['icon'], "path");
{ } else {
if($key == 'icon') $config[$k][$key] = $post[$key];
{ }
$picRes = M('picture')->where(['id'=>intval($val)])->find(); }
$path = $picRes['path']; break;
$config[$k][$key] = $path; }
$config[$k]['cover'] = $val; }
}else $sdkMenus['config'] = json_encode($config);
{ M('tool', 'tab_')->where(['name' => $menu_name])->data($sdkMenus)->save();
$config[$k][$key] = $val; $this->success('修改成功', U('lists', ['menu_name' => $menu_name]));
$config[$k]['cover'] = ''; }
} $data = [];
} foreach ($config as $k => $v) {
break; if ($v['id'] == $id) {
} $data = $v;
} break;
$sdkMenus['config'] = json_encode($config); }
M('tool','tab_')->where(['name' => $menu_name])->data($sdkMenus)->save(); }
$this->success('修改成功', U('lists',['menu_name' => $menu_name])); if (empty($data)) {
} $this->error('菜单不存在', 'lists');
$data = []; }
foreach($config as $k => $v) $img[0] = $data['cover'];
{ $this->meta_title = '悬浮球菜单';
if($v['id'] == $id) $this->assign('type', 'edit');
{ $this->assign('data', $data);
$v['icon'] = is_https()?'https://':'http://' . $_SERVER['HTTP_HOST'] . $v['icon']; $this->assign('img', $img);
$data = $v; $this->assign('menu_name', $menu_name);
break; $this->assign('but_type', $this->but_type);
} $this->assign('menu_version', $this->menu_version);
} $this->display('add');
if(empty($data)) }
{
$this->error('菜单不存在','lists');
}
$img[0] = $data['cover'];
$this->meta_title = '悬浮球菜单';
$this->assign('type','edit');
$this->assign('data',$data);
$this->assign('img',$img);
$this->assign('menu_name',$menu_name);
$this->assign('but_type',$this->but_type);
$this->assign('menu_version',$this->menu_version);
$this->display('add');
}
public function del($id)
{
$menu_name = I('get.menu_name', 'sdk_menu');
if (!is_array($id)) {
$data[] = $id;
} else {
$data = $id;
}
$sdkMenus = M('tool', 'tab_')->where(['name' => $menu_name])->find();
$config = json_decode($sdkMenus['config'], true);
foreach ($config as $k => $v) {
if (in_array($v['id'], $data)) {
unset($config[$k]);
}
}
$sdkMenus['config'] = json_encode($config);
M('tool', 'tab_')->where(['name' => $menu_name])->data($sdkMenus)->save();
$this->success('删除成功', U('lists', ['menu_name' => $menu_name]));
}
public function del($id) public function getMenuList()
{ {
$menu_name = I('get.menu_name','sdk_menu'); $data = M('tool', 'tab_')->where(['type' => 5])->select();
if(!is_array($id)) return $data;
{ }
$data[] = $id;
}else
{
$data = $id;
}
$sdkMenus = M('tool','tab_')->where(['name' => $menu_name])->find();
$config = json_decode($sdkMenus['config'],true);
foreach($config as $k => $v)
{
if(in_array($v['id'], $data))
{
unset($config[$k]);
}
}
$sdkMenus['config'] = json_encode($config);
M('tool','tab_')->where(['name' => $menu_name])->data($sdkMenus)->save();
$this->success('删除成功', U('lists',['menu_name' => $menu_name]));
}
public function getMenuList() }
{
$data = M('tool','tab_')->where(['type' => 5])->select();
return $data;
}
}

Loading…
Cancel
Save