From b492289b8bffc51cd4b32a624f1ce76b74ecaf84 Mon Sep 17 00:00:00 2001 From: Anyon Date: Mon, 8 May 2017 11:33:23 +0800 Subject: [PATCH] =?UTF-8?q?[=E6=9B=B4=E6=96=B0]=20=E6=94=B9=20NodeModel=20?= =?UTF-8?q?=E4=B8=BA=20NodeService?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/admin/controller/Auth.php | 4 ++-- application/admin/controller/Index.php | 4 ++-- application/admin/controller/Log.php | 1 - application/admin/controller/Login.php | 4 ++-- application/admin/controller/Menu.php | 4 ++-- application/admin/controller/Node.php | 4 ++-- application/common.php | 4 ++-- .../service/NodeService.php | 18 +++++++++--------- 8 files changed, 21 insertions(+), 22 deletions(-) rename application/admin/model/NodeModel.php => extend/service/NodeService.php (93%) diff --git a/application/admin/controller/Auth.php b/application/admin/controller/Auth.php index dcd2c4c2c..d3d2ab34e 100644 --- a/application/admin/controller/Auth.php +++ b/application/admin/controller/Auth.php @@ -14,9 +14,9 @@ namespace app\admin\controller; -use app\admin\model\NodeModel; use controller\BasicAdmin; use service\DataService; +use service\NodeService; use service\ToolsService; use think\Db; @@ -51,7 +51,7 @@ class Auth extends BasicAdmin { $auth_id = $this->request->get('id', '0'); switch (strtolower($this->request->get('action', '0'))) { case 'getnode': - $nodes = NodeModel::get(); + $nodes = NodeService::get(); $checked = Db::name('SystemAuthNode')->where('auth', $auth_id)->column('node'); foreach ($nodes as $key => &$node) { $node['checked'] = in_array($node['node'], $checked); diff --git a/application/admin/controller/Index.php b/application/admin/controller/Index.php index f6328ad22..65dff1480 100644 --- a/application/admin/controller/Index.php +++ b/application/admin/controller/Index.php @@ -14,9 +14,9 @@ namespace app\admin\controller; -use app\admin\model\NodeModel; use controller\BasicAdmin; use service\DataService; +use service\NodeService; use service\ToolsService; use think\Db; use think\View; @@ -35,7 +35,7 @@ class Index extends BasicAdmin { * @return View */ public function index() { - NodeModel::applyAuthNode(); + NodeService::applyAuthNode(); $list = Db::name('SystemMenu')->where('status', '1')->order('sort asc,id asc')->select(); $menus = $this->_filterMenu(ToolsService::arr2tree($list)); $this->assign('title', '系统管理'); diff --git a/application/admin/controller/Log.php b/application/admin/controller/Log.php index 0a01fd75b..f6e4054b5 100644 --- a/application/admin/controller/Log.php +++ b/application/admin/controller/Log.php @@ -46,7 +46,6 @@ class Log extends BasicAdmin { $db->where($key, 'like', "%{$get[$key]}%"); } } - parent::_list($db); } diff --git a/application/admin/controller/Login.php b/application/admin/controller/Login.php index 7f32490df..af8c36d3c 100644 --- a/application/admin/controller/Login.php +++ b/application/admin/controller/Login.php @@ -14,9 +14,9 @@ namespace app\admin\controller; -use app\admin\model\NodeModel; use controller\BasicAdmin; use service\LogService; +use service\NodeService; use think\Db; /** @@ -55,7 +55,7 @@ class Login extends BasicAdmin { ($user['password'] !== md5($password)) && $this->error('登录密码与账号不匹配,请重新输入!'); Db::name('SystemUser')->where('id', $user['id'])->update(['login_at' => ['exp', 'now()'], 'login_num' => ['exp', 'login_num+1']]); session('user', $user); - !empty($user['authorize']) && NodeModel::applyAuthNode(); + !empty($user['authorize']) && NodeService::applyAuthNode(); LogService::write('系统管理', '用户登录系统成功'); $this->success('登录成功,正在进入系统...', '@admin'); } diff --git a/application/admin/controller/Menu.php b/application/admin/controller/Menu.php index 06fd40046..fab2abc29 100644 --- a/application/admin/controller/Menu.php +++ b/application/admin/controller/Menu.php @@ -14,9 +14,9 @@ namespace app\admin\controller; -use app\admin\model\NodeModel; use controller\BasicAdmin; use service\DataService; +use service\NodeService; use service\ToolsService; use think\Db; @@ -93,7 +93,7 @@ class Menu extends BasicAdmin { } } // 读取系统功能节点 - $nodes = NodeModel::get(APP_PATH); + $nodes = NodeService::get(APP_PATH); foreach ($nodes as $key => $_vo) { if (empty($_vo['is_menu'])) { unset($nodes[$key]); diff --git a/application/admin/controller/Node.php b/application/admin/controller/Node.php index 138320d6c..2d19658d4 100644 --- a/application/admin/controller/Node.php +++ b/application/admin/controller/Node.php @@ -14,9 +14,9 @@ namespace app\admin\controller; -use app\admin\model\NodeModel; use controller\BasicAdmin; use service\DataService; +use service\NodeService; use service\ToolsService; /** @@ -45,7 +45,7 @@ class Node extends BasicAdmin { ]; $this->assign('alert', $alert); $this->assign('title', '系统节点管理'); - $this->assign('nodes', ToolsService::arr2table(NodeModel::get(), 'node', 'pnode')); + $this->assign('nodes', ToolsService::arr2table(NodeService::get(), 'node', 'pnode')); return view(); } diff --git a/application/common.php b/application/common.php index 13ef3a4bc..d6e57edab 100644 --- a/application/common.php +++ b/application/common.php @@ -13,8 +13,8 @@ // +---------------------------------------------------------------------- -use app\admin\model\NodeModel; use service\DataService; +use service\NodeService; use Wechat\Loader; use think\Db; @@ -82,7 +82,7 @@ function decode($string) { * @return bool */ function auth($node) { - return NodeModel::checkAuthNode($node); + return NodeService::checkAuthNode($node); } /** diff --git a/application/admin/model/NodeModel.php b/extend/service/NodeService.php similarity index 93% rename from application/admin/model/NodeModel.php rename to extend/service/NodeService.php index 0bb9711d4..10e329d43 100644 --- a/application/admin/model/NodeModel.php +++ b/extend/service/NodeService.php @@ -12,18 +12,18 @@ // | github开源项目:https://github.com/zoujingli/Think.Admin // +---------------------------------------------------------------------- -namespace app\admin\model; +namespace service; use think\Db; /** * 系统权限节点读取器 - * Class Node - * @package app\admin\model + * Class NodeService + * @package extend * @author Anyon - * @date 2017/03/14 18:12 + * @date 2017/05/08 11:28 */ -class NodeModel { +class NodeService { /** * 应用用户权限节点 @@ -64,7 +64,7 @@ class NodeModel { * @param string $node 节点 * @return bool */ - public static function checkAuthNode($node) { + static public function checkAuthNode($node) { $auth_node = strtolower($node); if (session('user.username') === 'admin' || stripos($node, 'admin/index') === 0) { return true; @@ -79,7 +79,7 @@ class NodeModel { * 获取系统代码节点 * @return array */ - static public function get() { + public static function get() { $alias = []; foreach (Db::name('SystemNode')->select() as $vo) { $alias["{$vo['node']}"] = $vo; @@ -112,7 +112,7 @@ class NodeModel { * @param array $nodes 额外数据 * @return array */ - static public function getNodeTree($path, $nodes = []) { + public static function getNodeTree($path, $nodes = []) { foreach (self::_getFilePaths($path) as $vo) { if (!preg_match('|/(\w+)/controller/(\w+)|', str_replace(DS, '/', $vo), $matches) || count($matches) !== 3) { continue; @@ -137,7 +137,7 @@ class NodeModel { * @param string $ext 文件后缀 * @return array */ - static private function _getFilePaths($path, $data = [], $ext = 'php') { + private static function _getFilePaths($path, $data = [], $ext = 'php') { foreach (scandir($path) as $dir) { if ($dir[0] === '.') { continue;