== Ажурирање/бришење на трансакции ==== Актери: **Најавен корисник** === Сценарио за ажурирање на трансакција 1. Корисникот пристапува до табот „Трансакции“ од главното мени на апликацијата 2. Корисникот притиска на копчето „Ажурирај“ од одредена трансакција 3. Се отвора форма со веќе пополнети податоци за избраната трансакција 4. Корисникот ги менува податоците (на пр. износ, датум, тагови, или сметка) 5. Апликацијата ги валидира внесените податоци и ги ажурира соодветните записи во базата: {{{#!sql UPDATE transaction SET transaction_name = 'Променето име', amount = 4000, date = '2024-11-24 10:30:00+02:00', WHERE transaction_id = 1; }}} 6. Ако има промена на тагови, претходно внесените записи се бришат и се додаваат новите тагови: {{{#!sql 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}}}: {{{#!sql DELETE FROM transaction_breakdown WHERE transaction_id = 1; }}} - Бришење од {{{tag_assigned_to_transaction}}}: {{{#!sql DELETE FROM public.tag_assigned_to_transaction WHERE transaction_id = 1; }}} - Бришење од {{{transaction}}}: {{{#!sql DELETE FROM transaction WHERE transaction_id = 1; }}} 6. Тригер автоматски го ажурира балансот на соодветната сметка во {{{transaction_account}}} 7. Корисникот добива порака: - „Трансакцијата е успешно избришана!“