Viewing file: helper.php (11.41 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php use Spatie\Permission\Models\Role; use App\Models\User; use App\Models\Plan; function deg2rads($e) { return $e * pi() / 180; } function distance($lat1, $lon1, $lat2, $lon2, $unit = 'km') { $theta = $lon1 - $lon2; $dist = sin(deg2rads($lat1)) * sin(deg2rads($lat2)) + cos(deg2rads($lat1)) * cos(deg2rads($lat2)) * cos(deg2rads($theta)); $dist = acos($dist); $dist = rad2deg($dist); $miles = $dist * 60 * 1.1515; $unit = strtolower($unit); if ($unit == "km") { return ($miles * 1.609344); } else if ($unit == "mi") { return $miles; } else { return $dist; } }
function user_current_plan(){ $userPlan = \App\Models\Plan::getPlan(\Auth::user()->show_dashboard());
if($userPlan && $userPlan->taxi_system && $userPlan->taxi_system=='1'){ return true; } return false; }
function check_product_system(){ $userPlan = \App\Models\Plan::getPlan(\Auth::user()->show_dashboard());
if($userPlan && $userPlan->product_system && $userPlan->product_system=='1'){ return true; } return false; }
function check_blood_collector(){ $userPlan = \App\Models\Plan::getPlan(\Auth::user()->show_dashboard());
if($userPlan && $userPlan->blood_collector && $userPlan->blood_collector=='1'){ return true; } return false; }
function seedComanyUserPermission($id){
createDriver($id); createAccount($id); createEmployee($id); createCustomer($id); createBloodCollector($id);
}
function createDriver($id){ //Driver $driverRole = Role::create( [ 'name' => 'driver_'.$id, 'created_by' => $id, ] ); $driverPermission = [ ['name' => 'show taxi order'], ['name' => 'manage taxi order status'], ]; $driverRole->givePermissionTo($driverPermission); }
function createAccount($id){ $accountantRole = Role::create( [ 'name' => 'accountant_'.$id, 'created_by' => $id, ] ); $accountantPermission = [ ['name' => 'show account dashboard'], ['name' => 'manage expense'], ['name' => 'create expense'], ['name' => 'edit expense'], ['name' => 'delete expense'], ['name' => 'manage invoice'], ['name' => 'create invoice'], ['name' => 'edit invoice'], ['name' => 'delete invoice'], ['name' => 'show invoice'], ['name' => 'convert invoice'], ['name' => 'manage product & service'], ['name' => 'create product & service'], ['name' => 'delete product & service'], ['name' => 'edit product & service'], ['name' => 'manage constant tax'], ['name' => 'create constant tax'], ['name' => 'edit constant tax'], ['name' => 'delete constant tax'], ['name' => 'manage constant category'], ['name' => 'create constant category'], ['name' => 'edit constant category'], ['name' => 'delete constant category'], ['name' => 'manage constant unit'], ['name' => 'create constant unit'], ['name' => 'edit constant unit'], ['name' => 'delete constant unit'], ['name' => 'manage customer'], ['name' => 'create customer'], ['name' => 'edit customer'], ['name' => 'delete customer'], ['name' => 'show customer'], ['name' => 'manage vender'], ['name' => 'create vender'], ['name' => 'edit vender'], ['name' => 'delete vender'], ['name' => 'show vender'], ['name' => 'manage bank account'], ['name' => 'create bank account'], ['name' => 'edit bank account'], ['name' => 'delete bank account'], ['name' => 'manage bank transfer'], ['name' => 'create bank transfer'], ['name' => 'edit bank transfer'], ['name' => 'delete bank transfer'], ['name' => 'manage revenue'], ['name' => 'create revenue'], ['name' => 'edit revenue'], ['name' => 'delete revenue'], ['name' => 'manage bill'], ['name' => 'create bill'], ['name' => 'edit bill'], ['name' => 'delete bill'], ['name' => 'show bill'], ['name' => 'manage payment'], ['name' => 'create payment'], ['name' => 'edit payment'], ['name' => 'delete payment'], ['name' => 'delete invoice product'], ['name' => 'delete bill product'], ['name' => 'send invoice'], ['name' => 'create payment invoice'], ['name' => 'delete payment invoice'], ['name' => 'send bill'], ['name' => 'create payment bill'], ['name' => 'delete payment bill'], ['name' => 'income report'], ['name' => 'expense report'], ['name' => 'income vs expense report'], ['name' => 'invoice report'], ['name' => 'bill report'], ['name' => 'stock report'], ['name' => 'tax report'], ['name' => 'loss & profit report'], ['name' => 'manage transaction'], ['name' => 'manage credit note'], ['name' => 'create credit note'], ['name' => 'edit credit note'], ['name' => 'delete credit note'], ['name' => 'manage debit note'], ['name' => 'create debit note'], ['name' => 'edit debit note'], ['name' => 'delete debit note'], ['name' => 'manage proposal'], ['name' => 'create proposal'], ['name' => 'edit proposal'], ['name' => 'delete proposal'], ['name' => 'duplicate proposal'], ['name' => 'send proposal'], ['name' => 'show proposal'], ['name' => 'delete proposal product'], ['name' => 'manage goal'], ['name' => 'create goal'], ['name' => 'edit goal'], ['name' => 'delete goal'], ['name' => 'manage assets'], ['name' => 'create assets'], ['name' => 'edit assets'], ['name' => 'delete assets'], ['name' => 'statement report'], ['name' => 'manage constant custom field'], ['name' => 'create constant custom field'], ['name' => 'edit constant custom field'], ['name' => 'delete constant custom field'], ['name' => 'manage chart of account'], ['name' => 'create chart of account'], ['name' => 'edit chart of account'], ['name' => 'delete chart of account'], ['name' => 'manage journal entry'], ['name' => 'create journal entry'], ['name' => 'edit journal entry'], ['name' => 'delete journal entry'], ['name' => 'show journal entry'], ['name' => 'balance sheet report'], ['name' => 'ledger report'], ['name' => 'trial balance report'], ['name' => 'manage print settings'], ['name' => 'manage budget plan'], ['name' => 'create budget plan'], ['name' => 'edit budget plan'], ['name' => 'delete budget plan'], ['name' => 'view budget plan'], ['name' => 'create barcode'], ['name' => 'create webhook'], ['name' => 'edit webhook'], ['name' => 'delete webhook'], ];
$accountantRole->givePermissionTo($accountantPermission); }
function createEmployee($id){
$employeeRole = Role::create( [ 'name' => 'Employee_'.$id, 'created_by' => $id, ] );
$employeePermission = [ ['name' => 'show hrm dashboard'], ['name' => 'manage user'], ['name' => 'manage employee'], ['name' => 'view employee'], ['name' => 'manage employee profile'], ['name' => 'show employee profile'], ['name' => 'manage pay slip'], ['name' => 'manage company policy'], ['name' => 'manage event'], ['name' => 'manage meeting'], ['name' => 'manage award'], ['name' => 'manage promotion'], ['name' => 'manage complaint'], ['name' => 'manage warning'], ['name' => 'manage termination'], ['name' => 'manage job'], ['name' => 'show job'], ['name' => 'manage holiday'], ['name' => 'manage announcement'], ['name' => 'manage leave'], ];
$employeeRole->givePermissionTo($employeePermission); }
function createCustomer($id){ // customer $customerRole = Role::create( [ 'name' => 'customer_'.$id, 'created_by' => $id, ] ); // dd($customerRole);
$customerPermission = [ ['name' => 'manage customer payment'], ['name' => 'manage customer transaction'], ['name' => 'manage customer invoice'], ['name' => 'show invoice'], ['name' => 'show proposal'], ['name' => 'manage customer proposal'], ['name' => 'show customer'], ['name' => 'manage taxi order request'], ['name' => 'show taxi order request'], ]; $customerRole->givePermissionTo($customerPermission); } function createBloodCollector($id){ // customer $bloodCollectorRole = Role::create( [ 'name' => 'blood_collector_'.$id, 'created_by' => $id, ] ); // dd($customerRole);
$bloodCollectorPermission = [ ['name' => 'show blood order'], ['name' => 'manage blood collector dashboard'], ['name' => 'show blood order request'], ]; $bloodCollectorRole->givePermissionTo($bloodCollectorPermission); }
function removeNumberFromString($string) { // Define a regular expression pattern to match the last underscore and number $pattern = '/_\d+$/'; // Use preg_replace() to substitute matches with an empty string $result = preg_replace($pattern, '', $string); return $result; }
function company_domain(){ $auth = \Auth::user(); if($auth->type=='driver' || $auth->type=='customer'){ $company = User::where('id',$auth->created_by)->first(); $domain = $company->domain()->first(); if(!$domain){ return false; }else{ return true; } } return false; }
|