Sysmenu.php 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <?php
  2. namespace app\manage\controller;
  3. use think\Controller;
  4. use think\Db;
  5. use think\Session;
  6. use think\Config;
  7. use think\Cookie;
  8. use think\Request;
  9. use app\common\library\SysLogs;
  10. use app\common\library\UUIDs;
  11. class Sysmenu extends Base {
  12. public function _initialize() {
  13. $admin = Session::get('admin');
  14. if ($admin) {
  15. //已经登陆过
  16. return json_encode(array('status' => 'fail', 'code' => '1001'));
  17. }
  18. }
  19. //登录功能
  20. public function index() {
  21. return $this->fetch('index');
  22. }
  23. /**
  24. * 查询全部菜单
  25. */
  26. public function menudata() {
  27. $rootMenuData = array();
  28. // 准备根节点
  29. $rootMenuData["id"] = "root";
  30. $rootMenuData["pId"] = "0";
  31. $rootMenuData["name"] = "菜单(根节点)";
  32. $rootMenuData["url"] = "";
  33. $rootMenuData["open"] = "true";
  34. // 查询全部数据
  35. $menuData = $info = DB::table('sys_menus')->order("ordernum", "asc")->select();
  36. $jsonarray = array();
  37. if ($menuData != null) {
  38. foreach ($menuData as $k => $val) {
  39. $pid = $val["pid"];
  40. unset($val["pid"]);
  41. // 处理pid为pId,为前端菜单上下级关系展示处理
  42. $val['pId'] = $pid;
  43. $val['open'] = "true";
  44. array_push($jsonarray, $val);
  45. }
  46. }
  47. // 将根节点添加到树
  48. array_unshift($jsonarray, $rootMenuData);
  49. // 返回JSON数据
  50. echo json_encode($jsonarray);
  51. }
  52. // 添加或修改
  53. public function update() {
  54. $id = $_GET["id"];
  55. $data = array();
  56. $data["pid"] = $_GET["pid"];
  57. $data["name"] = $_GET["name"];
  58. $data["url"] = $_GET["url"];
  59. $data["ordernum"] = $_GET["ordernum"];
  60. // ID有值,认为是更新
  61. if (empty($id)) {
  62. // 无值,认为是添加
  63. $data["id"] = UUIDs::uuid16();
  64. Db::table("sys_menus")->insert($data);
  65. SysLogs::log("sys_menus", "C", json_encode($data));
  66. echo "insert_ok";
  67. } else {
  68. // 更新
  69. Db::table("sys_menus")->where("id", $id)->update($data);
  70. SysLogs::log("sys_menus", "U", "id = " . $id . " --> " . json_encode($data));
  71. echo "update_ok";
  72. }
  73. }
  74. /**
  75. * 删除
  76. */
  77. public function delete() {
  78. $id = $_GET["id"];
  79. $result = Db::table("sys_menus")->delete($id);
  80. SysLogs::log("sys_menus", "D", $id);
  81. if ($result) {
  82. echo "delete_ok";
  83. } else {
  84. echo "delete_fail";
  85. }
  86. }
  87. }