Tervezett listák, statisztikák
A listákat a képernyőn és PDF-ben letölthető módon is el kell tudni érni!
személyek élettörténet listái
- belépés, kilépés, timeout
- saját (felületen + kérés)
- rendszergazdai (csak kérés)
- ki van épp a rendszerben (felületen)
- ajánlatkérések (kérés)
- ajánlatkérés összesen
- ügyfél által lezáratlan összesen
- sikeres összesen
- ajánlatadások (kérés)
- ajánlat összesen
- ajánlatadó által lezáratlan összesen
- elfogadott ajánlata összesen
- egyes ajánlatok részletei
Időszakos listák (kérés):
- belépések száma
- felajánlások száma, összege
- sikeres ügyletek száma, értéke
- meghiúsult ügyletek száma
- értesítések listázása (e-mail)
- adott személy mikor milyen felületet használt (NGINS?)
- böngésző statisztika (NGINS?)
- regisztráló, a folyamatot be nem fejező felhasználók listája
- mintautalványt kérők listája (aránya?)
Rendszerre vonatkozó listák
- összes forgalom, stb.
- érvénytelem utalványok listája
- függőben lévő tranzakciók
SQL kérések
Rendszerbe belépő felhasználók listája
Tárolt eljárás neve: =ukk.list_user_login(now())
Visszaadott értékek:
-
user_id
: felhasználó azonosítója
-
user_name
: felhasználói név
-
person_name
: személy neve
-
session_login_date
: belépés dátuma
-
session_login_time
: belépés ideje
-
login_interval
: a rendszerben eltöltött idő (időtúllépés esetén: Timeout)
-
session_ip
: a belépő IP címe
Szűrési lehetőségek:
- belépés időpontja
- felhasználó neve
Rendezés:
- belépés időpontja szerint
-- rendszerbe belépő felhasználók listája
-- belépés időpontja, időtartama és az IP cím
SELECT
s.user_id,
u.user_name,
p.person_name,
CAST(s.session_login_time AS date) AS session_login_date,
CAST(s.session_login_time AS timetz) AS session_login_time,
CASE WHEN s.session_timeout THEN 'Timeout' ELSE to_char(session_logout_time - s.session_login_time, 'HH24:MI:SS') END AS login_interval,
s.session_ip
FROM bob.sessions_log AS s
JOIN bob.users_active AS u
ON (u.user_id = s.user_id)
JOIN bob.persons_active AS p
ON (p.person_id = u.person_id)
WHERE u.user_name NOT IN ('bobadmin','import','registrator')
-- AND s.session_login_time BETWEEN '2015-08-06' AND '2015-08-08' -- szűrés belépés időpontja szerint
-- AND u.user_name = 'solyom.sandor' -- szűrés felhasználó szerint
ORDER BY s.session_login_time;
Belépések és aktív felhasználók száma
Tárolt eljárás neve:
ukk.stat_user_login(now())
Visszaadott értékek:
-
count_user
: aktív felhasználók száma (az adott időszakban)
-
count_login
: belépések száma (az adott időszakban)
Szűrési lehetőségek:
Rendezés:
-- belépések és aktív felhasználók száma
-- felhasználók száma, belépések száma
WITH
user_count AS (
SELECT
count(1) AS user_count
FROM bob.sessions_log AS s
JOIN bob.users_active AS u
ON (u.user_id = s.user_id)
WHERE u.user_name NOT IN ('bobadmin','import','registrator')
-- AND s.session_login_time BETWEEN '2015-08-06' AND '2015-08-08' -- szűrés belépés időpontja szerint
GROUP BY s.user_id
)
SELECT
count(1) AS count_user,
sum(user_count) AS count_login
FROM user_count;
A rendszerben nyilvántartott személyek listája
Tárolt eljárás neve:
ukk.statdetails_outer_person(now())
Visszaadott értékek:
-
outer_person_id
: személy rekord-azonosítója
-
is_interrupted_user
: igaz, ha nem véglegesítette a regisztrációt
-
is_registered_user
: igaz, ha regisztrált felhasználó
-
is_outer_person
: igaz, ha külső rendszerben (pl.: NAVI) nyilván van tartva
-
is_requested_demo
: igaz, ha kért mintautalványt
-
user_name
: igényelt vagy megkapott felhasználói név
-
person_name
: személy neve
-
registration_time
: regisztráció időpontja
-
foreign_codes
: távoli kódok (külső rendszerek azonosítói)
-
person_id
: BOB személy rekord-azonosítója
-
user_id
: BOB felhasználó rekord-azonosítója
-
financial_ident
: pénzügyi azonosító (adóazonosító jel)
-
email
: e-mail cím
-
phone_number
: telefonszám
-
address
: postai cím
Szűrési lehetőségek:
- felhasználó szerint
- előregisztációt nem befejező személyek
- regisztrált felhasználók
- külső rendszerben nyilvántartott személy
- mintautalványt kért
Rendezés:
-- a rendszerben szereplő személyek listája
-- felhasználói tulajdonságok, személyek adatai
SELECT
op.eid AS outer_person_id,
usr.user_name IS NULL AND psn.person_regcode IS NOT NULL AS is_interrupted_user,
usr.user_name IS NOT NULL AS is_registered_user,
p_op.entity_id IS NOT NULL AS is_outer_person,
coalesce(op.is_requested_demo,false) AS is_requested_demo,
coalesce(usr.user_name,op.user_name) AS user_name,
coalesce(psn.person_fullname, psn.person_lastname ||' '|| psn.person_firstname, op.full_name) AS person_name,
usr.creation_time AS registration_time,
p_op.foreign_codes,
op.person_id,
usr.user_id,
op.financial_ident,
op.email,
op.phone_number,
op.address
FROM ukk.simplelist_outer_person() AS op
LEFT JOIN ( bob.persons AS psn
LEFT JOIN bob.users_active AS usr
ON (usr.person_id = psn.person_id)
) ON (psn.person_id = op.person_id AND psn.modification_time IS NULL)
LEFT JOIN (
SELECT
p_op.entity_id,
array_agg(p_op.foreign_code) AS foreign_codes
FROM exchange.partner_outer_person AS p_op
GROUP BY p_op.entity_id
) AS p_op
ON (p_op.entity_id = op.eid)
WHERE op.status != 'deleted'
-- AND coalesce(usr.user_name,op.user_name) = 'solyom.sandor' -- szűrés felhasználó szerint
-- AND (usr.user_name IS NULL AND op.auth_code IS NOT NULL) -- előregisztációt nem befejező személyek
-- AND usr.user_name IS NOT NULL -- regisztrált felhasználók
-- AND p_op.eid IS NOT NULL -- külső rendszerben nyilvántartott személy
-- AND coalesce(op.is_requested_demo,false) -- mintautalványt kért
ORDER BY coalesce(psn.person_fullname, psn.person_lastname ||' '|| psn.person_firstname, op.full_name);
A rendszerben szereplő személyek statisztikája
Tárolt eljárás neve:
ukk.statsummary_outer_person(now())
Visszaadott értékek:
-
count_interrupted_user
: mindazok száma, akik, nem véglegesítették a regisztrációjukat
-
count_registered_user
: regisztrált felhasználók száma
-
count_outer_person
: mindazok száma, akik ismereteink szerint külső rendszerekben (pl.: NAVI) is nyilván vannak tartva
-
count_requested_demo
: mindazok száma, akik, kértek mintautalványt
-
count_no_requested_demo
: mindazok száma, akik, nem kértek mintautalványt
-
count_all
: összes nyilvántartott személy száma
Szűrési lehetőségek:
Rendezés:
-- a rendszerben szereplő személyek statisztikája
-- statisztika típusok alapján
SELECT
count((usr.user_name IS NULL AND psn.person_regcode IS NOT NULL) OR NULL) AS count_interrupted_user,
count((usr.user_name IS NOT NULL) OR NULL) AS count_registered_user,
count((p_op.entity_id IS NOT NULL) OR NULL) AS count_outer_person,
count(op.is_requested_demo OR NULL) AS count_requested_demo,
count((op.is_requested_demo = false) OR NULL) AS count_no_requested_demo,
count(1) AS count_all
FROM ukk.simplelist_outer_person() AS op
LEFT JOIN ( bob.persons AS psn
LEFT JOIN bob.users_active AS usr
ON (usr.person_id = psn.person_id)
) ON (psn.person_id = op.person_id AND psn.modification_time IS NULL)
LEFT JOIN (
SELECT
p_op.entity_id,
array_agg(p_op.foreign_code) AS foreign_codes
FROM exchange.partner_outer_person AS p_op
GROUP BY p_op.entity_id
) AS p_op
ON (p_op.entity_id = op.eid)
WHERE op.status != 'deleted';
Ajánlatkérések listája
Tárolt eljárás neve:
ukk.statdetails_request_offer(now())
Visszaadott értékek:
-
user_id
: felhasználó azonosítója
-
user_name
: felhasználói név
-
person_name
: személy neve
-
request_offer_id
: kérés rekord-azonosítója
-
office_id
: iroda rekord-azonosítója
-
office_name
: iroda rövid neve
-
request_offer_par
: kérés összege
-
bid_par
: elfogadott ajánlat összege
-
request_date
: ajánlatkérés dátuma
-
request_time
: ajánlatkérés ideje
-
first_bid_date
: első ajánlat érkezésének dátuma
-
first_bid_time
: első ajánlat érkezésének ideje
-
accept_bid_date
: elfogadott ajánlat érkezésének dátuma
-
accept_bid_time
: elfogadott ajánlat érkezésének ideje
-
status
: ügylet állapota (closed:lezárt, pending:folyamatban lévő, active:még nincs elfogadott ajánlat
-
count_bid
: érkezett (és nem törölt) ajánlatok száma
Szűrési lehetőségek:
- ajánlatkérés időpontja
- felhasználó neve
Rendezés:
- felhasználói név + ajánlatkérés ideje szerint
-- ajánlatkérések listája
-- felhasználó, iroda, összegek, ajánlatok, időpontok
WITH
timelined_request_offer AS (
SELECT
tro.eid,
min(tro.creation_time) AS creation_time
FROM ukk.request_offer AS tro
WHERE tro.status = 'active'
GROUP BY tro.eid
), -- timelined_request_offer - kérések aktiválásának ideje
voucher_pack AS (
SELECT
vp.eid,
sum(pvt.par) AS par
FROM ukk.simplelist_voucher_pack(now()) AS vp
LEFT JOIN ukk.simplelist_pack_voucher_type() AS pvt
ON (pvt.voucher_pack_id = vp.eid)
WHERE vp.status != 'deleted'
GROUP BY vp.eid
), -- voucher_pack - csomagok értéke
outer_person AS (
SELECT
op.eid,
coalesce(usr.user_name,op.user_name) AS user_name,
coalesce(psn.person_fullname, psn.person_lastname ||' '|| psn.person_firstname, op.full_name) AS person_name,
op.person_id,
usr.user_id,
op.financial_ident,
op.email,
op.phone_number
FROM ukk.simplelist_outer_person() AS op
LEFT JOIN ( bob.persons_active AS psn
LEFT JOIN bob.users_active AS usr
ON (usr.person_id = psn.person_id)
) ON (psn.person_id = op.person_id)
), -- outer_person - felhasználók és személyek adatai
bid AS (
SELECT
bid.request_offer_id,
min(bid.creation_time) AS creation_time,
count(bid.eid) AS count_bid,
array_agg(DISTINCT bid.status) AS bid_statuses
FROM ukk.simplelist_bid(now()) AS bid
WHERE bid.status NOT IN ('draft','deleted')
GROUP BY bid.request_offer_id
), -- bid - kérésre érkező első ajánlat ideje
bid_accept_time AS (
SELECT
min(bid.request_offer_id) AS request_offer_id,
min(bid.creation_time) AS creation_time
FROM ukk.bid AS bid
WHERE bid.status = 'accepted'
GROUP BY bid.eid
), -- bid_accept_time - ajánlat elfogadásának ideje
accepted_bid AS (
SELECT
bid.request_offer_id,
vp.par
FROM ukk.bid AS bid
LEFT JOIN voucher_pack AS vp
ON (vp.eid = bid.supply_voucher_pack_id)
WHERE bid.status IN ('accepted','closed')
) -- accepted_bid - elfogadott ajánlatok értéke
SELECT
op.user_id,
op.user_name,
op.person_name,
ro.eid AS request_offer_id,
ro.office_id,
ofc.short_name AS office_name,
vp.par AS request_offer_par,
accepted_bid.par AS bid_par,
CAST(t_ro.creation_time AS date) AS request_date,
CAST(t_ro.creation_time AS timetz) AS request_time,
CAST(bid.creation_time AS date) AS first_bid_date,
CAST(bid.creation_time AS timetz) AS first_bid_time,
CAST(a_bid.creation_time AS date) AS accept_bid_date,
CAST(a_bid.creation_time AS timetz) AS accept_bid_time,
CASE WHEN ro.status = 'closed' AND coalesce('closed' = ANY(bid.bid_statuses),false)
THEN 'closed'
ELSE CASE WHEN ro.status IN ('active','closed') AND CAST(ARRAY['accepted','closed'] AS varchar[]) && bid_statuses
THEN 'pending'
ELSE ro.status
END
END AS status,
bid.count_bid
FROM ukk.simplelist_request_offer(now()) AS ro
JOIN timelined_request_offer AS t_ro
ON (t_ro.eid = ro.eid)
JOIN outer_person AS op
ON (op.eid = ro.outer_person_id)
JOIN ukk.simplelist_office(now()) AS ofc
ON (ofc.eid = ro.office_id)
JOIN voucher_pack AS vp
ON (vp.eid = ro.demand_voucher_pack_id)
LEFT JOIN bid AS bid
ON (bid.request_offer_id = ro.eid)
LEFT JOIN accepted_bid AS accepted_bid
ON (accepted_bid.request_offer_id = ro.eid)
LEFT JOIN bid_accept_time AS a_bid
ON (a_bid.request_offer_id = ro.eid)
WHERE ro.status NOT IN ('deleted','draft')
-- AND t_ro.creation_time BETWEEN '2015-09-09' AND '2015-09-10' -- szűrés ajánlatkérés időpontja szerint
-- AND op.user_name = 'solyom.sandor' -- szűrés felhasználó szerint
ORDER BY op.user_name, t_ro.creation_time;
Ajánlatkérések listája felhasználónként összesítve
Tárolt eljárás neve:
ukk.statsummary_request_offer(now())
Visszaadott értékek:
-
user_id
: felhasználó azonosítója
-
user_name
: felhasználói név
-
person_name
: személy neve
-
office_names
: a preferált irodák nevei
-
request_offer_par
: indított kérések összértéke
-
accepted_bid_par
: elfogadott ajánlatok összértéke
-
closed_par
: lejárt ajánlatok összértéke
-
count_all
: összes kérés száma
-
count_closed
: lezárt (sikeres) kérések száma
-
count_pending
: folyamatban lévő kérések száma
-
count_all_bid
: az összes kapott ajánlat száma
-
average_count_bid
: kapott ajánlatok átlagos száma
Szűrési lehetőségek:
- ajánlatkérés időpontja
- felhasználó neve
Rendezés:
-- ajánlatkérések listája felhasználónként összesítve
-- felhasználó, irodák, összesített összegek, ajánlatok átlagos száma, ajánlatkérések összesítése
WITH
timelined_request_offer AS (
SELECT
tro.eid,
min(tro.creation_time) AS creation_time
FROM ukk.request_offer AS tro
WHERE tro.status = 'active'
GROUP BY tro.eid
), -- timelined_request_offer - kérések aktiválásának ideje
voucher_pack AS (
SELECT
vp.eid,
sum(pvt.par) AS par
FROM ukk.simplelist_voucher_pack(now()) AS vp
LEFT JOIN ukk.simplelist_pack_voucher_type() AS pvt
ON (pvt.voucher_pack_id = vp.eid)
WHERE vp.status != 'deleted'
GROUP BY vp.eid
), -- voucher_pack - csomagok értéke
outer_person AS (
SELECT
op.eid,
coalesce(usr.user_name,op.user_name) AS user_name,
coalesce(psn.person_fullname, psn.person_lastname ||' '|| psn.person_firstname, op.full_name) AS person_name,
op.person_id,
usr.user_id,
op.financial_ident,
op.email,
op.phone_number
FROM ukk.simplelist_outer_person() AS op
LEFT JOIN ( bob.persons_active AS psn
LEFT JOIN bob.users_active AS usr
ON (usr.person_id = psn.person_id)
) ON (psn.person_id = op.person_id)
), -- outer_person - felhasználók és személyek adatai
bid AS (
SELECT
bid.request_offer_id,
array_agg(DISTINCT bid.status) AS statuses,
count(bid.eid) AS count_bid
FROM ukk.simplelist_bid(now()) AS bid
WHERE bid.status NOT IN ('draft','deleted')
GROUP BY bid.request_offer_id
), -- bid_first - kérésre érkező első ajánlat ideje
accepted_bid AS (
SELECT
bid.request_offer_id,
vp.par
FROM ukk.bid AS bid
LEFT JOIN voucher_pack AS vp
ON (vp.eid = bid.supply_voucher_pack_id)
WHERE bid.status IN ('accepted','closed')
) -- accepted_bid - elfogadott ajánlatok értéke
SELECT
op.user_id,
op.user_name,
op.person_name,
array_agg(DISTINCT ofc.short_name ORDER BY ofc.short_name) AS office_names,
sum(vp.par) AS request_offer_par,
coalesce(sum(accepted_bid.par), 0) AS accepted_bid_par,
sum(CASE WHEN ro.status = 'closed' AND 'closed' = ANY(bid.statuses) THEN vp.par ELSE 0 END) AS closed_par,
count(ro.eid) AS count_all,
count((ro.status = 'closed' AND 'closed' = ANY(bid.statuses)) OR NULL) AS count_closed,
count(('accepted' = ANY(bid.statuses)) OR (ro.status = 'active' AND 'closed' = ANY(bid.statuses)) OR NULL) AS count_pending,
coalesce(sum(bid.count_bid),0) AS count_all_bid,
round(coalesce(sum(bid.count_bid),0) / count(ro.eid), 2) AS average_count_bid
FROM ukk.simplelist_request_offer(now()) AS ro
JOIN timelined_request_offer AS t_ro
ON (t_ro.eid = ro.eid)
JOIN outer_person AS op
ON (op.eid = ro.outer_person_id)
JOIN ukk.simplelist_office(now()) AS ofc
ON (ofc.eid = ro.office_id)
JOIN voucher_pack AS vp
ON (vp.eid = ro.demand_voucher_pack_id)
LEFT JOIN bid AS bid
ON (bid.request_offer_id = ro.eid)
LEFT JOIN accepted_bid AS accepted_bid
ON (accepted_bid.request_offer_id = ro.eid)
WHERE ro.status != 'deleted'
-- AND t_ro.creation_time BETWEEN '2015-09-09' AND '2015-09-10' -- szűrés ajánlatkérés időpontja szerint
-- AND op.user_name = 'solyom.sandor' -- szűrés felhasználó szerint
GROUP BY
op.user_id,
op.user_name,
op.person_name
ORDER BY op.user_name;
Kérésre adott ajánlatok listája
Tárolt eljárás neve:
ukk.statdetails_bid(now())
Visszaadott értékek:
-
user_id
: felhasználó azonosítója
-
user_name
: felhasználói név
-
person_name
: személy neve
-
bid_id
: ajánlat rekord-azonosítója
-
request_offer_id
: kérés rekord-azonosítója
-
office_id
: iroda rekord-azonosítója
-
office_name
: iroda rövid neve
-
request_offer_par
: kérés összege
-
bid_par
: elfogadott ajánlat összege
-
request_offer_status
: kérés állapota
-
bid_status
: ajánlat állapota
-
request_date
: ajánlatkérés dátuma
-
request_time
: ajánlatkérés ideje
-
bid_date
: ajánlat dátuma
-
bid_time
: ajánlat ideje
Szűrési lehetőségek:
- ajánlattétel időpontja
- ajánlatkérés időpontja
- felhasználó neve
Rendezés:
- felhasználói név + ajánlatadás ideje szerint
ORDER BY op.user_name, bid.creation_time;
-- kérésre adott ajánlatok listája
-- felhasználó, iroda, összegek, ajánlatkérések, időpontok
WITH
timelined_request_offer AS (
SELECT
tro.eid,
min(tro.creation_time) AS creation_time
FROM ukk.request_offer AS tro
WHERE tro.status = 'active'
GROUP BY tro.eid
), -- timelined_request_offer - kérések aktiválásának ideje
voucher_pack AS (
SELECT
vp.eid,
sum(pvt.par) AS par
FROM ukk.simplelist_voucher_pack(now()) AS vp
LEFT JOIN ukk.simplelist_pack_voucher_type() AS pvt
ON (pvt.voucher_pack_id = vp.eid)
WHERE vp.status != 'deleted'
GROUP BY vp.eid
), -- voucher_pack - csomagok értéke
outer_person AS (
SELECT
op.eid,
coalesce(usr.user_name,op.user_name) AS user_name,
coalesce(psn.person_fullname, psn.person_lastname ||' '|| psn.person_firstname, op.full_name) AS person_name,
op.person_id,
usr.user_id,
op.financial_ident,
op.email,
op.phone_number
FROM ukk.simplelist_outer_person() AS op
LEFT JOIN ( bob.persons_active AS psn
LEFT JOIN bob.users_active AS usr
ON (usr.person_id = psn.person_id)
) ON (psn.person_id = op.person_id)
) -- outer_person - felhasználók és személyek adatai
SELECT
op.user_id,
op.user_name,
op.person_name,
bid.eid AS bid_id,
bid.request_offer_id,
ro.office_id,
ofc.short_name AS office_name,
ro_vp.par AS request_offer_par,
vp.par AS bid_par,
ro.status AS request_offer_status,
bid.status AS bid_status,
CAST(t_ro.creation_time AS date) AS request_date,
CAST(t_ro.creation_time AS timetz) AS request_time,
CAST(bid.creation_time AS date) AS bid_date,
CAST(bid.creation_time AS timetz) AS bid_time
FROM ukk.simplelist_bid(now()) AS bid
JOIN ukk.simplelist_request_offer(now()) AS ro
ON (ro.eid = bid.request_offer_id)
JOIN timelined_request_offer AS t_ro
ON (t_ro.eid = ro.eid)
JOIN outer_person AS op
ON (op.eid = bid.outer_person_id)
JOIN ukk.simplelist_office(now()) AS ofc
ON (ofc.eid = ro.office_id)
JOIN voucher_pack AS vp
ON (vp.eid = bid.supply_voucher_pack_id)
JOIN voucher_pack AS ro_vp
ON (ro_vp.eid = ro.demand_voucher_pack_id)
WHERE bid.status != 'deleted'
-- AND bid.creation_time BETWEEN '2015-09-09' AND '2015-09-10' -- szűrés ajánlattétel időpontja szerint
-- AND t_ro.creation_time BETWEEN '2015-09-09' AND '2015-09-10' -- szűrés ajánlatkérés időpontja szerint
-- AND op.user_name = 'solyom.sandor' -- szűrés felhasználó szerint
ORDER BY op.user_name, bid.creation_time;
Kérésre adott ajánlatok felhasználónként összesítve
Tárolt eljárás neve:
ukk.statsummary_bid(now())
Visszaadott értékek:
-
user_id
: felhasználó azonosítója
-
user_name
: felhasználói név
-
person_name
: személy neve
-
office_names
: a preferált irodák nevei
-
request_offer_par
: megválaszolt kérések összértéke
-
bid_par
: ajánlatok összértéke
-
count_all
: adott ajánlatok száma
-
count_rejected
: elutasított ajánlatok száma
-
count_pending
: folyamatban lévő ajánlatok száma
-
count_closed
: lezárt (sikeres) ajánlatok száma
Szűrési lehetőségek:
- ajánlattétel időpontja
- ajánlatkérés időpontja
- felhasználó neve
Rendezés:
-- kérésre adott ajánlatok felhasználónként összesítve
-- felhasználó, irodák, összesített összegek, ajánlatok összesítése
WITH
timelined_request_offer AS (
SELECT
tro.eid,
min(tro.creation_time) AS creation_time
FROM ukk.request_offer AS tro
WHERE tro.status = 'active'
GROUP BY tro.eid
), -- timelined_request_offer - kérések aktiválásának ideje
voucher_pack AS (
SELECT
vp.eid,
sum(pvt.par) AS par
FROM ukk.simplelist_voucher_pack(now()) AS vp
LEFT JOIN ukk.simplelist_pack_voucher_type() AS pvt
ON (pvt.voucher_pack_id = vp.eid)
WHERE vp.status != 'deleted'
GROUP BY vp.eid
), -- voucher_pack - csomagok értéke
outer_person AS (
SELECT
op.eid,
coalesce(usr.user_name,op.user_name) AS user_name,
coalesce(psn.person_fullname, psn.person_lastname ||' '|| psn.person_firstname, op.full_name) AS person_name,
op.person_id,
usr.user_id,
op.financial_ident,
op.email,
op.phone_number
FROM ukk.simplelist_outer_person() AS op
LEFT JOIN ( bob.persons_active AS psn
LEFT JOIN bob.users_active AS usr
ON (usr.person_id = psn.person_id)
) ON (psn.person_id = op.person_id)
) -- outer_person - felhasználók és személyek adatai
SELECT
op.user_id,
op.user_name,
op.person_name,
array_agg(DISTINCT ofc.short_name ORDER BY ofc.short_name) AS office_names,
sum(ro_vp.par) AS request_offer_par,
sum(vp.par) AS bid_par,
count(bid.eid) AS count_all,
count((bid.status = 'rejected') OR NULL) AS count_rejected,
count((bid.status = 'accepted') OR (bid.status = 'closed' AND ro.status != 'closed') OR NULL) AS count_pending,
count((bid.status = 'closed' AND ro.status = 'closed') OR NULL) AS count_closed
FROM ukk.simplelist_bid(now()) AS bid
JOIN ukk.simplelist_request_offer(now()) AS ro
ON (ro.eid = bid.request_offer_id)
JOIN timelined_request_offer AS t_ro
ON (t_ro.eid = ro.eid)
JOIN outer_person AS op
ON (op.eid = bid.outer_person_id)
JOIN ukk.simplelist_office(now()) AS ofc
ON (ofc.eid = ro.office_id)
JOIN voucher_pack AS vp
ON (vp.eid = bid.supply_voucher_pack_id)
JOIN voucher_pack AS ro_vp
ON (ro_vp.eid = ro.demand_voucher_pack_id)
WHERE bid.status != 'deleted'
-- AND bid.creation_time BETWEEN '2015-09-09' AND '2015-09-10' -- szűrés ajánlattétel időpontja szerint
-- AND t_ro.creation_time BETWEEN '2015-09-09' AND '2015-09-10' -- szűrés ajánlatkérés időpontja szerint
-- AND op.user_name = 'solyom.sandor' -- szűrés felhasználó szerint
GROUP BY
op.user_id,
op.user_name,
op.person_name
ORDER BY op.user_name;
Adott ügylet története
Tárolt eljárás neve:
ukk.timeline_request(now())
Visszaadott értékek:
-
entity
: 'request_offer':ajánlatkérés, 'bid':ajánlat
-
eid
: egyed azonosítója
-
id
: rekord azonosítója
-
change_date
: változás dátuma
-
change_time
: változás ideje
-
status
: rekord állapota
-
request_offer_id
: ajánlatkérés egyed-azonosítója
-
offering_type_label
: ajánlatkérés típusa
-
offering_type
: ajánlatkérés típusa
-
is_complaint
: központi lezárásra vár?
-
for_par
: kérés összege
-
to_par
: ajánlott összeg
-
user_id
: felhasználó azonosítója
-
user_name
: felhasználói név
-
person_name
: személy neve
-
office_id
: iroda azonosítója
-
office_name
: iroda neve
Szűrési lehetőségek:
Rendezés:
- változás időpontja szerint
-- adott ügylet története
WITH
outer_person AS (
SELECT
op.eid,
coalesce(usr.user_name,op.user_name) AS user_name,
coalesce(psn.person_fullname, psn.person_lastname ||' '|| psn.person_firstname, op.full_name) AS person_name,
op.person_id,
usr.user_id,
op.financial_ident,
op.email,
op.phone_number
FROM ukk.simplelist_outer_person() AS op
LEFT JOIN ( bob.persons_active AS psn
LEFT JOIN bob.users_active AS usr
ON (usr.person_id = psn.person_id)
) ON (psn.person_id = op.person_id)
), -- outer_person - felhasználók és személyek adatai
office AS (
SELECT
ofc.eid,
ofc.short_name AS office_name
FROM ukk.simplelist_office(now()) AS ofc
), -- office
voucher_pack AS (
SELECT
vp.eid,
sum(pvt.par) AS par
FROM ukk.simplelist_voucher_pack(now()) AS vp
LEFT JOIN ukk.simplelist_pack_voucher_type() AS pvt
ON (pvt.voucher_pack_id = vp.eid)
WHERE vp.status != 'deleted'
GROUP BY vp.eid
), -- voucher_pack - csomagok értéke
accepted_bid AS (
SELECT
bid.request_offer_id,
vp.par
FROM ukk.bid AS bid
LEFT JOIN voucher_pack AS vp
ON (vp.eid = bid.supply_voucher_pack_id)
WHERE bid.status IN ('accepted','closed')
AND bid.request_offer_id = 6--ro_id
), -- accepted_bid - elfogadott ajánlatok értéke
timelined_request_offer AS (
SELECT CAST('request_offer' AS varchar) AS entity,
ro.eid,
ro.id,
ro.creation_time AS change_time,
ro.status,
ro.eid AS request_offer_id,
vp.par AS for_par,
s_vp.par AS to_par,
op.user_id,
op.user_name,
op.person_name,
ofc.eid AS office_id,
ofc.office_name,
ot.label AS offering_type_label,
CAST(ot.short_name AS varchar) AS offering_type,
ro.is_complaint
FROM ukk.request_offer AS ro
JOIN outer_person AS op
ON (op.eid = ro.outer_person_id)
LEFT JOIN voucher_pack AS vp
ON (vp.eid = ro.demand_voucher_pack_id)
LEFT JOIN voucher_pack AS s_vp
ON (s_vp.eid = ro.supply_voucher_pack_id)
LEFT JOIN office AS ofc
ON (ofc.eid = ro.office_id)
LEFT JOIN ukk.simplelist_offering_type(now()) AS ot
ON (ot.eid = ro.offering_type_id)
WHERE ro.eid = 6--ro_id
ORDER BY ro.creation_time
), -- timelined_request_offer - kérés idősora
timelined_bid AS (
SELECT CAST('bid' AS varchar) AS entity,
bid.eid,
bid.id,
bid.creation_time AS change_time,
bid.status,
bid.request_offer_id,
vp.par AS for_par,
s_vp.par AS to_par,
op.user_id,
op.user_name,
op.person_name,
ofc.eid AS office_id,
ofc.office_name,
ot.label AS offering_type_label,
CAST(ot.short_name AS varchar) AS offering_type,
ro.is_complaint
FROM ukk.bid AS bid
JOIN ukk.simplelist_request_offer(now()) AS ro
ON (ro.eid = bid.request_offer_id)
JOIN outer_person AS op
ON (op.eid = bid.outer_person_id)
LEFT JOIN voucher_pack AS vp
ON (vp.eid = bid.demand_voucher_pack_id)
LEFT JOIN voucher_pack AS s_vp
ON (s_vp.eid = bid.supply_voucher_pack_id)
LEFT JOIN office AS ofc
ON (ofc.eid = bid.office_id)
LEFT JOIN ukk.simplelist_offering_type(now()) AS ot
ON (ot.eid = ro.offering_type_id)
WHERE bid.request_offer_id = 6--ro_id
ORDER BY bid.creation_time
) -- timelined_request_offer - kérés idősora
SELECT
entity,
eid,
id,
CAST(change_time AS date) AS change_date,
CAST(change_time AS timetz) AS change_time,
status,
request_offer_id,
offering_type_label,
offering_type,
is_complaint,
for_par,
to_par,
user_id,
user_name,
person_name,
office_id,
office_name
FROM (
SELECT *
FROM timelined_request_offer AS ro
UNION
SELECT *
FROM timelined_bid AS bid
) AS timeline
ORDER BY timeline.change_time;
Nyitott ügyletek listája
Tárolt eljárás neve:
ukk.list_open_request(now())
Visszaadott értékek:
-
eid
: ajánlatkérés rekord-azonosítója
-
request_offer_id
: ajánlatkérés rekord-azonosítója
-
request_offer_status
: ajánlatkérés állapota
-
bid_id
: ajánlat rekord-azonosítója
-
bid_status
: ajánlat állapota
-
is_complaint
: központi döntésre vár?
-
par
: ajánlatkérés összege
-
bid_par
: ajánlat összege
-
creation_date
: utalványcsomag létrehozásának dátuma
-
creation_time
: utalványcsomag létrehozásának ideje
-
request_date
: ajánlatkérés aktiválásának dátuma
-
request_time
: ajánlatkérés aktiválásának ideje
-
last_modification_date
: ajánlatkérés utolsó módosításának dátuma
-
last_modification_time
: ajánlatkérés utolsó módosításának ideje
-
accept_bid_date
: ajánlat elfogadásának dátuma
-
accept_bid_time
: ajánlat elfogadásának ideje
-
request_offer_outer_person_id
: ajánlatkérő személy azonosítója
-
request_offer_user_id
: ajánlatkérő felhasználó azonosítója
-
request_offer_user_name
: ajánlatkérő felhasználó neve
-
request_offer_person_name
: ajánlatkérő személy neve
-
bid_outer_person_id
: ajánlatadó személy azonosítója
-
bid_user_id
: ajánlatadó felhasználó azonosítója
-
bid_user_name
: ajánlatadó felhasználó neve
-
bid_person_name
: ajánlatadó személy neve
-
voucher_pack_id
: ajánlatkérés utalványcsomag azonosítója
-
bid_voucher_pack_id
: ajánlat utalványcsomag azonosítója
-
city_id
: település azonosítója
-
office_name
: iroda neve
-
count_bid
: ajánlatkérésre adott ajánlatok száma
Szűrési lehetőségek:
Rendezés:
- ajánlat elfogadásának időpontja szerint
-- nyitott ügyletek listája
WITH
outer_person AS (
SELECT
op.eid,
coalesce(usr.user_name,op.user_name) AS user_name,
coalesce(psn.person_fullname, psn.person_lastname ||' '|| psn.person_firstname, op.full_name) AS person_name,
op.person_id,
usr.user_id,
op.financial_ident,
op.email,
op.phone_number
FROM ukk.simplelist_outer_person() AS op
LEFT JOIN ( bob.persons_active AS psn
LEFT JOIN bob.users_active AS usr
ON (usr.person_id = psn.person_id)
) ON (psn.person_id = op.person_id)
), -- outer_person - felhasználók és személyek adatai
create_request_offer AS (
SELECT
tro.eid,
tro.creation_time
FROM ukk.request_offer AS tro
WHERE tro.id = tro.eid
), -- active_request_offer - kérések aktiválásának ideje
active_request_offer AS (
SELECT
tro.eid,
min(tro.creation_time) AS creation_time
FROM ukk.request_offer AS tro
WHERE tro.status = 'active'
GROUP BY tro.eid
), -- active_request_offer - kérések aktiválásának ideje
voucher_pack AS (
SELECT
pvt.voucher_pack_id AS eid,
vp.description,
sum(coalesce(pvt.par,0)) AS par,
array_agg(distinct pvt.voucher_type_id) as voucher_type_ids
FROM ukk.simplelist_pack_voucher_type() AS pvt
JOIN ukk.simplelist_voucher_pack(now()) AS vp
ON (vp.eid = pvt.voucher_pack_id)
WHERE pvt.status != 'deleted'
GROUP BY pvt.voucher_pack_id, vp.description
), -- voucher_pack
bid AS (
SELECT
bid.request_offer_id,
count(bid.eid) AS count_bid
FROM ukk.simplelist_bid(now()) AS bid
WHERE bid.status != 'deleted'
GROUP BY bid.request_offer_id
), -- bid
bid_accept_time AS (
SELECT
min(bid.request_offer_id) AS request_offer_id,
min(bid.creation_time) AS creation_time
FROM ukk.bid AS bid
WHERE bid.status = 'accepted'
GROUP BY bid.eid
), -- bid_accept_time - ajánlat elfogadásának ideje
accepted_bid AS (
SELECT
bid.eid,
bid.request_offer_id,
bid.status,
vp.eid AS voucher_pack_id,
vp.par,
bid.outer_person_id,
op.user_id,
op.user_name,
op.person_name
FROM ukk.bid AS bid
JOIN voucher_pack AS vp
ON (vp.eid = bid.supply_voucher_pack_id)
JOIN outer_person AS op
ON (op.eid = bid.outer_person_id)
WHERE bid.status IN ('accepted','closed')
) -- accepted_bid - elfogadott ajánlatok értéke
SELECT
ro.eid,
ro.eid AS request_offer_id,
ro.status AS request_offer_status,
accepted_bid.eid AS bid_id,
accepted_bid.status AS bid_status,
ro.is_complaint,
vp.par,
accepted_bid.par AS bid_par,
CAST(c_ro.creation_time AS date) AS creation_date,
CAST(c_ro.creation_time AS timetz) AS creation_time,
CAST(a_ro.creation_time AS date) AS request_date,
CAST(a_ro.creation_time AS timetz) AS request_time,
CAST(coalesce(ro.modification_time,ro.creation_time) AS date) AS last_modification_date,
CAST(coalesce(ro.modification_time,ro.creation_time) AS timetz) AS last_modification_time,
CAST(a_bid.creation_time AS date) AS accept_bid_date,
CAST(a_bid.creation_time AS timetz) AS accept_bid_time,
ro.outer_person_id AS request_offer_outer_person_id,
op.user_id AS request_offer_user_id,
op.user_name AS request_offer_user_name,
op.person_name AS request_offer_person_name,
accepted_bid.outer_person_id AS bid_outer_person_id,
accepted_bid.user_id AS bid_user_id,
accepted_bid.user_name AS bid_user_name,
accepted_bid.person_name AS bid_person_name,
vp.eid AS voucher_pack_id,
accepted_bid.voucher_pack_id AS bid_voucher_pack_id,
ofc.city_id,
ofc.short_name AS office_name,
CAST(coalesce(bid.count_bid,0) AS integer) AS count_bid
FROM ukk.simplelist_request_offer(now()) AS ro
JOIN voucher_pack AS vp
ON (vp.eid = ro.demand_voucher_pack_id)
JOIN create_request_offer AS c_ro
ON (c_ro.eid = ro.eid)
LEFT JOIN active_request_offer AS a_ro
ON (a_ro.eid = ro.eid)
JOIN bid AS bid
ON (bid.request_offer_id = ro.eid)
JOIN accepted_bid AS accepted_bid
ON (accepted_bid.request_offer_id = ro.eid)
JOIN bid_accept_time AS a_bid
ON (a_bid.request_offer_id = ro.eid)
JOIN outer_person AS op
ON (op.eid = ro.outer_person_id)
LEFT JOIN ukk.simplelist_office(now()) as ofc
ON (ofc.eid = ro.office_id)
WHERE ( ro.status = 'closed' AND accepted_bid.status = 'accepted' )
OR ( ro.status = 'active' AND accepted_bid.status = ANY(ARRAY['accepted','closed']))
ORDER BY a_bid.creation_time DESC;
Lezárt ügyletek listája
Tárolt eljárás neve:
ukk.list_closed_request(now())
Visszaadott értékek:
-
request_offer_id
: ajánlatkérés rekord-azonosítója
-
bid_id
: ajánlat rekord-azonosítója
-
close_date
: ajánlatkérés lezárásának dátuma
-
close_time
: ajánlatkérés lezárásának ideje
-
request_offer_user_id
: ajánlatkérő felhasználó azonosítója
-
request_offer_user_name
: ajánlatkérő felhasználó neve
-
request_offer_person_name
: ajánlatkérő személy neve
-
bid_user_id
: ajánlatadó felhasználó azonosítója
-
bid_user_name
: ajánlatadó felhasználó neve
-
bid_person_name
: ajánlatadó személy neve
-
office_id
: iroda azonosítója
-
office_name
: iroda neve
-
request_offer_par
: ajánlatkérések összértéke
-
bid_par
: ajánlatok összértéke
-
profit
: nyereség
Szűrési lehetőségek:
- irodák szerint
- ajánlatkérés zárásának időpontja szerint
Rendezés:
- ajánlatkérés lezárása szerint
-- lezárt ügyletek listája
WITH
outer_person AS (
SELECT
op.eid,
coalesce(usr.user_name,op.user_name) AS user_name,
coalesce(psn.person_fullname, psn.person_lastname ||' '|| psn.person_firstname, op.full_name) AS person_name,
op.person_id,
usr.user_id,
op.financial_ident,
op.email,
op.phone_number
FROM ukk.simplelist_outer_person() AS op
LEFT JOIN ( bob.persons_active AS psn
LEFT JOIN bob.users_active AS usr
ON (usr.person_id = psn.person_id)
) ON (psn.person_id = op.person_id)
), -- outer_person - felhasználók és személyek adatai
voucher_pack AS (
SELECT
pvt.voucher_pack_id AS eid,
vp.description,
sum(coalesce(pvt.par,0)) AS par,
array_agg(distinct pvt.voucher_type_id) as voucher_type_ids
FROM ukk.simplelist_pack_voucher_type() AS pvt
JOIN ukk.simplelist_voucher_pack(now()) AS vp
ON (vp.eid = pvt.voucher_pack_id)
WHERE pvt.status != 'deleted'
GROUP BY pvt.voucher_pack_id, vp.description
), -- voucher_pack
bid AS (
SELECT
bid.eid,
bid.request_offer_id,
bid.outer_person_id,
vp.par
FROM ukk.bid AS bid
JOIN voucher_pack AS vp
ON (vp.eid = bid.supply_voucher_pack_id)
WHERE bid.status = 'closed'
) -- bid - elfogadott ajánlatok értéke
SELECT
ro.eid AS request_offer_id,
bid.eid As bid_id,
CAST(coalesce(ro.modification_time,ro.creation_time) AS date) AS close_date,
CAST(coalesce(ro.modification_time,ro.creation_time) AS timetz) AS close_time,
ro_op.user_id AS request_offer_user_id,
ro_op.user_name AS request_offer_user_name,
ro_op.person_name AS request_offer_person_name,
bid_op.user_id AS bid_user_id,
bid_op.user_name AS bid_user_name,
bid_op.person_name AS bid_person_name,
ro.office_id,
ofc.short_name AS office_name,
vp.par AS request_offer_par,
bid.par AS bid_par,
100-(vp.par/bid.par*100) AS profit
FROM ukk.simplelist_request_offer(now()) AS ro
JOIN outer_person AS ro_op
ON (ro_op.eid = ro.outer_person_id)
JOIN voucher_pack AS vp
ON (vp.eid = ro.demand_voucher_pack_id)
JOIN bid AS bid
ON (bid.request_offer_id = ro.eid)
JOIN outer_person AS bid_op
ON (bid_op.eid = bid.outer_person_id)
JOIN ukk.simplelist_office(now()) AS ofc
ON (ofc.eid = ro.office_id)
WHERE ro.status = 'closed'
-- AND ro.office_id = 1
-- AND coalesce(ro.modification_time,ro.creation_time) BETWEEN '2015-09-06' AND '2015-10-08' -- szűrés zárás időpontja szerint
ORDER BY coalesce(ro.modification_time,ro.creation_time);
Forgalom (lezárt ügyletek összesítése) irodák szerinti bontásban
Tárolt eljárás neve:
ukk.stat_closed_request(now())
Visszaadott értékek:
-
office_id
: iroda azonosítója
-
office_name
: iroda neve
-
request_offer_par
: ajánlatkérések összértéke
-
bid_par
: ajánlatok összértéke
-
profit
: nyereség
Szűrési lehetőségek:
Rendezés:
-- forgalom (lezárt ügyletek összesítése) irodák szerinti bontásban
WITH
voucher_pack AS (
SELECT
pvt.voucher_pack_id AS eid,
vp.description,
sum(coalesce(pvt.par,0)) AS par,
array_agg(distinct pvt.voucher_type_id) as voucher_type_ids
FROM ukk.simplelist_pack_voucher_type() AS pvt
JOIN ukk.simplelist_voucher_pack(now()) AS vp
ON (vp.eid = pvt.voucher_pack_id)
WHERE pvt.status != 'deleted'
GROUP BY pvt.voucher_pack_id, vp.description
), -- voucher_pack
bid AS (
SELECT
bid.eid,
bid.request_offer_id,
vp.par
FROM ukk.bid AS bid
JOIN voucher_pack AS vp
ON (vp.eid = bid.supply_voucher_pack_id)
WHERE bid.status = 'closed'
) -- bid - elfogadott ajánlatok értéke
SELECT
ro.office_id,
ofc.short_name AS office_name,
sum(vp.par) AS request_offer_par,
sum(bid.par) AS bid_par,
100-(sum(vp.par)/sum(bid.par)*100) AS profit
FROM ukk.simplelist_request_offer(now()) AS ro
JOIN voucher_pack AS vp
ON (vp.eid = ro.demand_voucher_pack_id)
JOIN bid AS bid
ON (bid.request_offer_id = ro.eid)
JOIN ukk.simplelist_office(now()) AS ofc
ON (ofc.eid = ro.office_id)
WHERE ro.status = 'closed'
-- AND coalesce(ro.modification_time,ro.creation_time) BETWEEN '2015-09-06' AND '2015-10-08' -- szűrés zárás időpontja szerint
GROUP BY ro.office_id, ofc.short_name
ORDER BY ofc.short_name;
Utalványcsomag ellenőrzéskor felmerült jelzések
Tárolt eljárás neve:
ukk.statdetails_event(now())
Visszaadott értékek:
-
event_id
: esemény rekord-azonosítója
-
event_date
: esemény dátuma
-
event_time
: esemény ideje
-
par
: utalványcsomag értéke
-
user_id
: felhasználó rekord-azonosítója
-
outer_person_id
: külső felhasználó
-
user_name
: felhasználók neve
-
person_name
: személy neve
-
request_offer_id
: ajánlatkérés rekord-azonosítója
-
voucher_pack_id
: utalványcsomag rekord-azonosítója
-
entity_name
: kapcsolódó entitás (request_offer:ajánlatkérés, bid:ajánlat))
-
entity_id
: kapcsolódó entitás azonosítója
-
event_type_label
: eseménytípus azonosító címkéje
-
event_type_name
: eseménytípus neve
-
event_type_full_name
: eseménytípus teljes neve
-
color_code
: eseménytípus színkódja
-
is_show
: felhasználó előtt megjelenítendő:
-
mandator_name
: kibocsátó neve
-
voucher_type_name
: utalványtípus neve
-
denomination_name
: címlet
-
validity_date
: utalványok érvényességének lejárta
-
prefix
: előteg
-
suffix
: utótag
-
start_number
: kezdő sorszám
-
end_number
: záró sorszám
Szűrési lehetőségek:
- esemény típusa szerint
- esemény időpontja szerint
Rendezés:
- esemény időpontja szerint
-- utalványcsomag ellenőrzéskor felmerült jelzések
WITH
outer_person AS (
SELECT
op.eid,
coalesce(usr.user_name,op.user_name) AS user_name,
coalesce(psn.person_fullname, psn.person_lastname ||' '|| psn.person_firstname, op.full_name) AS person_name,
op.person_id,
usr.user_id,
op.financial_ident,
op.email,
op.phone_number
FROM ukk.simplelist_outer_person() AS op
LEFT JOIN ( bob.persons_active AS psn
LEFT JOIN bob.users_active AS usr
ON (usr.person_id = psn.person_id)
) ON (psn.person_id = op.person_id)
), -- outer_person - felhasználók és személyek adatai
voucher_pack AS (
SELECT
pvt.voucher_pack_id AS eid,
sum(coalesce(pvt.par,pvt.quantity,0)) AS par
FROM ukk.simplelist_pack_voucher_type() AS pvt
JOIN ukk.simplelist_voucher_pack(now()) AS vp
ON (vp.eid = pvt.voucher_pack_id)
WHERE pvt.status != 'deleted'
GROUP BY pvt.voucher_pack_id
), -- voucher_pack
serial_interval_of_event AS (
SELECT
sie.event_id,
mdt.short_name AS mandator_name,
vt.short_name AS voucher_type_name,
coalesce(den.full_name,den.short_name) AS denomination_name,
sie.validity_date,
sie.prefix,
sie.suffix,
sie.start_number,
sie.end_number
FROM ukk.simplelist_serial_interval_of_event() AS sie
JOIN ukk.simplelist_pack_denomination() AS pd
ON (pd.eid = sie.pack_denomination_id)
JOIN ukk.simplelist_voucher_type_denomination() AS vtd
ON (pd.voucher_type_denomination_id = vtd.eid)
JOIN ukk.simplelist_voucher_type(now()) AS vt
ON (vt.eid = vtd.voucher_type_id)
JOIN ukk.simplelist_mandator() AS mdt
ON (mdt.label = vt.mandator_label)
JOIN ukk.simplelist_denomination(now()) AS den
ON (den.eid = vtd.denomination_id)
WHERE sie.status != 'deleted'
order by event_id
) -- serial_interval_of_event
SELECT
evnt.eid AS event_id,
CAST(evnt.creation_time AS date) AS event_date,
CAST(evnt.creation_time AS timetz) AS event_time,
vp.par,
evnt.user_id,
op.eid AS outer_person_id,
op.user_name AS user_name,
op.person_name AS person_name,
evnt.request_offer_id,
evnt.voucher_pack_id,
CASE WHEN ro.eid IS NOT NULL THEN
'request_offer'
ELSE
CASE WHEN bid.eid IS NOT NULL THEN
'bid'
ELSE
CAST(NULL AS varchar)
END
END AS entity_name,
coalesce(ro.eid,bid.eid) AS entity_id,
evnt.event_type_label,
et.short_name AS event_type_name,
et.full_name AS event_type_full_name,
et.color_code,
et.is_show,
sie.mandator_name,
sie.voucher_type_name,
sie.denomination_name,
sie.validity_date,
sie.prefix,
sie.suffix,
sie.start_number,
sie.end_number
FROM ukk.simplelist_event() AS evnt
JOIN ukk.simplelist_event_type() AS et
ON (et.label = evnt.event_type_label)
LEFT JOIN outer_person AS op
ON (op.user_id = evnt.user_id)
LEFT JOIN voucher_pack AS vp
ON (vp.eid = evnt.voucher_pack_id)
LEFT JOIN serial_interval_of_event AS sie
ON (sie.event_id = evnt.eid)
LEFT JOIN ukk.simplelist_request_offer(now()) AS ro
ON (ro.eid = evnt.request_offer_id AND ro.demand_voucher_pack_id = evnt.voucher_pack_id)
LEFT JOIN ukk.simplelist_bid(now()) AS bid
ON (bid.request_offer_id = evnt.request_offer_id AND bid.supply_voucher_pack_id = evnt.voucher_pack_id)
WHERE evnt.status != 'deleted'
-- AND evnt.event_type_label = 'large_value_pack'
-- AND evnt.creation_time BETWEEN '2015-09-06' AND '2015-09-10' -- szűrés esemény időpontja szerint
ORDER BY evnt.creation_time;