/** * Show the form for editing the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function edit(Request $request) { $idtitular = $request->input('idtitular'); //id titular if ($idtitular == '') { $titular = new Titular($request->only('nombre_titular', 'responsable', 'dom_titular', 'cp_titular', 'pob_titular', 'exp_titular', 'dni_titular', 'tel_titular', 'ema_titular')); $idtitular = $titular->insertGetId($titular->attributesToArray()); } else { $titularA = new Titular($request->only('nombre_titular', 'responsable', 'dom_titular', 'cp_titular', 'pob_titular', 'exp_titular', 'dni_titular', 'tel_titular', 'ema_titular')); $titular = Titular::find($idtitular); $titular->update($titularA->attributesToArray()); $idtitular = $request->input('idtitular'); //id titular } $parcelaU = new parcela($request->except('nombre_titular', 'responsable', 'dom_titular', 'cp_titular', 'pob_titular', 'exp_titular', 'dni_titular', 'tel_titular', 'ema_titular')); $parcela = Parcela::find($request->input('idparcela')); $parcelaU->GC_TITULAR_id = $idtitular; $parcela->update($parcelaU->attributesToArray()); //LLamamos al controlador Facturacion controller para generar la factura de cesion perpetua //de la parcela que estamos editando. $factura = new FacturacionController(); $factura->fcpP($idtitular, $parcela->id); }
/** * Función que devuelve una vistra u otra con los parametros necesarios para modificar o calle * o panteones * @param $idCalle es el id de la calle a editar * @return View es la vista a devolver. */ function editarView($idCalle) { $calle = Calle::find($idCalle); if ($calle->tipo_calle == 1) { //Obtenemos las tramadas de la calle $tramadas = Tramada::where('GC_CALLE_id', "=", $idCalle)->get(); return view('modificar_calle_nichos', compact('calle', 'tramadas')); } else { //Obtenemos las parcelas de la calle panteon. $parcelas = Parcela::where('GC_CALLE_id', "=", $idCalle)->get(); //Obtenemos las tramadas de cada parcela para pasarlas a la vista. $tramadas = array(); $titulares = array(); foreach ($parcelas as $parcela) { $tramada = Tramada::where('GC_PARCELA_id', '=', $parcela->id)->get(); if ($parcela->GC_TITULAR_id != null) { $titular = Titular::where('id', '=', $parcela->GC_TITULAR_id)->get(['nombre_titular', 'dni_titular']); $elemento1 = array($parcela->id, $titular[0]); array_push($titulares, $elemento1); } $elemento = array($parcela->id, $tramada); array_push($tramadas, $elemento); } return view('modificar_calle_panteon', compact('calle', 'parcelas', 'tramadas', 'titulares')); } }
function update(Request $r) { //Obtenemos los parámetros de la petición $id = $r->input('id'); $tipo = $r->input('tipo'); $hoy = Carbon::now(); //obtenemos la fecha inicio y fin de los años que se pretende pagar $inicio = new Carbon($r->input('inicio')); $fin = new Carbon($r->input('fin')); //obtenemos el iva para calculos $iva = Iva2::first()->tipo; //inicializamos el objeto factura $this->nuevaFactura = new Factura(); //Asignamos atributos a nuevaFactura para ello obtenemos dato de infoRecibos $nicho = infoRecibos::find($id); $this->nuevaFactura->idtitular = $nicho->idtitular; $this->nuevaFactura->iddifunto = $nicho->iddifunto; $this->nuevaFactura->serie = $tipo; $this->nuevaFactura->pendiente = 1; //las ponemos así por defecto? $this->nuevaFactura->pagada = 0; //las ponemos así por defecto? $this->nuevaFactura->inicio = $r->input('inicio'); $this->nuevaFactura->fin = $r->input('fin'); if ($tipo == 'N') { //Si es de un nicho el recibo que vamos a imprimir. $this->nuevaFactura->idnicho = $nicho->idnicho; $this->nuevaFactura->calle = $nicho->calle; $this->nuevaFactura->tramada = $nicho->tramada; $this->nuevaFactura->numero_nicho = $nicho->numero_nicho; //Obtenemos el titular de este nicho $titularinfo = Titular::find($nicho->idtitular); //Obtenemos el nicho $nichoinfo = Nicho::find($nicho->idnicho); //Obtenemos el nº de la serie que le corresponde $numero = Factura::where('serie', 'N')->whereYear('inicio', '=', $hoy->year)->max('numero'); $this->nuevaFactura->numero = $numero + 1; //Calculamos la base total para la tarifa de mantenimiento nichos $tarifa = Tm_nichos::first(); $precio = $tarifa->tarifa * ($fin->year - $inicio->year); $this->nuevaFactura->base = $precio; $this->nuevaFactura->iva = $precio * ($iva / 100); $this->nuevaFactura->total = $precio + $precio * ($iva / 100); } else { $this->nuevaFactura->idparcela = $nicho->idparcela; $this->nuevaFactura->calle = $nicho->calle; $this->nuevaFactura->parcela = $nicho->parcela; //obtenemos el titular de esta parcela $titularinfo = Titular::find($nicho->idtitular); //Obtenemos la parcela $nichoinfo = Parcela::find($nicho->idparcela); //Obtenemos el nº de la serie que le corresponde $numero = Factura::where('serie', 'M')->whereYear('inicio', '=', $hoy->year)->max('numero'); $this->nuevaFactura->numero = $numero + 1; //Buscamos el precio de mantenimiento de la parcela en tarifas que depende del tipo de nicho //si está construido o no, para saberlo comprobamos si tiene alguna tramada $tramadas = Tramada::where('GC_PARCELA_id', '=', $nicho->idparcela)->get(); $tamanyo = $nicho->metros_parcela; $this->nuevaFactura->metros_parcela = $tamanyo; //si tiene tramadas está construida por lo tanto tarifa 2 if (count($tramadas) > 0) { $tipo = 2; $tarifa = Tm_parcelas::find(2); //obtenemos el tamanyo de la parcela $numNichos = count($tramadas) * $tramadas[0]->nichos; $precio = $numNichos * $tarifa->tarifa * ($fin->year - $inicio->year); } else { //Sino la tarifa 1 $tipo = 1; $tarifa = Tm_parcelas::find(1); //obtenemos el tamanyo de la parcela $precio = $tamanyo * $tarifa->tarifa * ($fin->year - $inicio->year); } } //Titular $this->nuevaFactura->nombre_titular = $titularinfo->nombre_titular; $this->nuevaFactura->dni_titular = $titularinfo->dni_titular; $this->nuevaFactura->domicilio_del_titular = $titularinfo->dom_titular; $this->nuevaFactura->cp_titular = $titularinfo->cp_titular; $this->nuevaFactura->poblacion_titular = $titularinfo->pob_titular; $this->nuevaFactura->provincia_titular = $titularinfo->pro_titular; //facturado $this->nuevaFactura->nombre_facturado = $nichoinfo->nom_facturado; $this->nuevaFactura->dni_facturado = $nichoinfo->dni_facturado; $this->nuevaFactura->domicilio_facturado = $nichoinfo->dir_facturado; $this->nuevaFactura->dni_facturado = $nichoinfo->nom_facturado; $this->nuevaFactura->cp_facturado = $nichoinfo->cp_facturado; $this->nuevaFactura->poblacion_facturado = $nichoinfo->pob_facturado; $this->nuevaFactura->provincia_facturado = $nichoinfo->pro_facturado; //Asiganamos datos monetarios a la factura. $this->nuevaFactura->base = $precio; $this->nuevaFactura->iva = $precio * ($iva / 100); $this->nuevaFactura->total = $precio + $precio * ($iva / 100); $this->nuevaFactura->save(); if ($tipo == 'N') { //Generamos los pdfs para imprimir el recibo del nicho echo '<a type="button" class="btn btn-success" style="background-color: #009688;" href="/pdfmantenimientoNicho-' . $this->nuevaFactura->id . '">Visualizar y descargar Recibo</a>'; echo '<a type="button" class="btn btn-success download" style="background-color: #009688;" href="/ipdfmantenimientoNicho-' . $this->nuevaFactura->id . '">Descargar directamente</a>'; } else { //Generamos los enlaces para los pdfs de las parcelas echo '<a type="button" class="btn btn-success" style="background-color: #009688;" href="/pdfmantenimientoParcela-' . $this->nuevaFactura->id . '">Visualizar y descargar Recibo</a>'; echo '<a type="button" class="btn btn-success download" style="background-color: #009688;" href="/ipdfmantenimientoParcela-' . $this->nuevaFactura->id . '">Descargar directamente</a>'; } }
public function getForModal(Request $request) { $nombre = $request->input('nombrebuscar'); $dni = $request->input('dnibuscar'); $calle = $request->input('callebuscar'); $titulares = Titular::where('nombre_titular', 'like', "%{$nombre}%"); if ($dni != "") { $titulares->where('dni_titular', 'like', "%{$dni}%"); } if ($calle != "") { $titulares->where('dom_titular', 'like', "%{$calle}%"); } $titulares = $titulares->get(); echo '<br>'; if (count($titulares) <= 20 && count($titulares) > 0) { echo '<table class="table table-bordered table-hover"><tr>'; echo '<thead>'; echo '<th> Nombre'; echo '</th>'; echo '<th> Dni'; echo '</th>'; echo '<th> Domicilio'; echo '</th>'; echo '<th> Cargar'; echo '</th>'; echo '</thead></tr>'; foreach ($titulares as $titular) { echo '<tr>'; echo '<td> ' . $titular->nombre_titular . '</td>'; echo '<td> ' . $titular->dni_titular . '</td>'; echo '<td> ' . $titular->dom_titular . '</td>'; echo '<td> <button type="button" onclick="cargartitularbusqueda(' . $titular->id . ')" class="btn btn-warning btn-xs">Cargar</button></td>'; echo '</tr>'; } echo '<tbody>'; echo '</tbody>'; echo '</table>'; } else { if (count($titulares) == 0) { echo '<h2>No existen coincidencias para esos parametros de busqueda</h2>'; } else { echo '<h2>Demasiados resultados de busqueda, afine mejor</h2>'; } } }
/** * Modifica el nicho en la base de datos * * @param int $id * @return \Illuminate\Http\Response */ public function edit(Request $request) { $sintitularbox = $request->input('sintitular'); $idtitular = $request->input('idtitular'); //id titular $sintitular = false; if ($sintitularbox != null) { $idtitular = null; $sintitular = true; } else { if ($idtitular == '') { $titular = new Titular($request->only('nombre_titular', 'responsable', 'dom_titular', 'cp_titular', 'pob_titular', 'exp_titular', 'dni_titular', 'tel_titular', 'ema_titular', 'pro_titular')); $idtitular = $titular->insertGetId($titular->attributesToArray()); } else { $titularA = new Titular($request->only('nombre_titular', 'responsable', 'dom_titular', 'cp_titular', 'pob_titular', 'exp_titular', 'dni_titular', 'tel_titular', 'ema_titular', 'pro_titular')); $titular = Titular::find($idtitular); $titular->update($titularA->attributesToArray()); $idtitular = $request->input('idtitular'); //id titular } } $nichoU = new Nicho($request->except('nombre_titular', 'responsable', 'dom_titular', 'cp_titular', 'pob_titular', 'exp_titular', 'dni_titular', 'tel_titular', 'ema_titular', 'pro_titular')); $nicho = Nicho::find($request->input('idnicho')); $nichoU->GC_TITULAR_id = $idtitular; $nichoU->sintitular = $sintitular; $nicho->update($nichoU->attributesToArray()); if ($sintitularbox == "on") { } else { $factura = new FacturacionController(); $factura->facturaCesion($idtitular, $nicho->id, $nicho->cesion); } }
/** * Store a newly created resource in storage. * * @param Request $request * @return Response */ public function store(Request $request) { $nichoid = $request->input('GC_NICHOS_id'); $nicho = Nicho::find($nichoid); $titular = Titular::find($nicho->GC_TITULAR_id); $p = false; if ($titular == null) { $tramada = Tramada::find($nicho->GC_Tramada_id); $parcela = VPanteones::where('parcela_id', $tramada->GC_PARCELA_id)->get()[0]; $titular = Titular::find($parcela->titular_id); $p = true; } $difunto = new Difunto($request->all()); $difunto->save(); $fc = new FacturacionController(); if ($p) { $fc->facturaEnterramiento($nicho->id, $difunto->id, $titular->id, $parcela->parcela_id); //Generamos también factura de mantenimiento de los años años que se deben hasta hoy + 5 $fc->Mantenimiento5Parcela($parcela->parcela_id, $titular->id, $nicho->id); } else { $fc->facturaEnterramiento($nicho->id, $difunto->id, $titular->id, null); //Generamos también factura de mantenimimento de los añoas que se deben hasta hoy + 5 $fc->Mantenimiento5Nicho($nicho->id, $titular->id); } }
public function escrituraNicho($id) { $nicho = Nicho::find($id); //voluntades y otras cosas $info = InfoNicho::find($id); // nombre calle, numero, altura $titular = Titular::find($nicho->GC_TITULAR_id); //datos del titular //require_once("dompdf/dompdf_config.inc.php"); $view = \View::make('pdf.escritura', compact('nicho', 'titular', 'info'))->render(); $pdf = \App::make('dompdf.wrapper'); $pdf->loadHTML($view)->setPaper('a3', 'landscape')->setWarnings(false)->save('myfile.pdf'); //$pdf->loadHTML($view); return $pdf->stream('invoice.pdf', array('Attachment' => 1)); /*$dompdf = new DOMPDF(); $dompdf->load_html($view); $dompdf->set_paper("a3"); $dompdf->render(); $dompdf->stream('escritura' . ".pdf");*/ }
public function Mantenimiento5Parcela($parcela, $titular, $idnicho) { $hoy = Carbon::now(); //Cogemos el ultimo año pagado en factura de esta parcela $ultimo = infoRecibos::where('idparcela', '=', $parcela)->groupBy('idparcela')->get(['fin'])[0]->fin; $ultimo = Carbon::create($ultimo, 1, 1, 0, 0); $fin = new Carbon($ultimo); //En la parcela si enterramos en 2015 y luego en 2016 no se puede generar 5 años más debería //calcularse si la diferencia es menor que 5 y si es así incrementar hasta 5 if ($fin->year > $hoy->year) { $diferencia = 5 - ($fin->year - $hoy->year); } else { $diferencia = 5 + ($hoy->year - $fin->year); } if ($diferencia > 0) { $iva = Iva2::first()->tipo; $tarifa = Tm_parcelas::find(2); //Obtener el nº de nichos de la parcela, se supone que está construida $tramadas = Tramada::where('GC_PARCELA_id', '=', $parcela)->get(); $numNichos = count($tramadas) * $tramadas[0]->nichos; $precio = $tarifa->tarifa * $numNichos; $titularinfo = Titular::find($titular); $infoparcela = Parcela::find($parcela); $infopanteon = VPanteones::where('parcela_id', $parcela)->first(); $factura = new Factura(); $numero = Factura::where('serie', 'M')->whereYear('created_at', '=', $hoy->year)->max('numero'); //también hay que poner el idnicho de esta factura porque estamos enterrando en un nicho $factura->idnicho = $idnicho; $factura->numero = $numero + 1; $factura->inicio = $ultimo; $factura->fin = $fin->addYears($diferencia); $factura->idparcela = $parcela; $factura->serie = 'M'; $factura->idtitular = $titular; $factura->base = $precio * $diferencia; $factura->iva = $precio * $diferencia * ($iva / 100); $factura->total = $precio * $diferencia * (1 + $iva / 100); //nuevos campo $factura->calle = $infopanteon->calle; $factura->parcela = $infopanteon->numero; $factura->metros_parcela = $infopanteon->tamanyo; $factura->cesion = $infopanteon->cesion; //titular $factura->nombre_titular = $titularinfo->nombre_titular; $factura->dni_titular = $titularinfo->dni_titular; $factura->domicilio_del_titular = $titularinfo->dom_titular; $factura->cp_titular = $titularinfo->cp_titular; $factura->poblacion_titular = $titularinfo->pob_titular; $factura->provincia_titular = $titularinfo->pro_titular; //facturado $factura->nombre_facturado = $infoparcela->nom_facturado; $factura->dni_facturado = $infoparcela->nif_facturado; $factura->domicilio_facturado = $infoparcela->dir_facturado; $factura->cp_facturado = $infoparcela->cp_facturado; $factura->poblacion_facturado = $infoparcela->pob_facturado; $factura->provincia_facturado = $infoparcela->pro_facturado; $factura->save(); } }