function getListJuegoDetalleFactura($condicion = null, $parametros = array()) { if ($condicion === null) { $condicion = ""; } else { $condicion = "where {$condicion}"; } $sql = "select ju.*, de.*, fa.*, cl.* from detalle de \r\n left join juego ju on ju.id_juego = de.id_juego \r\n left join factura fa on fa.num_factura = de.num_factura \r\n left join cliente cl on fa.id_cliente = cl.id_cliente \r\n {$condicion} ORDER BY cl.email, fa.fecha desc "; $this->bd->send($sql, $parametros); $r = array(); $contador = 0; while ($fila = $this->bd->getRow()) { $juego = new Game(); $juego->set($fila); $detalle = new Detalle(); $detalle->set($fila, 8); $factura = new Factura(); $factura->set($fila, 13); $cliente = new User(); $cliente->set($fila, 16); $r[$contador]["juego"] = $juego; $r[$contador]["factura"] = $factura; $r[$contador]["detalle"] = $detalle; $r[$contador]["cliente"] = $cliente; $contador++; } return $r; }
/** * Creates a new model. * If creation is successful, the browser will be redirected to the 'view' page. */ public function actionCreate() { $this->pageTitle = 'Incorporar Bien'; $user = Usuario::model()->findbyPk(Yii::app()->user->getId()); $model = new Bienmueble(); $factura = new Factura(); $movimiento = new BmMovimiento(); date_default_timezone_set('America/Caracas'); $fecha = date('Y-m-d H:i:s'); $model->f_incorporacion = $fecha; $movimiento->dependencia_id = $user->dependencia_id; if (isset($_POST['Bienmueble'])) { $model->attributes = $_POST['Bienmueble']; //print_r();exit; $movimiento->attributes = $_POST['BmMovimiento']; $model->cantidad = 1; $model->status_id = 1; $model->factura_id = 1; if (isset($_POST['Factura'])) { $factura->attributes = $_POST['Factura']; $factura->fecha = $model->f_incorporacion; if ($factura->save()) { $model->factura_id = $factura->id; } } $model->f_actualizacion = $model->f_incorporacion; $model->valor_referencial = $model->valor_unitario; if ($model->save()) { $movimiento->bienmueble_id = $model->id; $movimiento->fecha = $model->f_incorporacion; if ($movimiento->save()) { $model->ult_mov_id = $movimiento->id; if ($model->update()) { $bita = new Bitacora(); $bita->dependencia_id = $user->dependencia_id; $bita->fecha = $fecha; $bita->operacion_id = 2; // CREAR $bita->objeto_id = 1; // Bienmueble $bita->usuario_id = $user->id; $bita->observacion = 'Se crea BM ' . $model->codigo . ' (ID:' . $model->id . ')'; if ($bita->save()) { } $this->redirect(array('view', 'id' => $model->id)); } } else { //print_r($movimiento->getErrors()); exit; } } } $dps = Dependencia::model()->findAll(array('condition' => 'sede_id=1', 'order' => 'descripcion ASC')); $clases = BmClasificacion::model()->listAll(); $tipos = BmTipo::model()->findAll(array('order' => 'descripcion')); $conceptos = Concepto::model()->findAll(array('condition' => 'id>0 AND id<20 AND id<>2 AND id<>15 AND id<>16 AND id<>17')); $this->render('create', array('model' => $model, 'movimiento' => $movimiento, 'dps' => $dps, 'clases' => $clases, 'tipos' => $tipos, 'conceptos' => $conceptos, 'factura' => $factura, 'acceso' => $user->rol_id)); }
public function agregarFactura($nroSerie, $nroFact, $idCliente, $idEmpleado, $subTotal, $IGV, $Total) { $resultado = array('valor' => 1, 'message' => 'Su solicitud ha sido procesada correctamente.'); $Factura = new Factura(); $Factura->nroSerie = $nroSerie; $Factura->nroFact = $nroFact; $Factura->idCliente = $idCliente; $Factura->idEmpleado = $idEmpleado; $Factura->subTotal = $subTotal; $Factura->IGV = $IGV; $Factura->Total = $Total; if (!$Factura->save()) { $resultado = array('valor' => 0, 'message' => 'No hemos podido realizar su solicitud, intentelo nuevamente'); } return $resultado; }
public function siguientePedido() { $pedidoAnterior = Factura::where('cliente_id', '=', $this->id)->orderBy('pedido', 'desc')->first(); if ($pedidoAnterior) { return $pedidoAnterior->pedido + 1; } else { return 1; } }
public function getGenerateTxt($desde, $hasta) { $reportes = Reporte::where('fecha', '>=', $desde)->where('fecha', '<=', $hasta)->get(); $facturas = Factura::all(); $agente = Agente::find(1); $proveedores = Proveedor::all(); $code = str_random(10); $content = \View::make('excel.txt')->with('reportes', $reportes)->with('facturas', $facturas)->with('agente', $agente)->with('proveedores', $proveedores); return \Response::make($content, '200')->header('Content-Type', 'plain/txt'); }
/** * Display the specified resource. * * @param int $id * @return Response */ public function show($id) { $proveedores = Proveedor::find($id); if (is_null($proveedores)) { return Redirect::route('proveedores.index')->with('global', '<i class="fa fa-exclamation fa-fw x3"></i> Pagina no encontrada'); } $user = DB::table('users')->where('id', '=', $proveedores->id_user)->first(); $facturas = Factura::where('id_proveedor', '=', $proveedores->id)->orderBy('created_at', 'DESC')->paginate(10); $totalFacturas = Factura::where('id_proveedor', '=', $proveedores->id)->count(); $contador = 0; //dd($totalFacturas); return View::make('proveedores.show', array('proveedores' => $proveedores, 'user' => $user))->with('facturas', $facturas)->with('totalFacturas', $totalFacturas)->with('contador', $contador); //return var_dump($user); }
public function process() { $factura = new Factura(); $factura->usuario_id = Auth::user()->id; $factura->total = Cart::total(); foreach (Cart::content() as $item) { if (Item::find($item['id'])->stock == 0) { Session::flash('error', 'El item ' . $item['name'] . ' se ha agotado'); return Redirect::back(); } if (Item::find($item['id'])->stock - $item['qty'] < 0) { Session::flash('error', 'No hay suficiente stock del item ' . $item['name'] . ' para cubrir su pedido'); return Redirect::back(); } } if ($factura->save()) { foreach (Cart::content() as $item) { $detalle = new Detalle(); $detalle->factura_id = $factura->id; $detalle->item_id = $item['id']; $detalle->cantidad = $item['qty']; if ($detalle->save()) { $deduct = Item::find($item['id']); $deduct->stock -= $item['qty']; $deduct->save(); } else { Session::flash('error', 'Error al procesar'); return Redirect::back(); } } } else { Session::flash('error', 'Error al procesar'); return Redirect::back(); } Cart::destroy(); return Redirect::to('shop'); }
function insert(Factura $factura) { $parametros = $factura->getArray(); return $this->bd->insert($this->tabla, $parametros, true); }
/** * @param Factura $factura The factura object to add. */ protected function doAddFactura($factura) { $this->collFacturas[] = $factura; $factura->setTipoPago($this); }
public function actionAjaxActualizarEstadoFactura() { $nroSerie = $_POST['nroSerie']; $nroFact = $_POST['nroFact']; $estadoFact = $_POST['estadoFact']; $respuesta = Factura::model()->actualizarEstadoFactura($nroSerie, $nroFact, $estadoFact); Util::renderJSON(array('success' => TRUE)); }
/** * @param Factura $factura The factura object to add. */ protected function doAddFactura($factura) { $this->collFacturas[] = $factura; $factura->setAdmision($this); }
public function actionAjaxObtenerFacturasEntreFechas() { $inicio = $_POST['inicio']; $fin = $_POST['fin']; $factura = Factura::model()->ObtenerFacturasEntreFechas($inicio, $fin); Util::renderJSON($factura); }
/** * Filter the query by a related Factura object * * @param Factura|PropelObjectCollection $factura the related object to use as filter * @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL * * @return PacientefacturacionQuery The current query, for fluid interface * @throws PropelException - if the provided filter is invalid. */ public function filterByFactura($factura, $comparison = null) { if ($factura instanceof Factura) { return $this->addUsingAlias(PacientefacturacionPeer::IDPACIENTEFACTURACION, $factura->getIddatosfacturacion(), $comparison); } elseif ($factura instanceof PropelObjectCollection) { return $this->useFacturaQuery()->filterByPrimaryKeys($factura->getPrimaryKeys())->endUse(); } else { throw new PropelException('filterByFactura() only accepts arguments of type Factura or PropelCollection'); } }
/** * Declares an association between this object and a Factura object. * * @param Factura $v * @return FacturaDetalle The current object (for fluent API support) * @throws PropelException */ public function setFactura(Factura $v = null) { if ($v === null) { $this->setFacturaId(NULL); } else { $this->setFacturaId($v->getId()); } $this->aFactura = $v; // Add binding for other direction of this n:n relationship. // If this object has already been added to the Factura object, it will not be re-added. if ($v !== null) { $v->addFacturaDetalle($this); } return $this; }
<?php require '../clases/AutoCarga.php'; $bd = new DataBase(); $gestor = new ManageFactura($bd); $factura = new Factura(); $factura->read(); $pkID = Request::post("pkID"); $r = $gestor->set($factura, $pkID); $bd->close(); //echo $r; //var_dump($bd->getError()); header("Location:index.php?op=edit&r={$r}");
public function executeConfirmar(sfWebRequest $request) { $Factura = FacturaQuery::create()->findOneById($request->getParameter('id')); $Detalles = FacturaDetalleQuery::create()->findByFacturaId($request->getParameter('id')); if (sizeof($Detalles) == 0) { $this->getUser()->setFlash('error', 'No existen productos ingresados en esta factura.'); $this->redirect('venta/detalle?id=' . $request->getParameter('id')); } if ($Factura->getActivo()) { foreach ($Detalles as $detalle) { $fecha = date("d/m/Y"); $Promocion = PromocionQuery::create()->filterByProductoId($detalle->getProductoId())->where("fecha_inicio <= '{$fecha}' and fecha_fin >= '{$fecha}'")->findOne(); $descuento = 1; if ($Promocion) { $descuento = 1 - $Promocion->getDescuento() / 100; } $Movimiento = new Movimiento(); $Movimiento->setTipoMovimiento('-'); $Movimiento->setClienteId($Factura->getClienteId()); $Movimiento->setProductoId($detalle->getProductoId()); $Movimiento->setCantidad($detalle->getCantidad()); $Movimiento->setProveedorId($detalle->getProveedorId()); $Movimiento->setPrecio($detalle->getPrecioUnitario() * $descuento); $Movimiento->setFecha(date('Y-m-d')); $Movimiento->save(); } $BitacoraCambios = new BitacoraCambios(); $BitacoraCambios->setModelo('Factura'); $BitacoraCambios->setIp(sfContext::getInstance()->getRequest()->getRemoteAddress()); $BitacoraCambios->setDescripcion('Creacion de Factura con id: ' . sprintf("%05d", $Factura->getId())); $Usuario = UsuarioQuery::create()->findOneById(sfContext::getInstance()->getUser()->getAttribute('usuario', null, 'seguridad')); if ($Usuario) { $Factura->setCreatedBy($Usuario->getUsuario()); $BitacoraCambios->setCreatedBy($Usuario->getUsuario()); } $BitacoraCambios->save(); $Cliente = ClienteQuery::create()->findOneById($Factura->getClienteId()); if (Factura::obtenerTotal($request->getParameter('id')) >= 200) { $Cliente->setPuntos($Cliente->getPuntos() + 10); $Cliente->save(); } } $Factura->setActivo(false); $Factura->save(); $pdf = new sfTCPDF("P", "mm", "Letter"); $this->id = $request->getParameter("id"); $pdf->SetCreator(PDF_CREATOR); $pdf->SetAuthor('SALUD_INTEGRAL'); $pdf->SetTitle('Factura'); $pdf->SetSubject('Factura'); $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED); // set margins $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT); $pdf->SetHeaderMargin(PDF_MARGIN_HEADER); $pdf->SetFooterMargin(PDF_MARGIN_FOOTER); $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM); $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); $pdf->setHeaderFont(array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN)); $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING); $pdf->setFooterFont(array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA)); $pdf->SetHeaderMargin(0.1); $pdf->SetFooterMargin(0.1); $pdf->setPrintHeader(false); $pdf->setPrintFooter(false); $pdf->SetFont('dejavusans', '', 7); $pdf->AddPage(); $html = ''; $detalles = FacturaDetalleQuery::create()->findByFacturaId($Factura->getId()); $html = $this->getPartial('venta/soporteTabla', array("factura" => $Factura, "detalles" => $detalles)); $pdf->writeHTML($html); $pdf->Output('Factura.pdf', 'D'); }
foreach ($platos as $plato) { $pdf->Cell(40, 10, $plato->getValueEncoded("nombre")); $pdf->Ln(); } $pdf->Cell(40, 10, "Bebidas: "); $pdf->Ln(); } else { foreach ($platos as $plato) { $pdf->Cell(40, 10, $plato->getValueEncoded("nombre")); $pdf->Ln(); } $pdf->Cell(40, 10, "Bebidas: "); $pdf->Ln(); } list($bebidas) = Bebida::getByPedido($id_pedido); foreach ($bebidas as $bebida) { $pdf->Cell(40, 10, $bebida->getValueEncoded("nombre")); $pdf->Ln(); $pdf->Cell(40, 10, "Precio: " . $bebida->getValueEncoded("precio")); $pdf->Ln(); $pdf->Cell(40, 10, "Cantidad: " . $_SESSION['cantidad']); $pdf->Ln(); } $pdf->Cell(40, 10, "Total: "); $pdf->Ln(); $factura = Factura::getById($id_pedido); $pdf->Cell(40, 10, $factura->getValueEncoded("precio")); $pdf->Ln(); $pdf->Output("facturas/" . $id_pedido . ".pdf", 'F'); echo "<script language='javascript'>window.open('facturas/" . $id_pedido . ".pdf','_self','');</script>"; //para ver el archivo pdf generado
/** * Exclude object from result * * @param Factura $factura Object to remove from the list of results * * @return FacturaQuery The current query, for fluid interface */ public function prune($factura = null) { if ($factura) { $this->addUsingAlias(FacturaPeer::ID, $factura->getId(), Criteria::NOT_EQUAL); } return $this; }
require '../clases/AutoCarga.php'; $bd = new DataBase(); $gestorJuego = new ManageGame($bd); $juego = new Game(); $juego->read(); $pkID = Request::post("pkID"); $stock = Request::post("stock"); $cantidad = Request::post("cantidad"); $stockDisponible = $juego->getStock() - $cantidad; if ($cantidad > $stock) { echo $cantidad . " " . $stock; echo "No hay suficientes unidades"; } else { /*GENERAMOS LA FACTURA*/ $gestorFactura = new ManageFactura($bd); $facturas = new Factura(); $facturas->read(); $sesion = new Session(); $id = $sesion->get("id"); $time = time(); $fecha = date("Y-m-d H:i:s", $time); echo $fecha; $facturas->setId_cliente($id); $facturas->setFecha($fecha); $r = $gestorFactura->insert($facturas); echo "El id de la factura es " . $r; /*GENERAMOS EL DETALLE*/ $id_juego = Request::post("id_juego"); $precio = Request::post("precio"); $gestorDetalle = new ManageDetalle($bd); $detalles = new Detalle();
public function generarAction() { $request = $this->getRequest(); if ($request->isPost()) { $post_data = $request->getPost(); $cerpem = file_get_contents(__DIR__ . '/../Certificados/aad990814bp7_1210261233s.cer.pem'); $this->emisorArr['cerpem'] = $cerpem; $keypem = file_get_contents(__DIR__ . '/../Certificados/aad990814bp7_1210261233s.key.pem'); $this->emisorArr['keypem'] = $keypem; $receptorArr = \PacientefacturacionQuery::create()->findPk($post_data['idpacientefacturacion'])->toArray(\BasePeer::TYPE_FIELDNAME); $idmovimiento = $post_data['idmovimiento']; $type = explode('-', $idmovimiento); $idmovimiento = $type[1]; $type = $type[0]; switch ($type) { case 'ADM': $admision = \AdmisionQuery::create()->findPk($idmovimiento)->toArray(\BasePeer::TYPE_FIELDNAME); //Los "items" $admision_detalles_servicios = \CargoadmisionQuery::create()->filterByCargoadmisionTipo('servicio')->filterByIdadmision($idmovimiento)->find(); foreach ($admision_detalles_servicios as $detalle) { $item = $detalle->toArray(\BasePeer::TYPE_FIELDNAME); $servicio_nombre = $detalle->getServicio()->getServicioNombre(); $servicio_valorunitario = $detalle->getServicio()->getServicioPrecio(); $item['servicio_tasa'] = $detalle->getServicio()->getServicioIva(); $item['servicio_nombre'] = $servicio_nombre; $item['servicio_valorunitario'] = $servicio_valorunitario; $item['servicio_unidad'] = 'No aplica'; $admision['detalles'][] = $item; } $admision_detalles_articulo = \CargoadmisionQuery::create()->filterByCargoadmisionTipo('articulo')->filterByIdadmision($idmovimiento)->find(); foreach ($admision_detalles_articulo as $detalle) { $articulo = $detalle->getLugarinventario()->getOrdencompradetalle()->getArticuloVariante()->getArticulo(); $articulo_variante = $detalle->getLugarinventario()->getOrdencompradetalle()->getArticuloVariante(); $articulo_nombre = ''; $articulo_nombre .= $articulo->getArticuloNombre() . ' '; //Descripcion $articuloVarianteValorCollection = \ArticulovariantevalorQuery::create()->filterByIdarticulovariante($articulo_variante->getIdarticulovariante())->find(); $propiedadCount = 0; foreach ($articuloVarianteValorCollection as $kavv => $vavv) { $propiedadCount++; $articulo_nombre .= \PropiedadQuery::create()->findOneByIdpropiedad($vavv->getIdpropiedad())->getPropiedadNombre(); //Propiedad $articulo_nombre .= ':' . \PropiedadvalorQuery::create()->findOneByIdpropiedadvalor($vavv->getIdpropiedadvalor())->getPropiedadvalorNombre(); //PropiedadValor if ($propiedadCount < $articuloVarianteValorCollection->count()) { $articulo_nombre .= ' - '; } } $item = $detalle->toArray(\BasePeer::TYPE_FIELDNAME); $item['articulo_nombre'] = $articulo_nombre; $item['articulo_unidad'] = 'pieza'; $item['articulo_valorunitario'] = $articulo_variante->getArticulovariantePrecio(); $item['articulo_tasa'] = $articulo_variante->getArticulovarianteIva(); $admision['detalles'][] = $item; } $generalOrder = $admision; break; case 'CON': $consulta = \ConsultaQuery::create()->findPk($idmovimiento)->toArray(\BasePeer::TYPE_FIELDNAME); //Los "items" $consulta_detalles_servicios = \CargoconsultaQuery::create()->filterByCargoconsultaTipo('servicio')->filterByIdconsulta($idmovimiento)->find(); foreach ($consulta_detalles_servicios as $detalle) { $item = $detalle->toArray(\BasePeer::TYPE_FIELDNAME); $servicio_nombre = $detalle->getServicio()->getServicioNombre(); $servicio_valorunitario = $detalle->getServicio()->getServicioPrecio(); $item['servicio_tasa'] = $detalle->getServicio()->getServicioIva(); $item['servicio_nombre'] = $servicio_nombre; $item['servicio_valorunitario'] = $servicio_valorunitario; $item['servicio_unidad'] = 'No aplica'; $consulta['detalles'][] = $item; } $consulta_detalles_articulo = \CargoconsultaQuery::create()->filterByCargoconsultaTipo('articulo')->filterByIdconsulta($idmovimiento)->find(); foreach ($consulta_detalles_articulo as $detalle) { $articulo = $detalle->getLugarinventario()->getOrdencompradetalle()->getArticuloVariante()->getArticulo(); $articulo_variante = $detalle->getLugarinventario()->getOrdencompradetalle()->getArticuloVariante(); $articulo_nombre = ''; $articulo_nombre .= $articulo->getArticuloNombre() . ' '; //Descripcion $articuloVarianteValorCollection = \ArticulovariantevalorQuery::create()->filterByIdarticulovariante($articulo_variante->getIdarticulovariante())->find(); $propiedadCount = 0; foreach ($articuloVarianteValorCollection as $kavv => $vavv) { $propiedadCount++; $articulo_nombre .= \PropiedadQuery::create()->findOneByIdpropiedad($vavv->getIdpropiedad())->getPropiedadNombre(); //Propiedad $articulo_nombre .= ':' . \PropiedadvalorQuery::create()->findOneByIdpropiedadvalor($vavv->getIdpropiedadvalor())->getPropiedadvalorNombre(); //PropiedadValor if ($propiedadCount < $articuloVarianteValorCollection->count()) { $articulo_nombre .= ' - '; } } $item = $detalle->toArray(\BasePeer::TYPE_FIELDNAME); $item['articulo_nombre'] = $articulo_nombre; $item['articulo_unidad'] = 'pieza'; $item['articulo_valorunitario'] = $articulo_variante->getArticulovariantePrecio(); $item['articulo_tasa'] = $articulo_variante->getArticulovarianteIva(); $consulta['detalles'][] = $item; } $generalOrder = $consulta; break; case 'VP': $venta = \VentaQuery::create()->findPk($idmovimiento)->toArray(\BasePeer::TYPE_FIELDNAME); //Los "items" $venta_detalles_servicios = \CargoventaQuery::create()->filterByCargoventaTipo('servicio')->filterByIdventa($idmovimiento)->find(); foreach ($venta_detalles_servicios as $detalle) { $item = $detalle->toArray(\BasePeer::TYPE_FIELDNAME); $servicio_nombre = $detalle->getServicio()->getServicioNombre(); $servicio_valorunitario = $detalle->getServicio()->getServicioPrecio(); $item['servicio_tasa'] = $detalle->getServicio()->getServicioIva(); $item['servicio_nombre'] = $servicio_nombre; $item['servicio_valorunitario'] = $servicio_valorunitario; $item['servicio_unidad'] = 'No aplica'; $venta['detalles'][] = $item; } $venta_detalles_articulo = \CargoventaQuery::create()->filterByCargoventaTipo('articulo')->filterByIdventa($idmovimiento)->find(); foreach ($venta_detalles_articulo as $detalle) { $articulo = $detalle->getLugarinventario()->getOrdencompradetalle()->getArticuloVariante()->getArticulo(); $articulo_variante = $detalle->getLugarinventario()->getOrdencompradetalle()->getArticuloVariante(); $articulo_nombre = ''; $articulo_nombre .= $articulo->getArticuloNombre() . ' '; //Descripcion $articuloVarianteValorCollection = \ArticulovariantevalorQuery::create()->filterByIdarticulovariante($articulo_variante->getIdarticulovariante())->find(); $propiedadCount = 0; foreach ($articuloVarianteValorCollection as $kavv => $vavv) { $propiedadCount++; $articulo_nombre .= \PropiedadQuery::create()->findOneByIdpropiedad($vavv->getIdpropiedad())->getPropiedadNombre(); //Propiedad $articulo_nombre .= ':' . \PropiedadvalorQuery::create()->findOneByIdpropiedadvalor($vavv->getIdpropiedadvalor())->getPropiedadvalorNombre(); //PropiedadValor if ($propiedadCount < $articuloVarianteValorCollection->count()) { $articulo_nombre .= ' - '; } } $item = $detalle->toArray(\BasePeer::TYPE_FIELDNAME); $item['articulo_nombre'] = $articulo_nombre; $item['articulo_unidad'] = 'pieza'; $item['articulo_valorunitario'] = $articulo_variante->getArticulovariantePrecio(); $item['articulo_tasa'] = $articulo_variante->getArticulovarianteIva(); $venta['detalles'][] = $item; } $generalOrder = $venta; break; } // Aqui hacer conexion con el timbrador $bridgeFacturas = new \Facturacion\Timbradores\BridgeFacturas('finkok'); //// A la pasarela ------------------------------------------------------------ $res = $bridgeFacturas->timbrar('factura', $type, $generalOrder, $this->emisorArr, $receptorArr); //Verificamos que no exista error al timbrar if (isset($res['error']) && $res['error'] != '') { $details = $res['error']; return $this->getResponse()->setContent(\Zend\Json\Json::encode(array('response' => false, 'details' => $details))); } else { $xmlTimbrado = $res['response']; $filePathXML = '/tmp/xml/' . $res['xmlId'] . '.xml'; $filePathPDF = '/tmp/pdf/' . $res['xmlId'] . '.pdf'; //Generamos la url del qrcode $qr_main = 'http://chart.googleapis.com/chart?chs=200x200&cht=qr&chl='; $qr_url .= 're=' . $this->emisorArr['rfc']; //Emisor $qr_url .= '&rr=' . $receptorArr['pacientefacturacion_rfc']; //Receptor $qr_url .= '&tt=' . $this->numberTo17Digits($xmlArray["Comprobante"]["total"]); $qr_url .= '&id=' . $xmlArray['TimbreFiscalDigital']['UUID']; $qr_url = $qr_main . urlencode($qr_url) . '.png'; //http://chart.googleapis.com/chart?cht=qr&chl=Hello+world&choe=UTF-8&chs=200x200 //EL PDF $cfdi = $xmlTimbrado['xml']; $cadena_original = $xmlTimbrado['cadenaOriginal']; $qrcode = $qr_url; $pdf = new \Facturacion\PdfGenerator\PdfGenerator($cfdi, $cadena_original, $qrcode); $pdf->AliasNbPages(); $pdf->AddPage(); $pdf->FancyTable(); $pdf->QrCode(); $pdf->Output($_SERVER['DOCUMENT_ROOT'] . $filePathPDF, 'F'); //Guardamos los datos de la factura $factura = new \Factura(); $factura->setIddatosfacturacion($post_data['idpacientefacturacion']); if ($type == 'ADM') { $factura->setIdadmision($idmovimiento); $admision = \AdmisionQuery::create()->findPk($idmovimiento); $admision->setAdmisionFacturada(1); $admision->save(); } else { if ($type == 'CON') { $factura->setIdconsulta($idmovimiento); $consulta = \ConsultaQuery::create()->findPk($idmovimiento); $consulta->setConsultaFacturada(1); $consulta->save(); } else { $factura->setIdventa($idmovimiento); $venta = \VentaQuery::create()->findPk($idmovimiento); $venta->setVentaFacturada(1); $venta->save(); } } $factura->setFacturaUrlXml($filePathXML); $factura->setFacturaUrlPdf($filePathPDF); $factura->setFacturaFecha($xmlTimbrado['fecha']); $factura->setFacturaSellosat($xmlTimbrado['SatSeal']); $factura->setFacturaCertificadosat($xmlTimbrado['NoCertificadoSAT']); $factura->setFacturaCfdi($xmlTimbrado['uuid']); $factura->setFacturaMensaje($xmlTimbrado['codEstatus']); $factura->setFacturaTipodepago('unico'); $factura->setFacturaTipo('ingreso'); $factura->setFacturaStatus('creada'); $factura->setFacturaQrcode($qr_url); $factura->save(); $this->flashMessenger()->addMessage('Factura emitida exitosamente!'); return $this->getResponse()->setContent(\Zend\Json\Json::encode(array('response' => true))); } } if ($this->params()->fromRoute('id')) { $id = $this->params()->fromRoute('id'); $type = explode('-', $id); $id = $type[1]; $type = $type[0]; $factura_info = array(); switch ($type) { case 'ADM': $admision = \AdmisionQuery::create()->findPk($id); $factura_info['fecha'] = $admision->getAdmisionFechaadmision('d-m-Y H:i'); $factura_info['id'] = 'ADM-' . $admision->getIdadmision(); $factura_info['paciente'] = $admision->getPaciente()->getPacienteNombre() . ' ' . $admision->getPaciente()->getPacienteAp() . ' ' . $admision->getPaciente()->getPacienteAm(); $factura_info['idpaciente'] = $admision->getPaciente()->getIdpaciente(); $factura_info['medico'] = $admision->getMedico()->getMedicoNombre() . ' ' . $admision->getMedico()->getMedicoApellidopaterno() . ' ' . $admision->getMedico()->getMedicoApellidomaterno(); $factura_info['pagada'] = $admision->getAdmisionPagadaen('d-m-Y H:i'); $factura_info['tipo_pago'] = $admision->getAdmisionTipodepago(); $factura_info['total'] = $admision->getAdmisionTotal(); $factura_info['tipo'] = 'admision'; $direcciones = \PacientefacturacionQuery::create()->filterByIdpaciente($admision->getPaciente()->getIdpaciente())->find()->toArray(null, false, \BasePeer::TYPE_FIELDNAME); break; case 'CON': $consulta = \ConsultaQuery::create()->findPk($id); $factura_info['fecha'] = $consulta->getConsultaFecha('d-m-Y'); $factura_info['fecha'] .= ' ' . $consulta->getConsultaHora(); $factura_info['id'] = 'CON-' . $consulta->getIdconsulta(); $factura_info['paciente'] = $consulta->getPaciente()->getPacienteNombre() . ' ' . $consulta->getPaciente()->getPacienteAp() . ' ' . $consulta->getPaciente()->getPacienteAm(); $factura_info['idpaciente'] = $consulta->getPaciente()->getIdpaciente(); $factura_info['medico'] = $consulta->getMedico()->getMedicoNombre() . ' ' . $consulta->getMedico()->getMedicoApellidopaterno() . ' ' . $consulta->getMedico()->getMedicoApellidomaterno(); $factura_info['pagada'] = $consulta->getConsultaFecha('d-m-Y'); $factura_info['pagada'] .= ' ' . $consulta->getConsultaHora(); $factura_info['tipo_pago'] = $consulta->getConsultaTipodepago(); $factura_info['total'] = $consulta->getConsultaTotal(); $factura_info['tipo'] = 'consulta'; $direcciones = \PacientefacturacionQuery::create()->filterByIdpaciente($consulta->getPaciente()->getIdpaciente())->find()->toArray(null, false, \BasePeer::TYPE_FIELDNAME); break; case 'VP': $venta = \VentaQuery::create()->findPk($id); $factura_info['fecha'] = $venta->getVentaFecha('d-m-Y H:i'); $factura_info['id'] = 'VP-' . $venta->getIdventa(); $factura_info['paciente'] = $venta->getPaciente()->getPacienteNombre() . ' ' . $venta->getPaciente()->getPacienteAp() . ' ' . $venta->getPaciente()->getPacienteAm(); $factura_info['idpaciente'] = $venta->getPaciente()->getIdpaciente(); $factura_info['medico'] = 'N/A'; $factura_info['pagada'] = $venta->getVentaFecha('d-m-Y H:i'); $factura_info['tipo_pago'] = $venta->getVentaTipodepago(); $factura_info['total'] = $venta->getVentaTotal(); $factura_info['tipo'] = 'venta al publico'; $direcciones = \PacientefacturacionQuery::create()->filterByIdpaciente(1)->find()->toArray(null, false, \BasePeer::TYPE_FIELDNAME); break; } return new ViewModel(array('general_info' => $factura_info, 'facturacion_info' => $direcciones)); } $this->getResponse()->setStatusCode(404); return; }
<?php require '../clases/AutoCarga.php'; $sesion = new Session(); $id = $sesion->get("id"); $bd = new DataBase(); $gestor = new ManageFactura($bd); $facturas = new Factura(); $facturas->read(); $facturas->setId_cliente($id); $r = $gestor->insert($facturas); $bd->close(); //echo $r; //var_dump($bd->getError()); header("Location:index.php?op=insert&r={$r}");
/** * Returns the data model based on the primary key given in the GET variable. * If the data model is not found, an HTTP exception will be raised. * @param integer the ID of the model to be loaded */ public function loadModel($id) { $model = Factura::model()->findByPk($id); if ($model === null) { throw new CHttpException(404, 'The requested page does not exist.'); } return $model; }
/** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy($id) { $facturas = Factura::find($id); if (is_null($facturas)) { App::abort(404); } $facturas->delete(); if ($facturas->n_factura == '' && $facturas->n_nota_credito == '') { return Redirect::route('reportes.show', array($facturas->id_reporte))->with('delete', 'La nota de débito <b>' . $facturas->n_nota_debito . '</b> ha sido eliminada correctamente.'); } elseif ($facturas->n_factura == '' && $facturas->n_nota_debito == '') { return Redirect::route('reportes.show', array($facturas->id_reporte))->with('delete', 'La nota de crédito <b>' . $facturas->n_nota_credito . '</b> ha sido eliminada correctamente.'); } else { return Redirect::route('reportes.show', array($facturas->id_reporte))->with('delete', 'La factura <b>' . $facturas->n_factura . '</b> ha sido eliminada correctamente.'); } }
/** * Adds an object to the instance pool. * * Propel keeps cached copies of objects in an instance pool when they are retrieved * from the database. In some cases -- especially when you override doSelect*() * methods in your stub classes -- you may need to explicitly add objects * to the cache in order to ensure that the same objects are always returned by doSelect*() * and retrieveByPK*() calls. * * @param Factura $obj A Factura object. * @param string $key (optional) key to use for instance map (for performance boost if key was already calculated externally). */ public static function addInstanceToPool($obj, $key = null) { if (Propel::isInstancePoolingEnabled()) { if ($key === null) { $key = (string) $obj->getIdfactura(); } // if key === null FacturaPeer::$instances[$key] = $obj; } }
/** * Filter the query by a related Factura object * * @param Factura|PropelObjectCollection $factura the related object to use as filter * @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL * * @return TipoPagoQuery The current query, for fluid interface * @throws PropelException - if the provided filter is invalid. */ public function filterByFactura($factura, $comparison = null) { if ($factura instanceof Factura) { return $this->addUsingAlias(TipoPagoPeer::ID, $factura->getTipoPagoId(), $comparison); } elseif ($factura instanceof PropelObjectCollection) { return $this->useFacturaQuery()->filterByPrimaryKeys($factura->getPrimaryKeys())->endUse(); } else { throw new PropelException('filterByFactura() only accepts arguments of type Factura or PropelCollection'); } }
function insertar() { $pedido = new Pedidos(array("id_cliente" => $_SESSION['cliente']->getValue('id_cliente'), "fecha" => $_SESSION['fecha'], "hora" => $_SESSION['hora'], "cp" => $_SESSION['cp'], "direccion" => $_SESSION['direccion'], "comensales" => $_SESSION['comensales'])); $pedido->insert(); if (!($pedido = Pedidos::getByFecha($_SESSION['fecha']))) { echo "Error desconocido, pongase en contacto con el Administrador"; } $Z = count($_SESSION['platos']); $plato = $_SESSION['platos']; for ($i = 0; $i < $Z; $i++) { $pedido_plato = new Pedidos_platos(array("id_plato" => $plato[$i], "id_pedido" => $pedido->getValueEncoded("id_pedido"))); $pedido_plato->insert(); } $N = count($_SESSION['bebidas']); $bebida = $_SESSION['bebidas']; for ($i = 0; $i < $N; $i++) { $pedido_bebida = new Pedidos_bebidas(array("id_bebida" => $bebida[$i], "id_pedido" => $pedido->getValueEncoded("id_pedido"), "cantidad" => $_SESSION['cantidad'])); $pedido_bebida->insert(); } $factura = new Factura(array("id_pedido" => $pedido->getValueEncoded("id_pedido"), "precio" => $_SESSION['precio'])); $factura->insert(); echo "Insertado correctamente"; echo "<a href='facturas.php' target='_blank'>Ver Factura</a>"; }
public static function getInstanceBySQLRow(array $row) { //idusuario,usuario,password,tr.descripcion,email,nombrecompleto $factura = new \Factura(); $factura->setNroFactura($row["nrofactura"]); $factura->setConcepto($row["concepto"]); $factura->setImporte($row["importe"]); $factura->setCantidad($row["cantidad"]); $factura->setDescripcion($row["descripcion"]); $factura->setImporte($row["montototal"]); $factura->setPalabraClave($row["palabraclave"]); $factura->setUrl($row["url"]); $factura->setFechaIngreso($row["fechaingreso"]); $factura->setFechaBaja($row["fechabaja"]); return $usuario; }
/** * Filter the query by a related Factura object * * @param Factura|PropelObjectCollection $factura The related object(s) to use as filter * @param string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL * * @return FacturaDetalleQuery The current query, for fluid interface * @throws PropelException - if the provided filter is invalid. */ public function filterByFactura($factura, $comparison = null) { if ($factura instanceof Factura) { return $this->addUsingAlias(FacturaDetallePeer::FACTURA_ID, $factura->getId(), $comparison); } elseif ($factura instanceof PropelObjectCollection) { if (null === $comparison) { $comparison = Criteria::IN; } return $this->addUsingAlias(FacturaDetallePeer::FACTURA_ID, $factura->toKeyValue('PrimaryKey', 'Id'), $comparison); } else { throw new PropelException('filterByFactura() only accepts arguments of type Factura or PropelCollection'); } }
/** * @param Factura $factura The factura object to add. */ protected function doAddFactura($factura) { $this->collFacturas[] = $factura; $factura->setCliente($this); }
/** * Método para cargar las facturas */ public function facturar($key) { if (!($id = DwSecurity::isValidKey($key, 'upd_incidencias', 'int'))) { return DwRedirect::toAction('registro'); } $incidencias = new Incidencias(); $obj = new IncidenciasPatologia(); //$factura = new Factura(); $factura_dt = new FacturaDt(); $this->sol = $obj->getInformacionIncidenciasPatologia($id); if (!$incidencias->getInformacionIncidencias($id)) { DwMessage::get('id_no_found'); return DwRedirect::toAction('registro'); } if (Input::hasPost('factura')) { ActiveRecord::beginTrans(); $factu = Factura::setFactura('create', Input::post('factura')); if ($factu) { if (FacturaDt::setFacturaDt(Input::post('descripcion'), Input::post('cantidad'), Input::post('monto'), Input::post('exento'), $factu->id)) { $solfactura = IncidenciasFactura::setIncidenciasFactura($factu->id, $id); if ($solfactura) { if (Input::post('multifactura')) { //para saber si va a cargar multiples facturas sobre esa solicitud $solser = $incidencias->getInformacionIncidencias($id); $solser->estado_solicitud = "G"; //estado G parcialmente facturada $solser->save(); ActiveRecord::commitTrans(); DwMessage::valid('Se ha cargado la factura exitosamente!'); $key_upd = DwSecurity::getKey($id, 'upd_incidencias'); return DwRedirect::toAction('facturar/' . $key_upd); //retorna a la misma visata de facturacion } else { $solser = $incidencias->getInformacionIncidencias($id); $solser->estado_solicitud = "F"; $solser->save(); ActiveRecord::commitTrans(); DwMessage::valid('Se ha cargado la factura exitosamente!'); return DwRedirect::toAction('facturacion'); } } else { ActiveRecord::rollbackTrans(); DwMessage::error('No se pudo enviar a cargar multiples facturas!'); } } else { ActiveRecord::rollbackTrans(); DwMessage::error('Los detalles de la Factura no se han cargado correctamente Intente de nuevo!'); } } else { ActiveRecord::rollbackTrans(); DwMessage::error('La Factura no se ha cargado con exito!'); } } $this->incidencias = $incidencias; $this->page_title = 'Cargar Facturas a la solicitud'; }