Skip to content

Wathfea/publishdrive

Repository files navigation

Feladat 1 - BE

  • Az env fileban töltsük ki a szükséges extra paramétereket!

    EPUB_CHECKER_JAR="utils/epubcheck-5.1.0/epubcheck.jar"
    JAVA_PATH="/usr/bin/java"
  • Első lépésben töltsük le a szükséges epub fileokat a következő paranccsal:

php artisan app:download-epubs 
  • Második lépésben gyűjtsük ki az adatokat az epub fileokból a következő paranccsal:
php artisan app:collect-epubs-metadata
  • Harmadik lépésben validáljuk a fileokat és írjuk be a validációs eredmények a metadata fileba:
php artisan app:validate-epubs

Feladat 2 - FE

Feladat 3 - DB

  • Számítsd ki, hogy az egyes években mennyi volt a teljes forgalom forintban mérve (év, forgalom_HUF). Az egyes eladások értékét mindig az aktuális dátum szerinti átlagos havi árfolyam alapján kell kiszámolni. Sajnos azonban néha előfordul, hogy egy hónapra nincs meg az árfolyamunk. Ilyenkor – de csak ilyenkor – használhatjuk az adott deviza alapértelmezett árfolyamát.
SELECT
    YEAR(e.datum) AS ev,
    SUM(
    CASE
    WHEN af.arfolyam IS NOT NULL THEN e.mennyiseg * e.ar / af.arfolyam
    ELSE e.mennyiseg * e.ar / d.alap_arfolyam
    END
    ) AS forgalom_HUF
FROM eladas e
    INNER JOIN deviza d ON e.deviza_id = d.id
    LEFT JOIN arfolyam af ON e.deviza_id = af.deviza_id
    AND YEAR(e.datum) = af.ev
    AND MONTH(e.datum) = af.ho
WHERE d.nev = 'HUF'
GROUP BY YEAR(e.datum)
ORDER BY YEAR(e.datum);
  • Az előző lekérdezést egészíts ki még egy oszloppal (forgalom_EUR), ami azt is mutatja, hogy a forintban kiszámolt forgalmi értékek EUR-ban mit jelentenek (az EUR árfolyamát is lehetőleg a tranzakció dátum alapján kell megállapítani).
SELECT
    YEAR(e.datum) AS ev,
    SUM(
    CASE
    WHEN af.arfolyam IS NOT NULL THEN e.mennyiseg * e.ar / af.arfolyam
    ELSE e.mennyiseg * e.ar / d.alap_arfolyam
    END
    ) AS forgalom_HUF,
    ROUND(
    SUM(
    CASE
    WHEN af.arfolyam IS NOT NULL THEN e.mennyiseg * e.ar / af.arfolyam
    ELSE e.mennyiseg * e.ar / d.alap_arfolyam
    END
    ) / COALESCE(
    (SELECT arfolyam
    FROM arfolyam
    WHERE deviza_id = 2
    AND YEAR(e.datum) = ev
    AND MONTH(e.datum) = MONTH(e.datum)
    LIMIT 1
    ),
    (SELECT alap_arfolyam FROM deviza d2 WHERE d2.nev = 'EUR')
    ), 2
    ) AS forgalom_EUR
FROM eladas e
    INNER JOIN deviza d ON e.deviza_id = d.id
    LEFT JOIN arfolyam af ON e.deviza_id = af.deviza_id
    AND YEAR(e.datum) = af.ev
    AND MONTH(e.datum) = af.ho
WHERE d.nev = 'HUF'
GROUP BY YEAR(e.datum)
ORDER BY YEAR(e.datum);

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published