ИС Фагус
Апликативен дизајн
Кориснички сценарија
Најава на корисници
Почеток на информацискиот систем не води до страна за најавување на корисници на системот. При внесување на корисничко име и лозинка и со клик на копчето Вработен или Клиент не води до Почетната Страна на најавениот корисник.
Query:
select id_korisnik from korisnik k where k.korisnicko_ime = "username" and k.lozinka = "lozinka";
select * from klienti k where k.korisnicko_ime = "username" and k.lozinka = "lozinka";
Почетна страна Клиенти
Почетната страна на Клиентите се состои од нарачките кои го нарачали и прогресот до каде им е нарачката.
View за процент по завршени делови:
select naracka_za_klient_so_vkupno_izraboteni_delovi.id_del, (naracka_za_klient_so_vkupno_izraboteni_delovi.vkupno_izraboteni_delovi/nssom.kolicina::double precision)*100 as procent_po_del from -- public.percent_per_order source CREATE OR REPLACE VIEW percent_per_order AS SELECT n2.id_naracka, n2.naslov, ffq.id_klient, ffq.procent_po_naracka FROM naracka n2 JOIN ( SELECT fq.id_naracka, fq.id_klient, avg(fq.procent_po_del) AS procent_po_naracka FROM ( SELECT naracka_za_klient_so_vkupno_izraboteni_delovi.id_del, naracka_za_klient_so_vkupno_izraboteni_delovi.id_naracka, naracka_za_klient_so_vkupno_izraboteni_delovi.id_klient, naracka_za_klient_so_vkupno_izraboteni_delovi.vkupno_izraboteni_delovi::double precision / nssom.kolicina::double precision * 100::double precision AS procent_po_del FROM ( SELECT DISTINCT n.id_naracka, d2.id_del, n.id_klient, sum(enid.br_na_zavrseni_delovi) / count(DISTINCT enn.id_evidencija) AS vkupno_izraboteni_delovi FROM evidencija_na_naracki enn JOIN evidencija_naracki_izraboteni_delovi enid ON enn.id_evidencija = enid.id_evidencija JOIN evidencija_se_odnesuva_na_mebel esonm ON enn.id_evidencija = esonm.id_evidencija JOIN mebel m2 ON esonm.id_mebel = m2.id_mebel JOIN mebel_se_sostoi_od_delovi mssod ON m2.id_mebel = mssod.id_mebel JOIN delovi d2 ON mssod.id_del = d2.id_del JOIN naracka n ON enn.id_naracka = n.id_naracka GROUP BY n.id_naracka, d2.id_del, n.id_klient) naracka_za_klient_so_vkupno_izraboteni_delovi JOIN naracka_se_sostoi_od_mebel nssom ON naracka_za_klient_so_vkupno_izraboteni_delovi.id_naracka = nssom.id_naracka) fq GROUP BY fq.id_naracka, fq.id_klient) ffq ON n2.id_naracka = ffq.id_naracka;
Query за сите нарачки:
select * from naracka n where n.id_klient = "id_od_sesija"
Клиент страна за продукти
Се листаат сите продукти со цена и можност за додавање во кошничка
View:
CREATE OR REPLACE VIEW furniture_view AS SELECT m.id_mebel, m.naziv, m.tip, m.cena FROM mebel m;
Со избирање на продукт креира кошничка доколку не постои и се додава селектираниот продукт во кошничката
Query:
insert into kosnicka_se_sostoi_od_mebel(id_kosnicka,id_mebel) values(kosnicka_id,praten_selektiran_produkt_id)
kosnicka_id се добива од сервисниот слој во апликацијата во каде ја наоѓа моменталната кошничка на клиентот доколку не постои креира нова
Потоа имаме страница за кошничка која се селектира количина на избраните продукти и се нарачува Query:
insert into naracka_se_sostoi_od_mebel(id_mebel,id_naracka,kolicina) values(izran_mebel,naracka_id_session,kolicina)
Страна за менаџери
Доколку се најави Менаџер се добива страна со сите нови нарачки со можност да се креира налог.
View:
CREATE OR REPLACE VIEW manager_orders_view AS SELECT n.id_naracka, n.datum_napravena, n.naslov, n.opis FROM naracka n WHERE n.datum_isporacana IS NULL;;
Страна за магационер
Доколку се најави магационер се добива табели со сите материјали во магацинот со сите детали со можност да се внесе примање на постоечки материјал количина и издавање на постоечки материјал количина
View за сите материјали:
CREATE OR REPLACE VIEW material_view AS SELECT m.id_materijal, m.velicina, m.naziv, m.dostapen_broj FROM materijali m;
Query за додавање на количина :
update materijali set dostapen_broj=dostapen_broj+vnesen_broj where id_materijal=id_od_materijalot_za_koj_se_dodava
Query за одземање на количина :
update materijali set dostapen_broj=dostapen_broj-vnesen_broj where id_materijal=id_od_materijalot_za_koj_se_dodava
Страна доколку се најави Шеф
Шефовите во системот внесуваат информации до каде е работата за дадениот налог. Почетната страна е со сите налози креирани со копче измени за секој налог на кој се додава нова информација за изработените делови
View за наогање на сите налози:
CREATE OR REPLACE VIEW chief_warrant_view AS SELECT n2.id_nalog, n.id_naracka, n.naslov FROM nalozi n2 JOIN nalozi_kreira_naracka nkn ON n2.id_nalog = nkn.id_nalog JOIN naracka n ON nkn.id_naracka = n.id_naracka;
Откако ќе се избере налог се добива страна со избирање на машина, избирање на вработен, избирање на кој дел, и колку делови се изработени
Query:
select * from vraboteni_vo_proizvodsvo;
select * from mashini;
select * from delovi;
insert into evidencija_na_naracki(datum,id_naracka) values(to_date(now(),"MMDDYYYY"),se_zema_od_nalogot_koj_e_selektiran)
insert into evidencija_naracki_izraboteni_delovi (id_del,id_evidencija,br_na_zavrseni_delovi) values(id_od_izbraniot_del,evidencija_id_session,brojot_na_zavrseni_delovi)
insert into evidencija_se_odnesuva_na_mebel (id_evidencija,id_mebel) values(id_evidencija_session,izran_mebel);
Attachments (7)
- klient_naracka.jpg (45.2 KB ) - added by 4 years ago.
- klient_produkti.jpg (41.5 KB ) - added by 4 years ago.
- najavi_se.jpg (33.3 KB ) - added by 4 years ago.
- pocetna_magacioner.jpg (46.3 KB ) - added by 4 years ago.
- pocetna_menadzer.jpg (36.7 KB ) - added by 4 years ago.
- pocetna_sef.jpg (44.6 KB ) - added by 4 years ago.
- sef_vnesuva_evidencija.jpg (38.2 KB ) - added by 4 years ago.
Download all attachments as: .zip