Inglés

Modulo tienda gilfamily

Estructura tablas


CREATE TABLE `CLI_PRODUCTS` (
  `PRODUCT_ID` int(7) unsigned NOT NULL AUTO_INCREMENT,               -- Identificador único
  `NAME` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,           -- Nombre del producto
  `NAME_en` varchar(100) COLLATE utf8_unicode_ci DEFAULT '',          -- Idem., en en english     
  `PRICE` decimal(7,2) DEFAULT NULL,                                  -- Precio
  `STOCK` int(4) DEFAULT NULL,                                        -- Existencias
  `DESCRIPTION` text COLLATE utf8_unicode_ci,                         -- descripción breve en listado tienda
  `DESCRIPTION_en` text COLLATE utf8_unicode_ci,                      -- Idem., en en english     
  `ACTIVE` int(1) DEFAULT '1',                                        -- Si 0 producto desactivado. No se muestra
  `ID_TIPO` int(5) DEFAULT '1',                                       -- FK tabla CLI_TIPOS
  `ID_BODEGA` int(5) DEFAULT '1',                                     -- FK tabla CLI_BODEGAS
  `ID_DENOMINACION` int(5) DEFAULT '1',                               -- FK tabla CLI_DENOMINACIONES
  `VOLUME` int(3) DEFAULT '3',                                        -- FK Array $volumes (Mas abajo está su definición)
  `FILE_NAME` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,      -- Miniatura botella NO SE USA **
  `FILE_NAME_BIG` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,  -- Imagen botella
  `VARIEDAD` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,       -- Tipo de uva
  `FICHA_PDF` text COLLATE utf8_unicode_ci,                           -- Texto para Detalle producto y ficha pdf     
  `FICHA_PDF_en` text COLLATE utf8_unicode_ci,                        -- Idem., en en english     
  `PENIN` int(2) DEFAULT NULL,                                        -- Puntos Peñín
  `PARKER` int(2) DEFAULT NULL,                                       -- Puntos Parker  
  `DEKANTER` int(2) DEFAULT NULL,                                     -- Puntos Dekanter
  `DEKANTER_HR` int(1) DEFAULT NULL,                                  --  ... añade "Higly recommended" en Dekanter
  `VINOUS` int(2) DEFAULT NULL,                                       -- Puntos Vinous
  `WFCP` int(1) DEFAULT NULL,                                         -- Se muestra Logo WFCP en Ficha PDF
  `DO_HIDDEN` int(1) DEFAULT NULL,                                    -- Ocultar DO en ficha
  `ORGANIC` int(1) DEFAULT NULL,                                      -- Mostrar logo 'Organic', en listado, detalle, y pdf
  `FOOTER` text COLLATE utf8_unicode_ci,                              -- Texto (opcional) footer (el delos sulfitos) en ficha PDF 
  `FOOTER_en` text COLLATE utf8_unicode_ci,                           -- Idem., en en english         
  `QRCODE` int(1) DEFAULT NULL,                                       -- Mostrar qrCode en Ficha PDF
  `QRCODE_URL` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL,     -- Url ES para generar el qrCode (No lo usan)
  `QRCODE_URL_en` varchar(150) COLLATE utf8_unicode_ci DEFAULT '',    -- Url EN (no lo usan)      
  `QRCODE_IMG_ES` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,  -- Imagen con el QrCode de la url en spanish
  `QRCODE_IMG_EN` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,  -- Idem. para english 
  PRIMARY KEY (`PRODUCT_ID`)
) ENGINE=MyISAM AUTO_INCREMENT=71 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_c

Notas:

  • Los campos con el sufijo _en son la versión en inglés del mismo sin sufijo. Si están vacíos se muestra el contenido del campo en español. (O el idioma que se haya definido por omisión)
  • Para campos booleanos usamos int(1) siendo 0 false y 1 true.
  • Algunos campos exclusivos de producto Vinos están definidos en la tabla CFG_EXTRA_FIELDS, por ejemplo, los de puntos, qrcodes, et.
  • Hay mas campos en la tabla, aquí solo vemos los que se usan en gilfamily. Para ver todos los que hay: modulo.tienda
  • Las imagenes de de las botellas se guardan en el directorio /media/products/images/big. Y queda pendiente modificar (para facilitar los updates) el código de la tienda par que su nombre sea {ID_PRODUCT}_{PRODUCT_NAME}.{EXT}, siendo PRODUCT_NAME el nombre del producto (campo NAME) sanitizado (minúsculas, guiones por espcios, etc.)
  • El formato para nombre de las imagenes de los qrCodes es {PRODUCT_ID}_{LANG_ID}.png. Y su directorio es '/media/qrcode. por ejemplo: por ejemplo /media/qrcode/45_es.png y /media/qrcode/45_en.png
  • ** Antes se usaba también el campo FILE_NAME para guardar copia de la imagen con un tamaño razonable, pero 'no se ven bien, pon las gordas', y como el ancho de banda es suyo, pues sin problema. O sea, no se usa ese campo.





