Index.php 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. <?php
  2. /**
  3. * @copyright Copyright (c) 2017 https://www.sapixx.com All rights reserved.
  4. * @license Licensed (http://www.apache.org/licenses/LICENSE-2.0).
  5. * @author pillar<ltmn@qq.com>
  6. * 后台首页
  7. */
  8. namespace app\system\controller\admin;
  9. use filter\Filter;
  10. use app\common\model\SystemMiniapp;
  11. use app\common\model\SystemAdmin;
  12. use app\system\event\AppConfig;
  13. use app\common\event\Admin;
  14. class Index extends Common{
  15. protected $login;
  16. public function initialize() {
  17. parent::initialize();
  18. $this->login = Admin::getLoginSession();
  19. }
  20. /**
  21. * 后台主框架
  22. */
  23. public function index(){
  24. $miniapp = Admin::getMiniapp();
  25. $ary = [];
  26. if($miniapp ){
  27. $menu = SystemMiniapp::where(['is_manage' => 1,'id' => $miniapp['miniapp_id']])->find();
  28. if(!empty($menu)){
  29. $ary['name'] = $menu['title'];
  30. $ary['wechat'] = $menu['miniapp_dir'];
  31. }
  32. }
  33. $view['miniapp'] = $ary;
  34. return view('admin/index/index')->assign($view);
  35. }
  36. /**
  37. * 管理菜单
  38. * @return json
  39. */
  40. public function appmenu($app = 'system'){
  41. $app = Filter::filter_escape($app);
  42. $menu = null;
  43. if($app == 'systemcms'){
  44. $app = 'system';
  45. $menu = 'cms';
  46. }
  47. return json(AppConfig::menu($app,false,$menu));
  48. }
  49. /**
  50. * 后台登录
  51. */
  52. public function login(){
  53. if(request()->isPost()){
  54. $data = [
  55. '__token__' => $this->request->param('__token__/s'),
  56. 'captcha' => $this->request->param('captcha/s'),
  57. 'login_id' => $this->request->param('login_id/s'),
  58. 'login_password' => $this->request->param('login_password/s')
  59. ];
  60. $validate = $this->validate($data,'Admin.login');
  61. if(true !== $validate){
  62. return enjson(0,$validate);
  63. }
  64. $result = SystemAdmin::login($data);
  65. if($result){
  66. Admin::setLoginSession($result);
  67. return enjson(200,'登录成功',['url' => url('system/admin.index/index')]);
  68. }else{
  69. return enjson(0,'管理帐号登录失败');
  70. }
  71. }else{
  72. return view('admin/index/login');
  73. }
  74. }
  75. /**
  76. * 退出
  77. */
  78. public function logout(){
  79. Admin::setlogoutSession();
  80. Admin::clearMiniapp();
  81. return redirect(url('system/admin.index/login'));
  82. }
  83. }