---
title: "Príkazy, eventy a plánovanie — Money for Laravel | Roundly"
description: "Artisan príkazy pre meny a kurzy, plánovaná aktualizácia z ECB, aktualizácia cez frontu, aktualizácia a čistenie z kódu a eventy aktualizácie."
url: https://roundly-consulting.com/sk/open-source/navody/money-for-laravel/prikazy
language: sk
---

[Všetky balíky](https://roundly-consulting.com/sk/open-source.md)

[Money for Laravel](https://roundly-consulting.com/sk/open-source/navody/money-for-laravel.md)

# Príkazy, eventy a plánovanie

| Príkaz | Účel |
| --- | --- |
| `money:currencies {--iso} {--custom} {--code=*}` | Vypíše register: kód, číselný kód, exponent, symbol, názov a pôvod. |
| `money:rates:refresh {source=ecb} {--feed=daily} {--from=} {--to=} {--queue}` | Stiahne kurzy do tabuľky. --feed je daily, recent alebo history; --queue odošle unikátny job; podporuje --isolated. |
| `money:rates:prune {--before=} {--keep-days=} {--include-manual} {--pretend}` | Zmaže staré kurzy. Jedna hranica je povinná; manuálne riadky zostanú bez --include-manual; --pretend len spočíta. |
| `money:convert {amount} {from} {to} {--date=} {--driver=}` | Prevedie sumu a vypíše kurz, zdroj, dátum a výsledok. |

```bash
php artisan money:currencies --custom

php artisan money:rates:refresh                     # ECB daily feed into the rates table
php artisan money:rates:refresh ecb --feed=recent   # the last 90 days
php artisan money:rates:refresh ecb --feed=history --from=2020-01-01 --to=2020-12-31
php artisan money:rates:refresh --queue             # dispatch a unique queued job instead
php artisan money:rates:refresh --isolated          # keep overlapping runs out

php artisan money:rates:prune --keep-days=365 --pretend   # only count
php artisan money:rates:prune --before=2024-01-01 --include-manual

php artisan money:convert 19.99 EUR USD
php artisan money:convert 19.99 EUR USD --date=2026-09-01 --driver=database
```

## Plánovaná aktualizácia

Pri MONEY\_EXCHANGE\_SCHEDULE=true provider naplánuje money:rates:refresh podľa exchange.refresh.cron — 30 16 \* \* 1-5 v Europe/Berlin, tesne po zverejnení kurzov ECB okolo 16:00 SEČ — s withoutOverlapping() a onOneServer(). Plánovač vašej aplikácie musí bežať. Predvolene je vypnutá.

## Aktualizácia cez frontu

```php
use RoundlyConsulting\Money\Enums\EcbFeed;
use RoundlyConsulting\Money\Facades\Exchange;
use RoundlyConsulting\Money\Jobs\RefreshExchangeRates;

Exchange::rates()->refreshLater(feed: EcbFeed::Recent);   // queue the refresh

// the same job, dispatched yourself: source, feed, ?from, ?to (Y-m-d)
dispatch(new RefreshExchangeRates('ecb', 'recent'));
```

refreshLater() odošle job RefreshExchangeRates, ktorý je unikátny pre zdroj a feed počas desiatich minút a drží len skalárne hodnoty.

## Aktualizácia a čistenie z kódu

```php
use RoundlyConsulting\Money\Enums\EcbFeed;
use RoundlyConsulting\Money\Facades\Exchange;

$result = Exchange::rates()->refresh('ecb', EcbFeed::Recent);   // RefreshResult
$result->stored;                   // rows written
$result->skippedManual;            // manual rows left untouched
$result->skippedUnknownCurrency;   // feed currencies the registry does not know
$result->latestDate;               // ?CarbonImmutable

$deleted = Exchange::rates()->prune(now()->subYear());          // int
```

Aktualizácia predvolene pokrýva posledných 7 dní (denný feed), 90 dní (recent) alebo všetko od roku 1999 (history). Neúspešná aktualizácia nikdy nemaže riadky. Prune vráti počet zmazaných — pri pretend spočítaných — riadkov. Akcie za týmito volaniami popisuje sekcia DI a akcie.

## Eventy

```php
use Illuminate\Support\Facades\Event;
use RoundlyConsulting\Money\Events\ExchangeRatesRefreshed;
use RoundlyConsulting\Money\Events\ExchangeRatesRefreshFailed;

Event::listen(function (ExchangeRatesRefreshed $event) {
    logger()->info('Exchange rates refreshed', [
        'source' => $event->result->source,
        'stored' => $event->result->stored,
        'latest' => $event->result->latestDate?->toDateString(),
    ]);
});

Event::listen(function (ExchangeRatesRefreshFailed $event) {
    // alert your team: $event->source, $event->message — existing rows are untouched
});
```

- ExchangeRatesRefreshed — RefreshResult $result: source, stored, skippedManual, skippedUnknownCurrency, latestDate.
- ExchangeRatesRefreshFailed — string $source a string $message, spustí sa pred opätovným vyhodením výnimky. Sem napojte upozornenia.

## Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

[Ďalšie spôsoby podpory vrátane kryptomien](https://roundly-consulting.com/sk/podporte-nas.md)

Odoslaním daru súhlasíte s našimi [podmienkami prijímania darov](https://roundly-consulting.com/sk/podmienky-darov.md).

[Podporte našu open-source prácu (otvorí sa v novej karte)](https://donate.stripe.com/dRmeVe8FX5PF1Qd9pXcEw00) [Pridajte sa k nám na Patreone (otvorí sa v novej karte)](https://www.patreon.com/cw/roundly)

## Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.

[Ponuka do 48 hodín](https://roundly-consulting.com/sk/kontakt.md) [Prezrieť všetky balíky](https://roundly-consulting.com/sk/open-source/navody/money-for-laravel.md)
