Evaluating bids

Necesito traer una base de datos Firebase a Mysql

Published on the October 13, 2022 in IT & Programming

About this project

Open

Tengo un cliente que tiene su sitio en Google con Firebase. Las tablas son:

"Notas" que quiene los campos:
Contenido (textos y fotos) (se explica debajo)
Copete (texto)
Epigrafe (texto)
Estado (se ignora)
Etiquetas (nombre y slug)
Fecha de publicación (fecha + hora)
imagen (con link a foto a descargar) (se explica debajo)
propietario_id (varchar asociado a id de la tabla users)
Slug (texto)
Titulo (texto)
Seccion (texto que se guarda en tabla "secciones" - Se explica debajo)

"Usuarios" tiene los campos:
id (relacionado a notas)
nombre (texto)
email (mail)
foto (link a gravatar)

Necesitamos llevar todo esto a una DB MySQL con tablas y campos descriptas debajo:

Agregado.
Campos de tablas locales.

Novedades (aquí van a cargarse las que vengan de la tabla NOTAS) - Entrego esta tabla con datos de prueba.

Id (autoincremental)
Fecha (es el campo fecha_de_publicacion de la tabla Firebase)
Hora (viene en el campo "fecha" de firebase)
titulo (es el campo "contenidos" de la tabla Firebase)
estado (2 - valor fijo)
Texto (es el campo texto de la tabla Firebase)
seccion (id de sección de tablas secciones) Se importa el nombre a la tabla secciones y se trae el id.
Copete (es el campo "copete" de la tabla Firebase)
volanta (es el campo "volanta" de la tabla Firebase)
autor (id de tabla de autores) se importan a la tabla autores con sus datos y se trae el id. La foto se guarda en una carpeta "autores" con el formato "[id].jpg"
fotografx (se ignora)
seourl (es el campo slug de la tabla Firebase)
video_apertura (se ignora)
Tags (son las etiquetas que se importan de "etiquetas")
orden (se ignora)
home (se ignora)
visitas (se ignora)
cache (se ignora)
del (valor 0 por defecto de la tabla)

Contenidos: textos y fotos

El "contenido" llega en partes. Entonces tenemos por ejemplo:

-> contenido
      -> 0
          -> contenido: "<p>Texto de pruebas</p>"
          -> type = "bloque de texto"
      -> 1
          -> contenido
            -> name: "sdsdsjsoccwoe.jpg"
            -> size: "592KB"
            -> type: "image/jpg"
            -> urlFile: "https://firebasestorage.googleapis.com/v0/b/website.appspot.com/o/imagenes%2Fnotas%2Fcontent-afbf8d74-e207-4c59-b621-0fd74afcf68c-1664589956702-Fd2NF5hXgAEkkll.png?alt=media&token=e7b5047a-34dd-461b-bb56-6643e2a931ac"
          -> type: "imagen"
      -> 2
          -> contenido: "<p>Texto de pruebas</p>"
          -> type = "bloque de texto"
      -> 3
          -> contenido
            -> name: "gfdgdfgdfg.jpg"
            -> size: "592KB"
            -> type: "image/jpg"
            -> urlFile: "https://firebasestorage.googleapis.com/v0/b/website.appspot.com/o/imagenes%2Fnotas%2Fcontent-afbf8d74-e207-4c59-b621-0fd74afcf68c-1664589956702-Fd2NF5hXgAEkkll.png?alt=media&token=e7b5047a-34dd-461b-bb56-6643e2a931ac"
          -> type: "imagen"

Y así se intercalan textos e imágenes.
Nosotros necesitamos que el campo "texto" contega los bloques y las fotos como **foto1** y **foto2** etc.

Ej: <p>Texto de pruebas</p>
    **foto1**
    <p>Texto de pruebas</p>
    **foto2**
    <p>Texto de pruebas</p>
    **foto3**

Y así.
Las fotos se guardan en una tabla:

fotos:
id (autoincremental)
tipo: 10 (fijo)
item: (id de la novedad)
ppal: (1 si es la primera foto y 0 si es cualquiera de las otras)

link: fotos/2022/10/03/9098-10/imagen_12.jpg
La nomenclatura de la carpeta de guardado corresponde a:
"fotos" (nombre de la carpeta, es siempre la misma)
"2022/10/03" (la fecha de la noticia)
"9098" Es el id de la novedad
"-10" valor fijo siempre igual
el número 12 de imagen_12.jpg está asociado al id de la foto

En esa carpeta hay que guardar las fotos.

IMPORTANTE: Cotizar lo siguiente aparte.
Las etiquetas vienen con nombre y slug. Queremos guardarlas separadas por comas en la tabla novedades (esto por defecto). Lo que queremos cotizar aparte es:

Guardar cada tag con su slug en una tabla "tags" y relacionar las novedades con sus etiquetas en una tabla "novedades_tags" con los campos id (autoincremental), tag (id tags), novedad (id novedades), fecha (de la novedad)

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
Roles needed Developer

Delivery term: Not specified

Skills needed

Other projects posted by S. D.