| Server IP : 74.208.250.37 / Your IP : 216.73.216.114 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ubuntu 6.8.0-124-generic #124-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 13:00:45 UTC 2026 x86_64 User : miferval ( 1000) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/brainwavemx/app/Model/ |
Upload File : |
<?php
declare(strict_types=1);
namespace App\Model;
use Mosaico\Model\BaseModel;
class ProductosModel extends BaseModel
{
public function getProductos(): bool|object
{
$query = $this->connect()->query(
"SELECT
cp.id_producto,
cp.id_bigcommerce,
cp.id_marca,
cp.id_categoria,
cp.sku,
cp.nombre_producto,
cp.weight,
cp.precio,
cp.retail_price,
cp.sale_price,
cp.is_update,
cp.is_create,
cm.clave_marca,
lm.clave_categoria
FROM catalogo_productos cp
LEFT JOIN catalogo_marcas cm
ON cp.id_marca = cm.id_marca
LEFT JOIN catalogo_categorias lm
ON cp.id_categoria = lm.id_categoria
"
);
return $query;
}
public function getProductosError(): bool|object
{
$query = $this->connect()->query(
"SELECT
cp.id_producto,
cp.id_bigcommerce,
cp.id_marca,
cp.id_categoria,
cp.sku,
cp.nombre_producto,
cp.weight,
cp.precio,
cp.retail_price,
cp.sale_price,
cp.is_update,
cp.is_create,
cp.log_error,
cm.clave_marca,
lm.clave_categoria
FROM catalogo_productos cp
LEFT JOIN catalogo_marcas cm
ON cp.id_marca = cm.id_marca
LEFT JOIN catalogo_categorias lm
ON cp.id_categoria = lm.id_categoria
WHERE cp.is_create = 2
"
);
return $query;
}
public function getProductCreate(): bool|object
{
$query = $this->connect()->query(
"SELECT
A.id_producto,
A.id_bigcommerce,
B.id_bigcommerce as brand_id,
ids_categorias,
sku,
nombre_producto,
image,
weight,
precio,
retail_price,
sale_price,
A.meta_keywords,
A.meta_description
FROM catalogo_productos A
LEFT JOIN catalogo_marcas B
ON A.id_marca = B.id_marca
WHERE A.is_create = 1
AND A.precio > 0
"
);
return $query;
}
public function getProductUpdate(): bool|object
{
$query = $this->connect()->query(
"SELECT
A.id_producto,
A.id_bigcommerce,
B.id_bigcommerce as brand_id,
ids_categorias,
A.sku,
nombre_producto,
image,
weight,
width,
height,
precio,
retail_price,
sale_price,
C.description,
C.short_description,
A.meta_keywords,
A.meta_description,
A.meta_title
FROM catalogo_productos A
LEFT JOIN catalogo_marcas B
ON A.id_marca = B.id_magento
LEFT JOIN catalogo_producto_descripciones C
ON A.id_bigcommerce = C.id_bigcommerce
WHERE A.is_update = 1
AND A.id_bigcommerce IS NOT NULL
"
);
return $query;
}
public function updateIdBigcommerce(int $id_producto, int $id_bigcommerce): void
{
$query = $this->connect()->query("
UPDATE catalogo_productos SET
id_bigcommerce = " . $id_bigcommerce . ",
is_create = 0
WHERE id_producto = " . $id_producto . "
");
}
public function updateStatusBigcommerce(int $id_producto, int $status): void
{
$query = $this->connect()->query("
UPDATE catalogo_productos SET
is_create = " . $status . "
WHERE id_producto = " . $id_producto . "
");
}
public function updateStatusErrorBigcommerce(int $id_producto, int $status, string $error): void
{
$query = $this->connect()->query("
UPDATE catalogo_productos SET
is_create = 2,
log_error = '" . $error . "'
WHERE id_producto = " . $id_producto . "
");
}
public function updateIsUpdate(int $id_producto): void
{
$query = $this->connect()->query("
UPDATE catalogo_productos SET
is_update = 0
WHERE id_producto = " . $id_producto . "
");
}
public function getImagesCreate(): bool|object
{
$query = $this->connect()->query("
SELECT
A.id_imagen,
A.image_path,
B.id_bigcommerce
FROM
catalogo_producto_imagenes A
JOIN catalogo_productos B
ON B.id_magento = A.id_producto_magento
AND B.id_bigcommerce IS NOT NULL
WHERE A.is_create = 1
");
return $query;
}
public function updateImageIdBigcommerce(int $id_imagen, int $id_bigcommerce): void
{
$query = $this->connect()->query("
UPDATE catalogo_producto_imagenes SET
id_bigcommerce = " . $id_bigcommerce . "
WHERE id_imagen = " . $id_imagen . "
");
}
public function updateImageIsCreate(int $id_imagen): void
{
$query = $this->connect()->query("
UPDATE catalogo_producto_imagenes SET
is_create = 0
WHERE id_imagen = " . $id_imagen . "
");
}
public function getMarcas(): bool|object
{
$query = $this->connect()->query(
"SELECT
id_marca,
id_bigcommerce,
clave_marca,
nombre_marca,
is_create,
is_update
FROM catalogo_marcas
"
);
return $query;
}
public function getBrandsCreate(): bool|object
{
$query = $this->connect()->query(
"SELECT
id_marca,
nombre_marca
FROM catalogo_marcas
WHERE is_create = 1
LIMIT 100
"
);
return $query;
}
public function updateMarcaIdBigcommerce(int $id_marca, int $id_bigcommerce): void
{
$query = $this->connect()->query("
UPDATE catalogo_marcas SET
id_bigcommerce = " . $id_bigcommerce . ",
is_create = 0
WHERE id_marca = " . $id_marca . "
");
}
public function getBrandsUpdate(): bool|object
{
$query = $this->connect()->query(
"SELECT
id_marca,
id_bigcommerce,
nombre_marca
FROM catalogo_marcas
WHERE is_update = 1
"
);
return $query;
}
public function updateMarcaIsUpdate(int $id_marca): void
{
$query = $this->connect()->query("
UPDATE catalogo_marcas SET
is_update = 0
WHERE id_marca = " . $id_marca . "
");
}
public function getBrandsDelete(): bool|object
{
$query = $this->connect()->query(
"SELECT
id_marca,
id_bigcommerce
FROM catalogo_marcas
WHERE is_deleted = 1
"
);
return $query;
}
public function getCategorias(): bool|object
{
$query = $this->connect()->query(
"SELECT
id_categoria,
id_bigcommerce,
parent_id,
clave_categoria,
nombre_categoria,
is_create,
is_update
FROM catalogo_categorias
"
);
return $query;
}
public function updateCategoriaIdBigcommerce(int $id_categoria, int $id_bigcommerce): void
{
$query = $this->connect()->query("
UPDATE catalogo_categorias SET
id_bigcommerce = " . $id_bigcommerce . ",
is_create = 0
WHERE id_categoria = " . $id_categoria . "
");
}
public function getCategoriesCreate(): bool|object
{
$query = $this->connect()->query(
"SELECT
id_categoria,
parent_id,
nombre_categoria
FROM catalogo_categorias
WHERE is_create = 1
LIMIT 100;
"
);
return $query;
}
public function getChannelCreate(): bool|object
{
$query = $this->connect()->query("
SELECT
id_channel,
id_bigcommerce
FROM catalogo_channel_producto
WHERE is_create = 1
");
return $query;
}
public function updateProductoError($id_producto) : bool
{
$query = $this->connect()->query("
UPDATE catalogo_productos SET
is_create = 1
WHERE id_producto = " . $id_producto . "
");
return $query;
}
public function getImagesDelete(): bool|object
{
$query = $this->connect()->query("
SELECT
A.id_imagen,
A.image_path,
A.id_bigcommerce,
B.id_bigcommerce as id_producto
FROM
catalogo_producto_imagenes A
JOIN catalogo_productos B
ON B.id_magento = A.id_producto_magento
AND A.id_bigcommerce IS NOT NULL
WHERE A.is_deleted = 1
");
return $query;
}
public function updateImageIsDelete(int $id_imagen): void
{
$query = $this->connect()->query("
UPDATE catalogo_producto_imagenes SET
id_bigcommerce = NULL,
is_deleted = 0
WHERE id_imagen = " . $id_imagen . "
");
}
public function updateImageIsDeleteError(int $id_imagen): void
{
$query = $this->connect()->query("
UPDATE catalogo_producto_imagenes SET
is_deleted = 3
WHERE id_imagen = " . $id_imagen . "
");
}
public function getDefaultImage(int $id_imagen): void
{
$query = $this->connect()->query("
SELECT
id_imagen,
A.id_bigcommerce,
image_path,
B.sku
FROM catalogo_producto_imagenes A
JOIN catalogo_productos B
ON A.image_path = B.image
LIMIT 10
");
}
}