$data['name'], 'email' => $data['email'], 'password' => Hash::make($data['password']), 'user_group_id' => $data['user_group_id'], 'agency_id' => $data['agency_id'], ]); DB::commit(); return $user; } catch (\Exception $e) { DB::rollBack(); throw $e; } } public function update(User $user, array $data) { try { DB::beginTransaction(); // $emailChanged = $user->email !== $data['email']; $user->update([ 'name' => $data['name'], 'email' => $data['email'], 'user_group_id' => $data['user_group_id'], 'agency_id' => $data['agency_id'], ]); // if ($emailChanged) { // $user->notify(new EmailVerificationNotification()); // } DB::commit(); return $user; } catch (\Exception $e) { DB::rollBack(); throw $e; } } public function delete(User $user) { try { DB::beginTransaction(); $user->delete(); DB::commit(); } catch (\Exception $e) { DB::rollBack(); throw $e; } } public function getAgencies() { $data = Agency::rowActive()->orderBy('name','ASC')->get(); return $data; } public function getUserGroups() { $data = UserGroup::orderBy('name','ASC')->get(); return $data; } }