Admin.php 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. <?php
  2. namespace app\home\controller;
  3. use think\Lang;
  4. class Admin extends AdminControl
  5. {
  6. public function _initialize()
  7. {
  8. parent::_initialize();
  9. Lang::load(APP_PATH . 'home/lang/' . config('default_lang') . '/admin.lang.php');
  10. }
  11. /**
  12. * 管理员列表
  13. * @return mixed
  14. */
  15. public function index()
  16. {
  17. $model_service = Model('service');
  18. $groupid = input('post.admingroupid');
  19. $title = input('post.title');
  20. $condition = array();
  21. if($groupid){
  22. $condition['admin_group_id'] = $groupid;
  23. }
  24. if($title){
  25. $condition['service_name'] = $title;
  26. }
  27. $condition['service_pid'] = session('service_pid');
  28. $service_list = $model_service->getserviceList($condition, '*', 10);
  29. if($service_list){
  30. for ($i=0; $i < count($service_list); $i++) {
  31. $ere['group_id'] = $service_list[$i]['service_group_id'];
  32. $qxzlist[] = Model('admingroup')->getOneAdmingroup($ere,$field = 'group_name');
  33. }
  34. $this->assign('qxzlist',$qxzlist);
  35. }
  36. $allpower = $this->qxhans();
  37. $where = array();
  38. $where['suosgs'] = session('service_pid');
  39. $admin_group = model('admingroup')->getAdminGroupList($where,'group_name,group_id');
  40. $this->assign('admin_group', $admin_group);//管理组
  41. $this->assign('allpower',$allpower);
  42. $this->assign('service_list', $service_list);
  43. $this->assign('show_page', $model_service->page_info->render());
  44. $this->setAdminCurItem('index');
  45. return $this->fetch();
  46. }
  47. /**
  48. * 添加管理员
  49. * @return mixed
  50. */
  51. public function add(){
  52. $model_service = model('service');
  53. $allpower = $this->qxhans();
  54. $this->assign('allpower',$allpower);
  55. if (!request()->isPost()) {
  56. $admin_array = array('add' => 1,'service_status'=>0);
  57. $condition = array();
  58. $condition['suosgs'] = session('service_pid');
  59. $admin_group = model('admingroup')->getAdminGroupList($condition,'group_name,group_id');
  60. $onlyz = array(
  61. 'group_id'=>'',
  62. 'group_name'=>'',
  63. );
  64. $this->assign('onlyz',$onlyz);
  65. $this->assign('admin_group', $admin_group);
  66. $this->assign('admin', $admin_array);
  67. return $this->fetch('form');
  68. } else {
  69. //上传文件保存路径
  70. $upload_file = ROOT_PATH . DS . DIR_UPLOAD . DS . ATTACH_COMMON;
  71. if (!empty($_FILES['service_imgurl']['name'])) {
  72. $file = request()->file('service_imgurl');
  73. $use_imgurl = random(2,0).time();
  74. $info = $file->validate(['ext' => 'jpg,png,gif'])->move($upload_file, $use_imgurl);
  75. if ($info) {
  76. $upload['service_imgurl'] = $info->getFilename();
  77. } else {
  78. // 上传失败获取错误信息
  79. $this->error($file->getError());
  80. }
  81. }
  82. if (!empty($upload['service_imgurl'])) {
  83. $data['service_imgurl'] = "uploads/home/common".DS.$upload['service_imgurl'];
  84. }
  85. $update_array['service_name'] = input('post.service_name');
  86. $update_array['service_password'] = input('post.service_password') ? md5(input('post.service_password')) : md5('123456');
  87. $update_array['service_group_id'] = input('post.service_group_id');
  88. $update_array['service_status'] = input('post.service_status');
  89. $update_array['service_nickname'] = input('post.service_nickname');
  90. $update_array['service_pid'] = session('service_pid');
  91. $update_array['service_add_time'] = TIMESTAMP;
  92. $result = $model_service->addService($update_array);
  93. if($data && $result){
  94. $where = array();
  95. $where['service_id'] = $result;
  96. $erre = $model_service->editService($where,$data);
  97. }
  98. if ($result) {
  99. dsLayerOpenSuccess("添加成功!");
  100. } else {
  101. $this->error("添加失败!");
  102. }
  103. }
  104. }
  105. public function edit()
  106. {
  107. $this->assign('is_super',session('service_id'));
  108. $service_id = input('param.service_id');
  109. if (empty($service_id)) {
  110. $this->error(lang('param_error'));
  111. }
  112. $model_service = Model('service');
  113. if (!request()->isPost()) {
  114. $condition['service_id'] = $service_id;
  115. $admin_array = $model_service->getserviceInfo($condition);
  116. $admin_array['add'] = 0;
  117. $where = array();
  118. $where['suosgs'] = session('service_pid');
  119. $admin_group = model('admingroup')->getAdminGroupList($where,'group_name,group_id');
  120. $ewhe = array();
  121. $ewhe['group_id'] = $admin_array['service_group_id'];
  122. $onlyz = model('admingroup')->getOneAdmingroup($ewhe,'group_name,group_id');
  123. $suosgs = session("admin_pid");
  124. $this->assign('suosgs',$suosgs);
  125. $this->assign('onlyz',$onlyz);
  126. $this->assign('admin_group',$admin_group);
  127. $this->assign('admin', $admin_array);
  128. return $this->fetch('form');
  129. } else {
  130. //上传文件保存路径
  131. $upload_file = ROOT_PATH . DS . DIR_UPLOAD . DS . ATTACH_COMMON;
  132. if (!empty($_FILES['service_imgurl']['name'])) {
  133. $file = request()->file('service_imgurl');
  134. $use_imgurl = random(2,0).time();
  135. $info = $file->validate(['ext' => 'jpg,png,gif'])->move($upload_file, $use_imgurl);
  136. if ($info) {
  137. $upload['service_imgurl'] = $info->getFilename();
  138. } else {
  139. // 上传失败获取错误信息
  140. $this->error($file->getError());
  141. }
  142. }
  143. if (!empty($upload['service_imgurl'])) {
  144. $update_array['service_imgurl'] = "uploads/home/common".DS.$upload['service_imgurl'];
  145. }
  146. $update_array['service_name'] = input('post.service_name');
  147. $update_array['service_status'] = input('post.service_status');
  148. $update_array['service_nickname'] = input('post.service_nickname');
  149. $update_array['service_group_id'] = input('post.service_group_id');
  150. if (input('post.service_password')) {
  151. $update_array['service_password'] = md5(input('post.service_password'));
  152. }
  153. $where = array();
  154. $where['service_id'] = $service_id;
  155. $result = $model_service->editService($where,$update_array);
  156. if ($result) {
  157. dsLayerOpenSuccess("编辑成功!");
  158. } else {
  159. $this->error("编辑失败!");
  160. }
  161. }
  162. }
  163. public function del()
  164. {
  165. $service_id = input('param.service_id');
  166. if (empty($service_id)) {
  167. $this->error(lang('param_error'));
  168. }
  169. $result = db('service')->delete($service_id);
  170. if ($result) {
  171. ds_json_encode(10000, lang('admin_del_succ'));
  172. } else {
  173. ds_json_encode(10001, lang('admin_del_fail'));
  174. }
  175. }
  176. protected function getAdminItemList()
  177. {
  178. $menu_array = array(
  179. array(
  180. 'name' => 'index', 'text' => lang('ds_manage'), 'url' => url('Admin/index')
  181. ), array(
  182. 'name' => 'add', 'text' => lang('ds_add'), 'url' => "javascript:dsLayerOpen('".url('Admin/add')."','".lang('ds_add')."')"
  183. ),
  184. );
  185. return $menu_array;
  186. }
  187. }