wiki:AzuriranjeBrisenjeTransakcija

Ажурирање/бришење на трансакции

Актери: Најавен корисник

Сценарио за ажурирање на трансакција

  1. Корисникот пристапува до табот „Трансакции“ од главното мени на апликацијата
  2. Корисникот притиска на копчето „Ажурирај“ од одредена трансакција
  3. Се отвора форма со веќе пополнети податоци за избраната трансакција
  4. Корисникот ги менува податоците (на пр. износ, датум, тагови, или сметка)
  5. Апликацијата ги валидира внесените податоци и ги ажурира соодветните записи во базата:
    UPDATE transaction
    SET transaction_name = 'Променето име',
        amount = 4000,
        date = '2024-11-24 10:30:00+02:00',
    WHERE transaction_id = 1;
    
  6. Ако има промена на тагови, претходно внесените записи се бришат и се додаваат новите тагови:
    DELETE FROM public.tag_assigned_to_transaction
    WHERE transaction_id = 1;
    
    INSERT INTO public.tag_assigned_to_transaction (transaction_id, tag_id)
    VALUES 
        (1, 2),   -- Пример за ново додаден таг
        (1, 3);   -- Пример за друг нов таг
    
  7. Ако е направена промена во amount:
    • Ажурирањето тригерира промена на записите во transaction_breakdown и transaction_account преку тригер
  8. По успешно ажурирање, корисникот добива порака:
    • „Трансакцијата е успешно ажурирана!“

Сценарио за бришење на трансакција

  1. Корисникот пристапува до табот „Трансакции“ од главното мени на апликацијата
  2. Корисникот притиска на копчето „Избриши“ од одредена трансакција
  3. Апликацијата прикажува порака за потврда:
    • „Дали сте сигурни дека сакате да ја избришете оваа трансакција?“
  4. Корисникот потврдува
  5. Апликацијата ги брише сите записи поврзани со трансакцијата:
    • Бришење од transaction_breakdown:
      DELETE FROM transaction_breakdown
      WHERE transaction_id = 1;
      
    • Бришење од tag_assigned_to_transaction:
      DELETE FROM public.tag_assigned_to_transaction
      WHERE transaction_id = 1;
      
    • Бришење од transaction:
      DELETE FROM transaction
      WHERE transaction_id = 1;
      
  6. Тригер автоматски го ажурира балансот на соодветната сметка во transaction_account
  7. Корисникот добива порака:
    • „Трансакцијата е успешно избришана!“
Last modified 4 weeks ago Last modified on 12/16/24 22:28:31
Note: See TracWiki for help on using the wiki.