This commit is contained in:
sayaliparab
2024-06-06 16:27:17 +05:30
6 changed files with 98 additions and 39 deletions

View File

@@ -15,6 +15,8 @@ use App\Exports\customer_export_selected;
use App\Exports\CustomerExportSelected;
use App\Models\ManageRestaurant;
use App\Models\RedeemRestaurant;
use Illuminate\Support\Facades\Validator;
use Illuminate\Validation\Rule;
use Barryvdh\DomPDF\PDF as DomPDFPDF;
use Exception;
use PDF;
@@ -84,28 +86,56 @@ class ManageCustomerController extends Controller
Created at : 28 May 2024
Use : To Update Customer Form.
*/
public function update(Request $request)
{
public function update(Request $request)
{
// Validation rules
$rules = [
'email_address' => [
'required',
'string',
'email',
'max:100',
Rule::unique('iam_principal')->where(function ($query) use ($request) {
return $query->where('principal_type_xid', 3)
->whereNull('deleted_at')
->where('id', '!=', $request->customer_id);
}),
],
];
try {
DB::beginTransaction();
$customer_data = IamPrincipal::where('id', $request->customer_id)->first();
$customer_data->first_name = $request->input('name');
$customer_data->last_name = $request->input('last_name');
$messages = [
$customer_data->phone_number = $request->input('phone');
$customer_data->email_address = $request->input('email_id');
$customer_data->save();
DB::commit();
'email_address.required' => 'Enter email address',
'email_address.email' => 'Please enter a valid email address',
'email_address.unique' => 'This email is already registered',
];
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);
$validator = Validator::make($request->all(), $rules, $messages);
if ($validator->fails()) {
return response()->json(['errors' => $validator->errors()], 422);
}
try {
DB::beginTransaction();
$customer_data = IamPrincipal::where('id', $request->customer_id)->first();
$customer_data->first_name = $request->input('name');
$customer_data->last_name = $request->input('last_name');
$customer_data->phone_number = $request->input('phone');
$customer_data->email_address = $request->input('email_address');
$customer_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);
}
}
}
public function archive_customer()
{

View File

@@ -113,6 +113,9 @@ class RestaurantApiServices
->where('restaurant_xid', $rest->id)
->exists();
$rest->is_favourite = $isFavourite;
$isRedeem = RedeemRestaurant::where('iam_principal_xid',$customerIamId)->where('manage_restaurants_xid',$rest->id)->exists();
$rest->is_Redeemed = $isRedeem;
}
if (!$rest) {
return jsonResponseWithErrorMessage(__('auth.restaurant_data_not_found'), 404);

View File

@@ -17,7 +17,7 @@ $(document).on("click", "#customer_user_btn", function (e) {
required: true,
fullNameCharactersOnly: true
},
email_id: {
email_address: {
required: true,
email: true,
},
@@ -34,7 +34,7 @@ $(document).on("click", "#customer_user_btn", function (e) {
required: "Enter Passport Name",
alphaCharactersOnly: "Please enter only alphabetical characters"
},
email_id: {
email_address: {
required: "Enter email address",
email: "Please enter a valid email address"
},
@@ -66,14 +66,15 @@ $(document).on("click", "#customer_user_btn", function (e) {
processData: false,
contentType: false,
success: function(result) {
console.log(result);
if (result.status_code == 200) {
toastr.success('Customer Updated Sucessfully');
toastr.success('Customer Updated Successfully');
setTimeout(function() {
window.location.href = base_url + "/manage-customer";
}, 2000);
} else {
toastr.error('Something Went Wrong');
toastr.error(result.message);
setTimeout(function() {
window.location.href = base_url + "/manage-customer";
}, 2000);
@@ -81,11 +82,29 @@ $(document).on("click", "#customer_user_btn", function (e) {
$('#customer_user_btn').attr('disabled', false);
$('#customer_user_btn').text('Submit');
},
error: function(xhr) {
console.log(xhr);
if (xhr.status === 422) {
var errors = xhr.responseJSON.errors;
for (var key in errors) {
if (errors.hasOwnProperty(key)) {
toastr.error(errors[key][0]); // Show the first error message for each field
}
}
} else {
toastr.error('Something Went Wrong');
}
$('#customer_user_btn').attr('disabled', false);
$('#customer_user_btn').text('Submit');
}
});
$('#customer_user_btn').attr('disabled', false);
$('#customer_user_btn').text('Submit');
}
});
});
});

View File

@@ -89,7 +89,7 @@
<th class="text-start">Full Name</th>
<th class="text-start">User ID</th>
<th class="text-start">Email Id</th>
<th class="text-start">Redeem restaurant</th>
<th class="text-start">Redeemed Restaurant</th>
<th class="text-start">Date of birth</th>
<th class="text-start">Phone Number</th>
<th class="text-start">Location</th>

View File

@@ -31,21 +31,28 @@
<th class="text-start">Sr no</th>
<th class="text-start">Restaurant Name</th>
<th class="text-start">Image</th>
<th class="text-start">Redeem date</th>
<th class="text-start">Redeem Date and Time</th>
</tr>
</thead>
<tbody class="text-center">
@foreach ($redeemDetails as $redeemDetail)
@if ($redeemDetails->isEmpty())
<tr>
<td class="text-start">{{ $loop->iteration }}</td>
<td class="text-start">{{ $redeemDetail->restaurant->name }}</td>
<td><img src="{{ ListingImageUrl('restaurant_images', $redeemDetail->restaurant->image) }}"
height="50px" width="80px"></td>
<td>{{ \Carbon\Carbon::parse($redeemDetail->created_at)->format('d/m/y') }}
<td colspan="4">No data found</td>
</tr>
@endforeach
@else
@foreach ($redeemDetails as $redeemDetail)
<tr>
<td class="text-start">{{ $loop->iteration }}</td>
<td class="text-start">{{ $redeemDetail->restaurant->name }}</td>
<td><img src="{{ ListingImageUrl('restaurant_images', $redeemDetail->restaurant->image) }}"
height="50px" width="80px"></td>
<td>{{ \Carbon\Carbon::parse($redeemDetail->created_at)->format('d/m/y H:i:s') }}
</td>
</tr>
@endforeach
@endif
</tbody>
</table>
</div>
</div>

View File

@@ -1,7 +1,7 @@
@extends('Admin.layouts.master')
@section('content')
@php
@php
$currentPage = 'manage-patient';
@endphp
<style>
@@ -10,7 +10,7 @@
}
form .error-message {
color: red;
color: red;
}
</style>
<div class="layout-px-spacing">
@@ -53,13 +53,13 @@
<label for="company-name" class="label">Location</label>
<input type="text" class="form-control" value="{{$customers_data->state ? $customers_data->state->name : 'No state assigned' }}">
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label for="company-name" class="label">User ID</label>
<input type="text" class="form-control" value="{{$customers_data->id }}">
</div>
</div>
</div>
<div class="col-md-6">
<div class="form-group ">
<label for="company-name" class="label">Phone Number</label>
@@ -69,7 +69,7 @@
<div class="col-md-6">
<div class="form-group ">
<label for="company-name" class="label">Email ID</label>
<input type="text" name="email_id" class="form-control" value="{{$customers_data->email_address}}">
<input type="text" name="email_address" class="form-control" value="{{$customers_data->email_address}}">
</div>
</div>
<div class="col-md-6">
@@ -98,4 +98,4 @@
@section('section_script')
<script src="{{ asset('public/assets/js/admin/manage_customer/edit.js')}}"></script>
@endsection
@endsection