Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
14.29% |
1 / 7 |
|
14.29% |
1 / 7 |
CRAP | |
0.00% |
0 / 1 |
Company | |
14.29% |
1 / 7 |
|
14.29% |
1 / 7 |
37.86 | |
0.00% |
0 / 1 |
users | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
2 | |||
invitedUsers | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
2 | |||
pocs | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
2 | |||
active_license | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
2 | |||
licenses | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
2 | |||
groupsAndSubgroups | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
2 | |||
newFactory | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 |
1 | <?php |
2 | |
3 | namespace App\Http\Models\Admin; |
4 | |
5 | use App\Http\Models\Auth\User; |
6 | use App\Http\Models\Moloquent; |
7 | use App\Observers\CompanyObserver; |
8 | use database\factories\http\models\CompanyFactory; |
9 | use Illuminate\Database\Eloquent\Attributes\ObservedBy; |
10 | use MongoDB\Laravel\Eloquent\SoftDeletes; |
11 | use Illuminate\Database\Eloquent\Factories\HasFactory; |
12 | use Illuminate\Notifications\Notifiable; |
13 | |
14 | #[ObservedBy([CompanyObserver::class])] |
15 | class Company extends Moloquent |
16 | { |
17 | use HasFactory, SoftDeletes, Notifiable; |
18 | |
19 | protected $fillable = [ |
20 | "name", |
21 | "address_line_1", |
22 | "address_line_2", |
23 | "city", |
24 | "state", |
25 | "zip", |
26 | "country", |
27 | "slug", |
28 | "instancy_id", |
29 | "deactivated_at", |
30 | ]; |
31 | |
32 | protected $casts = [ |
33 | 'deactivated_at' => 'datetime', |
34 | ]; |
35 | |
36 | public function users() |
37 | { |
38 | return $this->hasMany(User::class); |
39 | } |
40 | |
41 | public function invitedUsers() |
42 | { |
43 | return $this->hasMany(AdminUserInvitation::class, 'company_id'); |
44 | } |
45 | |
46 | /** |
47 | * Company point of contact persons |
48 | * |
49 | * @return \Illuminate\Database\Eloquent\Relations\HasMany |
50 | */ |
51 | public function pocs() |
52 | { |
53 | return $this->hasMany(CompanyPOC::class); |
54 | } |
55 | |
56 | public function active_license() |
57 | { |
58 | return $this->licenses()->whereBetween('status', 'active')->first(); |
59 | } |
60 | |
61 | public function licenses() |
62 | { |
63 | return $this->hasMany(CompanyLicenses::class); |
64 | } |
65 | |
66 | public function groupsAndSubgroups() |
67 | { |
68 | return $this->hasMany(CompanyGroup::class); |
69 | } |
70 | |
71 | protected static function newFactory() |
72 | { |
73 | return CompanyFactory::new(); |
74 | } |
75 | } |