From f6fbbbf970edf6c2a1dcc10a90a38de80aca8da3 Mon Sep 17 00:00:00 2001 From: Hritikkk9 Date: Mon, 5 Aug 2024 16:41:27 +0530 Subject: [PATCH 1/2] referral code added --- .../Controllers/Admin/DashboardController.php | 149 +++++- app/Models/CustomReferralCode.php | 7 +- resources/views/Admin/dashboard.blade.php | 6 +- .../views/Admin/layouts/master.blade.php | 27 +- .../manage_referral_codes/index.blade.php | 453 ++++++++++++++++++ .../subscriptions/list-of-products.blade.php | 2 +- routes/web.php | 8 + 7 files changed, 633 insertions(+), 19 deletions(-) create mode 100644 resources/views/Admin/pages/manage_referral_codes/index.blade.php diff --git a/app/Http/Controllers/Admin/DashboardController.php b/app/Http/Controllers/Admin/DashboardController.php index 8bbc4a1..450e123 100644 --- a/app/Http/Controllers/Admin/DashboardController.php +++ b/app/Http/Controllers/Admin/DashboardController.php @@ -186,12 +186,15 @@ class DashboardController extends Controller public function createOrUpdateReferralCode(Request $request) { try { + + // dd($request->all()); DB::beginTransaction(); if($request->id){ - CustomReferralCode::updateOrCreate(['id', $request->id], [ + CustomReferralCode::where('id', $request->id)->update( [ 'referral_code' => $request->referral_code, ]); + }else{ CustomReferralCode::updateOrCreate([ 'referral_code' => $request->referral_code, @@ -250,4 +253,148 @@ class DashboardController extends Controller return response()->json(['error' => 'Export failed. Something went wrong.'], 500); } } + + + + + + + + + /* + Created By : Sayali parab + Created at : 07 June 2024 + Use : To get the page. + */ + + public function index() + { + $referralCodes = CustomReferralCode::orderBy('id', 'desc')->get(); + // return $location; + return view('Admin.pages.manage_referral_codes.index', compact('referralCodes')); + } + /* + Created By : Sayali parab + Created at : 07 June 2024 + Use : To store the location. + */ + + + public function store(Request $request) + { + // dd($request); + $request->validate([ + 'referral_code' => 'required|string|max:15', + + ]); + + try { + if (CustomReferralCode::where('referral_code', $request->referral_code)->exists()) { + return response()->json(['success' => false, 'error' => 'Referral Code name already exists', 'status' => 422]); + } + + // new location + $storeCode = new CustomReferralCode(); + $storeCode->referral_code = $request->referral_code; + $storeCode->save(); + + + + return response()->json(['success' => true, 'status' => 200]); + } catch (\Exception $e) { + return response()->json(['success' => false, 'error' => $e->getMessage(), 'status' => 500]); + } + } + + + + + /* + Created By : Sayali parab + Created at : 07 June 2024 + Use : To change status. + */ + public function change_referral_code_status(Request $request) + { + + try { + // dd($request->all()); + DB::beginTransaction(); + $status = CustomReferralCode::find($request->referral_id); + $status->is_active = $request->status; + $status->save(); + // return response()->json(['status' => 200]); + 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); + } + } + + + /* + Created By : Sayali parab + Created at : 07 June 2024 + Use : To delete location. + */ + public function delete_referral_code($id) + { + + + try { + DB::beginTransaction(); + + $passport = CustomReferralCode::find($id); + $passport->delete(); + + DB::commit(); + + return response()->json(['success' => true, 'status' => 200]); + } catch (\Exception $e) { + DB::rollBack(); + \Log::error("delete_location function Load Failed " . $e->getMessage()); + return response()->json(['success' => false, 'status' => 500, 'message' => __('auth.something_went_wrong')]); + } + } + + + /* + Created By : Sayali parab + Created at : 07 June 2024 + Use : To update location. + */ + + + + public function update_referral_code(Request $request) +{ + try { + DB::beginTransaction(); + + // Find the location data + $updateReferralCode = CustomReferralCode::find($request->id); + if (!$updateReferralCode) { + return response()->json(['success' => false, 'error' => 'Referral Code not found', 'status' => 404]); + } + + // Update the location data + $updateReferralCode->referral_code = $request->referral_code; + $updateReferralCode->save(); + + + DB::commit(); + + return response()->json(['success' => true, 'message' => __('success.update_data'), 'status' => 200]); + } catch (\Exception $e) { + DB::rollBack(); + \Log::error("Failed to update Code: " . $e->getMessage()); + return response()->json(['success' => false, 'error' => __('auth.something_went_wrong'), 'status' => 500]); + } +} + + + + } diff --git a/app/Models/CustomReferralCode.php b/app/Models/CustomReferralCode.php index ec3f958..39376fb 100644 --- a/app/Models/CustomReferralCode.php +++ b/app/Models/CustomReferralCode.php @@ -4,11 +4,14 @@ namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; +use Illuminate\Database\Eloquent\SoftDeletes; + class CustomReferralCode extends Model { - protected $table = 'custom_referral_code'; use HasFactory; - protected $guarded = [ ]; + use SoftDeletes; + protected $table = 'custom_referral_code'; + protected $guarded = []; } diff --git a/resources/views/Admin/dashboard.blade.php b/resources/views/Admin/dashboard.blade.php index 78db781..da4c216 100644 --- a/resources/views/Admin/dashboard.blade.php +++ b/resources/views/Admin/dashboard.blade.php @@ -27,7 +27,7 @@ + oninput="this.value = this.value.toUpperCase().replace(/\s/g, '')" maxlength="15">
@@ -43,11 +43,11 @@ + oninput="this.value = this.value.toUpperCase().replace(/\s/g, '')" maxlength="15">
- + {{-- --}}
diff --git a/resources/views/Admin/layouts/master.blade.php b/resources/views/Admin/layouts/master.blade.php index 01318e7..cd3533f 100644 --- a/resources/views/Admin/layouts/master.blade.php +++ b/resources/views/Admin/layouts/master.blade.php @@ -161,18 +161,6 @@ - {{--
  • - -
    - - Manage Vouchers -
    -
    -
  • --}} @endif @if (Auth::guard('admin')->user()->getPermissionGranted(Auth::guard('admin')->user()->id, 'manage-contact-us'))
  • " data-tooltip="9"> + +
    + + Referral Codes +
    +
    +
  • + + @endif diff --git a/resources/views/Admin/pages/manage_referral_codes/index.blade.php b/resources/views/Admin/pages/manage_referral_codes/index.blade.php new file mode 100644 index 0000000..ea53485 --- /dev/null +++ b/resources/views/Admin/pages/manage_referral_codes/index.blade.php @@ -0,0 +1,453 @@ +@extends('Admin.layouts.master') + +@section('content') + @php + $currentPage = 'manage-referral-codes'; + @endphp + +
    +
    +
    +
    +
    +
    +
    Manage Referral Codes
    +
    +
    + +
    +
    +
    +
    +
    + + + + + + + + + + + + + @foreach ($referralCodes as $referralCodeItem) + + + + + + + @endforeach + +
    Sr noReferral CodeStatusAction
    {{ $loop->iteration }}{{ $referralCodeItem->referral_code }} +
    + is_active ? 'checked' : '' }} + switch="bool" /> + +
    +
    +
    + + +
    +
    +
    +
    + +
    +
    +
    + + + + + + + + + + + + + + +@endsection +@section('section_script') + + {{-- + --}} + + + + + + + + + + +@endsection diff --git a/resources/views/Admin/pages/subscriptions/list-of-products.blade.php b/resources/views/Admin/pages/subscriptions/list-of-products.blade.php index 7a51041..9cd7b9f 100644 --- a/resources/views/Admin/pages/subscriptions/list-of-products.blade.php +++ b/resources/views/Admin/pages/subscriptions/list-of-products.blade.php @@ -127,7 +127,7 @@ + name ="referral_code" id="referral_code" placeholder="Enter Referral Code" oninput="this.value = this.value.toUpperCase().replace(/\s/g, '')" maxlength="15"> diff --git a/routes/web.php b/routes/web.php index 7377313..7a83b48 100644 --- a/routes/web.php +++ b/routes/web.php @@ -224,6 +224,14 @@ Route::group(['middleware' => ['checkStatus']], function () { Route::delete('/delete_location/{id}', [ManageLocationController::class, 'delete_location']); Route::post('/update_location', [ManageLocationController::class, 'update_location']); + //*******************************************************manage Referral Codes******************************************************** + + Route::get('/manage-referral-codes', [DashboardController::class, 'index'])->name('manage-referral-codes'); + Route::post('/add-referral-code', [DashboardController::class, 'store'])->name('store_referral_code'); + Route::get('/change_referral_code_status', [DashboardController::class, 'change_referral_code_status']); + Route::delete('/delete_referral_code/{id}', [DashboardController::class, 'delete_referral_code']); + Route::post('/update_referral_code', [DashboardController::class, 'update_referral_code']); + //*******************************************************Rules and regulation******************************************************** //*******************************************************manage redemptions rules******************************************************** Route::get('/manage_rules', [ManageRulesController::class, 'index'])->name('manage_rules'); From c8c9a2912d57a2651b6cd733b7790cc93265bdea Mon Sep 17 00:00:00 2001 From: Hritikkk9 Date: Mon, 5 Aug 2024 18:50:59 +0530 Subject: [PATCH 2/2] other changes --- .../Controllers/Admin/DashboardController.php | 69 ++++++++++++------- resources/views/Admin/dashboard.blade.php | 2 +- 2 files changed, 44 insertions(+), 27 deletions(-) diff --git a/app/Http/Controllers/Admin/DashboardController.php b/app/Http/Controllers/Admin/DashboardController.php index 450e123..43f96a2 100644 --- a/app/Http/Controllers/Admin/DashboardController.php +++ b/app/Http/Controllers/Admin/DashboardController.php @@ -34,7 +34,7 @@ class DashboardController extends Controller ->orderBy(DB::raw("DATE(created_at)")) ->pluck('count', 'date') ->toArray(); - $customReferralCode = CustomReferralCode::where('is_active',1)->first(); + $customReferralCode = CustomReferralCode::where('is_active', 1)->first(); $start_date = now()->subDays(7)->startOfDay(); $end_date = now()->endOfDay(); @@ -148,28 +148,48 @@ class DashboardController extends Controller 'next_payment_date' => $transaction->next_payment_date ? Carbon::parse($transaction->next_payment_date)->format('m/d/Y') : null, ]; })->toArray(); - $refrralUsers = ReferralUsers::with(['referredUser','refeersUser'])->latest()->get(); + $response = ReferralUsers::with(['referredUser', 'refeersUser'])->latest()->get()->toArray(); - return view('Admin.dashboard', compact( - 'customReferralCode', - 'customerCount', - 'restaurantCount', - 'dataMonthlyWithType3', - 'dataMonthlyWithType4', - 'dataQuarterlyWithType3', - 'dataQuarterlyWithType4', - 'dataYearlyWithType3', - 'dataYearlyWithType4', - 'formatted_transactions', - 'dailyData', - 'formattedDailyData', - 'defaultData', - 'formattedDefaultData', - 'quarterlyData', - 'yearlyData', - 'refrralUsers' - ) + $referralData = []; + + foreach ($response as $item) { + $principalId = $item['iam_principal_xid']; + + if (!isset($referralData[$principalId])) { + $referralData[$principalId] = [ + 'referred_user' => $item['referred_user'], + 'refeers_users' => [] + ]; + } + + // Add the refeers_user to the respective principalId + if (isset($item['refeers_user'])) { + $referralData[$principalId]['refeers_users'][] = $item['refeers_user']; + } + } + + return view( + 'Admin.dashboard', + compact( + 'customReferralCode', + 'customerCount', + 'restaurantCount', + 'dataMonthlyWithType3', + 'dataMonthlyWithType4', + 'dataQuarterlyWithType3', + 'dataQuarterlyWithType4', + 'dataYearlyWithType3', + 'dataYearlyWithType4', + 'formatted_transactions', + 'dailyData', + 'formattedDailyData', + 'defaultData', + 'formattedDefaultData', + 'quarterlyData', + 'yearlyData', + 'referralData' + ) ); } @@ -191,19 +211,16 @@ class DashboardController extends Controller DB::beginTransaction(); if($request->id){ - CustomReferralCode::where('id', $request->id)->update( [ + CustomReferralCode::where('id', $request->id)->update([ 'referral_code' => $request->referral_code, ]); - }else{ - CustomReferralCode::updateOrCreate([ + CustomReferralCode::create([ 'referral_code' => $request->referral_code, ]); } DB::commit(); return response()->json(['status_code' => 200]); - - } catch (\Exception $e) { DB::rollBack(); \Log::error('Storing Referral Code function failed: ' . $e->getMessage()); diff --git a/resources/views/Admin/dashboard.blade.php b/resources/views/Admin/dashboard.blade.php index c71e3b9..a399741 100644 --- a/resources/views/Admin/dashboard.blade.php +++ b/resources/views/Admin/dashboard.blade.php @@ -36,7 +36,7 @@ @if ($customReferralCode && $customReferralCode->referral_code)
    {{ csrf_field() }} -
    My Custom Referral Code:- +
    My Custom Referral Code:-