Completed

Funcion en Firebase Cloud Functions para Proceso de Plantillas Excel

Published on the April 09, 2018 in IT & Programming

About this project

Open

El proyecto consiste en crear una funcion en Firebase Functions, de tipo Http Event, que lea de Firestore la configuracion de la plantilla, descargue la misma de Firebase Storage  (FbStorage) aplique los datos recibidos en el request cree un documento nuevo, lo almacene en FbStorage y devuelva al referencia al archivo para ser descargado desde el cliente usando el SDK de Firebase para Web o retornando .

El formato del request Http es libre, debe ser contener un ID para poder identificar la plantilla y los datos para poder pasar a la misma.

Se debe incluir un ejemplo de como descargar el excel usando la respuesta del servidor.

El producto final debe permitir agregar manualmente una plantilla en la base de datos y en el storage de Firebase y poder correr el llamado sin necesidad de hacer un nuevo deploy


Condiciones:
- Fecha limite 27/04/2018
- Se debe recibir la factura por los servicios prestados
- Se debe probar con un usuario autenticado.
- Se debe usar solamente los SDK de Firebase, ningun otro servicio adicional.
- Todos los codigos deben tener el suficiente nivel de abstraccion para poder ser incluidos en un projecto mas grande.
- Todos los codigos deben ser escritos en Typescript. (Version 2.6.2 o superior)


Otros:
- Se valora cualquier implementacion de cache, para no generar varias veces el mismo adjunto (por ejemplo almacenando los datos del request y comparando si ya existen).
- El cliente utilado sera en Angular 5, las pruebas de cliente pueden ser escritas en Angular o en HTML5 puro.


Links de Referencia

Xlsx Template
https://www.npmjs.com/package/xlsx-template

Firebase Functions
https://firebase.google.com/docs/functions/
Firebase Functions Http Event
https://firebase.google.com/docs/functions/http-events
Firebase Firestore DB
https://firebase.google.com/docs/firestore/
Firebase Storage (for files)
https://firebase.google.com/docs/storage/

Category IT & Programming
Subcategory Web development
What is the scope of the project? Medium-sized change
Is this a project or a position? Project
I currently have I have specifications
Required availability As needed
Experience in this type of projects Yes (I have managed this kind of project before)
API Integrations Cloud Storage (Dropbox, Google Drive, etc.), Other (Other APIs)
Roles needed Developer

Delivery term: April 30, 2018

Skills needed