UserController.php 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. <?php
  2. namespace App\Http\Controllers\Admin;
  3. use Request;
  4. use App\Models\User;
  5. use App\Models\UsersProfile;
  6. use App\Http\Requests\MobileRequest;
  7. use App\Http\Requests\UserNameRequest;
  8. use App\Http\Requests\EmailAndRemarkRequest;
  9. class UserController extends BaseController
  10. {
  11. /* 视图文件相对路径 */
  12. protected $view = 'admin.user.list';
  13. protected $view_addupd = 'admin.user.addupd';
  14. protected $view_pro = 'admin.user.pro';
  15. protected $menu_name = 'user';
  16. public function __construct()
  17. {
  18. parent::__construct($this->menu_name);
  19. }
  20. /* 会员管理 */
  21. // 页面展示
  22. public function index()
  23. {
  24. $users = User::where([])
  25. ->orderBy('created_at', 'desc')
  26. ->paginate(10);
  27. $view_para = array_add($this->view_para, 'users', $users);
  28. return view($this->view, $view_para);
  29. }
  30. /* 添加 */
  31. // 页面展示
  32. public function addView()
  33. {
  34. return view($this->view_addupd, $this->view_para);
  35. }
  36. // 表单处理
  37. public function addPost(
  38. UserNameRequest $request,
  39. MobileRequest $request,
  40. EmailAndRemarkRequest $request
  41. )
  42. {
  43. // 生成不重复的id值,对外唯一标识用户
  44. do {
  45. $uid = str_random(128);
  46. $exist_uid = User::where('uuid', $uid)->count();
  47. } while($exist_uid);
  48. $data = Request::all();
  49. $data['uuid'] = $uid;
  50. $data['password'] = bcrypt('888888'); // 设置会员默认密码:888888
  51. User::create($data);
  52. return redirect()->route($this->menu_name)->with('success', '添加成功');
  53. }
  54. /* 编辑 */
  55. // 页面展示
  56. public function updView($id)
  57. {
  58. $user = User::find($id);
  59. if (!$user) {
  60. return redirect()->route($this->menu_name)->with('error', '找不到该会员');
  61. }
  62. $view_para = array_add($this->view_para, 'user', $user);
  63. return view($this->view_addupd, $view_para);
  64. }
  65. // 表单处理
  66. public function updPost(
  67. $id,
  68. MobileRequest $request,
  69. EmailAndRemarkRequest $request
  70. )
  71. {
  72. $user = User::find($id);
  73. if (!$user) {
  74. return redirect()->route($this->menu_name)->with('error', '找不到该会员');
  75. }
  76. $user->mobile = Request::input('mobile');
  77. $user->email = Request::input('email');
  78. $user->remark = Request::input('remark');
  79. $user->save();
  80. return redirect()->route($this->menu_name)->with('success', '编辑成功');
  81. }
  82. /* 密码重置 */
  83. public function updPwd($id)
  84. {
  85. $user = User::find($id);
  86. if (!$user) {
  87. return redirect()->route($this->menu_name)->with('error', '找不到该会员');
  88. }
  89. $user->password = bcrypt('888888');
  90. $user->save();
  91. return redirect()->route($this->menu_name)->with('success', '密码重置成功');
  92. }
  93. /* 删除 */
  94. public function del($id)
  95. {
  96. User::destroy($id);
  97. return redirect()->route($this->menu_name)->with('success', '删除成功');
  98. }
  99. /* 查看资料 */
  100. public function proView($id)
  101. {
  102. $profile = UsersProfile::find($id);
  103. $userName = User::find($id)->name;
  104. $view_para = array_add($this->view_para, 'pro', $profile);
  105. $view_para = array_add($view_para, 'userName', $userName);
  106. return view($this->view_pro, $view_para);
  107. }
  108. }