Primer commit del sistema avantika sin cambios
This commit is contained in:
249
modules/productos-editar.php
Executable file
249
modules/productos-editar.php
Executable file
@@ -0,0 +1,249 @@
|
||||
<?php
|
||||
|
||||
$empresa->AuthUser();
|
||||
|
||||
if($_POST['type'] == 'saveEditProducto'){
|
||||
|
||||
$productoId = $_POST['productoId'];
|
||||
$codigoBarra = $_POST['codigoBarra'];
|
||||
$precioVentaIva = $_POST['precioVentaIva'];
|
||||
$costo = $_POST['costo'];
|
||||
|
||||
//Calculamos el Precio de Venta
|
||||
$precioVenta = 0;
|
||||
if($precioVentaIva != ''){
|
||||
$precioVenta = $precioVentaIva / 1.16;
|
||||
$precioVenta = number_format($precioVenta,2,'.','');
|
||||
}
|
||||
|
||||
//Calculamos la Utilidad
|
||||
$utilidad = $precioVenta - $costo;
|
||||
$porcUtilidad = ($utilidad * 100) / $costo;
|
||||
|
||||
$producto->setProductoId($productoId);
|
||||
$producto->setProveedorId($_POST['proveedorId']);
|
||||
$producto->setProdCatId($_POST['prodCatId']);
|
||||
$producto->setProdSubcatId($_POST['prodSubcatId']);
|
||||
$producto->setConTallaId($_POST['conTallaId']);
|
||||
$producto->setModelo($_POST['modelo']);
|
||||
$producto->setCodigoBarra($codigoBarra);
|
||||
$producto->setDescripcion($_POST['descripcion']);
|
||||
$producto->setTemporadaId($_POST['temporadaId']);
|
||||
$producto->setCosto($costo);
|
||||
$producto->setPrecioVentaIva($precioVentaIva);
|
||||
$producto->setPrecioVenta($precioVenta);
|
||||
$producto->setUtilidad($utilidad);
|
||||
|
||||
$infP = $producto->Info();
|
||||
|
||||
$producto->Update();
|
||||
|
||||
//Actualizamos los ProdItems
|
||||
$producto->UpdateProdItems();
|
||||
|
||||
//Actualizamos los Precios en Inventario
|
||||
$producto->UpdatePriceInv();
|
||||
|
||||
//Guardamos los Materiales
|
||||
|
||||
$producto->setProductoId($productoId);
|
||||
$producto->DeleteMateriales();
|
||||
|
||||
if(count($_POST['materialId']) == 0)
|
||||
$_POST['materialId'] = array();
|
||||
|
||||
foreach($_POST['materialId'] as $k => $materialId){
|
||||
$producto->setMaterialId($materialId);
|
||||
$producto->setPorcentaje($_POST['porcentaje'][$k]);
|
||||
|
||||
$producto->SaveMaterial();
|
||||
}
|
||||
|
||||
//Eliminamos el archivo
|
||||
|
||||
$producto->setProductoId($productoId);
|
||||
if($_POST['delImage']){
|
||||
$infP = $producto->Info();
|
||||
@unlink(DOC_ROOT.'/images/productos/'.$infP['imagen']);
|
||||
|
||||
$producto->setImagen('');
|
||||
$producto->UpdateImagen();
|
||||
}
|
||||
|
||||
//Guardamos el archivo
|
||||
|
||||
$ruta = DOC_ROOT.'/images/productos';
|
||||
|
||||
// obtenemos los datos del archivo
|
||||
$tamano = $_FILES["imagen"]['size'];
|
||||
$tipo = $_FILES["imagen"]['type'];
|
||||
$archivo = $_FILES["imagen"]['name'];
|
||||
|
||||
$nom = explode('.',$archivo);
|
||||
|
||||
$prefijo = substr(md5(uniqid(rand())),0,3);
|
||||
$time = time();
|
||||
|
||||
if($archivo != "") {
|
||||
|
||||
$fileName = $productoId.'_'.$time.'.'.$nom[1];
|
||||
|
||||
$destino = $ruta.'/'.$fileName;
|
||||
if (move_uploaded_file($_FILES['imagen']['tmp_name'],$destino)) {
|
||||
|
||||
//Eliminamos el archivo anterior
|
||||
|
||||
$infP = $producto->Info();
|
||||
@unlink(DOC_ROOT.'/images/productos/'.$infP['imagen']);
|
||||
|
||||
$producto->setImagen('');
|
||||
$producto->UpdateImagen();
|
||||
|
||||
//Actualizamos con el nuevo archivo
|
||||
|
||||
$producto->setProductoId($productoId);
|
||||
$producto->setImagen($fileName);
|
||||
$producto->UpdateImagen();
|
||||
|
||||
}
|
||||
|
||||
}//if
|
||||
|
||||
$_SESSION['msgP'] = 'Updated';
|
||||
|
||||
header('Location: '.WEB_ROOT.'/productos');
|
||||
exit;
|
||||
|
||||
}//if
|
||||
|
||||
$productoId = $_GET['id'];
|
||||
|
||||
$producto->setProductoId($productoId);
|
||||
$info = $producto->Info();
|
||||
//$info = $util->DecodeRow($info);
|
||||
|
||||
$proveedor->setProveedorId($info['proveedorId']);
|
||||
$info['proveedor'] = $proveedor->GetNameById();
|
||||
|
||||
$porcUtilidad = ($info['utilidad'] * 100) / $info['costo'];
|
||||
$info['porcUtilidad'] = number_format($porcUtilidad,2,'.',',');
|
||||
|
||||
$categorias = $prodCat->EnumerateAll();
|
||||
$proveedores = $proveedor->EnumerateAll();
|
||||
$temporadas = $temporada->EnumerateAll();
|
||||
$materiales = $material->EnumerateAll();
|
||||
|
||||
//Obtenemos las Tallas
|
||||
|
||||
$conValor->setConTallaId($info['conTallaId']);
|
||||
$resTallas = $conValor->EnumerateAll();
|
||||
|
||||
$tallas = array();
|
||||
foreach($resTallas as $res){
|
||||
|
||||
$atribVal->setAtribValId($res['tallaId']);
|
||||
$res['nombre'] = $atribVal->GetNameById();
|
||||
|
||||
$producto->setTallaId($res['tallaId']);
|
||||
if($producto->ExistTalla())
|
||||
$res['checked'] = 1;
|
||||
else
|
||||
$res['checked'] = 0;
|
||||
|
||||
$tallas[] = $res;
|
||||
}
|
||||
|
||||
$atribVal->setAtributoId(2);
|
||||
$resColores = $atribVal->EnumerateAll();
|
||||
|
||||
$conTallas = $conTalla->EnumerateAll();
|
||||
|
||||
//Obtenemos los Colores
|
||||
|
||||
$colores = array();
|
||||
foreach($resColores as $res){
|
||||
|
||||
$producto->setColorId($res['atribValId']);
|
||||
if($producto->ExistColor())
|
||||
$res['exist'] = 1;
|
||||
else
|
||||
$res['exist'] = 0;
|
||||
|
||||
$colores[] = $res;
|
||||
}
|
||||
|
||||
//Obtenemos los Atributos
|
||||
|
||||
$prodSubcat->setProdSubcatId($info['prodSubcatId']);
|
||||
$resAtributos = $prodSubcat->EnumAtributos();
|
||||
|
||||
$atributos = array();
|
||||
foreach($resAtributos as $res){
|
||||
|
||||
$atributo->setAtributoId($res['atributoId']);
|
||||
$res['nombre'] = $atributo->GetNameById();
|
||||
|
||||
$atribVal->setAtributoId($res['atributoId']);
|
||||
$resValores = $atribVal->EnumerateAll();
|
||||
|
||||
$valores = array();
|
||||
foreach($resValores as $val){
|
||||
|
||||
$producto->setAtribValId($val['atribValId']);
|
||||
if($producto->ExistAtributo())
|
||||
$val['exist'] = 1;
|
||||
else
|
||||
$val['exist'] = 0;
|
||||
|
||||
$valores[] = $val;
|
||||
}
|
||||
|
||||
$res['valores'] = $valores;
|
||||
|
||||
$atributos[] = $res;
|
||||
}
|
||||
|
||||
//Obtenemos los Codigos de Barra
|
||||
|
||||
$resCodigos = $producto->GetCodigosBarra();
|
||||
foreach($resCodigos as $res){
|
||||
|
||||
$card = $res;
|
||||
|
||||
$atribVal->setAtribValId($res['tallaId']);
|
||||
$nomTalla = $atribVal->GetNameById();
|
||||
|
||||
$atribVal->setAtribValId($res['colorId']);
|
||||
$card['nombre'] = $nomTalla.' '.$atribVal->GetNameById();
|
||||
$card['codigo'] = $res['codigoBarra'];
|
||||
|
||||
$codigos[] = $card;
|
||||
|
||||
}
|
||||
|
||||
//Obtenemos las subcategorias
|
||||
|
||||
$prodSubcat->setProdCatId($info['prodCatId']);
|
||||
$subcategorias = $prodSubcat->EnumerateAll();
|
||||
|
||||
//Obtenemos los materiales del Producto
|
||||
|
||||
$producto->setProductoId($productoId);
|
||||
$prodMats = $producto->GetMaterials();
|
||||
|
||||
$_SESSION['prodMats'] = $prodMats;
|
||||
|
||||
$smarty->assign('info', $info);
|
||||
$smarty->assign('tallas', $tallas);
|
||||
$smarty->assign('conTallas', $conTallas);
|
||||
$smarty->assign('colores', $colores);
|
||||
$smarty->assign('codigos', $codigos);
|
||||
$smarty->assign('prodMats', $prodMats);
|
||||
$smarty->assign('atributos', $atributos);
|
||||
$smarty->assign('categorias', $categorias);
|
||||
$smarty->assign('subcategorias', $subcategorias);
|
||||
$smarty->assign('temporadas', $temporadas);
|
||||
$smarty->assign('proveedores', $proveedores);
|
||||
$smarty->assign('materiales', $materiales);
|
||||
|
||||
?>
|
||||
Reference in New Issue
Block a user