Скриптом на Ruby или Python заполнять .xlsx шаблон

Цена договорная
18 августа 2019, 10:56 • 13 откликов • 102 просмотра
Описание
  1. Скрипт будет запускаться на AWS Lambda
  2. функция получает на входе хеш с данными и название шаблона
  3. берет шаблон с S3
  4. заменяет плейсхолдеры на данные из хеша
  5. Сохраняет заполненный файл на S3
  6. Возвращает ссылку на файл
Доп инфа
  1. Очень желательно обойтись стандартной библиотекой без доп. зависимостей, чтобы не осложнять деплой
  2. xlsx файл это zip архив, в котором есть xml файл с данными. Его и нужно изменять.
  3. После изменения файла с данными нужно собрать архив обратно, сохранить на S3 и отдать ссылку на файл
  4. на Lambda уже есть AWS SDK с помощью которого можно общаться с S3
  5. На S3 xlsx можно хранить в разобранном виде, чтобы каждый раз не разархивировать
  6. в шаблоне часть данных единичны (название, адрес компании в шапке таблицы), часть в массиве (список товаров с названиями и ценами), где один элемент массива - одна строка в эксел-файле
  7. скрипт должен быть абстрагирован от данных и шаблона
Структура данных в хеше примерно такая (можно изменить, если это упростит)
{company: “Coca-Cola”, address: “xxx”, items: [{name: “x”, price: 1.00}, {name: “y”, price: 2.00}]}

Идеи, предлодения, сроки, стоимость?
Спасибо