224 subparam compute fix
This commit is contained in:
@@ -187,45 +187,42 @@
|
||||
order by sp.sort
|
||||
</cfquery>
|
||||
|
||||
<cfif len(local.qSubparam.func)><!--- приоритет отдается функции перед списком значений--->
|
||||
<cfset var args = {
|
||||
"functionName":"#local.qSubparam.func#",
|
||||
"svcId":#local.qSvcOperation.svc_id#,
|
||||
"contractId":#arguments.contractId#
|
||||
}/>
|
||||
|
||||
<cfinvoke component="instance_operation_cfs_param" method="generateValueList" argumentCollection=#args# returnVariable="local.qSubparam.value_list"/>
|
||||
|
||||
<cfif len(trim(local.qSubparam.value_list)) AND listLen(local.qSubparam.value_list) EQ 1>
|
||||
<cfset local.qSubparam.default_value=local.qSubparam.value_list/><!--- *** не очень красиво перетирать query, но делаем это довольно часто --->
|
||||
</cfif>
|
||||
<!--- <cfelseif len(local.qSubparam.nested_ref)>
|
||||
<cfset var args = {
|
||||
"functionName":"#local.qSubparam.nested_ref#",
|
||||
"config":"#local.qSubparam.config#"
|
||||
}/>
|
||||
<cfinvoke component="instance_operation_cfs_param" method="generateClosure" argumentCollection=#args# returnVariable="local.fNestedRef"/>
|
||||
<cfset local.qSubparam.nested_ref_data = local.fNestedRef() /> --->
|
||||
<!--- <cfelseif len(local.qSubparam.state_path) AND isStruct(currentState)>
|
||||
<cfset var args = {
|
||||
"state":#currentState#,
|
||||
"path":"#local.qSubparam.state_path#"
|
||||
}/>
|
||||
<cfinvoke component="instance_operation_cfs_param"
|
||||
method="getListFromState"
|
||||
argumentCollection=#args#
|
||||
returnVariable="local.qSubparam.value_list"
|
||||
/> --->
|
||||
</cfif>
|
||||
|
||||
<cfif (len(local.qSubparam.func) OR len(local.qSubparam.expression) <!--- OR len(local.qSubparam.state_path) OR len(local.qSubparam.nested_ref)---> )
|
||||
AND len(local.qSubparam.value_list) EQ 0>
|
||||
<cfset local.qSubparam.value_list = []/>
|
||||
</cfif>
|
||||
|
||||
|
||||
<cfset var mapDescriptor=structNew("linked")/>
|
||||
<!--- *** выдавать на фронт expression нам ни к чему, это временное явление --->
|
||||
<cfloop query="local.qSubparam">
|
||||
|
||||
<cfif len(local.qSubparam.func)><!--- приоритет отдается функции перед списком значений--->
|
||||
<cfset var args = {
|
||||
"functionName":"#local.qSubparam.func#",
|
||||
"svcId":#local.qSvcOperation.svc_id#,
|
||||
"contractId":#arguments.contractId#
|
||||
}/>
|
||||
|
||||
<cfinvoke component="instance_operation_cfs_param" method="generateValueList" argumentCollection=#args# returnVariable="local.qSubparam.value_list"/>
|
||||
|
||||
<cfif len(trim(local.qSubparam.value_list)) AND listLen(local.qSubparam.value_list) EQ 1>
|
||||
<cfset local.qSubparam.default_value=local.qSubparam.value_list/><!--- *** не очень красиво перетирать query, но делаем это довольно часто --->
|
||||
</cfif>
|
||||
</cfif>
|
||||
|
||||
<cfif (len(local.qSubparam.func) OR len(local.qSubparam.expression) )
|
||||
AND len(local.qSubparam.value_list) EQ 0>
|
||||
<cfset local.qSubparam.value_list = []/>
|
||||
</cfif>
|
||||
|
||||
<cfset var def = computeDefault(local.qSubparam.default_compute, local.qSubparam.default_value, qSvcOperation.svc_id, arguments.usrId)/>
|
||||
<!--- *** пока не пытаемся восстановить значения из стейта
|
||||
<cfif len(local.qSubparam.default_value) EQ 0>
|
||||
<!--- и вот наконец мы извлекаем старое значение из стейта --->
|
||||
<cfset var paramName = this.helper.snake2camel(local.qSubparam.svc_operation_cfs_subparam)/>
|
||||
<cfif structKeyExists(local.instanceDataParams, paramName)>
|
||||
<cfset var oldValue = structFind(local.instanceDataParams, paramName)/>
|
||||
<cfset def = isStruct(oldValue) ? serializeJson(oldValue) : oldValue/> <!--- потому что передаем строку, а не объект --->
|
||||
</cfif>
|
||||
</cfif> --->
|
||||
|
||||
<cfset structInsert(mapDescriptor, local.qSubparam.svc_operation_cfs_subparam,
|
||||
{
|
||||
"svcOperationCfsSubparamId":"#local.qSubparam.svc_operation_cfs_subparam_id#",
|
||||
@@ -240,7 +237,7 @@
|
||||
"regex":"#local.qSubparam.regex#",
|
||||
"man":"#local.qSubparam.man#",
|
||||
"descr":"#local.qSubparam.descr#",
|
||||
"defaultValue":"#local.qSubparam.default_value#",
|
||||
"defaultValue":"#def#",
|
||||
"isRequired":#request.castToBool(local.qSubparam.is_required)#,
|
||||
"isSensitive":#request.castToBool(local.qSubparam.is_sensitive)#,
|
||||
"refSvcId":#local.qSubparam.ref_svc_id#,
|
||||
@@ -250,8 +247,9 @@
|
||||
"isModifiableDefinition":false
|
||||
}, true
|
||||
)
|
||||
/>
|
||||
</cfloop> <!--- *** вообще-то передавать в дескриптор func и default_compute не нужно, это для не забыть --->
|
||||
/><!--- *** вообще-то передавать в дескриптор func и default_compute не нужно, это для не забыть --->
|
||||
|
||||
</cfloop>
|
||||
|
||||
<cfset local.qCfsParam.data_descriptor = mapDescriptor/>
|
||||
</cfif><!---/map --->
|
||||
|
||||
Reference in New Issue
Block a user