SELECT t.name AS tenant upper(m.clientid) AS wz m.status m.end_test_date null as dt_end_of_test v.name AS vdc p.name AS provider_vdc CASE WHEN v.name LIKE '%-v1cl1%' THEN 'iaas.ngc.i29' WHEN v.name LIKE '%-v1cl2%' THEN 'iaas.ngc.i31' WHEN v.name LIKE '%-v1cl4%' THEN 'iaas.ngc.a28' WHEN v.name LIKE '%-v1cl5%' THEN 'iaas.ngc.a45' WHEN v.name LIKE '%-v1cl6%' THEN 'iaas.ngc.i28' WHEN v.name LIKE '%-v1cl7%' THEN 'iaas.ngc.a40' ELSE '['||v.name||']' END AS code sp.name AS storage_profile round(AVG(c."limit")/1024.) AS limit_gb round(AVG(c."used")/1024.) AS alloc_gb tm.ts FROM ngcloud_ru.capacity_storage c JOIN ngcloud_ru.storage_profile_types sp ON c.storage_profile_types_id = sp.id JOIN ngcloud_ru.vdc v ON c.vdc_id = v.id JOIN ngcloud_ru.provider_vdc p ON v.provider_vdc_id = p.id JOIN ngcloud_ru.tenant t ON t.id = v.tenant_id LEFT JOIN LATERAL ( SELECT tm.ts, tm.metadata_id FROM ngcloud_ru.tenant_metadata tm WHERE tm.tenant_id = t.id ORDER BY tm.ts DESC, tm.metadata_id DESC LIMIT 1 ) tm ON true LEFT JOIN ngcloud_ru.metadata m ON tm.metadata_id = m.id WHERE c.timestamp >= GROUP BY m.clientid, v.name, p.name, sp.name, t.name, m.status, m.end_test_date, tm.ts SELECT upper(k.id_klienta) as wz, k.__id as id, c.__name as responsible, c.email as responsible_email, c.__status_status as responsible_status from elma.companies k LEFT OUTER JOIN elma.comp_users_ext c on (k.responsible=c.__id) WITH status(status, status_id, probability_pc) AS (VALUES ('Закрыта неуспешно',7,0),('Закрыта успешно',6,100),('Договор подписан',5,100),('Договор на подписании',15,90),('Договор на согласовании',12,70), ('Тестирование',8,50),('Отправлено ТКП',10,20),('Внутреннее согласование',37,10),('Проработка решения',4,10),('Сбор потребностей',1,0) ), current_deal AS (select d.__id, d._companies, d.__status_status, d.__index, d.__name, d.kommentarii_k_sdelke, d."__statusComment", d."__deletedAt", d.is_corrective_transaction, a.__id as additional_agreement_uid, a.__name as additional_agreement, g.__id as contract_uid, g.__name as contract, g.date_of_aggrement as dt_contract, g.agreement_id as contract_id /*сохранена авторская орфография*/ ,ROW_NUMBER() OVER (PARTITION BY _companies ORDER BY d.__index DESC) rn from elma.deals d join status s on (d.__status_status=s.status_id) left outer join elma.additional_agreements a on (d.__id=a.deal_uid) left outer join elma.aggrements g on (a.contract_uid = g.__id) where d."__deletedAt" IS NULL AND s.probability_pc > 0 AND NOT coalesce(d.is_corrective_transaction, false) AND NOT d.__status_status=7 ) SELECT z.id_klienta as wz, z.__name as company, d.__id::text as deal_uid, d.__status_status as status_id, s.status, d.__index as deal_index, d.__name as deal, d.additional_agreement_uid::text as additional_agreement_uid, d.additional_agreement, d.contract_uid::text as contract_uid, d.contract, d.dt_contract, d.contract_id FROM elma.companies z LEFT JOIN current_deal d ON (z.__id=d._companies AND d.rn=1) LEFT JOIN status s ON (d.__status_status=s.status_id) where z."__deletedAt" IS NULL ORDER BY z.id_klienta, d.__index DESC select s.tenant s.wz s.status s.end_test_date s.dt_end_of_test s.vdc s.provider_vdc s.code s.storage_profile s.limit_gb s.alloc_gb s.ts r.responsible r.responsible_email r.responsible_status d.deal_uid d.deal_index d.deal d.status_id d.status as deal_status d.additional_agreement_uid d.additional_agreement d.contract_uid d.contract d.dt_contract d.contract_id from qStorage s LEFT OUTER JOIN qResponsible r ON (s.wz=r.wz) LEFT OUTER JOIN qCurrentDeal d ON (s.wz=d.wz) ORDER BY Тесты и хранение class="b">#status# class="err">#responsible# class="err">#responsible_email# class="err">#responsible_status#
#wz# #tenant# b err">#dateFormat(dt_end_of_test,"YYYY-MM-DD")# #deal# #deal_status# [#status_id#] #additional_agreement# #contract# (#contract_id#) #dateFormat(dt_contract,"DD.MM.YYYY")# #VDC# #provider_vdc# #code# #storage_profile# b err">#limit_gb# b err">#alloc_gb# #dateFormaT(ts,"YYYY-MM-DD")# #timeFormaT(ts,"HH-MM")#