PaymentTransfer.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <?php
  2. namespace App\Models;
  3. use Illuminate\Database\Eloquent\Factories\HasFactory;
  4. use Illuminate\Database\Eloquent\Model;
  5. use Illuminate\Database\Eloquent\SoftDeletes;
  6. /**
  7. * @property int $id
  8. * @property string $name
  9. * @property \Carbon\Carbon $created_at
  10. * @property \Carbon\Carbon $updated_at
  11. */
  12. class PaymentTransfer extends Model
  13. {
  14. use HasFactory, SoftDeletes;
  15. protected $table = 'payment_transfers';
  16. protected $fillable = [
  17. 'payment_id',
  18. 'provider_id',
  19. 'gateway_provider',
  20. 'gateway_entity_reference',
  21. 'gateway_entity_label',
  22. 'gateway_operation_reference',
  23. 'gateway_operation_label',
  24. 'gateway_parent_reference',
  25. 'gateway_parent_label',
  26. 'gateway_transfer_target_reference',
  27. 'gateway_transfer_target_label',
  28. 'status',
  29. 'gross_amount',
  30. 'gateway_fee_amount',
  31. 'net_amount',
  32. 'transferred_at',
  33. 'failed_at',
  34. 'failure_code',
  35. 'failure_message',
  36. 'gateway_payload',
  37. 'metadata',
  38. ];
  39. protected $casts = [
  40. 'gross_amount' => 'decimal:2',
  41. 'gateway_fee_amount' => 'decimal:2',
  42. 'net_amount' => 'decimal:2',
  43. 'transferred_at' => 'datetime',
  44. 'failed_at' => 'datetime',
  45. 'gateway_payload' => 'array',
  46. 'metadata' => 'array',
  47. 'created_at' => 'datetime',
  48. 'updated_at' => 'datetime',
  49. 'deleted_at' => 'datetime',
  50. ];
  51. public function payment()
  52. {
  53. return $this->belongsTo(Payment::class);
  54. }
  55. public function provider()
  56. {
  57. return $this->belongsTo(Provider::class);
  58. }
  59. }