Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <form action="{{url('/transferencia/enviar')}}" method="POST">
- {{ csrf_field() }}
- <div class="form-group">
- <input type="number" name="monto" class="form-control" placeholder="TOTAL A TRANSFERIR" required>
- </div>
- <div class="form-group">
- <input type="number" name="cuenta" class="form-control" placeholder="CUENTA DESTINATARIO" required>
- </div>
- <input type="hidden" name="punto_acumulado" class="form-control" value="{{$puntos_acumulados[0]->r}}" required>
- <div class="form-group">
- <button type="submit" class="btn btn-info">CONFIRMAR TRANSFERENCIA</button>
- </div>
- </form>
- public function transferir(Request $request) {
- $user_id = Auth::user()->id;
- $monto_a_transferir = $request->monto;
- $monto_ya_transferido = 0;
- $puntos_acumulados = $request->punto_acumulado;
- $user_a_regalar = $request->cuenta;
- $user_a_transferir = DB::select("SELECT id, name FROM users WHERE id = '$request->cuenta'");
- $registros = DB::select('SELECT id, disc_puntualidad_pos, productividad_pos, gestion_pos from puntos where user_id ='. $user_id);
- $cantidad_registros = count($registros);
- $acumulado = 0;
- //Acá controlo si hay credito disponible al solicitado
- if ($monto_a_transferir <= $puntos_acumulados) {
- //aca si existe el usuario al que quiere transferir
- if ($user_a_transferir) {
- //aca realizo un recorrido de todas las columnas para acceder al registro para descontar
- for ($i=0; $i < $cantidad_registros; $i++) {
- if ($monto_a_transferir > $acumulado) {
- //mi variable acumulado se inicializa en 0 pero va aumentando
- if ($registros[$i]->disc_puntualidad_pos > 0) {
- $acumulado = $acumulado + $registros[$i]->disc_puntualidad_pos;
- //aca el acumulado recibe el valor del registro de la columna disc_puntualidad_pos
- //y pregunta si es igual mayor o menor... hasta que se cumpla los puntos
- if ($acumulado == $monto_a_transferir) {
- var_dump('acumulado ya es igual al monto a transferir '.$acumulado);
- // actualiza el registro
- $punto = Punto::findOrFail($registros[$i]->id);
- $punto->disc_puntualidad_pos = 0;
- $punto->save();
- // registra la transeferencia
- $regalo = new Regalo();
- $regalo->puntos = $acumulado;
- $regalo->user_regalo = $user_id;
- $regalo->user_recibio = $user_a_regalar;
- $regalo->save();
- var_dump('se regalo');
- }
- if ($acumulado < $monto_a_transferir) {
- var_dump('el acumulado quedo en '. $acumulado . ' y el monto a transferir es '. $monto_a_transferir);
- // actualiza el registro
- $punto = Punto::findOrFail($registros[$i]->id);
- $punto->disc_puntualidad_pos = 0;
- $punto->save();
- }
- if ($acumulado > $monto_a_transferir) {
- var_dump('el acumulado '. $acumulado . ' ya paso al monto a transferir '. $monto_a_transferir);
- $vuelto = $acumulado - $monto_a_transferir;
- // actualiza el registro
- $punto = Punto::findOrFail($registros[$i]->id);
- $punto->disc_puntualidad_pos = $vuelto;
- $punto->save();
- // registra la transeferencia
- $regalo = new Regalo();
- $regalo->puntos = $monto_a_transferir;
- $regalo->user_regalo = $user_id;
- $regalo->user_recibio = $user_a_regalar;
- $regalo->save();
- }
- }
- }
- }
- } else {
- var_dump('no hay usuario');
- }
- } else {
- var_dump('el monto es mayor al punto acumulado');
- }
- // var_dump('se sumo'.$acumulado);
- var_dump('--------'); die;
- return redirect('/transferencia');
- }
Add Comment
Please, Sign In to add comment