Passed
Pull Request — master (#11)
by Fatih
04:48
created

HasInvoice::invoiceLines()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace NeptuneSoftware\Invoice\Traits;
4
5
use NeptuneSoftware\Invoice\Models\Bill;
6
use NeptuneSoftware\Invoice\Models\Invoice;
7
use NeptuneSoftware\Invoice\Models\InvoiceLine;
8
9
trait HasInvoice
10
{
11
    /**
12
     * Set the polymorphic relation.
13
     *
14
     * @return mixed
15
     */
16
    public function invoices()
17
    {
18
        return $this->morphMany(Invoice::class, 'related');
0 ignored issues
show
Bug introduced by
It seems like morphMany() must be provided by classes using this trait. How about adding it as abstract method to this trait? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

18
        return $this->/** @scrutinizer ignore-call */ morphMany(Invoice::class, 'related');
Loading history...
19
    }
20
21
    /**
22
     * @return mixed
23
     */
24
    public function bills()
25
    {
26
        return $this->morphMany(Bill::class, 'related');
27
    }
28
29
    /**
30
     * Set the polymorphic relation.
31
     *
32
     * @return mixed
33
     */
34
    public function invoiceLines()
35
    {
36
        return $this->morphMany(InvoiceLine::class, 'invoiceable');
37
    }
38
}
39