From db421e12fdcb7ba5810e65e02b5cbfde9879971c Mon Sep 17 00:00:00 2001 From: msyu Date: Fri, 29 Aug 2025 23:46:53 +0300 Subject: [PATCH] 019 some version navigation --- Application.cfc | 2 +- additional_agreement.cfm | 59 ++++----- deal.cfm | 16 +-- deal_service.cfm | 254 ++++++++++++++++++++++++++++++++------- 4 files changed, 255 insertions(+), 76 deletions(-) diff --git a/Application.cfc b/Application.cfc index 9e9365a..9e27455 100644 --- a/Application.cfc +++ b/Application.cfc @@ -99,7 +99,7 @@ - + diff --git a/additional_agreement.cfm b/additional_agreement.cfm index 3dacd23..8a9edc7 100644 --- a/additional_agreement.cfm +++ b/additional_agreement.cfm @@ -58,7 +58,7 @@ ,k.id_klienta as wz from elma.aggrements c left outer join elma.companies k on (c.company_uid=k.__id) - where c.__id= + where c.__id= @@ -126,7 +126,7 @@ from elma.additional_agreements a left outer join elma.deals d on (a.deal_uid=d.__id) left outer join s on (d.__status_status=s.status_id) - where a.contract_uid= + where a.contract_uid= order by index @@ -143,9 +143,12 @@
Договор
- @@ -162,25 +165,27 @@
Сделка
- #d.deal_uid# - - with - s(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) - ) - select d.__id::text - , d.__name - , d.__status_status - , s.status - , s.probability_pc - from elma.deals d - left outer join s on (d.__status_status=s.status_id) - where d.__id= - - #qDeal.__name# - (#qDeal.status#: - #qDeal.probability_pc#%) + + #d.deal_uid# + + with + s(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) + ) + select d.__id::text + , d.__name + , d.__status_status + , s.status + , s.probability_pc + from elma.deals d + left outer join s on (d.__status_status=s.status_id) + where d.__id= + + #qDeal.__name# + (#qDeal.status#: + #qDeal.probability_pc#%) +
@@ -190,7 +195,7 @@ select services_::text from elma.additional_agreements a - where a.__id= + where a.__id= #qService_.services_# (обратная ссылка)
@@ -204,7 +209,7 @@ , b.__name from elma.additional_agreements a join elma.additional_agreements b on (b.__id = ANY(a.base_by)) - where a.__id= + where a.__id= #qBaseBy.__id# #qBaseBy.__name# @@ -239,7 +244,7 @@ ,siv.is_easy ,siv.params::text from elma.deals_services siv - where =ANY(siv.additional_agreement) + where =ANY(siv.additional_agreement) order by type diff --git a/deal.cfm b/deal.cfm index 073145e..566b714 100644 --- a/deal.cfm +++ b/deal.cfm @@ -76,7 +76,7 @@ left outer join elma.companies k on (d._companies=k.__id) left outer join elma.comp_users_ext c on (d._owner=c.__id) left outer join s on (d.__status_status=s.status_id) - where d.__id= + where d.__id= @@ -157,7 +157,7 @@ ,g.date_of_aggrement from elma.additional_agreements a join elma.aggrements g on (a.contract_uid=g.__id) - where a.deal_uid= + where a.deal_uid= #__name# @@ -242,7 +242,7 @@ ) as param_cnt from elma.deals_services siv left outer join elma.additional_agreements a on (a.__id=ANY(siv.additional_agreement)) - where =ANY(siv.deal) + where =ANY(siv.deal) and siv.is_actual order by version::int @@ -255,11 +255,12 @@ - + + @@ -273,7 +274,7 @@ - + @@ -281,11 +282,12 @@ - + + @@ -299,7 +301,7 @@ - + diff --git a/deal_service.cfm b/deal_service.cfm index 66fbc9a..7dff5c9 100644 --- a/deal_service.cfm +++ b/deal_service.cfm @@ -20,6 +20,7 @@ + @@ -51,16 +52,12 @@ /> - + ds."__createdAt" + from elma.deals_services ds + where ds.__id= + - #qDeal.__id# - #qDeal.contragent# | #qDeal.wz# | - #qDeal.__name# | - _plannedDueDate: #dateFormat(qDeal._plannedDueDate,'DD.MM.YYYY')#-- - #qDeal.__status_status#: #qDeal.status# (#qDeal.probability_pc#%) + + #qDeal.__id# + #qDeal.contragent# | #qDeal.wz# | + #qDeal.__name# | + _plannedDueDate: #dateFormat(qDeal._plannedDueDate,'DD.MM.YYYY')#-- + #qDeal.__status_status#: #qDeal.status# (#qDeal.probability_pc#%) + @@ -218,14 +269,16 @@ join elma.additional_agreements b on (b.__id = ANY(a.base_by)) left outer join elma.aggrements c on (a.contract_uid=c.__id) left outer join elma.companies z on (c.company_uid=z.__id) - where siv.__id= + where siv.__id= - #qAdditionalAgreement.__id# #qAdditionalAgreement.contragent# #qAdditionalAgreement.wz# - #qAdditionalAgreement.contract# #qAdditionalAgreement.additional_agreement# - is_actual: #qAdditionalAgreement.is_actual# - last_aa: #qAdditionalAgreement.last_aa# - base_by: #qAdditionalAgreement.base_by_uid# + + #qAdditionalAgreement.__id# #qAdditionalAgreement.contragent# #qAdditionalAgreement.wz# + #qAdditionalAgreement.contract# #qAdditionalAgreement.additional_agreement# + is_actual: #qAdditionalAgreement.is_actual# + last_aa: #qAdditionalAgreement.last_aa# + base_by: #qAdditionalAgreement.base_by_uid# + @@ -238,7 +291,7 @@ select params::text from elma.deals_services siv - where siv.__id= + where siv.__id= #qParam.params# (обратная ссылка) @@ -261,6 +314,7 @@ select p.__id + ,p.__index ,p.__name ,p.type ,p.price @@ -274,7 +328,7 @@ ,(p.price*p.cnt*(100-COALESCE(p.discount,0))/100) as param_cost from elma.service_parametrs p join elma.deals_services siv on (p.__id = ANY (siv.params)) - where siv.__id= + where siv.__id= order by type @@ -291,24 +345,24 @@
__id__index user_description Кол-во Скидка%Сумма abstractive_service_code modifier_code is_actualdate_end is_easy КомпонентовСумма additional_agreement
#__id##__index# #user_description# #cnt# #discount##nFmt(line_cost)# #abstractive_service_code# #modifier_code# #is_actual##dateFormat(date_end,'YYYY-MM-DD')# ПростаяКомпозитнаяis_easy=#is_easy# #param_cnt##nFmt(line_cost)# #additional_agreement#
- + - - - - + + + + - - + + - + @@ -318,8 +372,8 @@ - - + + @@ -332,19 +386,137 @@
__id__index type code namecnted_izmpriceСкидка%Кол-воЕд.изм.ЦенаСкидка % Ст-тьdeal__index__id
#__id##__index# #type# #code##price# #discount# #nFmt(param_cost)##deal##__index##__id#
- + - select __id::text, __index, version, date_nop, date_end, user_description, type, is_easy, cnt, discount, is_actual + 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) + ) + select siv.__id::text, siv.__index, siv.version + , siv.date_nop, siv.date_end, siv.user_description + , siv.type, siv.is_easy, siv.cnt, siv.discount + , siv.is_actual, siv."__createdAt" + , d.__id::text as deal_uid, d.__index as deal_index, d.__name as deal, d.__status_status + , a.__id::text as aa_uid, a.index as aa_version, a.__name as additional_agreement + , status.status, status.probability_pc ,(select sum(siv.cnt*(100-COALESCE(siv.discount,0))/100*p.price*p.cnt*(100-COALESCE(p.discount,0))/100) from elma.service_parametrs p where p.__id = ANY (siv.params) ) as line_cost from elma.deals_services siv + left outer join elma.additional_agreements a on (a.__id = ANY(siv.additional_agreement)) + left outer join elma.deals d on (d.__id = ANY(siv.deal)) + left outer join status on (d.__status_status = status.status_id) where hash= - order by __index, version + order by siv.__index, siv.version + + + + select * from qVer where is_actual > 0 - + + + +

Версии строки (без черновиков) (#qVerActual.recordCount#)

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Индекс версииСозданаВерсия доп.с.Версия строкиis_actualНОУКОУUser DescriptiontypeКол-воСкидка%Ст-тьСделкаСтатусВер-тьДоп.с.
#__index##dateFormat(__createdAt,"YYYY-MM-DD")##aa_version##version##is_actual##dateFormat(date_nop,"YYYY-MM-DD")##dateFormat(date_end,"YYYY-MM-DD")##user_description##type##cnt##discount##nFmt(line_cost)##deal##__status_status##probability_pc##additional_agreement#
+ + + +

Версии строки (включая черновики) (#qVer.recordCount#)

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Индекс версииСозданаВерсия доп.с.Версия строкиis_actualНОУКОУUser DescriptiontypeКол-воСкидка%Ст-тьСделкаСтатусВер-тьДоп.с.
#__index##dateFormat(__createdAt,"YYYY-MM-DD")##aa_version##version##is_actual##dateFormat(date_nop,"YYYY-MM-DD")##dateFormat(date_end,"YYYY-MM-DD")##user_description##type##cnt##discount##nFmt(line_cost)##deal##__status_status##probability_pc##additional_agreement#
+ + + + + \ No newline at end of file