AdminmanageController.php 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248
  1. <?php
  2. namespace App\Http\Controllers\Admin;
  3. use App\Http\Controllers\Controller;
  4. use Illuminate\Http\Request as Req;
  5. use Request;
  6. /**
  7. *
  8. */
  9. class AdminmanageController extends Controller {
  10. /**
  11. * @return 管理员管理
  12. */
  13. function index(Req $req) {
  14. $request=array();
  15. $request['loginname'] = isset($req->loginname) ? trim($req->loginname) : null;
  16. $request['role_name'] = isset($req->role_name) ? trim($req->role_name) : null;
  17. $request['status'] = isset($req->status) ? $req->status : '-1';
  18. $request['sureblur'] = isset($req->sureblur) ? $req->sureblur : 'on';
  19. $request['star_time'] = isset($req->star_time) ? trim($req->star_time) :trans('status.default_time.zt_day_three') ;
  20. $request['end_time'] = isset($req->end_time) ? trim($req->end_time) : trans('status.default_time.etime');
  21. $dt = \App\Lib\DataTable\DataTable::init();
  22. $dt->setDataSource('/admin/manager/adminInfo');
  23. $dt->setLang('system_user');
  24. $dt->addColsFields('loginname',array('sort'=>false));
  25. $dt->addColsFields('role_name',array('sort'=>false));
  26. $dt->addColsFields('status', array('sort'=>false,'templet' => '#closeTool'));
  27. $dt->addColsFields('add_time');
  28. // $dt->enableCheckBox();
  29. $dt->addColsFields('operation',array('templet'=>'#opt'));
  30. // $dt->setToolBar(array('delete'));
  31. return view('admin.Adminmanage/index', $dt->render($request));
  32. }
  33. /**
  34. * 关闭管理员接口
  35. */
  36. function GameClose() {
  37. $status = Request::has('status') ? Request::get('status') : '';
  38. $loginname = Request::has('loginname') ? Request::get('loginname') : '';
  39. if (empty($loginname)) {
  40. return responseToJson(-5030002031);
  41. }
  42. if ($status < 0) {
  43. return responseToJson(-5030002032);
  44. }
  45. $db = new \App\Models\System_user;
  46. $data = array(
  47. 'status' => $status,
  48. );
  49. if ($status) {
  50. $data['status'] = 1;
  51. } else {
  52. $data['token'] = '';
  53. $data['status'] = '0';
  54. }
  55. $res = $db->closeGame($data, $loginname);
  56. return responseToJson($res);
  57. }
  58. //修改管理员信息
  59. function Edit(Req $req) {
  60. $id = $req->id;
  61. $list = isset($req->limit) ? $req->limit : 10;
  62. if (empty($id)) {
  63. abort(404);
  64. }
  65. $db = new \App\Models\System_user;
  66. $root_db = new \App\Models\System_root;
  67. if (!$req->isMethod('post')) {
  68. $data = $db->getAdminInfo($id, 1);
  69. $root = $root_db->getlist($list);
  70. // $data['name'] = $root['name'];
  71. return view('admin.Adminmanage/edit', ['data' => $data, 'root' => $root['data']]);
  72. } else {
  73. $loginname = $req->loginname;
  74. $pwd = $req->password;
  75. $repwd = $req->repassword;
  76. $twopwd = $req->password_2;
  77. $retwopwd = $req->repassword_2;
  78. $data = array(
  79. 'status' => $req->status,
  80. );
  81. if (!empty($req->root_id)) {
  82. $data['root_id'] = $req->root_id?intval($req->root_id):4;
  83. }
  84. if (!empty($pwd)) {
  85. if ($pwd != $repwd) {
  86. return responseToJson(-7010000522); //两次密码不一致
  87. }
  88. $pwddata = GenPassword($pwd);
  89. $data['password'] = $pwddata['password'];
  90. $data['encryption'] = $pwddata['encryption'];
  91. }
  92. if (!empty($twopwd)) {
  93. if ($twopwd != $retwopwd) {
  94. return responseToJson(-7010000522); //两次密码不一致
  95. }
  96. $twopwddata = GenPassword($twopwd);
  97. $data['password_2'] = $twopwddata['password'];
  98. $data['encryption_2'] = $twopwddata['encryption'];
  99. }
  100. $res = $db->updateInfo($data, $id);
  101. $log = array(
  102. session('adminInfo.admin_name'),
  103. $loginname,
  104. );
  105. OperationLog(session('adminInfo.admin_id'), 'editAdmin', $log);
  106. return responseToJson($res);
  107. }
  108. }
  109. function Add(Req $req) {
  110. $root_db = new \App\Models\System_root;
  111. $list = isset($req->limit) ? $req->limit : 10;
  112. $admin_db=new \App\Models\System_user;
  113. $role_db=new \App\Models\Role;
  114. $system_role=new \App\Models\System_root;
  115. $role_data=$system_role->getAllRole();
  116. if (!$req->isMethod('post')) {
  117. $root = $root_db->getlist($list);
  118. $data['root_id'] = '';
  119. $data['status'] = 1;
  120. return view('admin.Adminmanage/add', ['data' => $data, 'root' => $root['data'], 'dis' => 1,'role'=>$role_data]);
  121. //['admin'=>$admin_info,'data'=>$role_data]
  122. } else {
  123. $loginname = $req->loginname;
  124. $pwd = $req->password;
  125. $repwd = $req->repassword;
  126. $twopwd = $req->password_2;
  127. $retwopwd = $req->repassword_2;
  128. $level = $req->root_id?intval($req->root_id):4;
  129. $status = $req->status;
  130. $role_id=$req->role_id;
  131. if(intval($role_id)<0){
  132. return responseToJson(-7082000322);//请选择添加角色
  133. }
  134. if (empty($loginname) || empty($pwd) || empty($twopwd)) {
  135. return responseToJson(-7010007022); //必填不能为空
  136. }
  137. if ($pwd != $repwd || $twopwd != $retwopwd) {
  138. return responseToJson(-7010000522); //两次密码不一致
  139. }
  140. $data['loginname'] = $loginname;
  141. $data['status'] = $status;
  142. $data['root_id'] = $level;
  143. $pwddata = GenPassword($pwd);
  144. $data['password'] = $pwddata['password'];
  145. $data['encryption'] = $pwddata['encryption'];
  146. $twopwddata = GenPassword($pwd);
  147. $data['password_2'] = $twopwddata['password'];
  148. $data['encryption_2'] = $twopwddata['encryption'];
  149. $data['add_time'] = date('Y-m-d H:i:s', time());
  150. $checkname = \App\Models\System_user::checkAdminname($data['loginname']);
  151. if($checkname<0){
  152. return responseToJson($checkname);
  153. }
  154. $db = new \App\Models\System_user;
  155. $admin_id = $db->addAdmin($data);
  156. if($admin_id<0){
  157. return responseToJson($admin_id);
  158. }
  159. //===写角色===
  160. $role_info=$system_role->getInfo($role_id,1);
  161. $admin_info=$admin_db->getAdminInfo($admin_id,1);
  162. $inset_data['role_id']=$role_info['id'];
  163. $inset_data['role_name']=$role_info['name'];
  164. $inset_data['admin_id']=$admin_id;
  165. $inset_data['admin_name']=$admin_info['loginname'];
  166. $res=$role_db->addRole($inset_data);
  167. if($res<0){
  168. return responseToJson($res);
  169. }
  170. //===end===
  171. $log = array(
  172. session('adminInfo.admin_name'),
  173. $loginname,
  174. );
  175. OperationLog(session('adminInfo.admin_id'), 'addAdmin', $log);
  176. return responseToJson(1);
  177. }
  178. }
  179. /**
  180. * 批量删除
  181. * [delete description]
  182. * @return [type] [description]
  183. */
  184. function delete(Req $req) {
  185. $loginname = '';
  186. $id = $req->input('id');
  187. if (empty($id)) {
  188. return responseToJson(-2001); //id������
  189. }
  190. $ids = explode(',', $id);
  191. if (!is_array($ids) && intval($ids) < 0) {
  192. return responseToJson(-2002); //id����
  193. }
  194. if (is_array($ids) && count($ids) > 0) {
  195. foreach ($ids as $k => $v) {
  196. if (intval($v) < 1) {
  197. unset($ids[$k]);
  198. }
  199. }
  200. }
  201. $admin_users = \App\Models\System_user::whereIn('id', $ids)->get();
  202. $rows = \App\Models\System_user::whereIn('id', $ids)->delete();
  203. foreach ($admin_users as $key => $value) {
  204. $loginname.=$value->loginname.',';
  205. }
  206. $log = array(
  207. session('adminInfo.admin_name'),
  208. $loginname,
  209. );
  210. OperationLog(session('adminInfo.admin_id'), 'deleteAdmin', $log);
  211. if (!$rows) {
  212. return responseToJson(-2003); //id����
  213. }
  214. return responseToJson(1); //id����
  215. }
  216. //获取权限代码
  217. function getRootCode(){
  218. $admin_id=session('adminInfo.admin_id');
  219. $role_id=\App\Models\System_user::select('root_id')->where('id',$admin_id)->first();
  220. $role_id=$role_id->toArray();
  221. $role_id=$role_id['root_id'];
  222. $data=\App\Models\Priv_roleModel::where('role_id',$role_id)->get();
  223. return $data->toArray();
  224. // dump($data->toArray());
  225. }
  226. }
  227. ?>