get('page', 1); $pageSize = $request->get('pageSize', 10); $username = $request->get('username', ''); $rows = SysUser::with('role') ->select('join_user_role_id', 'join_user_dept_id', 'user_id', 'user_status', 'user_category', 'user_name', 'user_login_name', 'user_mobile', 'user_remark', 'user_extend_json', 'user_addtimes') ->when($username != '', function ($query) use ($username) { $query->where('user_name', 'like', '%' . $username . '%'); }) ->orderBy('user_addtimes', 'DESC') ->forPage($page, $pageSize) ->get() ->toArray(); $total = SysUser::when($username != '', function ($query) use ($username) { $query->where('user_name', 'like', '%' . $username . '%'); })->count(); return json_success('', compact('rows', 'page', 'pageSize', 'total')); } /** * @Desc 用户详情 * @Author Gorden * @Date 2024/2/21 14:52 * * @param $id * @return \support\Response */ public static function userInfo($id) { $user = SysUser::select('join_user_role_id', 'join_user_dept_id', 'user_status', 'user_category', 'user_name', 'user_login_name', 'user_mobile', 'user_remark', 'user_extend_json', 'user_addtimes') ->where('user_id', $id) ->first(); if (!$user) { return json_fail('用户不存在'); } return json_success('', $user->toArray()); } /** * @Desc 添加用户 * @Author Gorden * @Date 2024/2/21 13:50 * * @param $params * @return \support\Response */ public static function insertUser($params) { try { $data = [ 'user_id' => self::generateUserId(), 'join_user_role_id' => $params['join_user_role_id'] ?? 0, 'join_user_dept_id' => $params['join_user_dept_id'] ?? 0, 'user_status' => $params['user_status'] ?? '', 'user_category' => $params['user_category'] ?? '', 'user_name' => $params['user_name'] ?? '', 'user_login_name' => $params['user_login_name'] ?? '', 'user_login_pass' => md5(sha1($params['user_login_pass'])), 'user_mobile' => $params['user_mobile'] ?? '', 'user_remark' => $params['user_remark'] ?? '', 'user_extend_json' => !empty($params['user_extend_json']) ? $params['user_extend_json'] : '{}', 'user_addtimes' => time() ]; if (!SysUser::insert($data)) { throw new \Exception('添加用户失败'); } } catch (\Exception $e) { dump($e->getMessage()); return json_fail('添加用户失败'); } return json_success('添加用户成功'); } /** * @Desc 修改用户 * @Author Gorden * @Date 2024/2/21 14:06 * * @param $id * @param $params * @return \support\Response */ public static function updateUser($id, $params) { try { $data = [ 'join_user_role_id' => $params['join_user_role_id'], 'join_user_dept_id' => $params['join_user_dept_id'], 'user_status' => $params['user_status'], 'user_category' => $params['user_category'], 'user_name' => $params['user_name'], 'user_remark' => $params['user_remark'], 'user_extend_json' => !empty($params['user_extend_json']) ? $params['user_extend_json'] : '{}' ]; // 密码变动 if (!empty($params['user_login_pass'])) { $data['user_login_pass'] = md5(sha1($params['user_login_pass'])); } SysUser::where('user_id', $id)->update($data); } catch (\Exception $e) { dump($e->getMessage()); return json_fail('修改用户失败'); } return json_success('修改用户成功'); } /** * @Desc 修改用户状态 * @Author Gorden * @Date 2024/2/21 15:03 * * @param $id * @param $params * @return \support\Response */ public static function updateStatus($id, $params) { try { if (!SysUser::where('user_id', $id)->update(['user_status' => $params['user_status']])) { throw new \Exception('用户状态修改失败'); } } catch (\Exception $e) { return json_fail('用户状态修改失败'); } return json_success('用户状态修改成功'); } /** * @Desc 修改密码 * @Author Gorden * @Date 2024/4/19 10:01 * * @param $id * @param $params * @return \support\Response */ public static function updatePassword($id, $params) { if ($params['user_login_pass'] != $params['confirmNewPassword']) { return json_fail('两次密码不一致'); } $user = SysUser::where('user_id', $id)->first(); if (md5(sha1($params['userPassword'])) != $user->user_login_pass) { return json_fail('原密码错误'); } try { SysUser::where('user_id', $id)->update(['user_login_pass' => md5(sha1($params['user_login_pass']))]); return json_success('密码修改成功'); } catch (\Exception $e) { dump($e->getMessage()); return json_fail('密码修改失败'); } } /** * @Desc 删除用户 * @Author Gorden * @Date 2024/2/21 15:11 * * @param $id * @return \support\Response */ public static function delUser(Request $request) { $ids = $request->post('user_id'); if (!$ids) { return json_fail("数据错误"); } try { if (is_array($ids)) { SysUser::whereIn('user_id', $ids)->delete(); } else { SysUser::where('user_id', $ids)->delete(); } } catch (\Exception $e) { return json_fail('删除用户失败'); } return json_success('删除用户成功'); } public static function checkUserExist($account) { return SysUser::where('user_login_name', $account)->exists(); } public static function generateUserId() { $random = random_string(8); return 'UR' . date('YmdHis') . $random; } }