builder.pg avro_schema

This commit is contained in:
msyu
2025-09-13 11:40:16 +03:00
parent 951588a929
commit ab658a5a48
11 changed files with 341 additions and 56 deletions
+124 -4
View File
@@ -145,8 +145,7 @@
<cfoutput>
<h4>Договоры (#qContract.recordCount#)</h4>
</cfoutput>
</cfoutput>
<table class="worktable">
<thead>
<tr>
@@ -215,11 +214,14 @@
left outer join s on (d.__status_status=s.status_id)
left outer join elma.comp_users_ext u on (d._owner=c.__id)
where c.company_uid=<cfqueryparam cfsqltype="cf_sql_other" value=#d.__id# null=#!isValid("guid",d.__id)#/>
AND s.probability_pc > 0
</cfquery>
<cfoutput>
<h4>Доп. соглашения (#qAdditionalAgreement.recordCount#)</h4>
<h4>Доп. соглашения (#qAdditionalAgreement.recordCount#)
- исключены соглашения, сделки которых имеют нулевую вероятность
</h4>
</cfoutput>
<table class="worktable">
@@ -313,10 +315,12 @@
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._companies=<cfqueryparam cfsqltype="cf_sql_other" value="#d.__id#" null=#!isValid('guid',d.__id)#/>
AND s.probability_pc > 0
order by d.__index
</cfquery>
<cfoutput>
<h4>Сделки (#qDeal.recordCount#)</h4>
<h4>Сделки (#qDeal.recordCount#) - исключены сделки с нулевой вероятностью</h4>
</cfoutput>
<table class="worktable">
@@ -356,5 +360,121 @@
</cfoutput>
</table>
<!--- ----------------------------------------------------- --->
<!--- ----------------------------------------------------- --->
<!--- ----------------------------------------------------- --->
<cfquery name="qService">
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
,siv.__name
,siv.user_description
,siv.discount
,siv.cnt
,siv.modifier_code
,siv.abstractive_service_code
,siv.is_actual
,siv.type
,siv.hash
,siv.version
,siv.name_version
,siv.date_accept
,siv.__index
,siv.date_nop
,siv.date_end
,siv.is_easy
,siv.params::text
,a.__id::text as additional_agreement_uid
,a.__name as additional_agreement
,(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
,(select count(*)
from elma.service_parametrs p
where p.__id = ANY (siv.params)
) as param_cnt
,s.probability_pc
,d.__index
,d.__id as deal_uid
from elma.deals_services siv
join elma.deals d on d.__id=ANY(siv.deal)
join status s on (d.__status_status=s.status_id)
left outer join elma.additional_agreements a on (a.__id=ANY(siv.additional_agreement))
where d._companies=<cfqueryparam cfsqltype="cf_sql_other" value="#d.__id#" null=#!isValid("guid",d.__id)#/>
and siv.is_actual
order by version::int
</cfquery>
<cfoutput>
<h4>Услуги (версии строк спецификации, только актуальные) (#qService.recordCount#)</h4>
</cfoutput>
<!--- <layout:render_query query=#qService#/> --->
<table class="worktable">
<thead>
<tr>
<th>__index</th>
<!--- <th>__name</th> --->
<th width="12%">user_description</th>
<th>Кол-во</th>
<th>Скидка%</th>
<th width="5%">Сумма</th>
<th>Код</th>
<th>type</th>
<th>is_actual</th>
<th>hash</th>
<th>version</th>
<th>name_version</th>
<th>date_accept</th>
<th>__index</th>
<th width="5%">date_nop</th>
<th width="5%">date_end</th>
<th>is_easy</th>
<th>Компонентов</th>
<th width="12%">additional_agreement</th>
</tr>
</thead>
<cfoutput query="qService">
<tr>
<td class="c"><a href="deal_service.cfm?__id=#__id#&#tr.fwx#" title="__id">#__index#</a></td>
<!--- <td class="c">#__name#</td> --->
<td class="l">#user_description#</td>
<td class="c">#cnt#</td>
<td class="c">#discount#</td>
<td class="r">#nFmt(line_cost)#</td>
<td class="l">
#abstractive_service_code#.#modifier_code#<!--- <cfswitch expression=#type#>
<cfcase value=1>-i</cfcase>
<cfcase value=2>-f</cfcase>
<cfcase value=3>-m</cfcase>
</cfswitch> --->
</td>
<td class="c">#type#</td>
<td class="c">#is_actual#</td>
<td class="c">#hash#</td>
<td class="c">#version#</td>
<td class="c">#name_version#</td>
<td class="c">#date_accept#</td>
<td class="c">#__index#</td>
<td class="c">#dateFormat(date_nop,'YYYY-MM-DD')#</td>
<td class="c">#dateFormat(date_end,'YYYY-MM-DD')#</td>
<td class="c">#is_easy#</td>
<td class="c">#param_cnt#</td>
<!--- <td class="c">#additional_agreement_uid#</td> --->
<td class="c"><a href="additional_agreement.cfm?__id=#additional_agreement_uid#&#tr.fwx#">#additional_agreement#</a></td>
</tr>
</cfoutput>
</table>
</cfif>
<layout:page section="footer"/>