Code Coverage  | 
      ||||||||||
Lines  | 
       Functions and Methods  | 
       Classes and Traits  | 
      ||||||||
| Total |         | 
       100.00%  | 
       47 / 47  | 
               | 
       100.00%  | 
       5 / 5  | 
       CRAP |         | 
       100.00%  | 
       1 / 1  | 
      
| Conversion |         | 
       100.00%  | 
       47 / 47  | 
               | 
       100.00%  | 
       5 / 5  | 
       6 |         | 
       100.00%  | 
       1 / 1  | 
      
| status |         | 
       100.00%  | 
       1 / 1  | 
               | 
       100.00%  | 
       1 / 1  | 
       1 | |||
| statusUser |         | 
       100.00%  | 
       1 / 1  | 
               | 
       100.00%  | 
       1 / 1  | 
       1 | |||
| currency |         | 
       100.00%  | 
       1 / 1  | 
               | 
       100.00%  | 
       1 / 1  | 
       1 | |||
| notes |         | 
       100.00%  | 
       1 / 1  | 
               | 
       100.00%  | 
       1 / 1  | 
       1 | |||
| jsonSerialize |         | 
       100.00%  | 
       43 / 43  | 
               | 
       100.00%  | 
       1 / 1  | 
       2 | |||
| 1 | <?php | 
| 2 | |
| 3 | namespace App\Models; | 
| 4 | |
| 5 | use Illuminate\Database\Eloquent\Factories\HasFactory; | 
| 6 | use Illuminate\Database\Eloquent\Model; | 
| 7 | use Illuminate\Database\Eloquent\Relations\HasOne; | 
| 8 | use Illuminate\Database\Eloquent\Relations\HasMany; | 
| 9 | use Illuminate\Database\Eloquent\Relations\BelongsTo; | 
| 10 | use Illuminate\Database\Eloquent\Relations\BelongsToMany; | 
| 11 | |
| 12 | class Conversion extends Model | 
| 13 | { | 
| 14 | use HasFactory; | 
| 15 | |
| 16 | protected $table = "conversions"; | 
| 17 | |
| 18 | /** | 
| 19 | * Status name relationship | 
| 20 | */ | 
| 21 | public function status():HasOne | 
| 22 | { | 
| 23 | return $this->hasOne('App\Models\ConversionStatus', 'id', 'status_id'); | 
| 24 | } | 
| 25 | |
| 26 | /** | 
| 27 | * Status name relationship | 
| 28 | */ | 
| 29 | public function statusUser():HasOne | 
| 30 | { | 
| 31 | return $this->hasOne('App\Models\User', 'id', 'status_user_id'); | 
| 32 | } | 
| 33 | |
| 34 | /** | 
| 35 | * Currency relationship | 
| 36 | */ | 
| 37 | public function currency():HasOne | 
| 38 | { | 
| 39 | return $this->hasOne('App\Models\ConversionCurrency', 'id', 'conversion_currency'); | 
| 40 | } | 
| 41 | |
| 42 | /** | 
| 43 | * ConversionNotes relationship | 
| 44 | * | 
| 45 | * @return HasMany | 
| 46 | */ | 
| 47 | protected function notes():HasMany | 
| 48 | { | 
| 49 | return $this->hasMany('App\Models\ConversionNote', 'conversion_id', 'id')->orderBy('id', 'desc'); | 
| 50 | } | 
| 51 | |
| 52 | |
| 53 | /** | 
| 54 | * Serialization | 
| 55 | */ | 
| 56 | public function jsonSerialize() | 
| 57 | { | 
| 58 | $statusUser = null; | 
| 59 | if ($this->status->id) { | 
| 60 | $statusUser = $this->statusUser; | 
| 61 | } | 
| 62 | |
| 63 | return [ | 
| 64 | 'id' => $this->id, | 
| 65 | 'gclid' => $this->gclid, | 
| 66 | 'fbclid' => $this->fbclid, | 
| 67 | 'event_category' => $this->event_category, | 
| 68 | 'event_action' => $this->event_action, | 
| 69 | 'event_label' => $this->event_label, | 
| 70 | 'website_url' => $this->website_url, | 
| 71 | 'utm_campaign_id' => $this->utm_campaign_id, | 
| 72 | 'utm_campaign_source' => $this->utm_campaign_source, | 
| 73 | 'utm_campaign_medium' => $this->utm_campaign_medium, | 
| 74 | 'utm_campaign_name' => $this->utm_campaign_name, | 
| 75 | 'utm_campaign_term' => $this->utm_campaign_term, | 
| 76 | 'utm_campaign_content' => $this->utm_campaign_content, | 
| 77 | 'conversion_name' => $this->conversion_name, | 
| 78 | 'conversion_time' => $this->conversion_time, | 
| 79 | 'conversion_value' => $this->conversion_value, | 
| 80 | 'conversion_currency' => $this->currency->name, | 
| 81 | //'conversion_state' => $this->conversion_state, | 
| 82 | 'nw' => $this->nw, | 
| 83 | 'cmpid' => $this->cmpid, | 
| 84 | 'agid' => $this->agid, | 
| 85 | 'fiid' => $this->fiid, | 
| 86 | 'tgid' => $this->tgid, | 
| 87 | 'loc' => $this->loc, | 
| 88 | 'ploc' => $this->ploc, | 
| 89 | 'match' => $this->match, | 
| 90 | 'dev' => $this->dev, | 
| 91 | 'devm' => $this->devm, | 
| 92 | 'cmpt' => $this->cmpt, | 
| 93 | 'ad' => $this->ad, | 
| 94 | 'pl' => $this->pl, | 
| 95 | 'pltar' => $this->pltar, | 
| 96 | 'pr1' => $this->pr1, | 
| 97 | 'pr2' => $this->pr2, | 
| 98 | 'url' => $this->url, | 
| 99 | 'adpos' => $this->adpos, | 
| 100 | 'mobile' => (bool)$this->mobile, | 
| 101 | 'created_at' => $this->created_at, | 
| 102 | 'updated_at' => $this->updated_at, | 
| 103 | 'status' => $this->status->name, | 
| 104 | 'status_user' => $statusUser, | 
| 105 | 'notes' => $this->notes, | 
| 106 | ]; | 
| 107 | } // jsonSerialize | 
| 108 | } |