AgentEquityOrder.php 915 B

12345678910111213141516171819202122232425262728293031
  1. <?php
  2. namespace App\Models\Agent;
  3. use App\Models\BaseModel;
  4. class AgentEquityOrder extends BaseModel
  5. {
  6. public const STATUS_PENDING = 'pending_payment';
  7. public const STATUS_COMPLETED = 'completed';
  8. public const STATUS_CANCELLED = 'cancelled';
  9. protected $table = 'agent_equity_orders';
  10. protected $guarded = ['id'];
  11. protected $hidden = [];
  12. protected $appends = ['status_text'];
  13. protected $casts = [
  14. 'agent_id' => 'integer', 'percent' => 'decimal:4', 'price_per_percent' => 'decimal:4',
  15. 'amount' => 'decimal:4', 'completed_at' => 'datetime',
  16. ];
  17. public function agent()
  18. {
  19. return $this->belongsTo(Agent::class);
  20. }
  21. public function getStatusTextAttribute(): string
  22. {
  23. return [self::STATUS_PENDING => '待付款', self::STATUS_COMPLETED => '已开通', self::STATUS_CANCELLED => '已取消'][(string) $this->status] ?? '';
  24. }
  25. }