Files
cheerstothe_season_2.0/app/Http/Controllers/Admin/RestaurantAppController.php

214 lines
7.4 KiB
PHP
Raw Normal View History

2024-05-29 17:11:02 +05:30
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
2024-05-30 19:41:43 +05:30
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\DB;
use App\Models\IamPrincipal;
use App\Models\ManageRestaurant;
use App\Mail\RestUserApproval;
2024-06-03 20:26:36 +05:30
use App\Models\IamPrincipalRestaurantRole;
2024-05-30 19:41:43 +05:30
use Illuminate\Support\Facades\Mail;
use Exception;
2024-05-29 17:11:02 +05:30
class RestaurantAppController extends Controller
{
2024-06-03 20:26:36 +05:30
2024-05-30 19:41:43 +05:30
public function index_restraunt_users(Request $request)
{
try {
$activeQuery = $request->query('active');
if ($activeQuery == 1) {
$restaurant_users = IamPrincipal::with('getresturant')->where('principal_type_xid', 4)->where('is_active', 1)->orderBy('created_at', 'desc')->get();
} else if ($activeQuery == 0 && $activeQuery != null) {
$restaurant_users = IamPrincipal::with('getresturant')->where('principal_type_xid', 4)->where('is_active', '0')->orderBy('created_at', 'desc')->get();
} else {
$restaurant_users = IamPrincipal::with('getresturant')->where('principal_type_xid', 4)->orderBy('created_at', 'desc')->get();
// dd($restaurant_users);
}
foreach ($restaurant_users as $user) {
$restaurantIds = $user->getresturant->pluck('restaurant_xid')->toArray();
2024-06-03 20:26:36 +05:30
// $user->vouchers = ManageRestaurant::whereIn('id', $restaurantIds)->get();
2024-05-30 19:41:43 +05:30
}
return view('admin.pages.manage_users.restaurants_app.restaurants_users', compact('restaurant_users'));
} catch (Exception $e) {
Log::error("Manage Voucher Page Not Load " . $e->getMessage());
return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
}
}
2024-06-03 14:40:08 +05:30
// public function change_rest_user_status(Request $request)
// {
2024-05-30 19:41:43 +05:30
2024-06-03 14:40:08 +05:30
// try {
// DB::beginTransaction();
// $status = IamPrincipal::find($request->rest_user_id);
// $status->is_active = $request->status;
2024-05-30 19:41:43 +05:30
2024-06-03 14:40:08 +05:30
// // Generate a random password
// $randomPassword = \Str::random(8); // Adjust the length as per your requirements
// // Set the password
// $status->password = bcrypt($randomPassword); // Make sure to hash the password
// $status->save();
// if ($request->status == 1) {
// // Fetch user data based on user ID
// $user = IamPrincipal::find($request->rest_user_id);
// if ($user) {
// // Send email only if user exists
// $data = [
// 'first_name' => $user->first_name,
// 'last_name' => $user->last_name,
// 'email' => $user->email_address,
// 'password' => $randomPassword, // Pass the random password to the email template
// ];
// Mail::to($user->email_address)->send(new RestUserApproval($data));
// }
// }
// DB::commit();
// return jsonResponseWithSuccessMessage(__('success.update_data'));
// } catch (Exception $e) {
// Log::error("Update Status function Load Failed " . $e->getMessage());
// return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
// }
// }
2024-05-30 19:41:43 +05:30
2024-06-03 14:40:08 +05:30
public function change_rest_user_status(Request $request)
{
try {
DB::beginTransaction();
$status = IamPrincipal::find($request->rest_user_id);
$status->is_active = $request->status;
// Generate a random password if status is 1 (approved)
if ($request->status == 1) {
$randomPassword = \Str::random(8); // Adjust the length as per your requirements
2024-05-30 19:41:43 +05:30
$status->password = bcrypt($randomPassword); // Make sure to hash the password
2024-06-03 14:40:08 +05:30
}
2024-05-30 19:41:43 +05:30
2024-06-03 14:40:08 +05:30
$status->save();
2024-05-30 19:41:43 +05:30
2024-06-03 14:40:08 +05:30
if ($request->status == 1) {
// Fetch user data based on user ID
$user = IamPrincipal::find($request->rest_user_id);
2024-05-30 19:41:43 +05:30
2024-06-03 14:40:08 +05:30
if ($user) {
// Send email only if user exists
$data = [
'first_name' => $user->first_name,
'last_name' => $user->last_name,
'email' => $user->email_address,
'password' => $randomPassword, // Pass the random password to the email template
];
2024-05-30 19:41:43 +05:30
2024-06-03 14:40:08 +05:30
Mail::to($user->email_address)->send(new RestUserApproval($data));
2024-05-30 19:41:43 +05:30
}
2024-06-03 14:40:08 +05:30
}
2024-05-30 19:41:43 +05:30
2024-06-03 14:40:08 +05:30
DB::commit();
2024-05-30 19:41:43 +05:30
2024-06-03 14:40:08 +05:30
return jsonResponseWithSuccessMessage(__('success.update_data'));
} catch (Exception $e) {
Log::error("Update Status function Load Failed " . $e->getMessage());
return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
2024-05-29 17:11:02 +05:30
}
}
2024-05-30 19:41:43 +05:30
2024-06-03 20:26:36 +05:30
// public function view_rest($id)
// {
// try {
// $restaurantView = IamPrincipal::findOrFail($id);
// // dd($restaurantView);
// return view('Admin.pages.manage_users.restaurants_app.view_restaurant_users', compact('restaurantView'));
// } catch (Exception $e) {
// Log::error("Manage Voucher Page Not Load " . $e->getMessage());
// return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
// }
// }
// public function view_rest($id)
// {
// try {
// $restaurantView = IamPrincipal::findOrFail($id);
// return view('Admin.pages.manage_users.restaurants_app.view_restaurant_users', compact('restaurantView'));
// } catch (Exception $e) {
// Log::error("Manage Voucher Page Not Load " . $e->getMessage());
// return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
// }
// }
public function view_rest($id)
{
try {
$restaurantView = IamPrincipal::with('restaurant')->findOrFail($id);
return view('Admin.pages.manage_users.restaurants_app.view_restaurant_users', compact('restaurantView'));
} catch (Exception $e) {
Log::error("Manage Voucher Page Not Load " . $e->getMessage());
return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
}
}
public function edit_Restaurant($id)
{
try {
$editRest = IamPrincipal::findOrFail($id);
return view('Admin.pages.manage_users.restaurants_app.edit_restaurant_users', compact('editRest'));
} catch (Exception $e) {
Log::error("Manage Voucher Page Not Load " . $e->getMessage());
return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
}
}
public function updateRest(Request $request)
{
try {
DB::beginTransaction();
$rest_data = IamPrincipal::where('id', $request->rest_id)->first();
$rest_data->first_name = $request->input('name');
$rest_data->last_name = $request->input('last_name');
$rest_data->phone_number = $request->input('phone');
$rest_data->email_address = $request->input('email_id');
$rest_data->save();
DB::commit();
return jsonResponseWithSuccessMessage(__('success.update_data'));
} catch (Exception $e) {
DB::rollBack();
Log::error("updateCustomerNewsArticle Services Page Load Failed " . $e->getMessage());
return jsonResponseWithErrorMessage(__('auth.something_went_wrong'), 500);
}
}
2024-06-03 14:40:08 +05:30
}
2024-05-30 19:41:43 +05:30