SUPPORT-8772:add env

This commit is contained in:
adel.ka 2024-12-18 16:54:13 +03:00
parent 0c1c5bbdcf
commit b9bde47d73
2 changed files with 15 additions and 14 deletions

View file

@ -5,6 +5,7 @@ import java.io.InputStream;
import java.util.*;
import org.apache.poi.ss.usermodel.*;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import ru.micord.ervu_dashboard.exception.FileUploadException;
@ -15,18 +16,11 @@ import ru.micord.ervu_dashboard.exception.MissingHeaderException;
*/
@Service
public class XlsParser implements FileParser {
private static final List<String> REQUIRED_HEADERS = Arrays.asList(
"Номер", "Номер ЕПГУ", "Источник", "Верхнеуровневый ЛКО", "Категория", "Подкатегория",
"Факт", "Организация, в которую поступило сообщение",
"Организация, в которой находится сообщение",
"Дата поступления", "Дата планируемого завершения работ",
"Дата фактического завершения работ",
"Стадия", "Статус", "Просрочено", "Фаст-трек", "ФЗ", "Тип решения",
"Направлено по email в ФОИВ, не подключенный к ПОС", "Оценка ответа заявителем",
"Повторное рассмотрение", "Организация координатора", "ФИО координатора",
"Организация исполнителя", "ФИО исполнителя", "Организация руководителя", "ФИО руководителя",
"Дата вынесения"
);
private final List<String> requiredHeaders;
public XlsParser(@Value("${ERVU_FILE_UPLOAD_XLSX_REQUIRED_HEADERS}")String rawHeaders) {
this.requiredHeaders = getRequiredHeaders(rawHeaders);
}
@Override
public List<Map<String, String>> parseFile(MultipartFile file) {
@ -63,7 +57,7 @@ public class XlsParser implements FileParser {
}
private void validateHeaders(List<String> headers) {
for (String requiredHeader : REQUIRED_HEADERS) {
for (String requiredHeader : requiredHeaders) {
if (!headers.contains(requiredHeader)) {
throw new MissingHeaderException("Required header is missing:" + requiredHeader);
}

View file

@ -6,7 +6,14 @@ DB_APP_HOST=10.10.31.119
DB_APP_PORT=5432
DB_APP_NAME=ervu-dashboard-copy
ERVU_FILE_UPLOAD_XLSX_REQUIRED_HEADERS='Номер;Номер ЕПГУ;Источник;Верхнеуровневый ЛКО;Категория;Подкатегория;Факт;Организация, в которую поступило сообщение;Организация, в которой находится сообщение;Дата поступления;Дата планируемого завершения работ;Дата фактического завершения работ;Стадия;Статус;Просрочено;Фаст-трек;ФЗ;Тип решения;Направлено по email в ФОИВ, не подключенный к ПОС;Оценка ответа заявителем;Повторное рассмотрение;Организация координатора;ФИО координатора;Организация исполнителя;ФИО исполнителя;Организация руководителя;ФИО руководителя;'
ERVU_FILE_UPLOAD_XLSX_REQUIRED_HEADERS='Номер;Номер ЕПГУ;Источник;Верхнеуровневый ЛКО;Категория;Подкатегория;Факт;\
Организация, в которую поступило сообщение;Организация, в которой находится сообщение;\
Дата поступления;Дата планируемого завершения работ;Дата фактического завершения работ;\
Стадия;Статус;Просрочено;Фаст-трек;ФЗ;Тип решения;\
Направлено по email в ФОИВ, не подключенный к ПОС;Оценка ответа заявителем;\
Повторное рассмотрение;Организация координатора;ФИО координатора;\
Организация исполнителя;ФИО исполнителя;Организация руководителя;ФИО руководителя;\
Дата вынесения'
ERVU_FILE_UPLOAD_MAX_FILE_SIZE=5242880
ERVU_FILE_UPLOAD_MAX_REQUEST_SIZE=6291456
ERVU_FILE_UPLOAD_FILE_SIZE_THRESHOLD=0