Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace App\Http\Controllers;
- use Illuminate\Http\Request;
- use Carbon\Carbon;
- use App\Models\User;
- use App\Models\Office;
- use App\Models\BranchOfCompany;
- class UserController extends Controller
- {
- public function get(Request $request)
- {
- if ($request->has('id')) {
- $id = $request->get('id');
- $item = User::find($id);
- if ($item) {
- return response()->json([
- 'item' => $item
- ], 200);
- }
- }
- return response()->json([
- 'message' => 'Błąd - nie znaleziono'
- ], 400);
- }
- public function index(Request $request) {
- $search = $request->get('search');
- $filters = $request->get('filters');
- $pagination = $request->get('pagination');
- if ($pagination['rowsPerPage'] == -1) $pagination['rowsPerPage'] = 1000000;
- $users = User::Query();
- $offices = Office::all();
- $branchOfCompany = BranchOfCompany::all();
- if ($search) {
- $users = $users->where(function ($query) use ($search) {
- $query->where('name', 'like', '%'.$search.'%')
- ->orWhere('city', 'like', '%'.$search.'%')
- ->orWhere('telephone', 'like', '%'.$search.'%')
- ->orWhere('position', 'like', '%'.$search.'%')
- ->orWhere('skype', 'like', '%'.$search.'%')
- ->orWhere('email', 'like', '%'.$search.'%');
- });
- }
- if ($filters) {
- if ($filters['privileges']) {
- foreach ($filters['privileges'] as $privilege) {
- $users = $users->where($privilege, 1);
- }
- }
- if ($filters['noPrivileges']) {
- foreach ($filters['noPrivileges'] as $privilege) {
- $users = $users->where($privilege, 0);
- }
- }
- }
- if ($pagination['sortBy']) {
- $desc = 'ASC';
- if ($pagination['descending']) $desc = 'DESC';
- $users = $users->orderBy($pagination['sortBy'], $desc);
- }
- $users = $users->paginate($pagination['rowsPerPage']);
- return response()->json([
- 'content' => [
- 'users' => $users,
- 'offices' => $offices,
- 'branchOfCompany' => $branchOfCompany
- ],
- ], 200);
- }
- public function createEdit(Request $request) {
- if ($request->has('item')) {
- $data = $request->get('item');
- if ($data['id']) {
- $item = User::find($data['id']);
- $path= $item->path;
- $item->resetPrivileges();
- if (array_key_exists('password', $data) && $data['password']) {
- $item->password = bcrypt($data['password']);
- $item->password_expire_at = Carbon::now()->toDateTimeString();
- }
- } else {
- $item = new User;
- $item->password = bcrypt($data['password']);
- }
- if($request->get('files') != []){
- $files = $request->get('files');
- $decodeFile = base64_decode(explode(",",$files[0]['file'])[1]);
- file_put_contents('img/usersImg/' . $files[0]['name'], $decodeFile);
- $path = $files[0]['name'];
- }
- if ($item) {
- $item->name = $data['name'];
- $item->email = $data['email'];
- $item->city = $data['city'];
- $item->telephone = $data['telephone'];
- $item->position = $data['position'];
- $item->skype = $data['skype'];
- $item->office_id = $data['office_id'];
- $item->path = $path;
- foreach ($data['privileges'] as $privilege) $item[$privilege] = 1;
- $item->save();
- $message = 'Użytkownik został dodany poprawnie';
- if ($data['id']) $message = 'Użytkownik został edytowany poprawnie';
- return response()->json([
- 'message' => $message,
- 'user' => $item,
- ], 200);
- }
- }
- return response()->json([
- 'error' => 'error',
- 'message' => 'Błąd!'
- ], 401);
- }
- public function changePrivilege(Request $request) {
- if ($request->has('id')) $id = $request->get('id');
- $user = User::find($id);
- if ($user) {
- $type = $request->get('type');
- $value = $request->get('value');
- $user->changePrivilege($type, $value);
- $user->save();
- return response()->json([
- 'message' => 'Uprawnienie użytkownia zostało zmienione'
- ], 200);
- }
- return response()->json([
- 'message' => 'Błąd - użytkownik nie znaleziony'
- ], 400);
- }
- public function destroy(Request $request) {
- if ($request->has('id')) $id = $request->get('id');
- $user = User::find($id);
- if ($user) {
- $user->delete();
- return response()->json([
- 'message' => 'Użytkownik został usunięty'
- ], 200);
- }
- return response()->json([
- 'message' => 'Błąd - użytkownik nie znaleziony'
- ], 400);
- }
- public function userOfficeindex(Request $request) {
- $search = $request->get('search');
- $filters = $request->get('filters');
- $pagination = $request->get('pagination');
- $officeId = $request->get('officeId');
- if ($pagination['rowsPerPage'] == -1) $pagination['rowsPerPage'] = 1000000;
- $users = User::where('office_id', $request->get('officeId'));
- $offices = Office::all();
- $branchOfCompany = BranchOfCompany::all();
- if ($pagination['sortBy']) {
- $desc = 'ASC';
- if ($pagination['descending']) $desc = 'DESC';
- $users = $users->orderBy($pagination['sortBy'], $desc);
- }
- $users = $users->paginate($pagination['rowsPerPage']);
- return response()->json([
- 'content' => [
- 'users' => $users,
- 'offices' => $offices,
- 'branchOfCompany' => $branchOfCompany
- ],
- ], 200);
- }
- public function getUsersToImageOffice(Request $request){
- $officeId = $request->get('officeId');
- $items = User::where('office_id','=',$request->get('officeId'))->get();
- //$items = [$officeId];
- return response()->json([
- 'items' => $items
- ], 200);
- }
- public function createXY(Request $request) {
- $x = $request->get('x');
- $y = $request->get('y');
- if ($x && $y != 0) {
- $item = User::find($request->get('idUser'));
- if ($item) {
- $item->x = $x;
- $item->y = $y;
- $item->save();
- if ($request->get('idUser')) $message = 'Użytkownik siedzi git';
- return response()->json([
- 'message' => $message,
- 'user' => $request->get('idUser'),
- ], 200);
- }
- }
- return response()->json([
- 'error' => 'error',
- 'message' => 'Błąd!'
- ], 401);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement