/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(PagoUpdateRequest $request) { if ($request->ajax()) { $id_site = \Session::get('id_site'); $id_user = $request->id_user; $user = User::find($id_user); $cuota = Cuotas::find($user->type); $pagos = DB::table('pagos')->where('id_user', $id_user)->where('id_site', $id_site)->get(); $newDate = explode("-", $request->date); $flag = true; if (empty($pagos)) { DB::table('pagos')->insert(['id_user' => $id_user, 'date' => $request->date, 'status' => $request->status, 'amount' => $cuota->amount, 'user_name' => $user->name, 'id_site' => $id_site]); $data = ['msg' => 'pago generado', 'subj' => 'Pago acreditado', 'user_mail' => $user->email]; Mail::send('emails.msg', $data, function ($msj) use($data) { $msj->subject($data['subj']); $msj->to($data['user_mail']); }); return response()->json(["tipo" => 'success']); } else { foreach ($pagos as $value) { $date = explode("-", $value->date); if ($date[0] == $newDate[0] && $date[1] == $newDate[1]) { $flag = false; break; } } if ($flag) { $ultimo = DB::table('pagos')->where('id_user', $id_user)->where('id_site', $id_site)->orderBy('date', 'dsc')->take(1)->value('date'); //get next year and month $ultimo_pago = explode("-", $ultimo); if (intval($ultimo_pago[1]) == 12) { $next_m = 1; $next_y = intval($ultimo_pago[0]) + 1; } else { $next_m = intval($ultimo_pago[1]) + 1; $next_y = intval($ultimo_pago[0]); } if (intval($newDate[0]) == $next_y && intval($newDate[1]) == $next_m) { DB::table('pagos')->insert(['id_user' => $id_user, 'date' => $request->date, 'status' => $request->status, 'amount' => $cuota->amount, 'user_name' => $user->name, 'id_site' => $id_site]); $data = ['msg' => 'pago generado', 'subj' => 'Pago acreditado', 'user_mail' => $user->email]; Mail::send('emails.msg', $data, function ($msj) use($data) { $msj->subject($data['subj']); $msj->to($data['user_mail']); }); return response()->json(["tipo" => 'success']); } else { return response()->json(["tipo" => 'fail', "message" => 'No estan permitido intervalos sin pagos creados. Se debe crear un pago con fecha inmediata al ultimo creado.']); } } else { return response()->json(["tipo" => 'fail', "message" => 'Ya existe un pago para este mes y usuario.']); } } } // end request ajax }
public function getPaymentStatus() { // Get the payment ID before session clear $payment_id = \Session::get('paypal_payment_id'); // clear the session payment ID \Session::forget('paypal_payment_id'); $payerId = \Input::get('PayerID'); $token = \Input::get('token'); //if (empty(\Input::get('PayerID')) || empty(\Input::get('token'))) { if (empty($payerId) || empty($token)) { return redirect()->to('micuenta')->with('error', 'Hubo un problema al intentar pagar con Paypal'); } $payment = Payment::get($payment_id, $this->_api_context); // PaymentExecution object includes information necessary // to execute a PayPal account payment. // The payer_id is added to the request query parameters // when the user is redirected from paypal back to your site $execution = new PaymentExecution(); $execution->setPayerId(\Input::get('PayerID')); //Execute the payment $result = $payment->execute($execution, $this->_api_context); //echo '<pre>';print_r($result);echo '</pre>';exit; // DEBUG RESULT, remove it later if ($result->getState() == 'approved') { // payment made // Registrar el pedido --- ok // Registrar el Detalle del pedido --- ok // Enviar correo a user // Enviar correo a admin // Redireccionar // Update de pagos $pagos_id = \Session::get('pagos_id'); $pagos_data = \Session::get('pagos_data'); $message = 'Su pago ha sido registrado. Gracias.'; if (!empty($pagos_id)) { foreach ($pagos_id as $pago) { DB::table('pagos')->where('id', $pago)->update(['status' => 1]); DB::table('users')->where('id', $this->auth->user()->id)->update(['status' => 1]); } } else { if (!empty($pagos_data)) { $user = User::find($this->auth->user()->id); $cuota = Cuotas::find($user->type); foreach ($pagos_data as $date) { DB::table('pagos')->insert(['id_user' => $user->id, 'date' => $date, 'status' => 1, 'amount' => $cuota->amount, 'user_name' => $user->name]); } } } return redirect()->to('micuenta')->with('message', $message); } return redirect()->to('micuenta')->with('message', 'El pago ha sido cancelado.'); }
public function update_info_user($id, UserUpdateRequest $request) { $user = User::find($id); $user->fill($request->all()); $user->save(); return response()->json(["message" => 'listo']); }
/** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update($id, UserUpdateRequest $request) { $user = User::find($id); $id_site = \Session::get('id_site'); $user->name = $request->name; $user->email = $request->email; $user->address = $request->address; $user->phone = $request->phone; $user->celphone = $request->celphone; $user->save(); DB::table('sites_users')->where('id_user', $id)->where('id_site', $id_site)->update(['role' => $request->role, 'type' => $request->type]); return response()->json(["message" => 'listo']); }
/** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { $user = User::find($id); $user->delete(); return response()->json(["mensaje" => 'eliminado']); }