076 instance_operation.resource_realm_id

This commit is contained in:
msyu
2025-04-06 11:16:02 +03:00
parent c6f9b72d9f
commit 080252cf2c
6 changed files with 86 additions and 83 deletions
+1 -33
View File
@@ -291,32 +291,7 @@
<cfreturn noData().withStatus(204, "No Content") />
</cffunction>
<!--- <cffunction name="checkDisplayName" access="public" hint="возвращает пустую строку при успешной проверке, иначе описание ошибки">
<cfargument name="display_name"/>
<cfargument name="usr_id"/>
<cfargument name="instance_uid"/>
<cfif len(arguments.display_name) LT 3>
<cfthrow type="invalidParamValue" message="Имя должно быть не короче 3 символов"/>/>
<cfelseif len(arguments.display_name) GT 80>
<cfthrow type="invalidParamValue" message="Имя должно быть не длиннее 80 символов"/>/>
<cfelse>
<cfquery name="qUniqueDisplayName">
select count(*) as cnt from instance e
join specification_item i on (e.specification_item_id=i.specification_item_id)
join specification s on (i.specification_id=s.specification_id)
join contract d on (s.contract_id=d.contract_id)
join contragent k on (d.contragent_id=k.contragent_id)
join usr u on (k.contragent_id=u.contragent_id)
where u.usr_id=<cfqueryparam cfsqltype="cf_sql_integer" value=#arguments.usr_id#/>
AND lower(e.display_name)=lower(<cfqueryparam cfsqltype="cf_sql_varchar" value=#arguments.display_name#/>)
AND e.instance_uid <> <cfqueryparam cfsqltype="cf_sql_other" value=#arguments.instance_uid#/>
</cfquery>
<cfif qUniqueDisplayName.cnt GT 0>
<cfthrow type="invalidParamValue" message="Имя должно быть уникальным"/><!--- *** в пределах контракта/спецификации --->
</cfif>
</cfif>
</cffunction> ---><!--- *** оказывается, я независимо реализовал почти точно такую же функцию для POST, и забыл --->
<!--- неудобно бегать из одного компонента в соседний при том, что разделение ответственности между ними получается довольно странное
Решил, что логичнее повесить проверки уникальности и генерацию дефолтов на коллекцию, тем более и связей так меньше --->
@@ -329,11 +304,4 @@
<cfset CreateObject("component", "instance_ls").checkDisplayName(arguments.displayName, arguments.usrId, arguments.instanceUid)/>
</cffunction>
<!--- <cffunction name="generateDefaultName">
<cfargument name="service_id" type="numeric"/>
<cfreturn CreateObject("component", "instance_ls").generateDefaultName(arguments.service_id)/>
</cffunction> --->
</cfcomponent>