/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { var_dump($request); /*Falta completar con los datos del request*/ $movimiento = new movimiento(); $movimiento->tipo = $request->tipo; $movimiento->cod_usuario = (string) $request->usuario; $movimiento->save(); $cod_mov = $movimiento->cod; /* Aca creamos las filas de la tabla movarts con el id del movimiento creado y los codigos de los articulos y cantidades. seria algo como For i=1, cantItems $movart=new movart; $movart->cod_mov=$cod_mov; $movart->cod_art=$request->art[i]; $movart->cant=$request->cant[i]; $movart->save(); end for */ }
exit; break; case "hacerOperacionDinero": /*+++++++++++ VALIDA CAJA +++++++++++++++*/ if (cajaescerrado() == 1) { return false; } $IdLocal = intval($_REQUEST["xidl"]); $cantidad = CleanFloat($_REQUEST["cantidad"]); $concepto = $_REQUEST["concepto"]; $fechacaja = CleanCadena($_REQUEST["fcaja"]); $operacion = CleanText($_REQUEST["op"]); $xIdArqueo = CleanID($_REQUEST["xidacg"]); $Partida = CleanText($_REQUEST["partida"]); $TipoVenta = getSesionDato("TipoVentaTPV"); $mov = new movimiento(); $IdArqueo = $mov->getIdArqueoEsCerradoCaja($IdLocal, $TipoVenta); $IdPartida = obtenerPartidaCaja($Partida, $TipoVenta); if ($IdArqueo != $xIdArqueo || !$IdArqueo) { return false; } EntregarOperacionCaja($IdLocal, $cantidad, $concepto, $IdPartida, $operacion, $fechacaja, $IdArqueo, $TipoVenta); return true; break; case "AltaPartidaCaja": $Partida = CleanText($_POST["partida"]); $Operacion = CleanText($_POST["op"]); $IdLocal = CleanID($_POST["xidl"]); $TipoVenta = getSesionDato("TipoVentaTPV"); $xidpartida = obtenerPartidaCaja($Partida, $TipoVenta); $xidpartida = !$xidpartida ? 0 : $xidpartida;
$campoxdato = "FechaEntrega='" . $xdato . "'"; echo ModificarSubsidiarioTbjo($xid, $campoxdato); break; case 7: $DocSubsid = CleanText($_GET["subdoc"]); $CodDocSub = CleanText($_GET["doccod"]); $xpendiente = obtenerCostePendiente($xid); $npendiente = $xpendiente - $xdato; $campoxdato = "CostePendiente = '" . $npendiente . "'"; $IdLocal = CleanID(getSesionDato("IdTienda")); $cantidad = $xdato; $concepto = "Servicio " . CleanText($_GET["concepto"]); $operacion = "Gasto"; $TipoVenta = getSesionDato("TipoVentaTPV"); $Partida = 'Servicio tercerizado'; $mov = new movimiento(); $IdArqueo = $mov->getIdArqueoEsCerradoCaja($IdLocal, $TipoVenta); $fechacaja = $mov->getAperturaCaja($IdLocal, $TipoVenta); $IdPartida = obtenerPartidaCaja($Partida, $TipoVenta); EntregarOperacionCaja($IdLocal, $cantidad, $concepto, $IdPartida, $operacion, $fechacaja, $IdArqueo, $TipoVenta, $DocSubsid, $CodDocSub, $xid); echo ModificarSubsidiarioTbjo($xid, $campoxdato); break; case 8: $campoxdato = "Observaciones = '" . $xdato . "'"; echo ModificarSubsidiarioTbjo($xid, $campoxdato); break; case 9: $DocSubsid = CleanText($_GET["subdoc"]); $CodDocSub = CleanText($_GET["doccod"]); $campoxdato = "DocSubsidiario='" . $DocSubsid . "',NDocSubsidiario='" . $CodDocSub . "'"; echo ModificarSubsidiarioTbjo($xid, $campoxdato);
function ActualizaPagoAdelantadoPresupuesto($idPresupuesto, $idComprobante, $textCaja) { $sql = " select ImporteAdelanto, TipoVentaOperacion,IdLocal,NPresupuesto " . " from ges_presupuestos" . " where IdPresupuesto = '" . $idPresupuesto . "'"; $row = queryrow($sql); $Monto = $row["ImporteAdelanto"]; if (!($Monto > 0)) { return; } $TipoVenta = $row["TipoVentaOperacion"]; $IdLocal = $row["IdLocal"]; $arqueo = new movimiento(); $IdArqueo = $arqueo->GetArqueoActivo($IdLocal); $FechaCaja = $arqueo->getAperturaCaja($IdLocal, $TipoVenta); $IdPartida = $TipoVenta == 'VD' ? 22 : 23; $concepto = "Metalico: Adelanto Proforma Nro. " . $row["NPresupuesto"] . " - " . $textCaja; //Sustraccion Caja. EntregarOperacionCaja($IdLocal, $Monto, $concepto, $IdPartida, 'Sustraccion', $FechaCaja, $IdArqueo, $TipoVenta); //Abono Metalico Ticket $xpendiente = OperarPagoSobreTicket($idComprobante, $Monto, 0, 0, $textCaja); }
function setStatusPresupuestoTPV($IdPresupuesto, $Opcion) { $TipoVenta = getSesionDato("TipoVentaTPV"); $IdLocal = getSesionDato("IdTiendaDependiente"); $xset = ''; $xwhere = ''; switch ($Opcion) { case 'CleanPreventa': //Cierre Caja $xwhere = " WHERE TipoPresupuesto = 'Preventa' " . " AND TipoVentaOperacion = '" . $TipoVenta . "'" . " AND Status = 'Pendiente'" . " AND Serie <> 0" . " AND IdLocal = '" . $IdLocal . "'"; $xset = "Status = 'Vencido', FechaAtencion = NOW() "; break; case 'AsociarPreventa': $mov = new movimiento(); $esCajaAbierta = $mov->GetArqueoActivo($IdLocal); if ($esCajaAbierta != 0) { $xwhere = " WHERE TipoPresupuesto = 'Preventa' " . " AND TipoVentaOperacion = '" . $TipoVenta . "'" . " AND Status = 'Pendiente'" . " AND Serie = 0" . " AND IdLocal = '" . $IdLocal . "'"; $xset = " Serie = {$esCajaAbierta} "; } break; default: $xwhere = " WHERE IdPresupuesto = '" . $IdPresupuesto . "'" . " AND Status = 'Pendiente'" . " AND TipoVentaOperacion = '" . $TipoVenta . "'" . " AND IdLocal ='" . $IdLocal . "'"; $xset = "Status = '" . $Opcion . "', FechaAtencion = NOW() "; } if ($xset == '' && $xwhere == '') { return; } //Ejecuta accion $sql = " UPDATE ges_presupuestos " . " SET " . $xset . $xwhere; query($sql); return 1; }
function DevolverComprobanteTPV($IdComprobante, $Monto, $idDependiente, $Comprobante, $Items) { $IdLocal = getSesionDato("IdTiendaDependiente"); $TipoVenta = getSesionDato("TipoVentaTPV"); $TipoComprobante = 'AlbaranInt'; $Motivo = 4; //DevoluciĆ³n $Serie = $IdLocal; $nroDocumento = $IdComprobante; //++++++ COMPROBANTE ++++++++++++ //Anula y Registra Devoluc Comprobante if (!AnularNumeroComprobante($IdComprobante, $IdLocal)) { registrarCodigoComprobanteOrigen($IdComprobante, $IdLocal, $Motivo, $TipoVenta); } //++++++ CAJA ++++++++++++ //registrar sustraccion por devolucion $IdPartida = $TipoVenta == 'VC' ? 16 : 17; $concepto = "Devolucion " . $Comprobante; $arqueo = new movimiento(); $IdArqueo = $arqueo->GetArqueoActivo($IdLocal); $FechaCaja = $arqueo->getAperturaCaja($IdLocal, $TipoVenta); if ($Monto > 0) { EntregarOperacionCaja($IdLocal, $Monto, $concepto, $IdPartida, 'Sustraccion', $FechaCaja, $IdArqueo, $TipoVenta); } //++++++ PREVENTA ++++++++++++ $textDoc = 'Preventa'; $codDocumento = explode("-", NroComprobantePreVentaMax($IdLocal, $textDoc, $IdArqueo)); $sreDocumento = $codDocumento[0] != $IdArqueo ? $IdArqueo : $codDocumento[0]; $nroDocumento = $codDocumento[0] != $IdArqueo ? 1 : $codDocumento[1]; //trae comprobante... $sql = " select IdCliente,ImporteNeto,ImporteImpuesto," . " TotalImporte,Impuesto " . " from ges_comprobantes " . " where IdComprobante = '" . $IdComprobante . "' " . " and Eliminado = 0 "; $res = query($sql); $row = Row($res); // crea preventa... global $UltimaInsercion; $Keys = "IdLocal,"; $Values = "'" . $IdLocal . "',"; $Keys .= "IdUsuario,"; $Values .= "'" . $idDependiente . "',"; $Keys .= "NPresupuesto,"; $Values .= "'" . $nroDocumento . "',"; $Keys .= "TipoPresupuesto,"; $Values .= "'" . $textDoc . "',"; $Keys .= "TipoVentaOperacion,"; $Values .= "'" . $TipoVenta . "',"; $Keys .= "FechaPresupuesto,"; $Values .= "NOW(),"; $Keys .= "ImporteNeto,"; $Values .= "'" . $row["ImporteNeto"] . "',"; $Keys .= "ImporteImpuesto,"; $Values .= "'" . $row["ImporteImpuesto"] . "',"; $Keys .= "Impuesto,"; $Values .= "'" . $row["Impuesto"] . "',"; $Keys .= "TotalImporte,"; $Values .= "'" . $row["TotalImporte"] . "',"; $Keys .= "Status,"; $Values .= "'Pendiente',"; $Keys .= "IdCliente,"; $Values .= "'" . $row["IdCliente"] . "',"; $Keys .= "ModoTPV,"; $Values .= "'venta',"; $Keys .= "Serie"; $Values .= "'" . $sreDocumento . "'"; $sql = "insert into ges_presupuestos (" . $Keys . ") values (" . $Values . ")"; query($sql); //Presupuesto $IdPresupuesto = $UltimaInsercion; //Historial Venta... cargarVenta2HistorialVenta($row["IdCliente"], $row["TotalImporte"], false, false); //++++++ DETALLE PREVENTA ++++++++++++ // trae detalle comprobante... $sql = " select IdProducto, " . " sum(Cantidad) as Cantidad, " . " sum(Precio) as Precio, " . " sum(Descuento) as Descuento, " . " sum(Importe) as Importe, " . " Concepto,Talla,Color,Referencia," . " CodigoBarras," . " group_concat(IdPedidoDet) as IdPedidoDet," . " group_concat(IdAlbaran) as IdAlbaran, Serie, IdComprobanteDet " . " from ges_comprobantesdet " . " where IdComprobante = '" . $IdComprobante . "' " . " and Eliminado = 0 " . " and IdPedidoDet <> 0 " . " group by IdProducto "; $res = query($sql); if (!$res) { return false; } while ($row = Row($res)) { $Keys = "IdPresupuesto,"; $Values = "'" . $IdPresupuesto . "',"; $Keys .= "IdProducto,"; $Values .= "'" . $row['IdProducto'] . "',"; $Keys .= "Cantidad,"; $Values .= "'" . $row['Cantidad'] . "',"; $Keys .= "Precio,"; $Values .= "'" . $row['Precio'] . "',"; $Keys .= "Descuento,"; $Values .= "'" . $row['Descuento'] . "',"; $Keys .= "Importe,"; $Values .= "'" . $row['Importe'] . "',"; $Keys .= "Concepto,"; $Values .= "'" . $row['Concepto'] . "',"; $Keys .= "Talla,"; $Values .= "'" . $row['Talla'] . "',"; $Keys .= "Color,"; $Values .= "'" . $row['Color'] . "',"; $Keys .= "Referencia,"; $Values .= "'" . $row['Referencia'] . "',"; $Keys .= "CodigoBarras"; $Values .= "'" . $row['CodigoBarras'] . "'"; $sql = "insert into ges_presupuestosdet (" . $Keys . ") values (" . $Values . ")"; query($sql); } //++++++ LIBERA SERIES PRODUCTOS COMPROBANTE DETALLE +++++++ // trae detalle comprobante... $sql = " select IdProducto,Cantidad,IdPedidoDet," . " IdAlbaran,Serie,IdComprobanteDet " . " from ges_comprobantesdet " . " where IdComprobante = '" . $IdComprobante . "' " . " and Eliminado = 0 " . " and Serie = 1 " . " and IdPedidoDet <> 0 "; $res = query($sql); if (!$res) { return false; } while ($row = Row($res)) { $DocumentoSalida = $row["IdAlbaran"] ? $row["IdAlbaran"] : $IdComprobante; $aSeries = getSeries2IdProductoVentas($DocumentoSalida, $row["IdProducto"], $row["IdPedidoDet"]); // retorna las series... registraDevolucionSeriesVenta($row["IdProducto"], $IdComprobante, $IdPresupuesto, $aSeries); // libera series del detalle comprobante... $sql = " update ges_comprobantesdet set Serie = 0 " . " where IdComprobanteDet=" . $row['IdComprobanteDet']; query($sql); } //++++++ MARCAR PRODUCTOS Y CANTIDAD COMPROBANTES DETALLE ++++++++++ $xitem = explode("~", $Items); foreach ($xitem as $key => $xdet) { $xdetalle = explode(":", $xdet); $sql = " update ges_comprobantesdet set CantidadDevolucion = " . $xdetalle[1] . " where IdComprobanteDet=" . $xdetalle[0]; query($sql); } //++++++ KARDEX ++++++++++++ $almacenes = new almacenes(); $Operacion = 2; //Venta - Devolucion $sql = " select IdProducto,Cantidad,CostoUnitario," . " IdPedidoDet,IdComprobanteDet " . " from ges_comprobantesdet " . " where IdComprobante = '{$IdComprobante}' " . " and IdPedidoDet <> 0 " . " and Eliminado = 0 "; $res = query($sql); if (!$res) { return; } while ($row = Row($res)) { $id = $row['IdProducto']; $costo = $row['CostoUnitario']; $existencias = $almacenes->obtenerExistenciasKardex($id, $IdLocal); $Obs = $concepto; // registra ingreso por pedidodet registrarEntradaKardexFifo($id, $row['Cantidad'], $costo, $Operacion, $IdLocal, $row['IdPedidoDet'], $existencias, 0, 0, $row['IdComprobanteDet'], $Obs); // actualiza registros kardex $almacenes->actualizarCosto($id, $IdLocal); actualizaResumenKardex($id, $IdLocal); } return " ~" . $IdPresupuesto; }