AgentManualCreditLock.php 675 B

123456789101112131415161718192021
  1. <?php
  2. namespace App\Models\Agent;
  3. use App\Models\BaseModel;
  4. use Illuminate\Database\Eloquent\Builder;
  5. class AgentManualCreditLock extends BaseModel
  6. {
  7. public const REFERENCE_TYPE = 'agent_manual_credit_lock';
  8. public const LOCK_DAYS = 7;
  9. protected $table = 'agent_manual_credit_locks';
  10. protected $fillable = ['agent_id', 'amount', 'remaining', 'unlock_at', 'released_at'];
  11. protected $casts = ['amount' => 'decimal:4', 'remaining' => 'decimal:4', 'unlock_at' => 'datetime', 'released_at' => 'datetime'];
  12. public function scopePending(Builder $query): Builder
  13. {
  14. return $query->whereNull('released_at')->where('remaining', '>', 0);
  15. }
  16. }