/
home
/
corsairdevelopme
/
public_html
/
amplivo-console
/
app
/
Models
/
Upload File
HOME
<?php namespace App\Models; use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class WalletCompplan extends Model { /** * Cash Wallet. */ const TYPE_CASH = 1; /** * 2021 előtt használt Mandatory Wallet, új neve: Mandatory (Legacy). */ const TYPE_MANDATORY = 2; const TYPE_BTC = 3; const TYPE_ETH = 4; const TYPE_BCH = 5; const TYPE_XRP = 6; const TYPE_ORT = 7; const TYPE_FLP = 8; const TYPE_LTCT = 9; /** * CCW Cash Wallet. */ const TYPE_CCW_CASH = 10; /** * CCW FLP Wallet. */ const TYPE_CCW_FLP = 11; const TYPE_ISF = 12; /** * Vitruális wallet az ISF + Mandatory vásárlásokhoz. */ const TYPE_ISF_MANDATORY = 13; /** * CCW ISF Wallet. */ const TYPE_CCW_ISF = 14; const TYPE_ECOVO_ONLINE_CASH = 15; const TYPE_ECOVO_FLP = 16; const TYPE_ECOVO_ISF = 17; /** * 2021-ben bevezetett Mandatory Wallet. */ const TYPE_COMPULSORY = 18; const TYPE_CSR = 19; const TYPE_ECOVO_CSR = 20; const DECIMALS = 2; const CREDIT_LINE = 0; const MAX_NEGATIVE_BALANCE = -10000; use HasFactory; protected $table = 'wallet_compplan'; protected $fillable = [ 'user_id', 'type', 'balance', ]; protected $walletName = [ 1 => "Amplivo Online Cash", 2 => "Mandatory (Legacy)", 3 => "Bitcoin", 4 => "Ethereum wallet", 5 => "BCH wallet", 6 => "XRP wallet", 7 => "ORT wallet", 8 => "FLP wallet", 9 => "LTCT wallet", 10 => "CCW Online Cash Wallet", 11 => "CCW FLP Wallet", 12 => "Amplivo ISF Wallet", 13 => "ISF + Mandatory Wallet", 14 => "CCW ISF Wallet", 15 => "Ecovo Online Cash Wallet", 16 => "Ecovo FLP Wallet", 17 => "Ecovo ISF Wallet", 18 => "Amplivo Mandatory Wallet", 19 => "Amplivo CSR Wallet", 20 => "Ecovo CSR Wallet", ]; protected $appends = ['wallet_name']; public function user() { return $this->hasOne(Member::class, 'id', 'user_id'); } public function refreshBalance() { $vs = WalletLog::where('wallet_id', $this->id)->whereIn('status', [WalletLog::STATUS_DONE, WalletLog::STATUS_LOCKED])->get()->sum('value'); $this->attributes['balance'] = $vs; $this->save(); return true; } public function WalletName(): Attribute { return Attribute::make( function ($value) { return $this->walletName[$value] ?? "N-D"; } ); } }