CREATE TABLE `CLI_BODEGAS` (
  `ID` int(5) unsigned NOT NULL AUTO_INCREMENT,                       -- PK, relación con CLI_PRODUCTS.ID_BODEGA         
  `NAME` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,           -- Nombre de la bodega
  `FILE_NAME` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,      -- Imagen cabecera, 3400x600 (/media/bodegas/images)
  `DESCRIPTION` text COLLATE utf8_unicode_ci,                         -- No se usa
  `ID_ORDER` int(8) DEFAULT NULL,                                     -- Para ordenarlas
  `ACTIVE` int(1) DEFAULT '1',                                        -- Si 0 bodega desactivada. No se muestran sus vinos
  `SUBTITLE` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,       -- Creo que no se usa en ningún sitio. 
  `FILE_NAME_LOGO_MINI` varchar(200) COLLATE utf8_unicode_ci,         -- Logo png, blanco, transp alfa. (/media/bodegas/logos)
  `LAT` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL,             -- Para mapa 
  `LON` varchar(12) COLLATE utf8_unicode_ci DEFAULT NULL,             --         ... que está desactivado
  `WEB` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,            -- Url de cada bodega, en la corporativa gilfamily.es
  PRIMARY KEY (`ID`)
) ENGINE=MyISAM AUTO_INCREMENT=13 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci    


CREATE TABLE `CLI_TIPOS` (
  `ID` int(5) unsigned NOT NULL AUTO_INCREMENT,                       -- PK, relación con CLI_PRODUCTS.ID_TIPO         
  `NAME` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,           -- Tinto, rosado, blanco, etc.
  `ID_ORDER` int(8) DEFAULT NULL,                                     -- No se usa
  `ACTIVE` int(1) DEFAULT '1',                                        -- Si 0 tipo desactivado. No se muestran sus vinos
  PRIMARY KEY (`ID`)
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci


CREATE TABLE `CLI_DENOMINACIONES` (
  `ID` int(5) unsigned NOT NULL AUTO_INCREMENT,                       -- PK, relación con CLI_PRODUCTS.ID_DENOMINACION         
  `NAME` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,           -- Nombre DO
  `FILE_NAME` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,      -- No se usa (Imagen cabecera, 3400x600)
  `DESCRIPTION` text COLLATE utf8_unicode_ci,                         -- No se usa
  `ID_ORDER` int(8) DEFAULT NULL,                                     -- No se usa
  `ACTIVE` int(1) DEFAULT '1',                                        -- Si 0 do desactivada. No se muestra su link
  `FILE_MAP` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,       -- Mapa para las fichas pdf (en media/do/images)
  PRIMARY KEY (`ID`)
) ENGINE=MyISAM AUTO_INCREMENT=14 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci



CREATE TABLE `CLI_TAGS` (
  `ID` int(5) unsigned NOT NULL AUTO_INCREMENT,                     -- PK
  `CAPTION` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,       -- Nombre
  `NAME` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,         -- identificador
  `FILE_NAME` varchar(200) COLLATE utf8_unicode_ci DEFAULT NULL,    -- Imagen para logo, etiqueta, etc
  `ACTIVE` int(1) DEFAULT '1',                                      -- Pues eso
  `HEADER_FILE_NAME` varchar(200) COLLATE utf8_unicode_ci,          -- Imagen para cabecera, chapuza mode
  PRIMARY KEY (`ID`)
) ENGINE=MyISAM AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci


Cada producto puede tener varios 'tags', en este caso se usan para las etiquetas, 'vegano', 'ecológico', etc, y para wfcp, sea lo que sea esa cosa. En esta tabla se relacionan los tags con los productos

CREATE TABLE `CLI_PRODUCTS_TAGS` (
  `ID` int(5) unsigned NOT NULL AUTO_INCREMENT,                    -- Que no falte la PK :)
  `PRODUCT_ID` int(5) DEFAULT NULL,                                -- ID de un PRODUCT
  `TAG_ID` int(5) DEFAULT NULL,                                    -- ID de un TAG
  PRIMARY KEY (`ID`)
) ENGINE=MyISAM AUTO_INCREMENT=220 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci  

Una vez, ya con todo hecho y en producción, quisieron añadir (para una campaña temporal) una bodega llamada "Vinos solidarios", "bodega" cuyos vinos eran vinos de otras bodegas. La solucion fué añadir un tag "Vinos solidarios", con su correspondiente entrada de menú. Antes o depués habrá que volver a activarlo, eso, o algo parecido.




// Lista de valores para el campo CLI_PRODUCTS.VOLUME         

$volumes   = [
               1  => '187.5 ml',       // Cuarto botella, Piccolo o Split
               2  => '250 ml',         // Lata
               3  => '375 ml',         // Demi o Media botella
               4  => '750 ml',         // Estándar
               5  => '1 L',            // Litre
               6  => '1.5 L',          // Magnum
               7  => '3 L',            // Doble Magnum
               8  => '4.5 L',          // Jeroboam
               9  => '6 L',            // Imperial
               10 => '9 L',            // Salmanazar
               11 => '12 L',           // Baltasar
               12 => '15 L'            // Nabucodonosor
             ];








Ésta página utiliza cookies propias y almacenamiento local para facilitar el uso de nuestra web. Si continua navegando, supone la aceptación de nuestra política de cookies. Tenga en cuenta que si las desactiva no podrá utilizar nuestra tienda.