Сайт фондовой компании, в которую каждый день вступают новые участники. Реестр этих компаний отображается на сайте и активно используется посетителями для получения информации по участникам. Реестр представляет из себя XLS файл, который далее конвертируется в sql формат и выгружается вручную. Как можно автоматизировать этот процесс?
Я вижу такое решение:
1) Менеджер вносит изменения в XLS файл
2) Отправляет этот файл на служебную почту
3) Сервер загружает с почты файл, конвертирует его и заменяет старый реестр на новый
С помощью чего можно это реализовать и в какую сторону искать? Какие минусы такой схемы с точки зрения стабильности и безопасности? Какие альтернативы автоматической загрузки реестра?
Vladimir, дело в том, чтобы максимально упростить это процесс с точки зрения бизнеса. Чтобы менеджеру оставалось только направить вложенный файл на почту без манипуляций с сайтом.
mmaximov97, Самые простые из существующих laravel и yii, но придется весь код переписывать под них. Там есть понятие "миграции", создается один единственный файл, в котором описываются изменения в структуре базы или в данных, при обновлении фреймворк автоматически запускает код последней не запущенной миграции. Также в миграции можно прописать код отката.
Возможно можно взять код класса миграции из этих фреймворков и прикрутить к обычном PHP-проекту, нужно оценить что будет быстрее.
mmaximov97, так менеджеру надо:
1. заполнить файл, сохранить;
2. отправить на почту.
А через web он заполняет некие поля (аналогичные в экселевском файле) и на кнопку клик и всё отправилось.
FanatPHP, возможно, но заказчик считает, что переучивать персонал слишком затруднительно. В любом случае, если вести реестр на сайте, чем лучше сейчас пользоваться?
Vladimir, может быть внесена строка, изменено что-то, а также исключена компания из реестра. Также нужен поиск и возможность выгрузить полный реестр. Желательно также возможность быстрой загрузки выгрузки резервных копий реестров.
mmaximov97, для работы с БД? Самой типовой задачи из всех, решаемых вебом?
Внезапно, любой фреймворк / CMS это делают.
У вас актуальнее другие вопросы - как это сделать удобно/наглядно и как при этом обеспечить безопасность (защиту от неправомерного доступа и от дурака-оператора). Это уже можно решать более предметно, но после того, как вы поймете организацию работы в таком формате - кто за что будет отвечать и кому что будет доступно. Роли пользователей нужны.
Adamos, Вопроса я возможно действительно не понял, но миграции нужны и для изменения состава таблиц и для наполнения ее данными в определенных случаях, например при первоначальном заполнении таблиц данными: к примеру странами.
Дмитрий, да, но seed используется именно для начальных данных, а не для обновления существующих. Обновление данных в миграции может происходить только потому, что меняется структура таблиц. Это инструмент разработчика, а не администратора сайта.
Деятельность компании подразумевает, что хранить базу легче на компьютере, чем переучивать персонал для работы с сайтом. То есть все наоборот... Вносятся изменения в XLS, а потом он выгружается на сайт.
Однако, если вести реестр на сайте, какие средства посоветуете?