﻿id	summary	reporter	owner	description	type	status	priority	component	resolution	keywords	cc
1025	Хранить протоколы тестирования изделий в базе данных	alx	san	"По существующей в настоящее время традиции, сотрудник, тестирующий иделие, составляет протокол испытаний, заносит в БД запись о проведенном испытании, а файл протокола помещает на !r2 в каталог `/media/pto/Протоколы испытаний` (точнее, один из его подкаталогов).

Как показала практика, данная традиция дает неудовлетворительные результаты (см. ticket:1010#comment:6). Кроме этого, недавнее решение не хранить номера протоколов в записях о тестировании (см. ticket:1022#comment:3) затрудняет поиск файла протокола, даже когда он имеется.

**Предлагаю** изменить существующую традицию и хранить протоколы испытаний не в отдельных от БД файлах, а в самой БД, а именно:

- В талицу `history` добавить столбцы `document` и `document-mime`;
- В веб-интерфейсе испытания в форме записи результатов испытания добавить поле выбора файла протокола;
- при сабмите формы записывать в `history` протокол и его MIME-type.
- В веб-интерефйсе на странице просмотра истории предусмотреть возможность скачивания протокола.
- Уже имеющиеся на !r2 файлы протоколов добавить в существующие записи в таблице `history` в течение некоторого ""переходного периода"".

В записях таблицы `history` с типом, отличным от 'testing', столбцы `document` и `document-mime` будут иметь значение NULL.

Предлагаемое улучшение, по моему мнению, позволит:
- исключить возможность отсутствия протокола тестирования (фронтенд не позволит пользователю забыть загрузить файл);
- исключить необходимость ""ручного"" (визуального) поиска файла протокола по имени и/или дате файла, так как будет строгое соответствие - в одной записи один протокол."	улучшение	assigned	major	БД изделий АДС			andrei
