UseCase0006 - Преглед на дневен извештај
Актер иницијатор: Менаџер
Други актери: нема
Опис
Менаџерот го прегледува дневниот извештај за продажбата. Системот ги собира сите платени нарачки за избраниот датум, ги групира по метод на плаќање и по категорија, и го прикажува вкупниот износ, бројот на нарачки и просечната вредност.
Сценарио
- Менаџерот отвора екранот за дневни извештаи.
- Системот го прашува датумот (default: денес).
- Менаџерот го избира датумот (на пр. 2026-01-12).
- Системот го прикажува вкупниот износ и бројот на нарачки за тој ден:
SELECT COUNT(*) AS order_count, COALESCE(SUM(p.amount), 0) AS total_amount, ROUND(AVG(p.amount), 2) AS avg_amount FROM project.orders o JOIN project.payment p ON p.order_id = o.order_id WHERE o.status = 'платена' AND DATE(o.created_at) = '2026-01-12';
- Системот го прикажува износот по метод на плаќање:
SELECT p.method, COUNT(*) AS count, SUM(p.amount) AS total FROM project.payment p JOIN project.orders o ON o.order_id = p.order_id WHERE o.status = 'платена' AND DATE(o.created_at) = '2026-01-12' GROUP BY p.method ORDER BY total DESC;
- Системот го прикажува износот по категорија:
SELECT c.name AS category, SUM(oi.quantity) AS items_sold, SUM(oi.quantity * oi.unit_price) AS revenue FROM project.order_item oi JOIN project.product p ON p.product_id = oi.product_id JOIN project.category c ON c.category_id = p.category_id JOIN project.orders o ON o.order_id = oi.order_id WHERE o.status = 'платена' AND DATE(o.created_at) = '2026-01-12' GROUP BY c.name ORDER BY revenue DESC;
- Системот ги прикажува најпродаваните производи:
SELECT p.name, SUM(oi.quantity) AS total_qty, SUM(oi.quantity * oi.unit_price) AS total_revenue FROM project.order_item oi JOIN project.product p ON p.product_id = oi.product_id JOIN project.orders o ON o.order_id = oi.order_id WHERE o.status = 'платена' AND DATE(o.created_at) = '2026-01-12' GROUP BY p.name ORDER BY total_qty DESC LIMIT 10;
- Менаџерот може да избере да го извезе извештајот или да го види детално.
- Системот го запишува настанот:
INSERT INTO project.audit_log (user_id, action, entity_name) VALUES (2, 'VIEW_DAILY_REPORT', 'orders');
Last modified
2 weeks ago
Last modified on 09/17/26 01:58:19
Note:
See TracWiki
for help on using the wiki.
