1 | <?php |
||||
2 | |||||
3 | namespace Sinarajabpour1998\Gateway\Traits; |
||||
4 | |||||
5 | use Sinarajabpour1998\Gateway\Models\Transaction; |
||||
6 | |||||
7 | trait HasTransaction |
||||
8 | { |
||||
9 | public function transactions() |
||||
10 | { |
||||
11 | return $this->hasMany(Transaction::class, 'order_id'); |
||||
0 ignored issues
–
show
Bug
introduced
by
![]() |
|||||
12 | } |
||||
13 | |||||
14 | public function transaction() |
||||
15 | { |
||||
16 | return $this->hasOne(Transaction::class, 'order_id')->latest(); |
||||
0 ignored issues
–
show
It seems like
hasOne() 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
![]() |
|||||
17 | } |
||||
18 | |||||
19 | public function pendingTransactions() |
||||
20 | { |
||||
21 | return $this->hasMany(Transaction::class, 'order_id')->where('status', 'pending'); |
||||
22 | } |
||||
23 | |||||
24 | public function successfulTransactions() |
||||
25 | { |
||||
26 | return $this->hasMany(Transaction::class, 'order_id')->where('status', 'successful'); |
||||
27 | } |
||||
28 | |||||
29 | public function failedTransactions() |
||||
30 | { |
||||
31 | return $this->hasMany(Transaction::class, 'order_id')->where('status', 'failed'); |
||||
32 | } |
||||
33 | |||||
34 | public function refundedTransactions() |
||||
35 | { |
||||
36 | return $this->hasMany(Transaction::class, 'order_id')->where('status', 'refunded'); |
||||
37 | } |
||||
38 | } |
||||
39 |