wiki:UseCase0000PrototypeImplementationDB

Version 2 (modified by 231020, 2 days ago) ( diff )

--

UseCase: Купување акција

Актер

Најавен корисник

Цел

Корисникот сака да купи акција.

Главен тек

  • Корисникот избира акција - прикажи ги сите акции за избор

SELECT
    id,
    symbol,
    name,
    current_price,
    percentage,
    turnover,
    last_updated
FROM stock
ORDER BY symbol; 
  • Корисникот внесува количина и клика да купи акција,

INSERT INTO trade_request (id,portfolio_id, price_per_unit, quantity, status, stock_symbol, timestamp, type)
VALUES
(4,1, 1500.00, 5, 'PENDING', 'ALK', NOW(), 'BUY');

  • Брокер / Admin одобрува trade request.
    INSERT INTO transactions (id, type, quantity, price, timestamp, origin, user_id, stock_id)
    select
    	4,
        'BUY' AS type,
        tr.quantity,
        tr.price_per_unit,
        NOW(),
        'INTERNAL' AS origin,
        p.user_id,
        s.id AS stock_id
    FROM trade_request tr
    JOIN portfolios p ON tr.portfolio_id = p.id
    JOIN stock s ON s.symbol = tr.stock_symbol
    WHERE tr.status = 'PENDING';
    
    UPDATE trade_request
    SET status = 'APPROVED'
    WHERE status = 'PENDING';
    

Алтернативен тек

  • /

Attachments (3)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.