|
На этой странице: |
Добавить на вкладку "Системные группы" карточки СО (Подразделение\ШЕ\РВЗ) разделы с указанием МР, Делопроизводителей и Счетчиков.
Пример написан таким образом, что можно брать приведенный код и заменять в нем значения: <module>, <Module>, <Модуль>. Главное его внимательно вставлять в уже существующие схемы. |
Палитра XML
Действия по добавлению нового Модуля в карточку Способ поиска счетчика:
Добавить дополнительный модуль в схему
<?xml version='1.0' encoding='UTF-8'?> <schemas xmlns="http://www.intertrust.ru/schema/palette/tn-schema"> <enum name="ModuleType"> <meta> <category name="РМ Администратора"/> </meta> <string value="InternalDocs" name="InternalDocs"/> <string value="InputDocs" name="InputDocs"/> <string value="OutputDocs" name="OutputDocs"/> <string value="Missions" name="Missions"/> <string value="ContractsLite" name="ContractsLite"/> <string value="Requests" name="Requests"/> <string value="<Module>" name="<Module>"/> </enum> </schemas> |
Добавить дополнительный модуль в схему
<value-list name="${ui.directories.value-list.classifier-type-module.name:Тип модуля}" id="classifier-type-module"> <value name="Внутренние документы"/> <value name="Входящие документы"/> <value name="Исходящие документы"/> <value name="ОРД"/> <value name="Договоры"/> <value name="Обращения граждан"/> <value name="<Модуль>"/> </value-list> |
В итоге должен быть доступен выбор типа модуля в поле Модуль
Действия по добавлению нового Модуля в карточку Подразделения:
Добавить в схему дополнительные св-ва:
<boolean name="<module>AnotherUnit" system="true" createlog="true"> <storage-string value="1" /> </boolean> |
Создать условия применения по скрытию полей, при флаге "Другое подразделение" в override/tuning/so/condition/condition.pal.xml
<condition name="SystemGroup_is<module>AnotherUnit"> <schema-ref ref="SystemGroup" condition-union="AND"> <boolean-ref value="true" ref="<module>AnotherUnit"/> </schema-ref> </condition> |
Добавить новую секцию c новым модулем
<section id="<module>" name="${ui.form.SystemGroupsForm.<module>.name:<Модуль>}"> <appearance field-layout="vertical"> <dialog-mode width="50" unit="procent"/> </appearance> <component> <section id="<module>AnotherUnit" group="true"> <appearance field-layout="horizontal" /> <component> <field attribute-ref="anotherUnitTitle"> <properties> <read-only condition-union="AND"> <condition>true</condition> </read-only> </properties> <appearance importance="normal"> <label-style label-width="18" label-unit="symbol"> <style id="tunGray" /> </label-style> <field-style> <value-style> <style id="tunGray" /> </value-style> </field-style> </appearance> </field> <field autofill="true" attribute-ref="<module>AnotherUnit"> <appearance align="left"/> </field> </component> </section> <field clickable="true" attribute-ref="<module>AnotherUnitValue"> <properties> <requre condition-union="AND"> <condition-ref ref="SystemGroup_is<module>AnotherUnit"/> </requre> <hide condition-union="AND"> <negative-condition-ref ref="SystemGroup_is<module>AnotherUnit"/> </hide> </properties> <appearance open-mode="dialog" importance="normal" clickable="true"> <label-style> <style id="tunClickableRed" /> </label-style> <field-style> <value-style> <style id="tunClickableRed" /> </value-style> </field-style> </appearance> <directories livesearch="true" limit-livesearch="no-restrictions" relation="arm-admin-livesearch-dep-rvz" digest="digestSOLiveSearch"> <show-select-value> <descriptor-ref ref="arm-admin-livesearch-dep-rvz"/> </show-select-value> <directory-ref ref="arm-admin-ierarchy-rvz"/> <directory-ref ref="arm-admin-dialog-dep" /> <directory-ref ref="arm-admin-dialog-rvz" /> </directories> </field> <field attribute-ref="clerks"> <properties> <read-only condition-union="AND"> <condition>true</condition> </read-only> <hide condition-union="AND"> <condition-ref ref="SystemGroup_is<module>AnotherUnit"/> </hide> </properties> <appearance importance="normal"> <label-style> <style id="tunGray" /> </label-style> <field-style> <value-style> <style id="tunGray" /> </value-style> </field-style> </appearance> </field> <section id="<module>Clerck" group="true" > <appearance field-layout="horizontal"/> <component> <field clickable="true" attribute-ref="<module>ClerckUnit" name="${ui.form.SystemGroupsForm.field.<module>ClerckUnit.name:Делопроизводители:}"> <properties> <hide condition-union="AND"> <condition-ref ref="SystemGroup_is<module>AnotherUnit"/> </hide> </properties> <appearance location="table" importance="normal" clickable="true"/> </field> </component> </section> <section id="<module>Audit" group="true"> <appearance field-layout="vertical"/> <component> <field attribute-ref="auditorsTitle"> <properties> <read-only condition-union="AND"> <condition>true</condition> </read-only> <hide condition-union="AND"> <condition-ref ref="SystemGroup_is<module>AnotherUnit"/> </hide> </properties> <appearance importance="normal"> <label-style> <style id="tunGray" /> </label-style> <field-style> <value-style> <style id="tunGray" /> </value-style> </field-style> </appearance> </field> <field autofill="true" clickable="true" attribute-ref="<module>Auditors"> <properties> <hide condition-union="AND"> <condition-ref ref="SystemGroup_is<module>AnotherUnit"/> </hide> </properties> <appearance open-mode="dialog" align="left" clickable="true"> <label-style> <style id="tunClickableRed" /> </label-style> <field-style> <value-style> <style id="tunClickableRed" /> </value-style> </field-style> </appearance> <directories livesearch="true" limit-livesearch="no-restrictions" relation="arm-admin-livesearch-empl-group" digest="digestSOLiveSearch"> <show-select-value> <descriptor-ref ref="arm-admin-livesearch-empl-group"/> </show-select-value> <directory-ref ref="arm-admin-dialog-empl" /> <directory-ref ref="arm-admin-dialog-group" /> </directories> </field> </component> </section> </component> </section> |
В итоге ожидается, что на вкладке системные группы появится раздел "Новый модуль" на вкладку "Системные группы"
Действия по добавлению нового Модуля в карточку Сотрудник и РВЗ:
Добавить новый модуль
<?xml version='1.0' encoding='UTF-8'?> <schemas xmlns="http://www.intertrust.ru/schema/palette/tn-schema"> <enum name="SystemGroupModuleTypesEnum"> <meta> <category name="РМ Администратора"/> </meta> <string value="InternalDocs" name="InternalDocs"/> <string value="InputDocs" name="InputDocs"/> <string value="OutputDocs" name="OutputDocs"/> <string value="Missions" name="Missions"/> <string value="ContractsLite" name="ContractsLite"/> <string value="Requests" name="Requests"/> <string value="<Module>" name="<Module>"/> </enum> </schemas> |
Добавить дополнительные свойства:
<string name="recalcCounterFormula_<Module>" createlog="true" temporal="true"> <recalc-processing-class>ru.intertrust.cmj.rest.admin.so.employee.counter.RecalcSetDefaultCounterFormulaAnyDP</recalc-processing-class> </string> <schema-ref name="<module>DepRvz" ref="AdminSOUnit" array="true" createlog="true" temporal="true"/> <boolean name="<module>IsNotEmpty" createlog="true" temporal="true"> <calc-values> <script event="open" lang="SPEL"><![CDATA[(<module>DepRvz != null && <module>DepRvz.size() != 0) || ( #this.tuning().getValues().get("asForTheUser")!=null && #this.tuning().getValues().get("asForTheUser").getValues().get("intDefMpUnit")!=null && #this.tuning().getValues().get("asForTheUser").getValues().get("intDefMpUnit").getValues().get("id")!=null )]]></script> </calc-values> </boolean> |
Добавить дополнительные свойства:
<boolean name="<module>CanChange" createlog="true"> <storage-field name="Change<Module>Place"/> <storage-string value="1"/> </boolean> <string name="<module>CounterJS" createlog="true"> <storage-field name="JS_Num_<Module>"/> </string> <enum-ref name="<module>DefMp" ref="DefMP" createlog="true" temporal="true"> <storage-field name="<module>DefMp"/> </enum-ref> <schema-ref name="<module>DefMpUnit" ref="AdminSOUnit" null-empty="true" createlog="true" temporal="true"/> <string name="<module>" temporal="true" createlog="true"> <calc-values> <script lang="SPEL" event="open"><![CDATA["<Модуль>"]]></script> </calc-values> </string> <schema-ref name="<module>DepRvz" ref="AdminSOUnit" array="true" temporal="true" createlog="true"/> |
Создать условие применения для выбора МР из СО в override/tuning/so/condition/condition.pal.xml
<condition name="SOEmployee_RegPlaceSelectType_FromSO_<module>"> <schema-ref ref="SOEmployee" condition-union="AND"> <string-ref value="Choose_from_ CO" ref="asForTheUser.<module>DefMp"/> </schema-ref> </condition> |
Добавить справочник Места регистрации в override/tuning/so/directory/directory.pal.xml
<directories> <custom-collection name="${ui.directories.custom-collection.arm-admin-so-regplaces-<module>.name:Места регистрации}" id="arm-admin-so-regplaces-<module>"> <relation>regplacesunits.collection.<module></relation> <relation-create>regplacesunits.collection.<module></relation-create> </custom-collection> </directories> |
Добавить справочник Копируемых параметров в другие модули override/tuning/so/directory/directory.pal.xml
<list name="${ui.directories.list.modulesForSystemGroupCopy_from<module>.name:АРМАдмин. СО. Модули для копирования сист. групп из <Модуль>}" id="modulesForSystemGroupCopy_from<Module>"> <value alias="InternalDocs" name="Внутренние документы"/> <value alias="InputDocs" name="Входящие документы"/> <value alias="OutputDocs" name="Исходящие документы"/> <value alias="Missions" name="ОРД"/> <value alias="ContractsLite" name="Договоры"/> </list> <list name="${ui.directories.list.modulesForSystemGroupCopy_fromMissions.name:АРМАдмин. СО. Модули для копирования сист. групп из ОРД}" id="modulesForSystemGroupCopy_fromMissions"> <value alias="InternalDocs" name="Внутренние документы"/> <value alias="InputDocs" name="Входящие документы"/> <value alias="OutputDocs" name="Исходящие документы"/> <value alias="ContractsLite" name="Договоры"/> <value alias="<Module>" name="<Модуль>"/> </list> <list name="${ui.directories.list.modulesForSystemGroupCopy_fromInput.name:АРМАдмин. СО. Модули для копирования сист. групп из ВхД}" id="modulesForSystemGroupCopy_fromInput"> <!-- Список модулей, кроме текущего --> <value alias="<Module>" name="<Модуль>"/> </list> <list name="${ui.directories.list.modulesForSystemGroupCopy_fromInternal.name:АРМАдмин. СО. Модули для копирования сист. групп из ВнД}" id="modulesForSystemGroupCopy_fromInternal"> <!-- Список модулей, кроме текущего --> <value alias="<Module>" name="<Модуль>"/> </list> <list name="${ui.directories.list.modulesForSystemGroupCopy_fromOutput.name:АРМАдмин. СО. Модули для копирования сист. групп из ИсхД}" id="modulesForSystemGroupCopy_fromOutput"> <!-- Список модулей, кроме текущего --> <value alias="<Module>" name="<Модуль>"/> </list> <list name="${ui.directories.list.modulesForSystemGroupCopy_fromContract.name:АРМАдмин. СО. Модули для копирования сист. групп из Договоры}" id="modulesForSystemGroupCopy_fromContract"> <!-- Список модулей, кроме текущего --> <value alias="<Module>" name="<Модуль>"/> </list> |
Добавить новую секцию c новым модулем
<section id="=======ROW_<Module>======" group="true"> <component> <field attribute-ref="asForTheUser.<module>"> <properties> <read-only condition-union="AND"> <condition>true</condition> </read-only> <hide condition-union="AND"> <negative-condition-ref ref="read"/> </hide> </properties> <appearance importance="high"> <label-style> <style id="tunBgSky"/> <style id="tunBold"/> </label-style> <field-style> <value-style> <style id="tunBgSky"/> <style id="tunBold"/> </value-style> </field-style> </appearance> </field> <section id="settings" group="true"> <appearance field-layout="horizontal"/> <component> <field attribute-ref="asForTheUser.<module>"> <properties> <read-only condition-union="AND"> <condition>true</condition> </read-only> <hide condition-union="AND"> <negative-condition-ref ref="edit"/> </hide> </properties> <appearance align="left" importance="high"> <label-style> <style id="tunBgSky"/> <style id="tunBold"/> </label-style> <field-style> <value-style> <style id="tunBgSky"/> <style id="tunBold"/> </value-style> </field-style> </appearance> </field> <button name="${ui.form.SOEmployeeForm.section.SystemGroups.<module>.button.Copy.name:Копировать в}" alias="<Module>"> <properties> <hide condition-union="AND"> <negative-condition-ref ref="edit"/> </hide> </properties> <appearance align="left"> <label-style> <style id="tunBlue"/> <style id="tunUnderline"/> <style id="tunClickableRed"/> </label-style> </appearance> <action> <custom> <operation> <handler> <script lang="JavaBean">OperationSystemGroupCopy</script> </handler> </operation> </custom> </action> </button> </component> </section> <field clickable="true" attribute-ref="<module>DepRvz" name="${ui.form.SOEmployeeForm.section.SystemGroups.field.<module>DepRvz.name:Подразделение:}"> <appearance open-mode="dialog" align="left" clickable="true"> <field-style separator="newline"/> </appearance> <hint-in-field>${ui.form.SOEmployeeForm.section.SystemGroups.field.<module>DepRvz.hintInField:Выберите места регистрации} </hint-in-field> <directories livesearch="true" limit-livesearch="no-restrictions" relation="arm-admin-livesearch-dep-rvz" digest="digestSOLiveSearch"> <show-select-value> <descriptor-ref ref="arm-admin-livesearch-dep-empl-fr-group"/> </show-select-value> <directory-ref ref="arm-admin-ierarchy-rvz"/> <directory-ref ref="arm-admin-dialog-dep-rvz"/> </directories> </field> <field attribute-ref="asForTheUser.<module>CanChange" name="${ui.form.SOEmployeeForm.section.SystemGroups.field.asForTheUser.<module>CanChange.name:Можно менять МР}"/> <section id="<module>_MR_default" name="${ui.form.SOEmployeeForm.section.SystemGroups.section.<module>_MR_default.name:МР по умолчанию}" group="true"> <appearance field-layout="horizontal"/> <component> <field attribute-ref="asForTheUser.<module>DefMp" name="${ui.form.SOEmployeeForm.section.SystemGroups.section.<module>_MR_default.field.asForTheUser.<module>DefMp.name:МР по умолчанию:}"> <appearance open-mode="dialog" align="left"> <label-style label-width="30" label-unit="symbol"/> </appearance> <hint-in-field>${ui.form.SOEmployeeForm.section.SystemGroups.section.<module>_MR_default.field.asForTheUser.<module>DefMp.hintInField:Место регистрации по умолчанию} </hint-in-field> <directories limit-livesearch="no-restrictions"> <directory-ref ref="regPlaceByDefault"/> </directories> </field> <field clickable="true" attribute-ref="asForTheUser.<module>DefMpUnit"> <properties> <hide condition-union="AND"> <negative-condition-ref ref="SOEmployee_RegPlaceSelectType_FromSO_<Module>"/> </hide> </properties> <appearance open-mode="dialog" align="left" clickable="true"/> <hint-in-field>${ui.form.SOEmployeeForm.section.SystemGroups.section.<module>_MR_default.field.asForTheUser.<module>DefMpUnit.hintInField:Укажите место регистрации по умолчанию} </hint-in-field> <directories livesearch="true" limit-livesearch="no-restrictions" relation="arm-admin-livesearch-dep-rvz" digest="digestSOLiveSearch"> <show-select-value> <descriptor-ref ref="arm-admin-livesearch-dep-empl-fr-group"/> </show-select-value> <directory-ref ref="arm-admin-so-regplaces-<module>"/> <directory-ref ref="arm-admin-ierarchy-rvz"/> <directory-ref ref="arm-admin-dialog-dep-rvz"/> </directories> </field> </component> </section> <section id="<module>_counter" name="${ui.form.SOEmployeeForm.section.SystemGroups.section.<module>_counter.name:поиск счетчика}" group="true"> <appearance field-layout="horizontal"/> <component> <field attribute-ref="asForTheUser.<module>CounterJS" name="${ui.form.SOEmployeeForm.section.SystemGroups.section.<module>CounterJS.name:Способ поиска счетчика:}"> <hint-in-field>${ui.form.SOEmployeeForm.section.SystemGroups.section.<module>CounterJS.hintInField:Способ поиска счетчика} </hint-in-field> <directories manual-input="true" limit-livesearch="no-restrictions"> <directory-ref ref="so-counter-search-any"/> </directories> </field> <button recalc="true" attribute-ref="recalcCounterFormula_<Module>" name="${ui.form.SOEmployeeForm.section.SystemGroups.section.recalcCounterFormula_<Module>.name:По умолчанию}"> <properties> <hide condition-union="AND"> <negative-condition-ref ref="edit"/> </hide> </properties> <appearance> <label-style> <style id="tunBlue"/> <style id="tunUnderline"/> <style id="tunClickableRed"/> </label-style> </appearance> </button> </component> </section> </component> </section> |
<section id="label<Module>_read" group="true" name="${ui.form.SOEmployeeRVZForm.SystemGroups.AsForTheUser.label<Module>.name:<Модуль>}"> <appearance field-layout="horizontal"/> <component> <section group="true" id="label<Module>_read_1"> <appearance field-layout="vertical"/> <component> <field attribute-ref="asForTheUser.<module>"> <properties> <read-only condition-union="AND"> <condition>true</condition> </read-only> </properties> <appearance align="left"/> </field> </component> </section> <section group="true" id="label<Module>_read_2"> <appearance field-layout="vertical"/> <component> <field attribute-ref="<module>DepRvz" clickable="true"> <appearance clickable="true" align="left" open-mode="dialog"> <field-style separator="newline"/> </appearance> <hint-in-field>${ui.form.SOEmployeeRVZForm.SystemGroups.<Module>DepRvz.hintInField:Выберите места регистрации} </hint-in-field> <directories digest="digestSOLiveSearch" relation="arm-admin-livesearch-dep-rvz" limit-livesearch="no-restrictions" livesearch="true"> <directory-ref ref="arm-admin-ierarchy-rvz"/> <directory-ref ref="arm-admin-dialog-dep-rvz"/> </directories> </field> </component> </section> <section group="true" id="label<Module>_read_3"> <appearance field-layout="vertical"/> <component> <field attribute-ref="asForTheUser.<module>CounterJS"> <hint-in-field>${ui.form.SOEmployeeRVZForm.SystemGroups.<Module>CounterJS.hintInField:Способ поиска счетчика} </hint-in-field> <directories limit-livesearch="no-restrictions" manual-input="true"> <directory-ref ref="so-counter-search-any"/> </directories> </field> </component> </section> <section group="true" id="label<Module>_read_4"> <appearance field-layout="horizontal"/> <component> <field attribute-ref="asForTheUser.empty"> <properties> <read-only condition-union="AND"> <condition>true</condition> </read-only> <hide condition-union="AND"> <condition>true</condition> </hide> </properties> <appearance importance="normal"/> </field> <button recalc="true" attribute-ref="recalcCounterFormula_<Module>" name="${ui.form.SOEmployeeRVZForm.SystemGroups.recalcCounterFormula_<Module>.name:По умолчанию}"> <properties> <hide condition-union="AND"> <negative-condition-ref ref="edit"/> </hide> </properties> <appearance> <label-style> <style id="tunBlue"/> <style id="tunUnderline"/> <style id="tunClickableRed"/> </label-style> </appearance> </button> </component> </section> </component> </section> <section id="label<Module>_edit" group="true" name="${ui.form.SOEmployeeRVZForm.SystemGroups.AsForTheUser.<Module>.name:<Модуль>}"> <appearance field-layout="horizontal"/> <component> <section group="true" id="label<Module>_edit_1"> <component> <field attribute-ref="asForTheUser.empty"> <properties> <read-only condition-union="AND"> <condition>true</condition> </read-only> <hide condition-union="AND"> <negative-condition-ref ref="read"/> </hide> </properties> <appearance importance="normal"/> </field> <button alias="<Module>" name="${ui.form.SOEmployeeRVZForm.SystemGroups.section.<Module>.button.CopyIn.name:Копировать в}"> <properties> <hide condition-union="AND"> <negative-condition-ref ref="edit"/> </hide> </properties> <appearance align="left"> <label-style> <style id="tunBlue"/> <style id="tunUnderline"/> <style id="tunClickableRed"/> </label-style> </appearance> <action> <custom> <operation> <handler> <script lang="JavaBean">OperationSystemGroupCopy</script> </handler> </operation> </custom> </action> </button> </component> </section> <section group="true" id="label<Module>_edit_2"> <component> <field attribute-ref="asForTheUser.<module>DefMp"> <appearance align="center" open-mode="dialog"/> <hint-in-field>${ui.form.SOEmployeeRVZForm.SystemGroups.<Module>DefMp.hintInField:Место регистрации по умолчанию} </hint-in-field> <directories limit-livesearch="no-restrictions"> <directory-ref ref="regPlaceByDefault"/> </directories> </field> </component> </section> <section group="true" id="label<Module>_edit_3"> <component> <field attribute-ref="asForTheUser.empty"> <properties> <read-only condition-union="AND"> <condition>true</condition> </read-only> <hide condition-union="AND"> <condition-ref ref="SOEmployee_RegPlaceSelectType_FromSO_<Module>"/> </hide> </properties> <appearance importance="normal"/> </field> <field attribute-ref="asForTheUser.<module>DefMpUnit" clickable="true"> <properties> <hide condition-union="AND"> <negative-condition-ref ref="SOEmployee_RegPlaceSelectType_FromSO_<Module>"/> </hide> </properties> <appearance clickable="true" open-mode="dialog"/> <hint-in-field>${ui.form.SOEmployeeRVZForm.SystemGroups.<Module>DefMpUnit.hintInField:Укажите место регистрации по умолчанию} </hint-in-field> <directories digest="digestSOLiveSearch" relation="arm-admin-livesearch-dep-rvz" limit-livesearch="no-restrictions" livesearch="true"> <directory-ref ref="arm-admin-so-regplaces-<module>"/> <directory-ref ref="arm-admin-ierarchy-rvz"/> <directory-ref ref="arm-admin-dialog-dep-rvz"/> </directories> </field> </component> </section> <section group="true" id="label<Module>_edit_4"> <component> <field attribute-ref="asForTheUser.<module>CanChange" name="${ui.form.SOEmployeeRVZForm.SystemGroups.<Module>CanChange.name:Можно менять МР}"/> </component> </section> </component> </section> |