TreasuryLaunch.php 3.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  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 int|null $unit_id
  9. * @property int|null $financial_plan_account_id
  10. * @property int $user_id
  11. * @property string $transaction_type
  12. * @property int|null $from_account_id
  13. * @property int|null $to_account_id
  14. * @property string $description
  15. * @property numeric $amount
  16. * @property \Illuminate\Support\Carbon $launch_date
  17. * @property bool $is_reconciled
  18. * @property string $origin
  19. * @property string|null $reference_table
  20. * @property int|null $reference_id
  21. * @property \Illuminate\Support\Carbon|null $created_at
  22. * @property \Illuminate\Support\Carbon|null $updated_at
  23. * @property \Illuminate\Support\Carbon|null $deleted_at
  24. * @property-read \App\Models\FinancialPlanAccount|null $financialPlanAccount
  25. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch newModelQuery()
  26. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch newQuery()
  27. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch onlyTrashed()
  28. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch query()
  29. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereAmount($value)
  30. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereCreatedAt($value)
  31. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereDeletedAt($value)
  32. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereDescription($value)
  33. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereFinancialPlanAccountId($value)
  34. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereFromAccountId($value)
  35. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereId($value)
  36. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereIsReconciled($value)
  37. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereLaunchDate($value)
  38. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereOrigin($value)
  39. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereReferenceId($value)
  40. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereReferenceTable($value)
  41. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereToAccountId($value)
  42. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereTransactionType($value)
  43. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereUnitId($value)
  44. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereUpdatedAt($value)
  45. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch whereUserId($value)
  46. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch withTrashed(bool $withTrashed = true)
  47. * @method static \Illuminate\Database\Eloquent\Builder<static>|TreasuryLaunch withoutTrashed()
  48. * @mixin \Eloquent
  49. */
  50. class TreasuryLaunch extends Model
  51. {
  52. use HasFactory, SoftDeletes;
  53. protected $table = 'treasury_launches';
  54. protected $guarded = [
  55. 'id', // Add more fields that shouldn't be edited here
  56. ];
  57. protected $casts = [
  58. 'created_at' => 'datetime',
  59. 'updated_at' => 'datetime',
  60. 'deleted_at' => 'datetime',
  61. 'launch_date' => 'date:Y-m-d',
  62. 'amount' => 'decimal:2',
  63. 'is_reconciled' => 'boolean',
  64. ];
  65. // Relationships
  66. public function financialPlanAccount(): \Illuminate\Database\Eloquent\Relations\BelongsTo
  67. {
  68. return $this->belongsTo(FinancialPlanAccount::class, 'financial_plan_account_id');
  69. }
  70. // Business Logic Methods
  71. // Custom Finders
  72. // Query Scopes
  73. }