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 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']); } }