Changes between Initial Version and Version 1 of UseCase4


Ignore:
Timestamp:
01/21/25 03:33:36 (10 days ago)
Author:
212054
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UseCase4

    v1 v1  
     1**Генерална состојба на објект**
     2
     3Интерфејс за преглед на генералната состојба на еден објект. Страната за преглед ќе содржи информации за тоа колку е потрошено на објектот, кој работел на него, кој снабдувал набавки, како и основни информации за самиот објект.
     4
     5Складираната процедура би изгледала вака:
     6
     7
     8{{{
     9CREATE PROCEDURE GetObjektDetails(IN input_Objekt_ID INT)
     10BEGIN
     11    -- Opsti informacii za objektot
     12    SELECT
     13        o.Objekt_ID,
     14        o.Tip AS Objekt_Type,
     15        o.Adresa AS Objekt_Address,
     16        vi.Budzet AS Objekt_Budget,
     17        GROUP_CONCAT(n.Nadzor_Ime SEPARATOR ', ') AS Nadzor_Names
     18    FROM
     19        Objekt o
     20    LEFT JOIN
     21        Vo_Izgradba vi ON o.Objekt_ID = vi.Objekt_ID
     22    LEFT JOIN
     23        Nadgleduva nd ON o.Objekt_ID = nd.Objekt_ID
     24    LEFT JOIN
     25        Nadzor n ON nd.Nadzor_Ime = n.Nadzor_Ime
     26    WHERE
     27        o.Objekt_ID = input_Objekt_ID
     28    GROUP BY
     29        o.Objekt_ID;
     30
     31    -- Info za podizveduvacite koi rabotele na objektot
     32    SELECT
     33        pn.Podizveduvac_Ime,
     34        TIMESTAMPDIFF(HOUR, FROM_UNIXTIME(rn.Od_vreme), FROM_UNIXTIME(rn.Do_vreme)) AS Total_Hours_Worked,
     35        TIMESTAMPDIFF(HOUR, FROM_UNIXTIME(rn.Od_vreme), FROM_UNIXTIME(rn.Do_vreme)) * pn.Saatnica AS Total_Cost
     36    FROM
     37        Raboti_Na rn
     38    JOIN
     39        Podizveduvac pn ON rn.Podizveduvac_Ime = pn.Podizveduvac_Ime
     40    WHERE
     41        rn.Objekt_ID = input_Objekt_ID;
     42
     43    -- Info za dobavuvachi
     44    SELECT
     45        d.Dobavuvac_Ime,
     46        SUM(n.Cena) AS Total_Spent
     47    FROM
     48        Nabavka n
     49    JOIN
     50        Nameneta_Za nz ON n.Nabavka_ID = nz.Nabavka_ID
     51    JOIN
     52        Ispolnuva i ON n.Nabavka_ID = i.Nabavka_ID
     53    JOIN
     54        Dobavuvac d ON i.Dobavuvac_Ime = d.Dobavuvac_Ime
     55    WHERE
     56        nz.Objekt_ID = input_Objekt_ID
     57    GROUP BY
     58        d.Dobavuvac_Ime;
     59END
     60}}}