Changes between Initial Version and Version 1 of UseCase0001PrototypeImplementation


Ignore:
Timestamp:
12/28/25 06:23:17 (13 days ago)
Author:
221181
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UseCase0001PrototypeImplementation

    v1 v1  
     1= UseCase: Додавање нов корисник =
     2
     3== Актер ==
     4
     5Admin (Администратор)
     6
     7== Цел ==
     8
     9Администраторот сака да додаде нов корисник во системот Stock Master.
     10
     11== Предуслови ==
     12
     13* Администраторот мора да биде најавен во системот
     14* Администраторот мора да има Admin привилегии
     15
     16== Главен тек ==
     17
     18* Администраторот го отвора Dashboard-от
     19[[Image(dashboard1.png, 1000px)]]
     20* Администраторот го избира "Settings" од менито
     21[[Image(dashboard2.png, 1000px)]]
     22* Администраторот кликнува на "Users" од паѓачкото мени
     23* Системот го прикажува екранот "User Management" со листа на сите корисници
     24[[Image(dashboard3.png, 1000px)]]
     25* Администраторот кликнува на копчето "+ Add New User"
     26[[Image(dashboard4.png, 1000px)]]
     27* Системот го прикажува екранот за додавање нов корисник
     28* Администраторот ги внесува потребните информации:
     29  * Username (пр: ana_sales)
     30  * Full Name (пр: Ана аневска)
     31  * Email (пр: ana123@outlook.com)
     32  * Password (пр: secure123)
     33  * Role - избира од паѓачко мени (Admin, Inventory Manager, Sales Personnel, Warehouse Staff)
     34* Администраторот го штиклира полето "Active" за да го активира корисникот
     35* Администраторот кликнува на копчето "Save"
     36* Системот ги валидира податоците (username и email мора да се уникатни)
     37* Системот го зачувува новиот корисник во базата
     38* Системот прикажува порака за успех
     39[[Image(dashboard5.png, 1000px)]]
     40* Системот го враќа администраторот на листата со корисници каде што новиот корисник е прикажан
     41
     42== Алтернативен тек ==
     43
     44* Доколку username веќе постои, се прикажува грешка: "Username already exists"
     45* Доколку email веќе постои, се прикажува грешка: "Email already exists"
     46* Доколку некое задолжително поле е празно, се прикажува грешка: "Please fill all required fields"
     47* Доколку администраторот кликне "Cancel", се враќа на листата со корисници без зачувување
     48
     49== Улоги на корисници ==
     50
     51* '''Admin:''' Full system access - целосна контрола на системот, управување со корисници и пристап до извештаи
     52* '''Inventory Manager:''' Manage products and stock - додавање и уредување на производи, следење на залихи и управување со добавувачи
     53* '''Sales Personnel:''' Process sales - продажни операции и управување со клиенти
     54* '''Warehouse Staff:''' Manage warehouse operations - операции за влез и излез од магацин и физичка проверка на залихите
     55
     56== SQL Команди ==
     57
     58{{{#!sql
     59-- 1. Проверка дали username е уникатно
     60SELECT COUNT(*) FROM users WHERE username = 'marko_inv';
     61
     62-- 2. Проверка дали email е уникатно
     63SELECT COUNT(*) FROM users WHERE email = 'marko@system.mk';
     64
     65-- 3. Додавање нов корисник
     66INSERT INTO users (username, password, full_name, email, role, is_active)
     67VALUES ('marko_inv', 'hashed_password', 'Марко Петровски', 'marko@system.mk', 'Inventory Manager', true);
     68
     69-- 4. Прикажување на сите корисници
     70SELECT user_id, username, full_name, email, role, is_active, created_at
     71FROM users
     72ORDER BY created_at DESC;
     73}}}