Admin.php 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. <?php
  2. namespace app\admin\controller;
  3. use think\Lang;
  4. class Admin extends AdminControl
  5. {
  6. public function _initialize()
  7. {
  8. parent::_initialize();
  9. Lang::load(APP_PATH . 'admin/lang/' . config('default_lang') . '/admin.lang.php');
  10. }
  11. /**
  12. * 管理员列表
  13. * @return mixed
  14. */
  15. public function index()
  16. {
  17. $model_admin = Model('admin');
  18. $admsuos = $model_admin->suosgsAdmin(session('admin_id'));
  19. $groupid = input('post.admingroupid');
  20. $title = input('post.title');
  21. $condition = array();
  22. if($groupid){
  23. $condition['admin_group_id'] = $groupid;
  24. }
  25. if($title){
  26. $condition['admin_name'] = $title;
  27. }
  28. if($admsuos['admin_id']!=1){
  29. $condition['admin_pid'] = $admsuos['admin_id'];
  30. }
  31. $admin_list = $model_admin->getAdminList($condition, '*', 10);
  32. $allpower = $this->qxhans();
  33. $condition = array();
  34. $condition['suosgs'] =1;
  35. $admin_group = model('admingroup')->getAdminGroupList($condition,'group_name,group_id');
  36. $this->assign('admin_group', $admin_group);//管理组
  37. $this->assign('allpower',$allpower);
  38. $this->assign('admin_list', $admin_list);
  39. $this->assign('show_page', $model_admin->page_info->render());
  40. $this->setAdminCurItem('index');
  41. return $this->fetch();
  42. }
  43. /**
  44. * 添加管理员
  45. * @return mixed
  46. */
  47. public function add()
  48. {
  49. $this->assign('is_super',session('admin_id'));
  50. if (request()->isPost()) {
  51. $model_admin = Model('admin');
  52. //判断用户名是否存在
  53. if ($model_admin->getOneAdmin(['admin_name' => input('post.admin_name')])) {
  54. $this->error(lang('admin_existence'));
  55. }
  56. $data = array(
  57. 'admin_name' => input('post.admin_name'),
  58. 'admin_password' => input('post.admin_password') ? md5(input('post.admin_password')) : md5('123'),
  59. 'admin_group_id' => "",
  60. 'admin_status' => input('post.admin_status'),
  61. 'admin_add_time' => TIMESTAMP,
  62. 'admin_login_time' => TIMESTAMP,
  63. 'admin_login_num' => 0,
  64. );
  65. if(input('post.group_id')==3){
  66. $suosgsid = $model_admin->suosgsAdmin(session('admin_id'));
  67. $data['admin_pid'] = input('post.admin_pid') ? input('post.admin_pid') : $suosgsid['admin_id'];
  68. }
  69. //添加到数据库
  70. $result = $model_admin->addAdmin($data);
  71. if ($result) {
  72. dsLayerOpenSuccess(lang('admin_add_succ'));
  73. } else {
  74. $this->error(lang('admin_add_fail'));
  75. }
  76. } else {
  77. $model_admin = Model('admin');
  78. $jlzgsmz = $model_admin->ogroupAdmin(0);
  79. $admin_array = array('add' => 1,'admin_status'=>0);
  80. $condition = array();
  81. $condition['suosgs'] = 1;
  82. $admin_group = model('admingroup')->getAdminGroupList($condition,'group_name,group_id');
  83. $this->assign('admin_group', $admin_group);
  84. $this->assign('admin', $admin_array);
  85. $this->assign('jlzgsmz',$jlzgsmz);
  86. return $this->fetch('form');
  87. }
  88. }
  89. public function edit()
  90. {
  91. $this->assign('is_super',session('admin_id'));
  92. $admin_id = input('param.admin_id');
  93. if (empty($admin_id)) {
  94. $this->error(lang('param_error'));
  95. }
  96. $model_admin = Model('admin');
  97. if (!request()->isPost()) {
  98. $condition['admin_id'] = $admin_id;
  99. $admin_array = $model_admin->getOneAdmin($condition);
  100. $admin_array['add'] = 0;
  101. $where = array();
  102. $admin_group = model('admingroup')->getAdminGroupList($where,'group_name,group_id');
  103. $group_id = $admin_array['admin_group_id'];
  104. $jlzgsmz = $model_admin->ogroupAdmin($admin_id);
  105. $suosgs = $model_admin->suosgsAdmin($admin_array['admin_pid']);
  106. $this->assign('suosgs',$suosgs);
  107. $this->assign('jlzgsmz',$jlzgsmz);
  108. $this->assign('admin_group', $admin_group);
  109. //$this->assign('qxgroup_name',$admin_group[$group_id-1]['group_name']);
  110. //$this->assign('qxgroup_id',$admin_group[$group_id-1]['group_id']);
  111. $this->assign('admin', $admin_array);
  112. return $this->fetch('form');
  113. } else {
  114. $data = array(
  115. 'admin_name' => input('post.admin_name'),
  116. 'admin_status' => input('post.admin_status'),
  117. );
  118. if (input('post.admin_password')) {
  119. $data['admin_password'] = md5(input('post.admin_password'));
  120. }
  121. if(input('post.group_id')==3){
  122. $suosgsid = $model_admin->suosgsAdmin(session('admin_id'));
  123. $data['admin_pid'] = input('post.admin_pid')? input('post.admin_pid') : $suosgsid['admin_id'];
  124. }
  125. if(input('post.group_id')==2){
  126. $data['admin_pid'] = '';
  127. }
  128. //验证数据 END
  129. $result = $model_admin->editAdmin(array('admin_id' => intval($admin_id)), $data);
  130. if ($result) {
  131. dsLayerOpenSuccess(lang('admin_edit_succ'));
  132. } else {
  133. $this->error(lang('admin_edit_fail'));
  134. }
  135. }
  136. }
  137. public function del()
  138. {
  139. $admin_id = input('param.admin_id');
  140. if (empty($admin_id)) {
  141. $this->error(lang('param_error'));
  142. }
  143. $result = db('admin')->delete($admin_id);
  144. if ($result) {
  145. ds_json_encode(10000, lang('admin_del_succ'));
  146. } else {
  147. ds_json_encode(10001, lang('admin_del_fail'));
  148. }
  149. }
  150. protected function getAdminItemList()
  151. {
  152. $menu_array = array(
  153. array(
  154. 'name' => 'index', 'text' => lang('ds_manage'), 'url' => url('Admin/index')
  155. ), array(
  156. 'name' => 'add', 'text' => lang('ds_add'), 'url' => "javascript:dsLayerOpen('".url('Admin/add')."','".lang('ds_add')."')"
  157. ),
  158. );
  159. return $menu_array;
  160. }
  161. }