public function obtenerDistribuidores() { $distribuidores = Distribuidor::all(); for ($i = 0; $i < sizeof($distribuidores); $i++) { //$distribuidores[$i]->calle=$distribuidores[$i]->calle." #".$distribuidores[$i]->numero_exterior." ".$distribuidores[$i]->colonia." ".$distribuidores[$i]->municipio." ".$distribuidores[$i]->estado." ".$distribuidores[$i]->codigo_postal; $distribuidores[$i]->acciones = '<a type="button" class="btn btn-success margin" href="verDistribuidor/' . $distribuidores[$i]->id_distribuidor . '">Ver</a> <a type="button" class="btn btn-primary margin" href="editarDistribuidor/' . $distribuidores[$i]->id_distribuidor . '">Actualizar</a>'; } return $distribuidores; }
public function crearPagos(Request $request) { $id = $request->input('id'); $fecha = $request->input('fecha'); if ($fecha == "") { $fecha = Carbon::today(); } if ($id == 0) { $distribuidores = Distribuidor::all(); for ($j = 0; $j < sizeof($distribuidores); $j++) { $vales = Vale::where('id_distribuidor', $distribuidores[$j]->id_distribuidor)->where('deuda_actual', '>', 0)->where('estatus', 1)->where('fecha_inicio_pago', '<=', $this->calcularFechaCorte($fecha))->get(); $saldoTotal = 0; for ($i = 0; $i < sizeof($vales); $i++) { $importe = $vales[$i]->cantidad; $saldoAnterior = $vales[$i]->deuda_actual; $pagosRealizados = $vales[$i]->pagos_realizados + 1; $numeroPagos = $vales[$i]->numero_pagos; $abono = $this->calcularPago($importe, $numeroPagos, $pagosRealizados); $saldoTotal += $abono; } if ($saldoTotal > 0) { $comision = $this->calcularComision($saldoTotal, $distribuidores[$j]->id_distribuidor); $pagoDoble = Pago::where('id_distribuidor', $distribuidores[$j]->id_distribuidor)->where('fecha_creacion', $this->calcularFechaCorte($fecha))->get(); $pagoAux = Pago::where('id_distribuidor', $distribuidores[$j]->id_distribuidor)->where('estado', 1)->get(); //pagos if (count($pagoDoble) == 0) { if (count($pagoAux) == 0) { $pago = new Pago(); $pago->id_distribuidor = $distribuidores[$j]->id_distribuidor; $pago->cantidad = $saldoTotal; $pago->fecha_creacion = $this->calcularFechaCorte($fecha); $pago->estado = 0; // 0:pendiente 1:desfasado 2:pagado 3:Cancelado por nuevo pago $pago->comision = $comision; $pago->id_cuenta = Session::get('id'); $pago->save(); $distribuidores[$j]->comision = $comision; $distribuidores[$j]->save(); } else { $pagoAux[0]->estado = 3; $pagoAux[0]->save(); $pago = new Pago(); $pago->id_distribuidor = $distribuidores[$j]->id_distribuidor; $pago->cantidad = $saldoTotal + $this->saldoAtrasado($vales, $distribuidores[$j]->id_distribuidor); $pago->fecha_creacion = $this->calcularFechaCorte($fecha); $pago->estado = 0; // 0:pendiente 1:desfasado 2:pagado 3:Cancelado por nuevo pago $pago->comision = 0; $pago->abono = $pagoAux[0]->abono; $pago->id_cuenta = Session::get('id'); $pago->save(); $distribuidores[$j]->comision = $comision; $distribuidores[$j]->save(); } ///else } } // if saldo total } // for distribuidores } else { $vales = Vale::where('id_distribuidor', $id)->where('deuda_actual', '>', 0)->where('estatus', 1)->where('fecha_inicio_pago', '<=', $this->calcularFechaCorte($fecha))->get(); $saldoTotal = 0; $distribuidor = Distribuidor::find($id); for ($i = 0; $i < sizeof($vales); $i++) { $importe = $vales[$i]->cantidad; $saldoAnterior = $vales[$i]->deuda_actual; $pagosRealizados = $vales[$i]->pagos_realizados + 1; $numeroPagos = $vales[$i]->numero_pagos; $abono = $this->calcularPago($importe, $numeroPagos, $pagosRealizados); $saldoTotal += $abono; } if ($saldoTotal > 0) { $comision = $this->calcularComision($saldoTotal, $id); $pagoDoble = Pago::where('id_distribuidor', $distribuidor->id_distribuidor)->where('fecha_creacion', $this->calcularFechaCorte($fecha))->get(); $pagoAux = Pago::where('id_distribuidor', $distribuidor->id_distribuidor)->where('estado', 1)->get(); if (count($pagoDoble) == 0) { if (count($pagoAux) == 0) { $pago = new Pago(); $pago->id_distribuidor = $distribuidor->id_distribuidor; $pago->cantidad = $saldoTotal; $pago->fecha_creacion = $this->calcularFechaCorte($fecha); $pago->estado = 0; // 0:pendiente 1:desfasado 2:pagado 3:Cancelado por nuevo pago $pago->comision = $comision; $pago->id_cuenta = Session::get('id'); $pago->save(); $distribuidor->comision = $comision; $distribuidor->save(); } else { $pagoAux[0]->estado = 3; $pagoAux[0]->save(); $pago = new Pago(); $pago->id_distribuidor = $distribuidor->id_distribuidor; $pago->cantidad = $saldoTotal + $this->saldoAtrasado($vales, $distribuidor->id_distribuidor); $pago->fecha_creacion = $this->calcularFechaCorte($fecha); $pago->estado = 0; // 0:pendiente 1:desfasado 2:pagado 3:Cancelado por nuevo pago $pago->comision = 0; $pago->abono = $pagoAux[0]->abono; $pago->id_cuenta = Session::get('id'); $pago->save(); $distribuidor->comision = $comision; $distribuidor->save(); } ///else } } // if saldo total } // for distribuidores return redirect('consultarPagos'); }
public function reporte_1b_todos(Request $request) { $tipo = $request->input('tipo'); $fecha = $request->input('fecha'); //Partes de la vista $head = '<!DOCTYPE html><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><title>Reporte 1</title><link href="css/reporte_1' . $tipo . '.css" rel="stylesheet" ></head>'; $foot = '</html>'; $body = ' '; $todo = ' '; //Filtrar los administradores que tienen vales $distribuidores = Distribuidor::all(); for ($i = 0; $i < sizeof($distribuidores); $i++) { $id = $distribuidores[$i]->id_distribuidor; $vales = Vale::where('id_distribuidor', $id)->where('deuda_actual', '>', 0)->where('estatus', 1)->where('fecha_inicio_pago', '<', $this->calcularFechaCorte($fecha))->get(); if (count($vales) != 0) { $conVales[] = $distribuidores[$i]->id_distribuidor; } } //Crear el cuerpo de la vista for ($i = 0; $i < sizeof($conVales); $i++) { $body = $this->body_reporte_1b($conVales[$i], $fecha); $todo = $todo . $body; } $result = $head . $todo . $foot; //Crear el pdf $pdf = \App::make('dompdf.wrapper'); $pdf->loadHTML($result); return $result; //$pdf->stream('reporte_1b_todos.pdf'); }