Info(); $smarty->assign('Usr', $Usr); if(isset($_POST['action'])) $_POST['type'] = $_POST['action']; switch($_POST["type"]){ case 'addProducto': $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/boxes/agregar-envio-reporte-popup.tpl'); break; case 'saveProducto': $envioId = trim($_POST['envioId']); $codigoBarra = trim($_POST['codigoBarra']); $tipo = $_POST['tipo']; $cantidad = trim($_POST['cantidad']); $sucursalId = $Usr['sucursalId']; $envio->setEnvioId($envioId); $infE = $envio->Info(); $noError = ''; if($envioId == '') $noError = 10053; elseif($codigoBarra == '') $noError = 20106; elseif($cantidad == '') $noError = 20130; else{ if($infE['sucursalId'] != $sucursalId) $noError = 20131; } if($noError){ $util->setError($noError,'',''); $util->PrintErrors(); echo 'fail[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); exit; } //Checamos si existe el producto en el pedido. $producto->setCodigoBarra($codigoBarra); $productoId = $producto->GetProductIdByCodigo2(); $envio->setEnvioId($envioId); $envio->setProductoId($productoId); if($infE['tipo'] == 'CT') $existe = $envio->ExistProductoRec(); else $existe = $envio->ExistProductoRecTT(); if(!$existe){ $util->setError(20132,'',''); $util->PrintErrors(); echo 'fail[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); exit; } //Checamos si ya se agrego el producto al reporte $existe = $envio->ExistProductoRep(); if($existe){ $util->setError(20133,'',''); $util->PrintErrors(); echo 'fail[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); exit; } //Obtenemos el total recibido $envio->setEnvioId($envioId); $envio->setProductoId($productoId); if($infE['tipo'] == 'CT') $total = $envio->GetTotalProdsRec(); else $total = $envio->GetTotalProdsRecTT(); $envio->setEnvioId($envioId); $envio->setSucursalId($sucursalId); $envio->setProductoId($productoId); $envio->setTotal($total); $envio->setTipo($tipo); $envio->setCantidad($cantidad); $envio->setUsuarioId($_SESSION['loginKey']); if(!$envio->SaveReporteProd()) { echo 'fail[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); }else { echo 'ok[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); echo '[#]'; $envio->setSucursalId($Usr['sucursalId']); $productos = $envio->EnumRepProd(); $items = array(); foreach($productos['items'] as $res){ $card = $res; $producto->setProductoId($res['productoId']); $infP = $producto->Info(); $card['codigoBarra'] = $infP['codigoBarra']; $card['modelo'] = utf8_encode($infP['modelo']); $sucursal->setSucursalId($res['sucursalId']); $card['sucursal'] = urldecode($sucursal->GetNameById()); if($card['tipo'] == 'Faltante') $card['recibido'] = $card['total'] - $card['cantidad']; else $card['recibido'] = $card['total'] + $card['cantidad']; $items[] = $card; } $productos['items'] = $items; $smarty->assign('productos',$productos); $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/lists/envios-productos-recibidos.tpl'); } break; case 'deleteProducto': $envRepProdId = $_POST['envRepProdId']; $envio->setEnvRepProdId($envRepProdId); if(!$envio->DelEnvRepProd()) { echo 'fail[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); }else { echo 'ok[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status.tpl'); echo '[#]'; $envio->setSucursalId($Usr['sucursalId']); $productos = $envio->EnumRepProd(); $items = array(); foreach($productos['items'] as $res){ $card = $res; $producto->setProductoId($res['productoId']); $infP = $producto->Info(); $card['codigoBarra'] = $infP['codigoBarra']; $card['modelo'] = utf8_encode($infP['modelo']); $sucursal->setSucursalId($res['sucursalId']); $card['sucursal'] = urldecode($sucursal->GetNameById()); if($card['tipo'] == 'Faltante') $card['recibido'] = $card['total'] - $card['cantidad']; else $card['recibido'] = $card['total'] + $card['cantidad']; $items[] = $card; } $productos['items'] = $items; $smarty->assign('productos',$productos); $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/lists/envios-productos-recibidos.tpl'); } break; case 'autorizarProducto': $envRepProdId = $_POST['envRepProdId']; $envio->setEnvRepProdId($envRepProdId); if(!$envio->AutorizarRepProd()) { echo 'fail[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); }else{ $envio->setEnvRepProdId($envRepProdId); $infR = $envio->InfoRepProd(); $envio->setEnvioId($infR['envioId']); $infE = $envio->Info(); //Si es Faltante ajustamos el Inventario eliminando los productos faltantes si la Tienda Origen //No es 00 Bodega Lerma //Si es envio de T a T se regresan los productos a la sucursal Origen siempre y cuando No sea //00 Bodega Lerma //Si Suc. 1 envia 10 Pzas. a Suc 2, y Suc. 2 reporta faltante de 3 piezas //esas 3 piezas se regresaa Suc. 1 if($infR['tipo'] == 'Faltante'){ $envio->setEnvioId($infR['envioId']); $envio->setProductoId($infR['productoId']); $envio->setCantidad($infR['cantidad']); $envio->setSucursalId($infE['sucOrigen']); if($infE['tipo'] == 'CT') $envio->AjustarInventario(); elseif($infE['tipo'] == 'TT' && $infE['sucOrigen'] != 32) $envio->AjustarInventarioTT(); elseif($infE['tipo'] == 'TT' && $infE['sucOrigen'] == 32) $envio->AjustarInventario(); }elseif($infR['tipo'] == 'Sobrante'){ $productoId = $infR['productoId']; $sucursalId = $infR['sucursalId']; $cantidad = $infR['cantidad']; $db = $util->DBSelect(15); $sql = 'SELECT proveedorId FROM producto WHERE productoId = "'.$productoId.'"'; $db->setQuery($sql); $proveedorId = $db->GetSingle(); //Obtenemos el Sig. No de Pedido $sql = 'SELECT MAX(noPedido) FROM pedido'; $db->setQuery($sql); $noPedido = $db->GetSingle(); $noPedido++; //CARGAMOS LOS PRODUCTOS $sql = 'INSERT INTO pedido ( proveedorId, folioProv, noPedido, fecha, fechaEntrega, metodoCompra, resurtido, usuarioId, fechaAprobacion, userIdAprobacion, fechaDistribucion, userIdDistribucion, fechaAutorizacion, userIdAutorizacion, fechaOrdenCompEnv, userIdOrdenCompEnv, fechaOrdenCompIng, userIdOrdenCompIng, ajuste, status )VALUES( "'.$proveedorId.'", "FOLIO'.$noPedido.'", "'.$noPedido.'", "'.date('Y-m-d H:i:s').'", "'.date('Y-m-d').'", "conIva", "0", "2", "'.date('Y-m-d H:i:s').'", "3", "'.date('Y-m-d H:i:s').'", "6", "'.date('Y-m-d H:i:s').'", "3", "'.date('Y-m-d H:i:s').'", "2", "'.date('Y-m-d H:i:s').'", "4", "1", "EnvSuc" )'; $db->setQuery($sql); $pedidoId = $db->InsertData(); $sql = 'SELECT * FROM producto WHERE productoId = '.$productoId; $db->setQuery($sql); $infP = $db->GetRow(); $sql = 'INSERT INTO pedidoColor (pedidoId, productoId, colorId, cantidad) VALUES ("'.$pedidoId.'","'.$productoId.'", 2, '.$cantidad.')'; $db->setQuery($sql); $db->InsertData(); $sql = 'INSERT INTO pedidoTalla (pedidoId, productoId, tallaId, cantidad) VALUES ("'.$pedidoId.'","'.$productoId.'", 1, 1)'; $db->setQuery($sql); $db->InsertData(); $sql = 'INSERT INTO pedidoDistribucion (pedidoId, productoId, sucursalId, cantidad, status) VALUES ("'.$pedidoId.'","'.$productoId.'", "'.$sucursalId.'", "'.$cantidad.'", "Enviado")'; $db->setQuery($sql); $db->InsertData(); $sql = 'INSERT INTO pedidoProducto (pedidoId, productoId, prodCatId, prodSubcatId, totalLote, cantLotes, cantPrendas, prendasComp, costo, precioVenta, status) VALUES ("'.$pedidoId.'","'.$productoId.'", "'.$infP['prodCatId'].'", "'.$infP['prodSubcatId'].'", "'.$cantidad.'", 1, "'.$cantidad.'","1","'.$infP['costo'].'", "'.$infP['precioVentaIva'].'" ,"Aprobado")'; $db->setQuery($sql); $db->InsertData(); //Envios $sql = 'INSERT INTO envio (sucursalId, fecha, usuarioId, fechaRecibido, userIdRecibido, tipo, status) VALUES ("'.$sucursalId.'","'.date('Y-m-d H:i:s').'", 4, "'.date('Y-m-d H:i:s').'", 5, "CT", "Recibido")'; $db->setQuery($sql); $envioId = $db->InsertData(); $sql = 'INSERT INTO envioPedido (envioId, pedidoId, noCajas) VALUES ("'.$envioId.'", "'.$pedidoId.'", 1)'; $db->setQuery($sql); $db->InsertData(); $sql = 'INSERT INTO envioRecibir (envioId, pedidoId, productoId, noPrendas, completo) VALUES ("'.$envioId.'", "'.$pedidoId.'", "'.$productoId.'", "'.$cantidad.'", "1")'; $db->setQuery($sql); $db->InsertData(); $sql = 'SELECT * FROM producto WHERE productoId = '.$productoId; $db->setQuery($sql); $infP = $db->GetRow(); for($k=0; $k<$cantidad; $k++){ $sql = 'INSERT INTO inventario (envioId, pedidoId, sucursalId, productoId, prodItemId, precioVenta, cantidad, status) VALUES ("'.$envioId.'", "'.$pedidoId.'", "'.$sucursalId.'", "'.$productoId.'", "'.$productoId.'", "'.$infP['precioVentaIva'].'", "1", "Disponible")'; $db->setQuery($sql); $db->InsertData(); } //Guardamos los Datos $sql = 'INSERT INTO ajustes (sucursalId, productoId, disponible, cantidad, fecha, pedidoId, usuarioId, tipo, modulo) VALUES ("'.$sucursalId.'", "'.$productoId.'", "'.$disponible.'", "'.$cantidad.'", "'.date('Y-m-d H:i:s').'", "'.$pedidoId.'", "'.$Usr['usuarioId'].'", "Agregar", "EnvMercFS")'; $db->setQuery($sql); $db->InsertData(); $util->setError(20109,'complete'); $util->PrintErrors(); }//if echo 'ok[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status.tpl'); echo '[#]'; $envio->setSucursalId(0); $productos = $envio->EnumRepProd(); $items = array(); foreach($productos['items'] as $res){ $card = $res; $producto->setProductoId($res['productoId']); $infP = $producto->Info(); $card['codigoBarra'] = $infP['codigoBarra']; $card['modelo'] = utf8_encode($infP['modelo']); $sucursal->setSucursalId($res['sucursalId']); $card['sucursal'] = urldecode($sucursal->GetNameById()); if($card['tipo'] == 'Faltante') $card['recibido'] = $card['total'] - $card['cantidad']; else $card['recibido'] = $card['total'] + $card['cantidad']; $items[] = $card; } $productos['items'] = $items; $smarty->assign('productos',$productos); $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/lists/envios-productos-recibidos.tpl'); } break; case 'rechazarProducto': $envio->setEnvRepProdId($_POST['envRepProdId']); if(!$envio->RechazarRepProd()) { echo 'fail[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status_on_popup.tpl'); }else{ echo 'ok[#]'; $smarty->display(DOC_ROOT.'/templates/boxes/status.tpl'); echo '[#]'; $productos = $envio->EnumRepProd(); $items = array(); foreach($productos['items'] as $res){ $card = $res; $producto->setProductoId($res['productoId']); $infP = $producto->Info(); $card['codigoBarra'] = $infP['codigoBarra']; $card['modelo'] = utf8_encode($infP['modelo']); $sucursal->setSucursalId($res['sucursalId']); $card['sucursal'] = urldecode($sucursal->GetNameById()); if($card['tipo'] == 'Faltante') $card['recibido'] = $card['total'] - $card['cantidad']; else $card['recibido'] = $card['total'] + $card['cantidad']; $items[] = $card; } $productos['items'] = $items; $smarty->assign('productos',$productos); $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/lists/envios-productos-recibidos.tpl'); } break; case 'loadInfoProd': $envioId = $_POST['envioId']; $codigoBarra = $_POST['codigoBarra']; $producto->setCodigoBarra($codigoBarra); $productoId = $producto->GetProductIdByCodigo2(); $producto->setProductoId($productoId); $infP = $producto->Info(); $envio->setEnvioId($envioId); $infE = $envio->Info(); $envio->setEnvioId($envioId); $envio->setProductoId($productoId); if($infE['tipo'] == 'CT') $total = $envio->GetTotalProdsRec(); else $total = $envio->GetTotalProdsRecTT(); echo 'ok[#]'; echo utf8_encode($infP['modelo']); echo '[#]'; echo number_format($total,0,'.',','); break; case 'search': $codigoBarra = trim($_POST['codigoBarra2']); if($codigoBarra){ $producto->setCodigoBarra($codigoBarra); $productoId = $producto->GetProductIdByCodigo(); } $envio->setEnvioId(trim($_POST['envioId2'])); $envio->setSucursalId($_POST['sucursalId2']); $envio->setProductoId($productoId); $envio->setStatus($_POST['status2']); $productos = $envio->SearchRepProd(); $items = array(); foreach($productos['items'] as $res){ $card = $res; $producto->setProductoId($res['productoId']); $infP = $producto->Info(); $card['codigoBarra'] = $infP['codigoBarra']; $card['modelo'] = utf8_encode($infP['modelo']); $sucursal->setSucursalId($res['sucursalId']); $card['sucursal'] = urldecode($sucursal->GetNameById()); if($card['tipo'] == 'Faltante') $card['recibido'] = $card['total'] - $card['cantidad']; else $card['recibido'] = $card['total'] + $card['cantidad']; $items[] = $card; } $productos['items'] = $items; echo 'ok[#]'; $smarty->assign('productos',$productos); $smarty->assign('DOC_ROOT', DOC_ROOT); $smarty->display(DOC_ROOT.'/templates/lists/envios-productos-recibidos.tpl'); break; }//switch ?>