017 improvements
This commit is contained in:
+1
-1
@@ -99,7 +99,7 @@
|
|||||||
|
|
||||||
|
|
||||||
<cfset request.RECORDS_PER_PAGE=500/>
|
<cfset request.RECORDS_PER_PAGE=500/>
|
||||||
<cfset request.APP_VERSION="0.00.016"/>
|
<cfset request.APP_VERSION="0.00.017"/>
|
||||||
<cfset request.STAND=getStand()/>
|
<cfset request.STAND=getStand()/>
|
||||||
|
|
||||||
<cflock scope="application" type="readonly" timeout=3>
|
<cflock scope="application" type="readonly" timeout=3>
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
<d:param field="__id" type="uuid" key/>
|
<d:param field="__id" type="uuid" key/>
|
||||||
<d:param field="__name" type="varchar" size="255" preprocessor=#cleanInput# forNull=""/>
|
<d:param field="__name" type="varchar" size="255" preprocessor=#cleanInput# forNull=""/>
|
||||||
<d:param field="_companies" type="uuid" forNull=""/>
|
<d:param field="_companies" type="uuid" forNull=""/>
|
||||||
<!--- <d:param field="_plannedDueDate" type="timestamp" forNull=""/> --->
|
<!--- <d:param field="_plannedDueDate" type="timestamp" forNull=""/> ---><!--- *** не используем, потому что имя в смешанном регистре --->
|
||||||
<d:param field="__index" type="integer" forNull="" default="0" init="0"/>
|
<d:param field="__index" type="integer" forNull="" default="0" init="0"/>
|
||||||
<d:param field="__status_status" type="integer" forNull="" default="0" init="0"/>
|
<d:param field="__status_status" type="integer" forNull="" default="0" init="0"/>
|
||||||
<d:param field="is_corrective_transaction" type="bit" forNull=""/>
|
<d:param field="is_corrective_transaction" type="bit" forNull=""/>
|
||||||
@@ -44,15 +44,37 @@
|
|||||||
s(status, status_id, probability_pc) as (VALUES
|
s(status, status_id, probability_pc) as (VALUES
|
||||||
('Закрыта неуспешно',7,0),('Закрыта успешно',6,100),('Договор подписан',5,100),('Договор на подписании',15,90),('Договор на согласовании',12,70),
|
('Закрыта неуспешно',7,0),('Закрыта успешно',6,100),('Договор подписан',5,100),('Договор на подписании',15,90),('Договор на согласовании',12,70),
|
||||||
('Тестирование',8,50),('Отправлено ТКП',10,20),('Внутреннее согласование',37,10),('Проработка решения',4,10),('Сбор потребностей',1,0)
|
('Тестирование',8,50),('Отправлено ТКП',10,20),('Внутреннее согласование',37,10),('Проработка решения',4,10),('Сбор потребностей',1,0)
|
||||||
|
),
|
||||||
|
component as (select siv.deal as deal_uids, siv.type, (siv.cnt*(100-COALESCE(siv.discount,0))/100*p.price*p.cnt*(100-COALESCE(p.discount,0))) as param_cost
|
||||||
|
from elma.deals_services siv
|
||||||
|
join elma.service_parametrs p on (p.__id = ANY(siv.params))
|
||||||
)
|
)
|
||||||
|
|
||||||
select
|
select
|
||||||
k.__name as contragent
|
k.__name as contragent
|
||||||
,k.id_klienta as wz
|
,k.id_klienta as wz
|
||||||
|
,k.__index as contragent_index
|
||||||
,d."_plannedDueDate" as _plannedDueDate
|
,d."_plannedDueDate" as _plannedDueDate
|
||||||
|
,d."__createdAt"
|
||||||
|
,d."__index" as deal_index
|
||||||
,s.status
|
,s.status
|
||||||
,s.probability_pc
|
,s.probability_pc
|
||||||
|
,c.__name as owner
|
||||||
|
,(select sum(param_cost)
|
||||||
|
from component
|
||||||
|
where d.__id = ANY(component.deal_uids) AND component.type IN (1)
|
||||||
|
) as install
|
||||||
|
,(select sum(param_cost)
|
||||||
|
from component
|
||||||
|
where d.__id = ANY(component.deal_uids) AND component.type IN (2)
|
||||||
|
) as periodical
|
||||||
|
,(select sum(param_cost)
|
||||||
|
from component
|
||||||
|
where d.__id = ANY(component.deal_uids) AND component.type IN (3)
|
||||||
|
) as metered
|
||||||
from elma.deals d
|
from elma.deals d
|
||||||
left outer join elma.companies k on (d._companies=k.__id)
|
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)
|
left outer join s on (d.__status_status=s.status_id)
|
||||||
where d.__id=<cfqueryparam cfsqltype="cf_sql_other" value=#d.__id#/>
|
where d.__id=<cfqueryparam cfsqltype="cf_sql_other" value=#d.__id#/>
|
||||||
</cfquery>
|
</cfquery>
|
||||||
@@ -89,7 +111,10 @@
|
|||||||
|
|
||||||
<div class="tr">
|
<div class="tr">
|
||||||
<div class="th">__id</div>
|
<div class="th">__id</div>
|
||||||
<div class="td">#d.__id#</div>
|
<div class="td">
|
||||||
|
#d.__id#
|
||||||
|
index:#qDecoration.deal_index#
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="tr">
|
<div class="tr">
|
||||||
@@ -102,12 +127,15 @@
|
|||||||
<div class="td"><!--- <a href="contract.cfm?__id=#d.contract_uid#&#tr.fwx#"><b>#qDecoration.contract#</b> #dateFormat(qDecoration.date_of_aggrement,'DD.MM.YYYY')#
|
<div class="td"><!--- <a href="contract.cfm?__id=#d.contract_uid#&#tr.fwx#"><b>#qDecoration.contract#</b> #dateFormat(qDecoration.date_of_aggrement,'DD.MM.YYYY')#
|
||||||
[#d.contract_uid#]</a> --->
|
[#d.contract_uid#]</a> --->
|
||||||
#qDecoration.contragent# #qDecoration.wz#
|
#qDecoration.contragent# #qDecoration.wz#
|
||||||
|
index:#qDecoration.contragent_index#
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="tr">
|
<div class="tr">
|
||||||
<div class="th">_plannedDueDate</div>
|
<div class="th">_plannedDueDate</div>
|
||||||
<div class="td">#qDecoration._plannedDueDate#</div>
|
<div class="td">#dateFormat(qDecoration._plannedDueDate,'YYYY-MM-DD')#
|
||||||
|
Паразитное поле, не использовать в расчетах
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="tr">
|
<div class="tr">
|
||||||
@@ -145,7 +173,32 @@
|
|||||||
|
|
||||||
<div class="tr">
|
<div class="tr">
|
||||||
<div class="th">dt_load</div>
|
<div class="th">dt_load</div>
|
||||||
<div class="td">#d.dt_load#</div>
|
<div class="td">#dateTimeFormat(d.dt_load,"yyyy-MM-dd HH:nn:ss.SSSZ")#</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="tr">
|
||||||
|
<div class="th">__createdAt</div>
|
||||||
|
<div class="td">#dateFormat(qDecoration.__createdAt,"YYYY-MM-DD")#</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="tr">
|
||||||
|
<div class="th">Ответственный</div>
|
||||||
|
<div class="td">#qDecoration.owner#</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="tr">
|
||||||
|
<div class="th">Инсталл</div>
|
||||||
|
<div class="td">#numFmt(qDecoration.install,2)#</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="tr">
|
||||||
|
<div class="th">Ежемес</div>
|
||||||
|
<div class="td">#numFmt(qDecoration.periodical,2)#</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="tr">
|
||||||
|
<div class="th">Тарифицируемые</div>
|
||||||
|
<div class="td">#numFmt(qDecoration.metered,2)#</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+19
-6
@@ -27,18 +27,26 @@
|
|||||||
select
|
select
|
||||||
<d:field_set titleMapOut="titleMap" lengthOut="fieldCount">
|
<d:field_set titleMapOut="titleMap" lengthOut="fieldCount">
|
||||||
<d:field title="ID" cfSqlType="CF_SQL_OTHER">d.__id</d:field>
|
<d:field title="ID" cfSqlType="CF_SQL_OTHER">d.__id</d:field>
|
||||||
|
<d:field title="index" cfSqlType="CF_SQL_INTEGER">d.__index</d:field>
|
||||||
<d:field title="Название">d.__name</d:field>
|
<d:field title="Название">d.__name</d:field>
|
||||||
<d:field title="company_uid">d._companies</d:field>
|
<d:field title="company_uid">d._companies</d:field>
|
||||||
|
<d:field title="Создана">d."__createdAt" as __createdAt</d:field><!--- *** косяк d:field, если взять в кавычки имя поля, оно не попадает в массив полей --->
|
||||||
<d:field title="Контрагент">k.__name as contragent</d:field>
|
<d:field title="Контрагент">k.__name as contragent</d:field>
|
||||||
<d:field title="WZ">k.id_klienta as wz</d:field>
|
<d:field title="WZ">k.id_klienta as wz</d:field>
|
||||||
<d:field title="status_id">d.__status_status</d:field>
|
<d:field title="status_id">d.__status_status</d:field>
|
||||||
<d:field title="Статус">s.status</d:field>
|
<d:field title="Статус">s.status</d:field>
|
||||||
<d:field title="Вероятность%">s.probability_pc</d:field>
|
<d:field title="Вероятность%">s.probability_pc</d:field>
|
||||||
|
<d:field title="Ответственный">c.__name as owner</d:field>
|
||||||
|
<d:field title="Допник">a.__name as additional_agreement</d:field>
|
||||||
|
<d:field title="Договор">g.__name as contract</d:field>
|
||||||
|
<d:field title="Дата дог.">g.date_of_aggrement as dt_contract</d:field>
|
||||||
</d:field_set>
|
</d:field_set>
|
||||||
from elma.deals d
|
from elma.deals d
|
||||||
left outer join elma.companies k on (d._companies=k.__id)
|
left outer join elma.companies k on (d._companies=k.__id)
|
||||||
left outer join status s on (d.__status_status=s.status_id)
|
left outer join status s on (d.__status_status=s.status_id)
|
||||||
|
left outer join elma.comp_users_ext c on (d._owner=c.__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 1=1 <m:filter_build filter=#pageInfo.settings.filter#/>
|
where 1=1 <m:filter_build filter=#pageInfo.settings.filter#/>
|
||||||
order by <m:order_build sortArray=#pageInfo.settings.sort.sortArray# fieldCount=#fieldCount#/>
|
order by <m:order_build sortArray=#pageInfo.settings.sort.sortArray# fieldCount=#fieldCount#/>
|
||||||
</cfquery>
|
</cfquery>
|
||||||
@@ -103,14 +111,19 @@ select count(*) as cnt from elma.deals d where 1=1
|
|||||||
<c:td field="f_link_view_edit" class="c"/>
|
<c:td field="f_link_view_edit" class="c"/>
|
||||||
|
|
||||||
</c:column>
|
</c:column>
|
||||||
<c:column width="10%" field="__id"><c:td class="l"/></c:column>
|
<c:column width="3%" field="__index"><c:td class="r"/></c:column>
|
||||||
<c:column width="10%" field="__name"/>
|
<c:column width="10%" field="__name"/>
|
||||||
<c:column width="10%" field="_companies"/>
|
<!--- <c:column width="10%" field="_companies"/> --->
|
||||||
<c:column width="10%" field="contragent"/>
|
<c:column width="10%" field="contragent"/>
|
||||||
<c:column width="5%" field="wz"/>
|
<c:column width="3%" field="wz"/>
|
||||||
<c:column width="3%" field="__status_status"><c:td class="c"/></c:column>
|
<c:column width="3%" field="__status_status"><c:td class="c"/></c:column>
|
||||||
<c:column width="10%" field="status"><c:td class="c"/></c:column>
|
<c:column width="5%" field="status"><c:td class="c"/></c:column>
|
||||||
<c:column width="5%" field="probability_pc"><c:td class="c"/></c:column>
|
<c:column width="3%" field="probability_pc"><c:td class="c"/></c:column>
|
||||||
|
<c:column width="5%" field="__createdAt" formatter=#function(dt){return dateformat(dt,"YYYY-MM-DD");}#><c:td class="c"/></c:column>
|
||||||
|
<c:column width="8%" field="owner"><c:td class="l"/></c:column>
|
||||||
|
<c:column width="5%" field="additional_agreement"><c:td class="l"/></c:column>
|
||||||
|
<c:column width="5%" field="contract"><c:td class="l"/></c:column>
|
||||||
|
<c:column width="5%" field="dt_contract" formatter=#function(dt){return dateformat(dt,"YYYY-MM-DD");}#><c:td class="c"/></c:column>
|
||||||
|
|
||||||
</c:table>
|
</c:table>
|
||||||
|
|
||||||
|
|||||||
@@ -103,6 +103,7 @@ AND o.table_schema=<cfqueryparam cfsqltype="cf_sql_varchar" value="#schema#"/>
|
|||||||
|
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
добавить сюда еще выполнение селекта, чтобы почитать данные
|
||||||
|
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user