Version 2 (modified by 10 days ago) ( diff ) | ,
---|
Генерална состојба на објект
Интерфејс за преглед на генералната состојба на еден објект. Страната за преглед ќе содржи информации за тоа колку е потрошено на објектот, кој работел на него, кој снабдувал набавки, како и основни информации за самиот објект.
Складираната процедура би изгледала вака:
CREATE PROCEDURE GetObjektDetails(IN input_Objekt_ID INT) BEGIN -- Opsti informacii za objektot SELECT o.Objekt_ID, o.Tip AS Objekt_Type, o.Adresa AS Objekt_Address, vi.Budzet AS Objekt_Budget, n.Nadzor_Ime FROM Objekt o LEFT JOIN Vo_Izgradba vi ON o.Objekt_ID = vi.Objekt_ID LEFT JOIN Nadgleduva nd ON o.Objekt_ID = nd.Objekt_ID LEFT JOIN Nadzor n ON nd.Nadzor_Ime = n.Nadzor_Ime WHERE o.Objekt_ID = input_Objekt_ID GROUP BY o.Objekt_ID; -- Info za podizveduvacite koi rabotele na objektot SELECT pn.Podizveduvac_Ime, TIMESTAMPDIFF(HOUR, FROM_UNIXTIME(rn.Od_vreme), FROM_UNIXTIME(rn.Do_vreme)) AS Total_Hours_Worked, TIMESTAMPDIFF(HOUR, FROM_UNIXTIME(rn.Od_vreme), FROM_UNIXTIME(rn.Do_vreme)) * pn.Saatnica AS Total_Cost FROM Raboti_Na rn JOIN Podizveduvac pn ON rn.Podizveduvac_Ime = pn.Podizveduvac_Ime WHERE rn.Objekt_ID = input_Objekt_ID; -- Info za dobavuvachi SELECT d.Dobavuvac_Ime, SUM(n.Cena * n.Kolicina) AS Total_Spent FROM Nabavka n JOIN Nameneta_Za nz ON n.Nabavka_ID = nz.Nabavka_ID JOIN Ispolnuva i ON n.Nabavka_ID = i.Nabavka_ID JOIN Dobavuvac d ON i.Dobavuvac_Ime = d.Dobavuvac_Ime WHERE nz.Objekt_ID = input_Objekt_ID GROUP BY d.Dobavuvac_Ime; END
Note:
See TracWiki
for help on using the wiki.