public function postDeposito()
 {
     $email = Input::get('email');
     $password = Input::get('password');
     $moneda = Input::get('moneda');
     $user_id = Input::get('user_id');
     $consecutivo = Input::get('consecutivo');
     Auth::attempt(array('email' => $email, 'password' => $password));
     if (Auth::check()) {
         setlocale(LC_TIME, "esp");
         $fecha = utf8_encode(strftime("%A, %d de %B de %Y, Hora %H:%M"));
         $fecha_corta = utf8_encode(strftime("%d de %B - %H:%M"));
         $usuario = User::find($user_id);
         $porcentaje = $usuario->porcentaje;
         $moneda_des = $moneda - $moneda * $porcentaje;
         $deposito = new UserAlcanciaDeposito();
         $deposito->user_alcancia_id = $consecutivo;
         $deposito->moneda = $moneda;
         $deposito->moneda_des = $moneda_des;
         $deposito->fecha = $fecha;
         $deposito->fecha_corta = $fecha_corta;
         $deposito->save();
         $uad = UserAlcancia::find($consecutivo)->transacciones->first();
         // si es el primer deposito
         if (empty($uad)) {
             $transaccion = new Transacciones();
             $transaccion->user_id = $user_id;
             $transaccion->valor = $moneda_des;
             $transaccion->tipo = 1;
             $transaccion->origen = $deposito->userAlcancia->alcancia->ubicacion;
             // ubicació de la alcancia
             $transaccion->movimiento = 'Deposito';
             $transaccion->user_alcancia_id = $consecutivo;
             $transaccion->fecha = date('Y-m-d');
             $transaccion->estado = 1;
             $transaccion->save();
         } else {
             $update_transaccion = Transacciones::find($uad->id);
             $suma_moneda = $update_transaccion->valor + $moneda_des;
             $update_transaccion->valor = $suma_moneda;
             $update_transaccion->save();
         }
         $suma = Recursos::getSumaMonedaByUser($user_id);
         $suma = $suma - $suma * $porcentaje;
         $suma_total = $usuario->transacciones->sum('valor');
         Pusherer::trigger('Canal_moneda' . $usuario->email, 'my_event-' . $usuario->email, array('suma' => $suma_total));
         return "Ahorro Guardado Ok";
     } else {
         return "No logueado";
     }
 }
 public function geHistorialDepositos()
 {
     $transacciones = Transacciones::where('tipo', 1)->get();
     $total = Transacciones::where('tipo', 1)->sum('valor');
     $data = array('transacciones' => $transacciones, 'total' => $total);
     return View::make('Backend/historial/depositos', $data);
 }
Example #3
0
 public function TransferenciaBanco()
 {
     $input = Input::all();
     $reglas = array('pw' => 'required', 'valor' => 'required|numeric');
     $validation = Validator::make($input, $reglas);
     if ($validation->fails()) {
         return Response::json(['success' => false, 'valida_input' => false, 'errors' => $validation->errors()->toArray()]);
     }
     // validar si la contraseña, fue correcta
     try {
         // Find the user using the user id
         $user_id = Input::get('user_id');
         $user = Sentry::findUserById(Input::get('user_id'));
         if ($user->checkPassword(Input::get('pw'))) {
             $valor = Input::get('valor');
             // Valida que el valor, a transferir no sea superior al saldo
             $usuario = User::find($user_id);
             $saldo = $usuario->transacciones->sum('valor');
             if ($valor >= $saldo) {
                 return Response::json(['success' => false, 'msg' => 'El valor que va a transferir, debe ser menor a su saldo']);
             }
             /*
                             if($valor < 30000){
                                 return Response::json(['success'=>false, 'msg'=>'El valor mínimo que puede transferir, es de $30.000']);
                             }
             */
             $transferencia = new UserBancoTransferencia();
             $transferencia->userbanco_id = Input::get('id');
             $transferencia->descripcion = Input::get('descripcion');
             $transferencia->valor = $valor;
             $transferencia->estado = 0;
             $transferencia->msg_estado = 'Pendiente';
             $transferencia->save();
             $userbanco = UsersBanco::find(Input::get('id'));
             $transaccion = new Transacciones();
             // Programar el % descuento, por está transaccion
             $transaccion->user_id = $userbanco->user_id;
             $transaccion->valor = $valor * -1;
             // se vuelve negativo,
             $transaccion->tipo = 4;
             $transaccion->origen = 'Transferencia Bancaria';
             $transaccion->transferencia_banco_id = $transferencia->id;
             $transaccion->movimiento = 'Transferencia Bancaria';
             $transaccion->fecha = date('Y-m-d');
             $transaccion->estado = 0;
             $transaccion->save();
             return Response::json(['success' => true, 'valida_input' => true, 'msg' => 'La transferencia de realizo correctamente']);
         } else {
             return Response::json(['success' => false, 'valida_input' => true, 'msg' => 'Contraseña incorrecta']);
         }
     } catch (Cartalyst\Sentry\Users\UserNotFoundException $e) {
         return Response::json(['success' => false, 'valida_input' => true, 'msg' => 'El usuario no existe']);
     }
 }