value, 'Cashier', 'Data Entrants', Roles::DOCTOR->value, 'Finance Manager', 'Hospital Administrator', 'Human Resource Manager', 'IT Coordinator', 'Lab Assistant', 'Lab Clerk', 'Lab Technician', 'Medical Director', 'Midwives', 'Non-clinical users', 'Nursing', 'Nursing - Senior Ward Staff', 'Records Assistant', 'Insurance Manager', 'Patient Receiption Clerks', 'Pharmacy Nurses - Junior', 'Pharmacy Technicians - Senior', 'Enrolled Nurse', 'Specialist Nurses', 'Stores', 'Triage Nurses', Roles::SUPER_ADMIN->value ]; foreach ($roles as $role) { Role::FirstOrCreate(['name' => $role]); } /* * Assign ADMIN role all permissions */ $adminRole = Role::firstOrCreate(['name' => Roles::ADMIN->value]); $adminRole->givePermissionTo(Permission::all()); $superAdminRole = Role::firstOrCreate(['name' => Roles::SUPER_ADMIN->value]); $superAdminRole->givePermissionTo(Permission::all()); $dataEntrant = Role::firstOrCreate(['name' => 'Data Entrants']); $dataEntrant->givePermissionTo(Permission::where(['permission_category_id' => 1])->where(['permission_category_id' => 4])->get()); $dataEntrant->givePermissionTo(Permission::where(['permission_category_id' => 4])->get()); $doctors = Role::firstOrCreate(['name' => Roles::DOCTOR->value]); $doctors->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $doctors->givePermissionTo(Permission::where(['permission_category_id' => 4])->get()); $doctors->givePermissionTo(Permission::where(['permission_category_id' => 2])->get()); $insurance_manager = Role::firstOrCreate(['name' => 'Insurance Manager']); $insurance_manager->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $insurance_manager->givePermissionTo(Permission::where(['permission_category_id' => 2])->get()); $insurance_manager->givePermissionTo(Permission::where(['permission_category_id' => 3])->get()); $pharmacy_technicians_senior = Role::firstOrCreate(['name' => 'Pharmacy Technicians - Senior']); $pharmacy_technicians_senior->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $pharmacy_technicians_senior->givePermissionTo(Permission::where(['permission_category_id' => 2])->get()); $pharmacy_technicians_senior->givePermissionTo(Permission::where(['permission_category_id' => 3])->get()); $hospital_administrator = Role::firstOrCreate(['name' => 'Hospital Administrator']); $hospital_administrator->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $hospital_administrator->givePermissionTo(Permission::where(['permission_category_id' => 2])->get()); $hospital_administrator->givePermissionTo(Permission::where(['permission_category_id' => 3])->get()); $finance_manager = Role::firstOrCreate(['name' => 'Finance Manager']); $finance_manager->givePermissionTo(Permission::where(['permission_category_id' => 2])->get()); $finance_manager->givePermissionTo(Permission::where(['permission_category_id' => 3])->get()); $finance_manager->givePermissionTo(Permission::where(['permission_category_id' => 7])->get()); $finance_manager->givePermissionTo(Permission::where(['permission_category_id' => 8])->get()); $human_resource_manager = Role::firstOrCreate(['name' => 'Human Resource Manager']); $human_resource_manager->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $human_resource_manager->givePermissionTo(Permission::where(['permission_category_id' => 9])->get()); $triage_nurses = Role::firstOrCreate(['name' => 'Triage Nurses']); $triage_nurses->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $triage_nurses->givePermissionTo(Permission::where(['permission_category_id' => 4])->get()); $specialist_nurses = Role::firstOrCreate(['name' => 'Specialist Nurses']); $specialist_nurses->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $specialist_nurses->givePermissionTo(Permission::where(['permission_category_id' => 4])->get()); $IT_cordinator = Role::firstOrCreate(['name' => 'IT Coordinator']); $IT_cordinator->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $IT_cordinator->givePermissionTo(Permission::where(['permission_category_id' => 11])->get()); $IT_cordinator->givePermissionTo(Permission::where(['permission_category_id' => 9])->get()); $IT_cordinator->givePermissionTo(Permission::where(['permission_category_id' => 5])->get()); $nursing = Role::firstOrCreate(['name' => 'Nursing']); $nursing->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $nursing->givePermissionTo(Permission::where(['permission_category_id' => 2])->get()); $nursing->givePermissionTo(Permission::where(['permission_category_id' => 4])->get()); $reception_clerks = Role::firstOrCreate(['name' => 'Patient Receiption Clerks']); $reception_clerks->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $reception_clerks->givePermissionTo(Permission::where(['permission_category_id' => 2])->get()); $reception_clerks->givePermissionTo(Permission::where(['permission_category_id' => 4])->get()); $lab_technicians = Role::firstOrCreate(['name' => 'Lab Technician']); $lab_technicians->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $lab_technicians->givePermissionTo(Permission::where(['permission_category_id' => 4])->get()); $lab_technicians->givePermissionTo(Permission::where(['permission_category_id' => 10])->get()); $lab_assistants = Role::firstOrCreate(['name' => 'Lab Assistant']); $lab_assistants->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $lab_assistants->givePermissionTo(Permission::where(['permission_category_id' => 4])->get()); $lab_assistants->givePermissionTo(Permission::where(['permission_category_id' => 10])->get()); $lab_clerk = Role::firstOrCreate(['name' => 'Lab Clerk']); $lab_clerk->givePermissionTo(Permission::where(['permission_category_id' => 1])->get()); $lab_clerk->givePermissionTo(Permission::where(['permission_category_id' => 4])->get()); $lab_clerk->givePermissionTo(Permission::where(['permission_category_id' => 10])->get()); $lab_clerk = Role::firstOrCreate(['name' => 'Midwives']); $lab_clerk->givePermissionTo(Permission::where(['permission_category_id' => 4])->get()); $lab_clerk->givePermissionTo(Permission::where(['permission_category_id' => 10])->get()); } }