HEX
Server: nginx/1.24.0
System: Linux DGT-WORDPRESS-VM-SERVER 6.14.0-1017-azure #17~24.04.1-Ubuntu SMP Mon Dec 1 20:10:50 UTC 2025 x86_64
User: ubuntu (1000)
PHP: 8.4.12
Disabled: NONE
Upload Files
File: /mnt/data/ghayatcom/ghayatcom-api/routes/api.php
<?php
namespace App\Http\Controllers\Api;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use App\User;
use App\Notifications\AppointmentCreateNotify;
use Notification;
use Illuminate\Support\Carbon;
use PDF;
use Storage;
use App\Channels\PusherChannel;
use App\Channels\Pusher;
use App\Http\Controllers\Api\FrqController;
use App\Http\Controllers\Api\ChangePasswordController;

/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/
    // Route::post('/pusher', function() {
    //     $pusher = new Pusher\\Pusher('b5d26a0d5bd1d8b0360e', '4df3c9ae2a589015a1ff', '1662857', array('cluster' => 'ap2'));
    //     $response = $pusher->trigger('test-channel', 'test-event', array( 'message' => 'hello world'));
    //     print_r($response);
    // });

    //cron for oneday before appointment notification
    Route::get('appointment/oneday-before', [AppointmentController::class, 'appointmentBeforeOneDay']);
      
    Route::post('stripe/acc', [StripeController::class, 'accountCreate']);
    Route::post('sumsub/webhook', [SumsubController::class, 'webhook']);
    // Route::get('google/distance', [WebSiteSettingsController::class, 'anlysisDistanceMatrix']);
    Route::post('/icd10/icdfetch', [IcdController::class, 'icdCodeFetch']);
    Route::post('/icd10/icdfetchnew', [IcdController::class, 'getICD10Codes']);
    
  
    Route::get('home-page/doctors-list', [HomePageController::class, 'fetchDoctorsHomePage']);
    Route::post('home-page/doctor-detail', [HomePageController::class, 'fetchDoctorDetailHomePage']);
    Route::get('home-page/banner-fetch', [HomePageController::class, 'fetchBannerImage']);
    Route::post('home-page/client-logo-fetch', [HomePageController::class, 'fetchClientLogo']);
    Route::post('blog-category/index', [BlogController::class, 'categoryList']);

    Route::middleware(['secureApi', 'responseHeader'])->group(function () {

        Route::get('/', function () {
            return response()->json(['message' => 'Page Not Found'], 404);
        });

        Route::prefix('ai-chat')->group(function () {
            Route::post('/patient/create', [GeneticConsultationController::class, 'intakePatient']);
            Route::post('/assess-risk', [GeneticConsultationController::class, 'assessRisk']);
            Route::post('/suggest-tests', [GeneticConsultationController::class, 'suggestTests']);
            Route::post('/simulate-results', [GeneticConsultationController::class, 'simulateResults']);
            Route::post('/personalized-plan', [GeneticConsultationController::class, 'personalizedPlan']);
            Route::post('/generate-report', [GeneticConsultationController::class, 'generateReport']);
            Route::get('/reports/download/{filename}', [GeneticConsultationController::class, 'downloadReport']);
            Route::post('/full-consultation', [GeneticConsultationController::class, 'fullConsultation']);
        });

        //User completion level-6
        Route::post('doctor/user-completion-six',[AdminUserController::class,'userCompletionSix']);
        Route::post('access/token',[SumsubController::class,'accessToken']);
        Route::post('sumsub/adddocument',[SumsubController::class,'addSumsubDocument']);

        //Chat subscriber channel
        // Route::view('chat/subscriber', 'chat_subscriber');
        // Route::post('s3/test', [MasterController::class,'s3']);
        Route::post('s3/check', [MasterController::class,'s3_check_file']);
         //contactUs Form
         Route::post('send-enquiry', [ContactUsController::class,'sendEnquiry']);
        //Login API
        Route::group(['prefix' => 'login'], function() {
            Route::post('verify-user', [LoginController::class,'verifyUser']);
           
            Route::post('/', [LoginController::class,'login']);
        //Forgot Passcode API's
            Route::post('check/forgot-passcode', [LoginController::class,'checkForgotPasscode']);
            Route::post('verify/forgot-passcode', [LoginController::class,'verifyForgotPasscode']);
            Route::post('update/forgot-passcode', [LoginController::class,'updateForgotPasscode']);
            Route::post('googleCallback', [LoginController::class, 'googleCallback']);

        });

        // Verify API's
        Route::group(['prefix' => 'verify'], function() {
            //Check Passport API
            Route::post('/passport', [RegisterController::class,'verifyPassport']);
        });
        // Register
        Route::group(['prefix' => 'register'], function() {

            //Onboarding API's - Registration
            Route::post('/stepMobile', [RegisterController::class,'stepMobile']);
            Route::post('/stepMobileVerify', [RegisterController::class,'stepMobileVerify']);
            Route::post('/stepPasscode', [RegisterController::class,'stepPasscode']);
            Route::post('/stepEmail', [RegisterController::class,'stepEmail']);
            Route::post('/stepEmailVerify', [RegisterController::class,'stepEmailVerify']);
            Route::post('/twoStepChoose', [RegisterController::class,'twoStepChoose']);
            Route::post('/twoStepVerification', [RegisterController::class,'twoStepVerification']);
            Route::post('/resend/otp', [RegisterController::class,'resendOtp']);

            //Onboarding API's - Verify Account
            // Route::post('/getprofileValidation', [SumsubController::class,'index']);
            Route::post('/profileStatus', [SumsubController::class,'getStatus']);
            Route::post('/getProfileDetails', [SumsubController::class,'getProfileDetails']);

            //Onboarding API's - Personal Details
            Route::post('/profileValidation', [SumsubController::class,'uploadVerification']);
            Route::post('/updateUserProfile', [RegisterController::class,'updateUserProfile']);
            Route::post('/updateDoctorProfile', [RegisterController::class,'updateDoctorProfile']);
            Route::post('/reviewDoctor', [RegisterController::class,'reviewDoctor']);
            Route::post('/activate', [RegisterController::class, 'activateAccount'])->name('user.activate');
            Route::post('/updatePharmacyUserProfile', [RegisterController::class,'updatePharmacyUserProfile']);
            Route::post('/updatePharmacyProfile', [RegisterController::class,'updatePharmacyProfile']);
            Route::post('/updatePharmacyAddress', [RegisterController::class,'updatePharmacyAddress']);
            Route::post('/profileImage', [RegisterController::class,'profileImage']);

            //Onboarding API's - Doctor Verification
            Route::post('/doctorDocuments', [RegisterController::class,'doctorDocuments']);

            //Onboarding API's - Preferences
            Route::post('/consultationType',[RegisterController::class,'consultationType']);
            Route::post('/costPerConsultation',[UserController::class,'costPerConsultation']);
            Route::post('/preferredOnlineConsultations',[UserController::class,'preferredOnlineConsultations']);

        });

        // Stripe
        Route::group(['prefix' => 'stripe'], function() {
            //Stripe APIs
            Route::post('/customer/create', [StripeController::class,'patientCustomerCreate']);
            Route::post('/card/create', [StripeController::class, 'patientCardCreate']);
            Route::post('/card/list', [StripeController::class, 'patientCardList']);
            Route::post('/doctor/account/create', [StripeController::class, 'doctorAccountCreate']);
            Route::post('/doctor/account/verify', [StripeController::class, 'doctorAccountVerify']);
            Route::post('/bank/account/create', [StripeController::class, 'doctorBankAccountCreate']);
            Route::post('/card/token/create', [StripeController::class, 'cardTokenCreate']);
            Route::post('/bank/token/create', [StripeController::class, 'doctorBankAccountTokenCreate']);
            //Milestone 3 APIs
            Route::post('/card/remove', [StripeController::class, 'patientCardDelete']);
            Route::post('/bank/account/list', [StripeController::class, 'doctorBankAccountList']);
            Route::post('/bank/account/remove', [StripeController::class, 'doctorBankAccountRemove']);
        });

        // Doctor Preferences
        Route::group(['prefix' => 'doctor'], function() {
            Route::post('/availabilities/list',[DoctorController::class,'doctorAvailabilitiesList']);
            Route::post('/set/ondemand',[DoctorController::class,'setOndemand']);
            Route::post('/set/scheduled_appointment',[DoctorController::class,'setScheduledAppointment']);
            Route::post('/set/homeVisitAvailability',[DoctorController::class,'homeVisitAvailability']);
            Route::post('/unavailable/list', [DoctorController::class,'doctorUnavailableList']);
            //Save Doctors Additional profile Info
            Route::post('/additional-info',[DoctorController::class,'additionalInfoSave']);
        });

        //Web Health profile
        Route::group(['prefix' => 'health-profile'], function() {
            //Health Profile
            Route::post('/view',[HealthProfileController::class,'view']);
            //Web
            Route::post('/metrics',[HealthProfileController::class,'metrics']);
            Route::post('/set-health-update',[HealthProfileController::class,'setHealthUpdate']);
            Route::post('/set-second-health-update',[HealthProfileController::class,'setSecondHealthUpdate']);
        });

        //Mobile Health Profile
        Route::group(['prefix' => 'mobile'], function() {
            // Route::post('/health-profile/metrics',[MobileController::class,'metrics']);
            Route::post('/health-profile/allergie',[MobileController::class,'allergie']);
            Route::post('/health-profile/medical-condition',[MobileController::class,'medicalCondition']);
            Route::post('/health-profile/medications',[MobileController::class,'medications']);
            Route::post('/health-profile/procedures',[MobileController::class,'procedures']);
            Route::post('/health-profile/prosthesis-implants-grafts',[MobileController::class,'prosthesisImplantsGrafts']);
            Route::post('/health-profile/vaccinations',[MobileController::class,'vaccinations']);
            Route::post('/health-profile/life-style',[MobileController::class,'lifeStyle']);
        });

        //Dependent
        Route::group(['prefix' => 'dependant'], function() {
            Route::post('/onboarding-pre/status', [DependantController::class,'dependantOnboardingPre']);
            Route::post('/onboarding', [DependantController::class,'dependantOnboarding']);
            Route::post('/onboarding-cancel', [DependantController::class,'dependantOnboardingCancel']);
            Route::post('/manage-details', [DependantController::class,'dependantRetrieveForManage']);
            Route::post('/manage-request', [DependantController::class,'dependantManageAccountRequestSent']);
        });

        //Page Content
        Route::get('/landing/content/index',[HomePageController::class,'pageContentList']);
        Route::get('/landing/module/index',[HomePageController::class,'pageModuleList']);

        //Masters
        Route::get('symptoms/index',[SymptomsController::class,'index']);
        Route::get('country/index',[CountryController::class,'index']);
        Route::get('areaSpecialisation/index', [AreaSpecialisationController::class,'index']);
        Route::post('clinics/index',[ClinicController::class, 'index']);
        Route::post('nationality/index', [NationalityController::class, 'index']);
        Route::post('site-language/index', [SiteLanguageController::class, 'index']);
        Route::get('dependant/relation/index', [DependentRelationshipController::class,'index']);
        Route::post('language/index', [LanguageController::class,'index']);
        Route::get('websettings/index', [WebSiteSettingsController::class,'index']);
        //Voucher API
        Route::post('coupon/index',[CouponController::class,'index']);
        //Blog APIs
        Route::post('category/index', [BlogController::class, 'categoryList']);
        Route::post('blog/index', [BlogController::class, 'index']);
        Route::post('blog/detail', [BlogController::class, 'blogDetail']);

        //Health Profile Master
        Route::get('allergie/index',[HealthProfileController::class,'index'])->name('allergies');
        Route::get('medical-condition/index',[HealthProfileController::class,'index'])->name('medical_conditions');
        Route::get('medications/index',[HealthProfileController::class,'index'])->name('medications');
        Route::get('procedures/index',[HealthProfileController::class,'index'])->name('procedures');
        Route::get('vaccinations/index',[HealthProfileController::class,'index'])->name('vaccinations');
        Route::get('prosthesis/index',[HealthProfileController::class,'index'])->name('prosthesis');
        Route::get('recreational-drugs/index',[HealthProfileController::class,'index'])->name('recreational_drugs');
        Route::get('dietary-restrictions/index',[HealthProfileController::class,'index'])->name('dietary_restrictions');
        Route::get('alcohol-consumption/index',[HealthProfileController::class,'index'])->name('alcohol_consumption');
        Route::get('tobacco-use/index',[HealthProfileController::class,'index'])->name('tobacco_use');

        // Configuration List

        Route::get('patients-consultation/index',[ConsultationPatientController::class,'index']);
        Route::get('doctors-consultation/index',[ConsultationDoctorController::class,'index']);

        Route::get('channel/index', [ChannelController::class,'index']);
        Route::post('onboard/steps/index',[OnboardingStepController::class,'index']);

        //User status
        Route::post('user-status', [UserController::class,'userStatus']);

        Route::post('user/devicetoken/update',[UserController::class,'userTokenUpdate']);
        Route::get('cities/index', [PharmacyController::class,'localityList']);
    });

    Route::middleware(['CheckAuthHeader', 'auth:api', 'responseHeader'])->group(function () {
        Route::get('/notification/',[NotificationController::class,'index']);
        Route::group(['prefix' => 'notification'], function() {
            Route::post('/unread',[NotificationController::class,'unreadNotifications']);
            Route::post('/all',[NotificationController::class,'notifications']);
            Route::get('/mark-as-read-all',[NotificationController::class,'markAsReadAll']);
            Route::post('/mark-as-read',[NotificationController::class,'markAsRead']);
            Route::post('/delete',[NotificationController::class,'markAsDelete']);
            Route::get('/delete-all',[NotificationController::class,'markAsDeleteAll']);
        });
        Route::post('doctor/remove/scheduled_appointment',[DoctorController::class,'removeScheduledAppointment']);
        Route::post('health-record-compare',[HealthProfileController::class,'getHealthMetrics']);
        Route::post('/activitylog',[ActivityLogController::class,'index']);

        // Audit Log
        Route::post('/auditlog',[AuditlogController::class,'index']);
        Route::post('/auditlog/create',[AuditlogController::class,'create']);
        Route::post('/auditlog/delete',[AuditlogController::class,'delete']);
        Route::post('/auditlog/delete_all',[AuditlogController::class,'delete_all']);
        
        // Family Tree
        Route::group(['prefix' => 'family-tree'], function() {
            Route::post('/store', [FamilyTreeController::class,'store']);
            Route::post('/status/update', [FamilyTreeController::class,'updateStatus']);
            Route::post('/view', [FamilyTreeController::class,'show']);
        });

        // Healthprofile master
        Route::post('/healthprofilemaster/create',[HealthProfileMasterController::class,'create']);
        Route::post('/healthprofilemaster/edit',[HealthProfileMasterController::class,'edit']);
        Route::post('/healthprofilemaster/delete',[HealthProfileMasterController::class,'delete']);
        Route::post('/healthprofilemaster/index',[HealthProfileMasterController::class,'index']);

        // Healthprofile measure patient
        Route::post('/healthprofilemeasurepatient/create',[HealthProfileMeasurePatientController::class,'create']);
        Route::post('/healthprofilemeasurepatient/measurement_bulk_create',[HealthProfileMeasurePatientController::class,'measurement_bulk_create']);
        Route::post('/healthprofilemeasurepatient/view_more',[HealthProfileMeasurePatientController::class,'view_more']);
        Route::post('/healthprofilemeasurepatient',[HealthProfileMeasurePatientController::class,'index']);
        Route::post('/healthprofilemeasurepatient/list',[HealthProfileMeasurePatientController::class,'list']);

        // Healthprofile metrics
        Route::post('/health-profile-metric/index',[HealthProfileMetricsController::class,'index']);
        Route::post('/patient/health-profile-metric/list',[HealthProfileMetricPatientController::class,'list']);
        Route::post('/patient/health-profile-metric/index',[HealthProfileMetricPatientController::class,'index']);
        Route::post('/doctor/health-profile-metric/add',[HealthProfileMetricPatientController::class,'update']);

        //General Health Condition
        Route::post('/general-health/master/index',[GeneralHealthConditionController::class,'index']);
        Route::post('/general-health-condition/index',[GeneralHealthConditionPatientController::class,'index']);
        Route::post('/general-health-condition/list',[GeneralHealthConditionPatientController::class,'list']);
        Route::post('/doctor/general-health-condition/add',[GeneralHealthConditionPatientController::class,'update']);
        Route::post('/doctor/general-health-condition/delete',[GeneralHealthConditionPatientController::class,'destroy']);

        //appointment
        Route::group(['prefix' => 'appointment'], function() {

            //Appointment
            Route::get('/consultation/id',[AppointmentController::class,'consultationID']);
            Route::get('/doctorfilters',[AppointmentController::class,'doctorfilters']);
            Route::post('/detail',[AppointmentController::class,'appointmentDetail']);
            Route::post('/generatesession',[AppointmentController::class,'generateVonageSession']);
            Route::post('/fcmtest',[AppointmentController::class,'fcmtest']);

            Route::group(['middleware' => ['role:doctor|patient|clinic_admin']], function() {
                Route::post('/patientlist',[AppointmentController::class,'appointmentList']);
                Route::post('/doctorlist',[AppointmentController::class,'appointmentList']);
                Route::post('/create-consultation',[AppointmentController::class,'createConsultation']);
                Route::post('/end-consultation',[AppointmentController::class,'endConsultation']);
                Route::post('/approve-decline',[AppointmentController::class,'appointmentApproval']);
                Route::post('/notification/request',[AppointmentController::class,'appointmentList'])->name('notification_request');
                Route::post('/homevisit/availability',[DoctorController::class,'homevisitDoctorAvailable']);
                //Doctor Distance Api
                Route::post('/doctor/distance',[AppointmentController::class,'getLatLongDetails']);
                // Appointment Reschedule by Doctor
                Route::post('/reschedule', [AppointmentController::class,'rescheduleRequest']);
                // Handle Reschedule Request - approve or decline
                Route::post('/handle-reschedule-request',[AppointmentController::class,'rescheduleAppointmentApproveDecline']);
                
            });

            Route::group(['middleware' => ['role:doctor|clinic_admin|super_admin|admin']], function() {
                Route::post('/clinic/request',[AppointmentController::class,'clinicAppointmentCreate']);
                Route::post('/calendar/unavailable',[AppointmentController::class,'unavailable']);
                Route::post('/homevisittimeslots',[AppointmentController::class,'homevisittimeslots']);
                Route::post('/homevisittimeslotupdate',[AppointmentController::class,'homeVisitTimeSlotUpdate']);
                Route::post('/homevisitdeparture',[AppointmentController::class,'homeVisitDeparture']);
                Route::post('/homevisitdepartureupdate',[AppointmentController::class,'homeVisitDepartureUpdate']);
                Route::post('/homevisit/onmywayupdate',[AppointmentController::class,'onMyWayUpdate']);
                Route::post('/homevisit/onmywayend',[AppointmentController::class,'onMyWayEnd']);
                //Doctor LatLong Api
                Route::post('/doctor/lat-long-update',[AppointmentController::class,'doctorLatLongUpdate']);
            });

            Route::group(['middleware' => ['role:patient|clinic_admin']], function() {
                Route::post('/scheduledtimeslots',[AppointmentController::class,'scheduledtimeslots']);
                Route::post('/homevisit/onmywaylist',[AppointmentController::class,'onMyWayList']);
                Route::post('/request', [AppointmentController::class,'appointmentRequest']);
                Route::post('/dodrequest', [AppointmentController::class,'appointmentDODRequest']);
                Route::post('/dod/payment', [AppointmentController::class,'appointmentDODPayment']);
            });
            //Calendar
            Route::get('/calendar',[AppointmentController::class,'calendarList']);
            Route::post('/date/calendar',[AppointmentController::class,'calendarDateList']);

            //appointment timeslots
            Route::post('/waiting-room',[AppointmentController::class,'waitingRoom']);
            Route::post('/leave-waiting-room',[AppointmentController::class,'leaveWaitingRoom']);
        });

        //Dependent
        Route::group(['prefix' => 'dependant'], function() {
            //Dependant
            Route::get('/index',[DependantController::class,'index']);
            Route::post('/status',[DependantController::class,'dependantStatus']);
            Route::post('/detail',[DependantController::class,'dependantDetail']);
            Route::post('/linked-account',[DependantController::class,'dependantLinkedAccountDetail']);
            Route::post('/role/set',[DependantController::class,'dependantRole']);

            Route::post('/add-dependant/personal-detail',[DependantController::class,'dependantPersonalDetailCreate']);
            Route::post('/add-dependant/authenticate-relationship',[DependantController::class,'dependantAuthenticateCreate']);

            Route::post('/add-dependant/profile-picture',[DependantController::class,'dependantProfilePictureCreate']);
            Route::post('/update-dependant/personal-detail',[DependantController::class,'dependantPersonalDetailUpdate']);
            Route::post('/update-dependant/address',[DependantController::class,'dependantAddressUpdate']);
        });

        // Insurance
        Route::get('insurance/get', [InsuranceController::class, 'getInsuranceDetail'])->middleware(['role:patient|clinic_admin|super_admin|admin']);
        Route::group(['prefix' => 'insurance','middleware' => ['role:patient']], function() {
            //insurance list
            Route::get('/company/index', [InsuranceController::class, 'index']);
            Route::post('/create', [InsuranceController::class, 'addInsuranceDetail']);
            Route::post('/appointments/index', [InsuranceController::class, 'appointmentList']);
            Route::post('/claim/create', [InsuranceController::class, 'InsuranceClaimForm']);
            Route::post('/claim/pdf', [InsuranceController::class, 'insuranceClaimDetailPdf']);
            Route::post('/appointment/view', [InsuranceController::class, 'insuranceClaimDetailView']);
        });

        //Lab
        Route::group(['prefix' => 'lab','middleware' => ['role:lab_admin']], function() {
            Route::post('/category', [LabController::class, 'categoryStore']);
            Route::post('/categories/list', [LabController::class, 'categoryIndex']);
            Route::get('/categories/list', [LabController::class, 'categoryParameterList']);
            Route::post('/categories/delete', [LabController::class, 'categoryDelete']);
            Route::post('/parameter', [LabController::class, 'parameterStore']);
            Route::post('/parameter/list', [LabController::class, 'parameterIndex']);
            Route::post('/parameter/status', [LabController::class, 'parameterStatus']);
            Route::get('/parameter/lists', [LabController::class, 'parameterPackageList']);
            Route::post('/package', [LabController::class, 'packageStore']);
            Route::post('/package/list', [LabController::class, 'packageIndex']);
            Route::post('/package/status', [LabController::class, 'packageStatus']);
            Route::get('/lab/dashboard', [LabController::class, 'labDashBoard']);
            Route::post('/review/list',[RatingController::class,'listLabReviews']);
            Route::post('/review/status',[RatingController::class,'statusLabReview']);
            Route::post('/review/delete',[RatingController::class,'deleteLabReview']);
            Route::post('/review/update',[RatingController::class,'updateLabReview']);
            
        });

           //Home page Api
          
        Route::group(['prefix' => 'home-page','middleware' => ['role:super_admin|admin']], function() {
            Route::post('/banner-update', [HomePageController::class, 'updateBanner']);    
            Route::post('/client-logo-update', [HomePageController::class, 'uploadClientLogo']);
            Route::post('/client-logo-delete', [HomePageController::class, 'deleteClientLogoDocument']);
            Route::post('/update-doctors', [HomePageController::class, 'updateDoctor']);
            Route::post('/delete-doctors', [HomePageController::class, 'deleteDoctorsHomePage']);
        });


        Route::group(['prefix' => 'lab','middleware' => ['role:lab_admin|super_admin|patient']], function() {
            Route::post('/order/list', [LabController::class, 'labAdminBookingList']);
            Route::post('/order/status', [LabController::class, 'labOrderStatus']);
        });
        //lab settings
        Route::group(['prefix' => 'lab-setting','middleware' => ['role:lab_admin']], function() {
            Route::post('/basicinfo/update', [LabSettingController::class, 'updateBasicInfo']);        
            Route::post('/contactinfo/update', [LabSettingController::class, 'updateContactInfo']);
            Route::post('/licenseinfo/update', [LabSettingController::class, 'updateLicenseInfo']);        
            Route::post('/paymentinfo/update', [LabSettingController::class, 'updatePaymentInfo']);
            Route::post('/info/fetch', [LabSettingController::class, 'fetchInfo']);
        });

        //frq
        Route::group(['prefix' => 'lab-component/frqs','middleware' => ['role:lab_admin']], function() {
            Route::post('/index', [FrqController::class, 'index']);
            Route::post('/view', [FrqController::class, 'show']);
            Route::post('/store', [FrqController::class, 'store']);
            Route::post('/update', [FrqController::class, 'update']);
            Route::post('/delete', [FrqController::class, 'destroy']);
        });

        //clinic settings
        Route::group(['prefix' => 'clinic-setting','middleware' => ['role:clinic_admin']], function() {
            Route::post('/basicinfo/update', [ClinicSettingController::class, 'updateBasicInfo']);        
            Route::post('/contactinfo/update', [ClinicSettingController::class, 'updateContactInfo']);
            Route::post('/licenseinfo/update', [ClinicSettingController::class, 'updateLicenseInfo']);        
            Route::post('/paymentinfo/update', [ClinicSettingController::class, 'updatePaymentInfo']);
            Route::post('/info/fetch', [ClinicSettingController::class, 'fetchInfo']);

        });


        Route::group(['prefix' => 'labbooking','middleware' => ['role:patient|doctor|lab_admin']], function() {
            Route::post('/booking', [LabController::class, 'labBooking']);
            Route::post('/sample/address', [LabController::class, 'sampleAddress']);
            Route::get('/sample/address/list', [LabController::class, 'sampleAddressIndex']);
            Route::post('/sample/address/delete', [LabController::class, 'sampleAddressDelete']);
            Route::post('/booking/list', [LabController::class, 'labBookingList']);
            Route::post('/checkout/list', [LabController::class, 'labCheckoutList']);
            Route::post('/doctor/checkout/confirm', [LabController::class, 'labDoctorCheckoutList']);
            Route::get('/clinic/list', [LabController::class, 'doctorClinicList']);
            Route::post('/lab/list', [LabController::class, 'patientDoctorLabList']);
            Route::post('/category/list', [LabController::class, 'patientDoctorCategoryList']);
            Route::post('/parameter/list', [LabController::class, 'patientDoctorParameterList']);
            Route::post('/package/list', [LabController::class, 'patientDoctorPackageList']);
        });
        //Lab Invoices
        Route::group(['prefix' => 'labbooking','middleware' => ['role:lab_admin|patient']], function() {
            Route::post('/invoice/generate-pdf', [LabController::class, 'invoiceList']);
            Route::post('/order/list', [LabController::class, 'orderList']);
            Route::post('/patient/request-create',[LabController::class,'labPatientRequestCreate']);
            Route::post('/patient-order/list', [LabController::class, 'orderPatientList']);
        });


        //Doctor
        Route::group(['prefix' => 'doctors'], function() {
            Route::post('/index',[DoctorController::class,'index']); 
            Route::get('/filter/list',[DoctorController::class,'filterList']);
            Route::post('/favourite',[DoctorController::class,'doctorsFavourite']);
            Route::group(['middleware' => ['role:doctor']], function() {
                Route::post('/confirm-charge', [DoctorController::class,'discountConfirmation']);
                Route::post('/notes', [DoctorController::class,'doctorNotes']);
                Route::post('/get/notes', [DoctorController::class,'getDoctorNotes']);
            });
        });

        // Prescription
        Route::group(['prefix' => 'prescription'], function() {
            //Prescription Flow
            Route::group(['middleware' => ['role:patient|pharmacy|pharmacy_admin|super_admin']], function() {
                Route::post('/view', [PrescriptionController::class, 'PrescriptionDetailView']);
            });
            Route::group(['middleware' => ['role:patient|pharmacy|pharmacy_admin']], function() {
                Route::post('/index', [PrescriptionController::class, 'index']);
                Route::post('/request', [PrescriptionController::class, 'prescriptionRequest']);
            });
            Route::group(['middleware' => ['role:doctor']], function() {
                Route::post('/prescription-id',[PrescriptionController::class,'getPrescriptionID']);
            });
        });

        // Patient Management System
        Route::group(['prefix' => 'my-patient'], function() {
            //Patient Management System APIs
            Route::group(['middleware' => ['role:doctor|patient|dependent|super_admin|clinic_admin']], function() {
                Route::post('/diagnosis/list', [PatientManagementController::class, 'diagnosesList']);
                Route::post('/diagnosis/sub-list', [PatientManagementController::class, 'diagnosisList']);
            });
            Route::group(['middleware' => ['role:doctor|super_admin|clinic_admin']], function() {
                Route::post('/list', [PatientManagementController::class, 'myPatientList']);
                Route::post('/details', [PatientManagementController::class, 'myPatientDetails']);
                Route::post('/new-patient/create', [PatientManagementController::class, 'newPatientCreate']);
                Route::post('/email/check', [PatientManagementController::class, 'patientEmailCheck']);
                Route::post('/mobile/check', [PatientManagementController::class, 'patientMobileCheck']);
            });
            //Health Profile patient
            Route::post('/health-profile/create',[HealthProfileController::class,'healthProfileBulkAdd']);
        });

        //Chat
        Route::group(['prefix' => 'chat'], function() {
            Route::group(['middleware' => ['role:super_admin|admin|doctor|patient|lab_admin']], function() {
                Route::post('/index', [ChatController::class, 'index']);
                Route::post('/send/message', [ChatController::class, 'send']);
               //Admin User chat Api's
                Route::post('/userlist', [AdminChatController::class, 'getAdminChatLists']);
                Route::post('/chatHistory', [AdminChatController::class, 'getChatHistory']);
                Route::post('/sendChat', [AdminChatController::class, 'sendChat']);
                Route::get('/readStatus', [AdminChatController::class, 'chatReadStatus']);
            });
        });
       
        //Doctor After Consultation
        Route::group(['prefix' => 'consultation'], function() {
            Route::group(['middleware' => ['role:doctor']], function() {
                Route::get('/symptoms-templates/index',[HealthRecordController::class,'getSymptomsTemplate']);
                Route::post('/template-symptoms',[HealthRecordController::class,'getSymptomsByTemplate']);
                Route::get('/referal-requestfor',[HealthRecordController::class,'getReferalRequest']);
                Route::get('/referal-examination',[HealthRecordController::class,'getReferalExamination']);
                Route::post('/referal-specific-examination',[HealthRecordController::class,'getReferalSpecificExamination']);
                Route::post('/submit',[HealthRecordController::class,'submitConsultation']);
                Route::post('/draft-list',[HealthRecordController::class,'consultationDraftList']);
            });
            Route::group(['middleware' => ['role:doctor|patient|super_admin|clinic_admin']], function() {
                Route::post('/report',[HealthRecordController::class,'consultationReport']);
                Route::post('/reject-lab-suggestion',[HealthRecordController::class,'rejectSuggestion']);
                
            });
        });

        //Doctor appointment request listing
        Route::group(['prefix' => 'diagnosis'], function() {
            Route::group(['middleware' => ['role:doctor']], function() {
                Route::post('/create', [DiagnosisController::class, 'create']);
            });
            Route::group(['middleware' => ['role:doctor|patient']], function() {
                Route::post('/index', [DiagnosisController::class, 'index']);
            });
        });

        Route::group(['middleware' => ['role:patient']], function() {
            //Doctors List
            Route::post('patient-doctors-list',[DoctorController::class,'patientDoctorList']);
            //Dependant Address get
            Route::post('dependant/get-address', [DependantController::class, 'getDependentAddress']);
            //Pharmacy List
            Route::get('pharmacy/index', [PharmacyController::class, 'pharmacyList']);
            //Masters
            // Route::post('demo/my-doctor', [MasterController::class,'myDoctor']);
            //Stripe APIs
            Route::group(['prefix' => 'stripe/payment'], function() {
                Route::post('/create', [StripeController::class, 'paymentCreate']);
                Route::post('/cancel', [StripeController::class, 'paymentCancel']);
            });
            //Subscription APIs
            Route::group(['prefix' => 'subscription'], function() {
                Route::get('/index', [StripeController::class, 'subscriptionList']);        
                Route::post('/create', [StripeController::class, 'subscriptionCreate']);
                Route::get('/detail', [StripeController::class, 'subscriptionDetails']);
                // Route::post('/cancel', [StripeController::class, 'subscriptionCancel']);
                Route::post('/subscribe', [SubscriptionController::class, 'subscribe']);
                Route::post('/user-subscription', [SubscriptionController::class, 'userSubscriptionDetails']);
                Route::post('/cancel', [SubscriptionController::class, 'subscriptionCancel']);
            
              
            });
            //Dashboard APIs
            Route::group(['prefix' => 'dashboard'], function() {
                Route::get('/blog/index', [DashboardController::class, 'index']);
                Route::get('/patient/upcoming', [DashboardController::class, 'patientDashboardCount']);
                Route::post('/patient/prescriptions', [DashboardController::class, 'patientDashboardPrescriptions']);
                Route::get('/prescribed/doctors', [DashboardController::class, 'patientPrescribedDoctors']);
                Route::get('/patient/doctors', [DashboardController::class, 'patientDashboardDoctors']);
            });
            //Profile Settings APIs
            Route::post('patient/personal-detail/update', [ProfileController::class, 'patientProfileInfoUpdate']);
            Route::post('patient/uploadPatientDocument', [ProfileController::class, 'uploadPatientDocument']);
            Route::post('patient/medicalHistroy', [ProfileController::class, 'medicalHistroy']);
            Route::post('patient/medicalHistroyStatus', [ProfileController::class, 'medicalHistroyStatus']);
            Route::post('patient/uploadPatientMultipleDocuments', [ProfileController::class, 'uploadPatientMultipleDocuments']);
            Route::post('patient/deletePatientDoc', [ProfileController::class, 'deletePatientDocument']);
            
        });

        //hospital images
        Route::group(['prefix' => 'hospitals'], function() {
            Route::group(['middleware' => ['role:clinic_admin|super_admin']], function() {
                Route::post('/upload-images', [ClinicSettingController::class, 'uploadHospitalImages']);
                Route::post('/delete-image', [ClinicSettingController::class, 'deleteHospitalImage']);
                Route::post('/fetch-image', [ClinicSettingController::class, 'fetchHospitalImages']);
                
            });
        });

        Route::group(['middleware' => ['role:patient|doctor']], function() {
            Route::post('patient/multipleDocumentList', [ProfileController::class, 'fetchMultipleDoc']);

            Route::post('familyTree', [FamilyTreeController::class, 'familyTree']);
            Route::post('generateFamilyTree', [FamilyTreeController::class, 'familyTreeWeb']);
            
           
        });

        Route::group(['middleware' => ['role:doctor']], function() {
            Route::post('familyTree/status/update', [FamilyTreeController::class, 'statusUpdate']);
        });

        Route::group(['middleware' => ['role:super_admin|clinic_admin']], function() {
            //Web & admin settings route
            Route::post('admin/settings/update',[AdminSettingController::class,'updateAdminSettings']);
            //Masters
            Route::post('master/allergie/addEdit',[AdminMasterController::class,'addEdit']);
            Route::post('admin/user-approval', [AdminUserController::class,'userApproval']);
            Route::post('admin/pharmacy-approval', [AdminUserController::class,'pharmacyApproval']);
            //Subscription APIs
            Route::group(['prefix' => 'subscription'], function() {
                Route::post('/plan/create', [StripeController::class, 'productCreate']);
                Route::post('/price/create', [StripeController::class, 'planCreate']);
            });
        });


        //Subscription APIs
        Route::get('subscription/plan/index', [SubscriptionController::class, 'index']);
        Route::post('subscription/plan/addEdit', [SubscriptionController::class, 'subscriptionPlanCreate']);
        
        Route::post('subscription/details/addEdit', [SubscriptionController::class, 'subscriptionDetailsAddEdit']);
        Route::post('subscription/plan/fetchById', [SubscriptionController::class, 'fetchSubscriptionPlan']);

        Route::post('subscription/history', [SubscriptionController::class, 'subscriptionHistory']);
        
        //Subscription APIs

        Route::group(['middleware' => ['role:doctor']], function() {
            //Profile Settings APIs
            Route::post('doctor/personal-detail/update', [ProfileController::class, 'doctorProfileInfoUpdate']);
           
           
            //Dashboard APIs
            Route::group(['prefix' => 'dashboard'], function() {
                Route::get('/doctor/patients', [DashboardController::class, 'doctorDashboardPatients']);
                Route::post('/doctor/income', [DashboardController::class, 'doctorIncome']);
            });
        });

        //Profile Settings APIs
        Route::post('profile-picture/update', [ProfileController::class, 'profileImage']);
        Route::post('profile-address/update', [ProfileController::class, 'updateAddress']);
        //Profile Settings APIs

        //Billing APIs
        Route::group(['prefix' => 'billing','middleware' => ['role:doctor|patient']], function() {
            Route::post('/index', [BillingController::class, 'index']);
            Route::post('/pdf/generate', [BillingController::class, 'invoicePdfGenerate']);
            Route::post('/chart', [BillingController::class, 'doctorIncomeDatas']);
            Route::post('/doctor/list', [BillingController::class, 'doctorBillingList']);
            Route::post('/export/excel', [BillingController::class, 'DoctorBillingListExcel']);
            Route::post('/export/pdf', [BillingController::class, 'DoctorBillingListPdf']);
        });


        Route::group(['prefix' => 'user-settings'], function() {
            Route::group(['middleware' => ['role:doctor']], function() {
                Route::post('/consultation/update', [ProfileController::class, 'updateConsultation']);
            });
            Route::post('/preference/update', [ProfileController::class, 'updatePreference']);
            Route::post('/notification/update', [ProfileController::class, 'updateNotification']);
            Route::post('/security/update', [ProfileController::class, 'updateSecurity']);
            Route::post('/passcode/check', [ProfileController::class, 'checkPasscode']);
            Route::get('/detail', [ProfileController::class, 'settingsDetail']);
            Route::post('/mobile/otp-send', [ProfileController::class, 'mobileOtp']);
            Route::post('/mobile/otp-verify', [ProfileController::class, 'mobileOtpVerify']);
            Route::post('/email/otp-send', [ProfileController::class, 'emailOtp']);
            Route::post('/email/otp-verify', [ProfileController::class, 'emailOtpVerify']);
        });

        Route::group(['prefix' => 'help'], function() {
            Route::get('/index', [HelpController::class, 'index']);
            Route::post('/store', [HelpController::class, 'store']);
        });

        Route::group(['prefix' => 'faq'], function() {
            Route::post('/index', [FaqController::class, 'faqList']);
            Route::post('/list', [FaqController::class, 'index']);
            Route::post('/store', [FaqController::class, 'store']);
            Route::post('/update', [FaqController::class, 'update']);
            Route::get('/delete/{id}', [FaqController::class, 'destroy']);
            Route::post('/category/list', [FaqCategoryController::class, 'faqCategoryList']);
        });

        Route::group(['prefix' => 'faq-category'], function() {
            Route::post('/index', [FaqCategoryController::class, 'index']);
            Route::post('/store', [FaqCategoryController::class, 'store']);
            Route::post('/update', [FaqCategoryController::class, 'update']);
            Route::get('/delete/{id}', [FaqCategoryController::class, 'destroy']);
        });

        Route::group(['prefix' => 'page'], function() {
            Route::post('/index', [PageController::class, 'index']);
            Route::post('/store', [PageController::class, 'store']);
            Route::get('/show/{slug}', [PageController::class, 'show']);
            Route::post('/update', [PageController::class, 'update']);
            Route::get('/delete/{id}', [PageController::class, 'destroy']);
        });
        Route::post('user/devicetoken/update',[UserController::class,'userTokenUpdate']);
        Route::get('user/detail',[DashboardController::class,'getUser']);
        Route::post('account/delete',[ProfileController::class,'accountDelete']);
        Route::post('request/report',[ProfileController::class,'requestReport']);
        //Milestone 3 APIs

        
        Route::post('/admin/consultationPriceRequest',[AdminDoctorController::class,'consultationPriceRequest']);
        Route::post('/admin/consultationPriceApproval',[AdminDoctorController::class,'consultationPriceApproval']);

        
        //Rating
        Route::post('rating/create',[RatingController::class,'createRating']);
        Route::post('lat-long', [DoctorController::class,'allListTemp']);

        Route::post('lab-review/create',[RatingController::class,'createLabReview']);

        //Pharmacy APIs
        Route::group(['prefix' => 'pharmacy','middleware' => ['role:pharmacy_admin|pharmacy']], function() {
            Route::post('/dashboard', [DashboardController::class, 'pharmacyDashboard']);
            Route::get('/user-pharmacies', [DashboardController::class, 'userPharmacyList']);
            Route::post('/prescription/index',[PharmacyController::class,'prescriptionRequestList']);
            Route::post('/prescription/all',[PharmacyController::class,'patientPrescriptionRequestList']);
            Route::post('prescription/status-update', [PharmacyController::class, 'prescriptionStatusUpdate']);
            Route::post('/profile-info/update', [ProfileController::class, 'pharmacyProfileInfoUpdate']);
            Route::post('/view', [PharmacyController::class, 'pharmacyDetail']);
            Route::group(['middleware' => ['role:pharmacy_admin']], function() {
                Route::post('/detail/update', [ProfileController::class, 'updatePharmacyProfile']);
                Route::post('/address/update', [ProfileController::class, 'updatePharmacyAddress']);
                Route::post('/user/invitation', [PharmacyController::class, 'pharmacistInvite']);
                Route::post('/user/index', [PharmacyController::class, 'pharmacistList']);
                Route::post('/user/remove', [PharmacyController::class, 'pharmacistRemove']);
            });
        });

        Route::group(['prefix' => 'admin','middleware' => ['role:super_admin|admin|clinic_admin|doctor|patient']], function() {
        //Pharmacy APIs
            Route::group(['prefix' => 'listitem'], function() {
                Route::post('/index',[AdminMasterController::class,'index']);
            });     
        });


        Route::group(['middleware' => ['role:super_admin|admin|patient|doctor']], function() {
            Route::group(['prefix' => 'appointment'], function() {
                Route::get('/lab/lists',[AdminMasterController::class,'labindex']);
            });     
        });


        //Admin APIs
        Route::group(['middleware' => ['role:super_admin|admin|clinic_admin|lab_admin']], function() {
            Route::group(['prefix' => 'admin'], function() {

                //Landing Feature
                Route::post('/landing-feature/update', [UserController::class, 'updateStatusLandingFeature']);

                //admin user detail
                Route::post('/update', [AdminSettingController::class, 'adminDetailUpdate']);
                Route::get('/detail', [AdminSettingController::class, 'adminDetail']);

                Route::get('/modules', [AdminSettingController::class, 'moduleList']);
                Route::group(['prefix' => 'users'], function() {
                    Route::post('/index', [AdminSettingController::class, 'adminUsersList']);
                    Route::post('/add', [AdminSettingController::class, 'addUser']);
                    Route::post('/edit', [AdminSettingController::class, 'editUser']);
                    Route::post('/delete', [AdminSettingController::class, 'deleteUser']);
                    Route::group(['prefix' => 'permission'], function() {
                        Route::post('/assign', [AdminSettingController::class, 'userAssignPermission']);
                        Route::post('/get', [AdminSettingController::class, 'userPermission']);
                    });
                });

                Route::post('/landing/content',[HomePageController::class,'pageContent']);
                Route::post('/landing/module',[HomePageController::class,'pageModule']);

                //weno prescription update
                Route::post('/weno/update',[AdminPrescriptionController::class,'sendPrescriptionWeno']);
                //Web & admin settings route
                Route::post('/settings/update',[AdminSettingController::class,'updateAdminSettings']);
                //admin dashboard count api
                Route::get('/dashboard',[AdminUserController::class,'index']);
                //status update
                Route::post('/user-status/update', [AdminUserController::class,'userStatusUpdate']);
                Route::post('/module/status/update', [AdminMasterController::class,'updateStatus']);
                //status update
                //Approval APIs
                Route::post('/user-approval', [AdminUserController::class,'userApproval']);
                Route::post('/pharmacy-approval', [AdminUserController::class,'pharmacyApproval']);
                Route::post('/dependant-approval', [AdminUserController::class,'dependantApproval']);
                Route::get('/permissions', [AdminUserController::class,'allPermissions']);
                Route::post('/profile-info/update', [ProfileController::class, 'pharmacyProfileInfoUpdate']);
                Route::group(['prefix' => 'user'], function() {
                    Route::post('/create', [AdminUserController::class,'adminUserCreate']);
                    Route::get('/permissions', [AdminUserController::class,'adminUserPermissions']);
                });
                Route::group(['middleware' => ['role:super_admin']], function() {
                    Route::post('doctor/invite', [AdminDoctorController::class,'doctorInvite']);
                    Route::post('doctor/email-invite', [AdminDoctorController::class,'doctorInviteEmail']);
                });
                Route::group(['prefix' => 'appointment'], function() {
                    Route::post('/index', [AdminAppointmentController::class,'index']);
                    Route::post('/export-excel', [AdminAppointmentController::class,'adminAppointmentListExcel']);
                    Route::post('/export-pdf', [AdminAppointmentController::class,'adminAppointmentListPdf']);
                    Route::post('/chart', [AdminAppointmentController::class,'chartDatas']);
                    Route::post('/income-report', [AdminAppointmentController::class,'adminDoctorIncomeDatas']);
                });
                Route::group(['prefix' => 'billing'], function() {
                    Route::post('/index', [AdminAppointmentController::class,'adminDoctorBillingList']);
                    Route::post('/export-excel', [AdminAppointmentController::class,'adminDoctorBillingListExcel']);
                    Route::post('/export-pdf', [AdminAppointmentController::class,'adminDoctorBillingListPdf']);
                });
                Route::group(['prefix' => 'patient'], function() {
                    Route::post('/index', [AdminPatientController::class,'patientList']);
                    Route::post('/book-appointment-index', [AdminPatientController::class,'patientsHospitalBook']);
                    Route::post('/export-excel', [AdminPatientController::class,'adminPatientListExcel']);
                    Route::post('/export-pdf', [AdminPatientController::class,'adminPatientListPdf']);
                    Route::post('/edit', [AdminUserController::class,'patientUpdate']);
                });
                Route::group(['prefix' => 'dependant'], function() {
                    Route::post('/index', [AdminPatientController::class,'dependantList']);
                    Route::post('/verify-list', [AdminUserController::class,'dependantVerifyList']);
                    Route::post('/export-excel', [AdminPatientController::class,'adminDependantListExcel']);
                    Route::post('/export-pdf', [AdminPatientController::class,'adminDependantListPdf']);
                });
                Route::group(['prefix' => 'doctor'], function() {
                    Route::post('/index', [AdminDoctorController::class,'doctorList']);
                    Route::post('/verify-list', [AdminDoctorController::class,'doctorVerifyList']);
                    Route::post('/export-excel', [AdminDoctorController::class,'adminDoctorListExcel']);
                    Route::post('/export-pdf', [AdminDoctorController::class,'adminDoctorListPdf']);
                    Route::post('/edit', [AdminUserController::class,'doctorUpdate']);
                });
                Route::group(['prefix' => 'pharmacy'], function() {
                    Route::post('/verify-list', [AdminPharmacyController::class,'pharmacyVerifyList']);
                    Route::post('/index', [AdminPharmacyController::class,'pharmacyList']);
                    Route::post('/detail', [AdminPharmacyController::class,'pharmacyDetail']);
                    Route::post('/export-excel', [AdminPharmacyController::class,'adminPharmacyListExcel']);
                    Route::post('/export-pdf', [AdminPharmacyController::class,'adminPharmacyListPdf']);
                    // Route::post('/edit', [AdminUserController::class,'pharmacyUpdate']);
                });
                //Ratings API
                Route::group(['prefix' => 'rating'], function() {
                    Route::post('/index', [RatingController::class, 'index']);
                    Route::post('/delete', [RatingController::class, 'deleteRating']);
                    Route::post('/export-excel', [RatingController::class,'adminRatingListExcel']);
                    Route::post('/export-pdf', [RatingController::class,'adminRatingListPdf']);
                    Route::post('/status', [RatingController::class, 'statusRating']);
                });
                //Ratings API
                //Prescription API
                Route::group(['prefix' => 'prescription'], function() {
                    Route::post('/index', [AdminPrescriptionController::class, 'index']);
                    Route::post('/export-excel', [AdminPrescriptionController::class,'adminPrescriptionListExcel']);
                    Route::post('/export-pdf', [AdminPrescriptionController::class,'adminPrescriptionListPdf']);
                });
                //Prescription API
                Route::post('lab/edit', [AdminUserController::class,'labUpdate']);
                //Area Specialisation
                Route::group(['prefix' => 'areaspecialisation'], function() {
                    Route::post('/index',[AdminSpecialisationController::class,'index']);
                    Route::post('/create',[AdminSpecialisationController::class,'create']);
                    Route::post('/save',[AdminSpecialisationController::class,'save']);
                });

                //Health Metrics
                Route::group(['prefix' => 'health-profile-metric'], function() {
                    Route::post('/index',[HealthProfileMetricsController::class,'index']);
                    Route::post('/create',[HealthProfileMetricsController::class,'create']);
                    Route::post('/update',[HealthProfileMetricsController::class,'update']);
                    Route::post('/delete',[HealthProfileMetricsController::class,'destroy']);
                });

                //Coupon
                Route::group(['prefix' => 'coupon'], function() {
                    Route::post('/create',[CouponController::class,'store']);
                    Route::post('/update',[CouponController::class,'update']);
                    Route::post('/delete',[CouponController::class,'destroy']);
                });

                //Nationality
                Route::group(['prefix' => 'nationality'], function() {
                    Route::post('/create',[NationalityController::class,'store']);
                    Route::post('/update',[NationalityController::class,'update']);
                    Route::post('/delete',[NationalityController::class,'destroy']);
                });

                //SiteLanguage
                Route::group(['prefix' => 'site-language'], function() {
                    Route::post('/create',[SiteLanguageController::class,'store']);
                    Route::post('/update',[SiteLanguageController::class,'update']);
                    Route::post('/delete',[SiteLanguageController::class,'destroy']);
                });

                //adminPriceUpdate
                Route::post('lab/price/update',[LabController::class,'adminPriceUpdate']);

                Route::prefix('languages')->group(function() {
                    Route::get('list', [LanguageController::class, 'getLanguages']);
                    Route::get('download', [LanguageController::class, 'download']);
                    Route::post('upload', [LanguageController::class, 'uploadLanguage']);
                });

                //Master APIs
                Route::group(['prefix' => 'listitem'], function() {
                    Route::post('/addEdit',[AdminMasterController::class,'addEdit']);
                    Route::get('/types',[AdminMasterController::class,'listItems']);
                    // Route::post('/index',[AdminMasterController::class,'index']);
                    Route::post('/save',[AdminMasterController::class,'save']);
                    // addEditDoctor
                    Route::post('/doctor',[AdminMasterController::class,'addDoctor']);
                });
                //Master APIs

            });

           
            //Subscription APIs
            Route::group(['prefix' => 'subscription'], function() {
                Route::post('/plan/create', [StripeController::class, 'productCreate']);
                Route::post('/price/create', [StripeController::class, 'planCreate']);
            });

            //Blog APIs
            Route::group(['prefix' => 'category'], function() {
                // Route::post('/index', [BlogController::class, 'categoryList']);
                Route::post('/create', [BlogController::class, 'categoryCreate']);
                Route::post('/update', [BlogController::class, 'categoryUpdate']);
                Route::post('/delete', [BlogController::class, 'categoryDelete']);
            });
            Route::group(['prefix' => 'sub-category'], function() {
                Route::post('/index', [BlogController::class, 'subCategoryList']);
                Route::post('/create', [BlogController::class, 'subCategoryCreate']);
                Route::post('/update', [BlogController::class, 'subCategoryUpdate']);
                Route::post('/delete', [BlogController::class, 'subCategoryDelete']);
            });
            Route::group(['prefix' => 'blog'], function() {
                Route::post('/create', [BlogController::class, 'blogCreate']);
                Route::post('/update', [BlogController::class, 'blogUpdate']);
                Route::post('/delete', [BlogController::class, 'blogDelete']);
            });
            //Blog APIs

            //Master APIs
            Route::post('/platformfee/update',[AdminSettingController::class,'updateFees']);
            Route::post('websettings/update', [WebSiteSettingsController::class,'addSiteDetails']);

            Route::group(['prefix' => 'email'], function() {
                Route::post('/add',[AdminMasterController::class,'addEmailTemplate']);
                Route::post('/edit',[AdminMasterController::class,'editEmailTemplate']);
                Route::post('/delete',[AdminMasterController::class,'deleteEmailTemplate']);
            });

            Route::group(['prefix' => 'state'], function() {
                Route::post('/add',[CountryController::class,'addState']);
                Route::post('/edit',[CountryController::class,'editState']);
                Route::post('/delete',[CountryController::class,'deleteState']);
            });

            Route::group(['prefix' => 'treatment-given'], function() {
                Route::post('/add',[AdminMasterController::class,'addTreatmentGiven']);
                Route::post('/edit',[AdminMasterController::class,'editTreatmentGiven']);
                Route::post('/delete',[AdminMasterController::class,'deleteTreatmentGiven']);
            });

            Route::group(['prefix' => 'symptom-template'], function() {
                Route::post('/add',[AdminMasterController::class,'addTemplate']);
                Route::post('/edit',[AdminMasterController::class,'editTemplate']);
                Route::post('/delete',[AdminMasterController::class,'deleteTemplate']);
            });
            //Master APIs
        });
        //Admin APIs



        Route::group(['middleware' => ['role:patient|doctor|lab_admin']], function() {
            Route::post('/change-password', [ChangePasswordController::class, 'changePassword']);
        });

        Route::group(['middleware' => ['role:patient'], 'prefix' => 'patient'], function () {
            Route::post('/update-report-permission', [AppointmentController::class, 'updatePermissionStatus']);
        });

      
    });
Route::get('admin/settings/',[AdminSettingController::class,'fetchAdminSettings']);

Route::group(['prefix' => 'page'], function() {
    Route::get('/show/{slug}', [PageController::class, 'show']);
});