SUPPORT-9389: fix
This commit is contained in:
parent
f4529a2fc7
commit
c6e7fe8b70
4 changed files with 260 additions and 24 deletions
|
|
@ -60,7 +60,8 @@ import ru.micord.ervu.account_applications.model.ReferenceEntity;
|
||||||
"component.addresses",
|
"component.addresses",
|
||||||
"gen",
|
"gen",
|
||||||
"ru.cg",
|
"ru.cg",
|
||||||
"ru.micord"
|
"ru.micord",
|
||||||
|
"error_handler"
|
||||||
}, excludeFilters = {
|
}, excludeFilters = {
|
||||||
@ComponentScan.Filter(type = FilterType.REGEX, pattern = "ru.cg.webbpm.modules.database.impl.DatabaseConfiguration"),
|
@ComponentScan.Filter(type = FilterType.REGEX, pattern = "ru.cg.webbpm.modules.database.impl.DatabaseConfiguration"),
|
||||||
@ComponentScan.Filter(type = FilterType.REGEX, pattern = "security.WebSecurityConfig"),
|
@ComponentScan.Filter(type = FilterType.REGEX, pattern = "security.WebSecurityConfig"),
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
package ru.micord.ervu.account_applications.component.model;
|
||||||
|
|
||||||
|
|
||||||
|
public class RequiredField {
|
||||||
|
public String name;
|
||||||
|
public String displayName;
|
||||||
|
}
|
||||||
|
|
@ -7,7 +7,10 @@ import java.util.Map;
|
||||||
import model.FieldData;
|
import model.FieldData;
|
||||||
import model.FormValidationResult;
|
import model.FormValidationResult;
|
||||||
import model.SimpleFormValidationResult;
|
import model.SimpleFormValidationResult;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.context.support.MessageSourceAccessor;
|
import org.springframework.context.support.MessageSourceAccessor;
|
||||||
|
import ru.micord.ervu.account_applications.component.model.RequiredField;
|
||||||
import service.FormValidatorWithCode;
|
import service.FormValidatorWithCode;
|
||||||
|
|
||||||
import ru.cg.webbpm.modules.core.runtime.api.MessageBundleUtils;
|
import ru.cg.webbpm.modules.core.runtime.api.MessageBundleUtils;
|
||||||
|
|
@ -16,16 +19,17 @@ import ru.cg.webbpm.modules.database.bean.entity_graph.EntityColumn;
|
||||||
public class RequiredFieldValidator extends FormValidatorWithCode {
|
public class RequiredFieldValidator extends FormValidatorWithCode {
|
||||||
private static final MessageSourceAccessor MESSAGE_SOURCE = MessageBundleUtils.createAccessor(
|
private static final MessageSourceAccessor MESSAGE_SOURCE = MessageBundleUtils.createAccessor(
|
||||||
"messages/common_errors_messages");
|
"messages/common_errors_messages");
|
||||||
public String[] requiredFields;
|
private static final Logger LOGGER = LoggerFactory.getLogger(RequiredFieldValidator.class);
|
||||||
|
public RequiredField[] requiredFields;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public FormValidationResult validate(Map<EntityColumn, Object> values,
|
public FormValidationResult validate(Map<EntityColumn, Object> values,
|
||||||
List<FieldData> fieldData) {
|
List<FieldData> fieldData) {
|
||||||
List<String> missingFields = new ArrayList<>();
|
List<String> missingFields = new ArrayList<>();
|
||||||
|
|
||||||
for (String fieldName : requiredFields) {
|
for (RequiredField requiredField : requiredFields) {
|
||||||
if (isFieldNull(fieldName, values, fieldData)) {
|
if (isFieldNull(requiredField.name, values, fieldData)) {
|
||||||
missingFields.add(fieldName);
|
missingFields.add(requiredField.displayName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4291,7 +4291,7 @@
|
||||||
<entry>
|
<entry>
|
||||||
<key>showServerValidationErrors</key>
|
<key>showServerValidationErrors</key>
|
||||||
<value>
|
<value>
|
||||||
<simple>null</simple>
|
<simple>true</simple>
|
||||||
</value>
|
</value>
|
||||||
</entry>
|
</entry>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
@ -4330,33 +4330,97 @@
|
||||||
<value>
|
<value>
|
||||||
<item id="f84415d3-14f8-41e1-8ea0-46252fb46642" removed="false">
|
<item id="f84415d3-14f8-41e1-8ea0-46252fb46642" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"application_kind"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Вид заявки"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"application_kind"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="8954ce7f-8f29-4d5c-8fe6-bc721cfa73fc" removed="false">
|
<item id="8954ce7f-8f29-4d5c-8fe6-bc721cfa73fc" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"user_login"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Логин"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"user_login"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="cc9e1215-b578-4917-88f1-a62e3009b757" removed="false">
|
<item id="cc9e1215-b578-4917-88f1-a62e3009b757" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"secondname"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Фамилия"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"secondname"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="7c489802-7ac8-4ad7-812c-4fd0e88d73e3" removed="false">
|
<item id="7c489802-7ac8-4ad7-812c-4fd0e88d73e3" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"firstname"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Имя"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"firstname"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="1aef3d97-6409-4de0-b911-11181fb57fa5" removed="false">
|
<item id="1aef3d97-6409-4de0-b911-11181fb57fa5" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"application_status"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Статус заявки"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"application_status"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
</value>
|
</value>
|
||||||
</entry>
|
</entry>
|
||||||
</complex>
|
</complex>
|
||||||
<expanded>false</expanded>
|
|
||||||
<implRef type="JAVA">
|
<implRef type="JAVA">
|
||||||
<className>RequiredFieldValidator</className>
|
<className>RequiredFieldValidator</className>
|
||||||
<packageName>ru.micord.ervu.account_applications.component.validator</packageName>
|
<packageName>ru.micord.ervu.account_applications.component.validator</packageName>
|
||||||
|
|
@ -9338,7 +9402,16 @@
|
||||||
<name>Form2</name>
|
<name>Form2</name>
|
||||||
<container>true</container>
|
<container>true</container>
|
||||||
<childrenReordered>false</childrenReordered>
|
<childrenReordered>false</childrenReordered>
|
||||||
<scripts id="bf098f19-480e-44e4-9084-aa42955c4d0f"/>
|
<scripts id="bf098f19-480e-44e4-9084-aa42955c4d0f">
|
||||||
|
<properties>
|
||||||
|
<entry>
|
||||||
|
<key>showServerValidationErrors</key>
|
||||||
|
<value>
|
||||||
|
<simple>true</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</properties>
|
||||||
|
</scripts>
|
||||||
<scripts id="c0bf7050-bd39-426a-8f1e-1600bbd4b9bb">
|
<scripts id="c0bf7050-bd39-426a-8f1e-1600bbd4b9bb">
|
||||||
<properties>
|
<properties>
|
||||||
<entry>
|
<entry>
|
||||||
|
|
@ -9373,27 +9446,92 @@
|
||||||
<value>
|
<value>
|
||||||
<item id="013a8262-26a9-45f2-ab43-136bd0f64868" removed="false">
|
<item id="013a8262-26a9-45f2-ab43-136bd0f64868" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"application_kind"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Вид заявки"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"application_kind"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="2dca08b6-fa69-4325-bb9d-4c9568c112c0" removed="false">
|
<item id="2dca08b6-fa69-4325-bb9d-4c9568c112c0" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"user_login"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Логин"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"user_login"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="e85a4b5b-876a-4737-9767-0bf5aa3d3a10" removed="false">
|
<item id="e85a4b5b-876a-4737-9767-0bf5aa3d3a10" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"secondname"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Фамилия"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"secondname"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="493dc756-4d47-450d-a878-4cc1d4276eeb" removed="false">
|
<item id="493dc756-4d47-450d-a878-4cc1d4276eeb" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"firstname"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Имя"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"firstname"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="7eaef52d-1a3a-401c-9921-e5cc9a1a0ea9" removed="false">
|
<item id="7eaef52d-1a3a-401c-9921-e5cc9a1a0ea9" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"application_status"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Статус заявки"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"application_status"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
</value>
|
</value>
|
||||||
|
|
@ -12540,6 +12678,12 @@
|
||||||
<simple>"btn-main"</simple>
|
<simple>"btn-main"</simple>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>disabled</key>
|
||||||
|
<value>
|
||||||
|
<simple>true</simple>
|
||||||
</value>
|
</value>
|
||||||
</entry>
|
</entry>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
@ -13772,7 +13916,16 @@
|
||||||
<name>Form3</name>
|
<name>Form3</name>
|
||||||
<container>true</container>
|
<container>true</container>
|
||||||
<childrenReordered>false</childrenReordered>
|
<childrenReordered>false</childrenReordered>
|
||||||
<scripts id="bf098f19-480e-44e4-9084-aa42955c4d0f"/>
|
<scripts id="bf098f19-480e-44e4-9084-aa42955c4d0f">
|
||||||
|
<properties>
|
||||||
|
<entry>
|
||||||
|
<key>showServerValidationErrors</key>
|
||||||
|
<value>
|
||||||
|
<simple>true</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</properties>
|
||||||
|
</scripts>
|
||||||
<scripts id="c0bf7050-bd39-426a-8f1e-1600bbd4b9bb">
|
<scripts id="c0bf7050-bd39-426a-8f1e-1600bbd4b9bb">
|
||||||
<properties>
|
<properties>
|
||||||
<entry>
|
<entry>
|
||||||
|
|
@ -13807,27 +13960,92 @@
|
||||||
<value>
|
<value>
|
||||||
<item id="d3a90814-af6b-49a6-99e0-a8a439a7d0af" removed="false">
|
<item id="d3a90814-af6b-49a6-99e0-a8a439a7d0af" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"application_kind"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Вид заявки"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"application_kind"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="3433096e-85f7-4c39-87fa-48aa410bfda6" removed="false">
|
<item id="3433096e-85f7-4c39-87fa-48aa410bfda6" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"user_login"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Логин"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"user_login"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="be29a25b-86e7-40d9-bacd-d098fbed1b41" removed="false">
|
<item id="be29a25b-86e7-40d9-bacd-d098fbed1b41" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"secondname"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Фамилия"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"secondname"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="40aca80c-9e5e-43e9-8837-d0f7bf510d39" removed="false">
|
<item id="40aca80c-9e5e-43e9-8837-d0f7bf510d39" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"firstname"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Имя"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"firstname"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
<item id="356e3761-05ce-4801-9b71-d941c0010520" removed="false">
|
<item id="356e3761-05ce-4801-9b71-d941c0010520" removed="false">
|
||||||
<value>
|
<value>
|
||||||
<simple>"application_status"</simple>
|
<complex>
|
||||||
|
<entry>
|
||||||
|
<key>displayName</key>
|
||||||
|
<value>
|
||||||
|
<simple>"Статус заявки"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>name</key>
|
||||||
|
<value>
|
||||||
|
<simple>"application_status"</simple>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
</complex>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
</value>
|
</value>
|
||||||
|
|
@ -17029,6 +17247,12 @@
|
||||||
<simple>"btn-main"</simple>
|
<simple>"btn-main"</simple>
|
||||||
</value>
|
</value>
|
||||||
</item>
|
</item>
|
||||||
|
</value>
|
||||||
|
</entry>
|
||||||
|
<entry>
|
||||||
|
<key>disabled</key>
|
||||||
|
<value>
|
||||||
|
<simple>true</simple>
|
||||||
</value>
|
</value>
|
||||||
</entry>
|
</entry>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue