示例#1
0
        public ActionResult prueba(Moneda moneda)
        {
            //Creamos el objeto respuesta y ejecutamos la función, crearMoneda()
            Respuesta     respuesta     = Func_Monedas.crearMoneda(moneda);
            TipoRespuesta tipoRespuesta = respuesta.tipoRespuesta;

            Thread.Sleep(700);

            //Gestionamos errores
            if (tipoRespuesta != TipoRespuesta.OK)
            {
                return(PartialView("_CrearError", moneda));
            }

            //Si hay un mensaje de error, lo mostramos en la misma página
            if (!string.IsNullOrEmpty(respuesta.error))
            {
                //Utilizamos ViewBag para enviarlo del controlador a la vista
                //Pero no puede reutilizarse
                ViewBag.MensajeError = respuesta.error;
                return(PartialView("_CrearError", moneda));
            }

            //Si todo sale bien, enviamos un mensaje de éxito a la vista para mostrarlo
            //TempData puede ser reusado y no se pierden sus datos al contrario de ViewBag
            TempData["mensajeExito"] = "¡Se ha creado la moneda " + moneda.Nombre + "!";

            //Envíamos de nuevo al método Index
            return(PartialView("_CrearExito", moneda));
        }
        public ActionResult RealizarOperacion(RegistrarOperaciones_VM registroOperaciones)
        {
            Respuesta respuesta = new Respuesta();

            respuesta.tipoRespuesta = TipoRespuesta.OK;

            //Creo y relleno la lista de monedas
            List <Moneda> listaMonedas = new List <Moneda>();

            respuesta = Func_Monedas.recuperarListaMonedas(listaMonedas);

            //Cargo esta lista en la propieda del ViewModel
            registroOperaciones.listaMonedas = listaMonedas;

            //Añado al ViewModel los tipos de operaciones
            respuesta = Func_Monedas.recuperarListaTiposOperaciones(registroOperaciones.tiposOperaciones);

            //Creo el objeto respuesta y ejecuto crearTransaccion()
            //El parámetro registroOperaciones contiene todos los datos necesarios para crear la transacción
            respuesta = Func_Monedas.crearTransaccion(registroOperaciones);
            TipoRespuesta tipoRespuesta = respuesta.tipoRespuesta;


            if (respuesta.tipoRespuesta != TipoRespuesta.OK)
            {
                return(View("Error"));
            }
            return(PartialView("~/Views/Monedas/_CrearExito.cshtml", registroOperaciones.moneda));
        }
        public ActionResult Index(RegistrarOperaciones_VM registroOperaciones)
        {
            //Creo y relleno la lista de monedas
            List <Moneda> listaMonedas = new List <Moneda>();

            Func_Monedas.recuperarListaMonedas(listaMonedas);

            //Cargo esta lista en la propieda del ViewModel
            registroOperaciones.listaMonedas = listaMonedas;

            //Añado al ViewModel los tipos de operaciones
            Respuesta respuesta = Func_Monedas.recuperarListaTiposOperaciones(registroOperaciones.tiposOperaciones);

            //Creo el objeto respuesta y ejecuto crearTransaccion()
            //El parámetro registroOperaciones contiene todos los datos necesarios para crear la transacción
            respuesta = Func_Monedas.crearTransaccion(registroOperaciones);
            TipoRespuesta tipoRespuesta = respuesta.tipoRespuesta;

            //Gestionamos errores
            if (tipoRespuesta != TipoRespuesta.OK)
            {
                return(View("Error"));
            }
            else
            {
                //Mostramos mensaje de éxito si sale bien todo
                ViewBag.MensajeExito = "¡Perfecto! Todo ha salido bien ";
            }

            return(View(registroOperaciones));
        }
示例#4
0
        public ActionResult Edit(Moneda moneda)
        {
            //La vista tiene un modelo especificado
            //Cuando hay un formulario y se hace el submit
            //Este modelo se envía de vuelta al controlador
            //En este caso es Moneda, que es el parámetro que tiene el método

            //Creamos el objeto respuesta para gestionar errores
            //Editamos la moneda devuelta por la vista
            Respuesta respuesta = Func_Monedas.editarMoneda(moneda);

            //Creamos un tipo respuesta y le asignamos el valor
            //Que haya devuelto la Respuesta de la consulta
            TipoRespuesta tipoRespuesta = respuesta.tipoRespuesta;

            //Gestionamos en caso de que haya errores
            if (tipoRespuesta != TipoRespuesta.OK)
            {
                return(View("Error"));
            }

            //Volvemos a la acción Index
            //NO la vista, dado que esto no actualizaría los datos
            return(RedirectToAction("Index"));
        }
示例#5
0
        public JsonResult EditJson(Moneda moneda)
        {
            //La vista tiene un modelo especificado
            //Cuando hay un formulario y se hace el submit
            //Este modelo se envía de vuelta al controlador
            //En este caso es Moneda, que es el parámetro que tiene el método

            //Creamos el objeto respuesta para gestionar errores
            //Editamos la moneda devuelta por la vista
            Respuesta respuesta = Func_Monedas.editarMoneda(moneda);

            //Creamos un tipo respuesta y le asignamos el valor
            //Que haya devuelto la Respuesta de la consulta
            TipoRespuesta tipoRespuesta = respuesta.tipoRespuesta;

            //Gestionamos en caso de que haya errores
            if (tipoRespuesta != TipoRespuesta.OK)
            {
                return(Json(new { status = "KO" }));
            }
            //Volvemos a la acción Index
            //NO la vista, dado que esto no actualizaría los datos
            string vista = PartialView("~/Views/Monedas/_CrearExito.cshtml", moneda).RenderToString();

            return(Json(new { status = "OK", vista = vista }));
        }
        public ActionResult prueba(Informe_VM informe_VM)
        {
            int moneda_pk       = informe_VM.operaciones.Moneda_PK;
            int fechaMovimiento = informe_VM.movimientoSemana;

            Thread.Sleep(1500);

            //Creamos una lista que rellenaremos
            List <Moneda> listaMonedas = new List <Moneda>();

            Func_Monedas.recuperarListaMonedas(listaMonedas);
            informe_VM.listaMonedas = listaMonedas;

            //Creamos una lista que rellenaremos y asignaremos al ViewModel
            List <TiposOperaciones> listaTiposOperaciones = new List <TiposOperaciones>();

            Func_Monedas.recuperarListaTiposOperaciones(listaTiposOperaciones);
            informe_VM.listaTipoOperacion = listaTiposOperaciones;

            //Rellenamos la lista de operaciones en el ViewModel
            List <Operaciones> listaOperaciones = new List <Operaciones>();

            Func_Monedas.recuperarListaOperaciones(listaOperaciones, moneda_pk, fechaMovimiento);
            informe_VM.listaOperaciones = listaOperaciones;

            return(PartialView("_resultados", informe_VM));
        }
        public ActionResult Index()
        {
            //Creo listas para guardar los datos de dropdowlist
            List <Moneda>           listaMonedas        = new List <Moneda>();
            List <TiposOperaciones> listaTiposOperacion = new List <TiposOperaciones>();

            //Creo el ViewModel para poder meterle datos luego
            RegistrarOperaciones_VM registroOperaciones = new RegistrarOperaciones_VM();

            //Relleno la lista de monedas
            Respuesta respuesta = Func_Monedas.recuperarListaMonedas(listaMonedas, false);

            //Guardo las listas en el ViewModel
            List <TiposOperaciones> listaTiposOperaciones = new List <TiposOperaciones>();

            respuesta = Func_Monedas.recuperarListaTiposOperaciones(listaTiposOperaciones, false);
            registroOperaciones.tiposOperaciones = listaTiposOperaciones;
            registroOperaciones.listaMonedas     = listaMonedas;

            if (respuesta.tipoRespuesta != TipoRespuesta.OK)
            {
                return(View("Error"));
            }

            //Devuelvo la vista con el ViewModel
            return(View(registroOperaciones));
        }
        public JsonResult RecuperarTasaCambio(int id = 0)
        {
            decimal tasaDeCambio = Func_Monedas.recuperarTasasCambio(id);

            if (tasaDeCambio == 0)
            {
                return(Json(new { status = "KO" }));
            }
            return(Json(new { status = "OK", tasaCambio = 1 / tasaDeCambio }));
        }
        public JsonResult RecuperarListaMonedas()
        {
            List <Moneda> listaMonedas = new List <Moneda>();

            Func_Monedas.recuperarListaMonedas(listaMonedas);

            JsonConvert.SerializeObject(listaMonedas);

            return(Json(new { status = "OK", listaMonedas = listaMonedas }, JsonRequestBehavior.AllowGet));
        }
        public JsonResult RecuperarFechaCreacion(int id = 0, int moneda_PK = 0)
        {
            DateTime fechaCreacion = Func_Monedas.recuperarFechaCreacion(id);

            if (fechaCreacion == DateTime.MinValue)
            {
                return(Json(new { status = "KO" }));
            }

            return(Json(new { status = "OK", fechaCreacionObtenida = fechaCreacion.ToShortDateString() }, JsonRequestBehavior.AllowGet));
        }
示例#11
0
        public JsonResult RecuperarMonedaEditar(int id = 0)
        {
            //Creo y relleno la lista de monedas desde la base de datos
            Moneda    moneda    = new Moneda();
            Respuesta respuesta = Func_Monedas.recuperarMoneda(moneda, id);

            if (respuesta.tipoRespuesta != TipoRespuesta.OK)
            {
                return(Json(new { status = "KO", error = respuesta.error }));
            }
            string vistaEditar = PartialView("~/Views/Monedas/_EditarMoneda.cshtml", moneda).RenderToString();

            return(Json(new { status = "OK", vistaEditar = vistaEditar }));
        }
示例#12
0
        public JsonResult RecuperarListaMonedas()
        {
            //Creo y relleno la lista de monedas desde la base de datos
            List <Moneda> listaMonedas = new List <Moneda>();
            Respuesta     respuesta    = Func_Monedas.recuperarListaMonedas(listaMonedas);

            if (respuesta.tipoRespuesta != TipoRespuesta.OK)
            {
                return(Json(new { status = "KO", error = respuesta.error }));
            }
            string vistaLista = PartialView("~/Views/Monedas/_TablaMonedas.cshtml", listaMonedas).RenderToString();

            return(Json(new { status = "OK", vistaLista = vistaLista }));
        }
示例#13
0
        //Este Edit es la vista que se mostrará antes de editar como tal
        //Por eso no tiene [HttpPost]
        //Aquí sólo cogemos datos para mostrar
        public ActionResult Edit(int id = 0)
        {
            Moneda moneda = new Moneda();

            //Creo y relleno el objeto moneda según la moneda que haya consultado
            Respuesta respuesta = Func_Monedas.recuperarMoneda(moneda, id);

            if (respuesta.tipoRespuesta != TipoRespuesta.OK)
            {
                return(View("Error"));
            }

            //En este caso Monedas/Index
            return(View(moneda));
        }
示例#14
0
        public JsonResult EditarMoneda(Moneda moneda)
        {
            //Creamos el objeto respuesta y ejecutamos la función, crearMoneda()
            Respuesta     respuesta     = Func_Monedas.editarMoneda(moneda);
            TipoRespuesta tipoRespuesta = respuesta.tipoRespuesta;

            //Gestionamos errores
            if (tipoRespuesta != TipoRespuesta.OK)
            {
                return(Json(new { status = "KO" }));
            }
            string vista = PartialView("~/Views/_VistasInfo/_MensajeCorrecto.cshtml").RenderToString();

            return(Json(new { status = "OK", vista = vista }));
        }
示例#15
0
        public ActionResult Index()
        {
            //Creo y relleno la lista de monedas desde la base de datos
            List <Moneda> listaMonedas = new List <Moneda>();
            Respuesta     respuesta    = Func_Monedas.recuperarListaMonedas(listaMonedas);

            if (respuesta.tipoRespuesta != TipoRespuesta.OK)
            {
                return(View("Error"));
            }

            //Devuelvo la vista con el modelo que utiliza la vista correspondiente
            //En este caso Monedas/Index
            return(View(listaMonedas));
        }
示例#16
0
        public ActionResult Delete(int id = 0)
        {
            //Creamos el objeto respuesta y ejecutamos la función borrar()
            Respuesta     respuesta     = Func_Monedas.borrrarMoneda(id);
            TipoRespuesta tipoRespuesta = respuesta.tipoRespuesta;

            //Gestionamos errores
            if (tipoRespuesta != TipoRespuesta.OK)
            {
                return(View("Error"));
            }

            //Reenviamos a la acción Index
            return(RedirectToAction("Index"));
        }
        public JsonResult RecuperarOperacionCompleta(int operacion_pk = 0)
        {
            Operaciones operacion = new Operaciones();

            Respuesta respuesta = new Respuesta();

            respuesta = Func_Monedas.recuperarOperacion(operacion, operacion_pk);

            string modalOperacion = PartialView("~/Views/Informe/_DatosOperacion.cshtml", operacion).RenderToString();

            if (respuesta.tipoRespuesta != TipoRespuesta.OK)
            {
                return(Json(new { status = "KO" }));
            }
            return(Json(new { status = "OK", modalOperacion = modalOperacion }));
        }
        public ActionResult RecuperarListaMonedas2()
        {
            Informe_VM informe_VM = new Informe_VM();

            //Creamos una lista que rellenaremos
            List <Moneda> listaMonedas = new List <Moneda>();

            Func_Monedas.recuperarListaMonedas(listaMonedas);
            informe_VM.listaMonedas = listaMonedas;

            string vista = PartialView("~/Views/_VistasInfo/_DropdownMonedas.cshtml", informe_VM).RenderToString();

            return(Json(new { status = "OK", vista = vista }));

            //return PartialView("~/Views/_VistasInfo/_DropdownMonedas.cshtml", informe_VM);
        }
示例#19
0
        public JsonResult BorrarMoneda(int id = 0)
        {
            //Creamos el objeto respuesta y ejecutamos la función borrar()
            Respuesta     respuesta     = Func_Monedas.borrrarMoneda(id);
            TipoRespuesta tipoRespuesta = respuesta.tipoRespuesta;

            //Gestionamos errores
            if (tipoRespuesta != TipoRespuesta.OK)
            {
                return(Json(new { status = "KO" }));
            }

            string vistaBorrar = PartialView("~/Views/_VistasInfo/_MensajeCorrecto.cshtml").RenderToString();

            return(Json(new { status = "OK", vistaBorrar = vistaBorrar }));
        }
示例#20
0
        public JsonResult EditarModal(int id = 0, bool crear = false)
        {
            Moneda    moneda    = new Moneda();
            Respuesta respuesta = Func_Monedas.recuperarMoneda(moneda, id);

            //Gestionamos en caso de que haya errores
            if (respuesta.tipoRespuesta != TipoRespuesta.OK)
            {
                return(Json(new { status = "KO" }));
            }
            string modalOperacion;

            if (crear)
            {
                modalOperacion = PartialView("~/Views/Monedas/_ModalEditar.cshtml").RenderToString();
            }

            modalOperacion = PartialView("~/Views/Monedas/_ModalEditar.cshtml", moneda).RenderToString();

            return(Json(new { status = "OK", crear = crear, modalEditar = modalOperacion }));
        }
        // GET: Informe
        public ActionResult Index()
        {
            //Creamos el ViewModel para rellenar los datos
            Informe_VM informe_VM = new Informe_VM();

            //Creamos una lista que rellenaremos
            List <Moneda> listaMonedas = new List <Moneda>();
            Respuesta     respuesta    = Func_Monedas.recuperarListaMonedas(listaMonedas);

            //Asignamos la lista al ViewModel
            informe_VM.listaMonedas = listaMonedas;

            //Creamos una lista que rellenaremos y asignaremos al ViewModel
            List <TiposOperaciones> listaTiposOperaciones = new List <TiposOperaciones>();

            respuesta = Func_Monedas.recuperarListaTiposOperaciones(listaTiposOperaciones);
            informe_VM.listaTipoOperacion = listaTiposOperaciones;

            //Rellenamos la lista de operaciones en el ViewModel
            List <Operaciones> listaOperaciones = new List <Operaciones>();

            respuesta = Func_Monedas.recuperarListaOperaciones(listaOperaciones);
            informe_VM.listaOperaciones = listaOperaciones;

            List <SelectListItem> listaMovimientos = new List <SelectListItem>();

            respuesta = Func_Monedas.recuperarListaMovimientos(listaMovimientos);
            informe_VM.listaMovimientos = listaMovimientos;

            if (respuesta.tipoRespuesta != TipoRespuesta.OK)
            {
                return(View("Error"));
            }

            //Enviamos el ViewModel a la vista con los datos necesarios
            return(View(informe_VM));
        }
        public ActionResult Index(Informe_VM informe_VM)
        {
            int moneda_pk       = informe_VM.operaciones.Moneda_PK;
            int fechaMovimiento = informe_VM.movimientoSemana;

            //Creamos una lista que rellenaremos
            List <Moneda> listaMonedas = new List <Moneda>();
            Respuesta     respuesta    = Func_Monedas.recuperarListaMonedas(listaMonedas);

            //Asignamos la lista al ViewModel
            informe_VM.listaMonedas = listaMonedas;

            //Creamos una lista que rellenaremos y asignaremos al ViewModel
            List <TiposOperaciones> listaTiposOperaciones = new List <TiposOperaciones>();

            respuesta = Func_Monedas.recuperarListaTiposOperaciones(listaTiposOperaciones);
            informe_VM.listaTipoOperacion = listaTiposOperaciones;

            //Rellenamos la lista de operaciones en el ViewModel
            List <Operaciones> listaOperaciones = new List <Operaciones>();

            respuesta = Func_Monedas.recuperarListaOperaciones(listaOperaciones, moneda_pk, fechaMovimiento);
            informe_VM.listaOperaciones = listaOperaciones;

            List <SelectListItem> listaMovimientos = new List <SelectListItem>();

            respuesta = Func_Monedas.recuperarListaMovimientos(listaMovimientos);
            informe_VM.listaMovimientos = listaMovimientos;

            string    boton = Request.Form["btn"];
            DataTable datos = new DataTable();

            if (boton == "Exportar")
            {
                Func_Monedas.recuperarDatosExcel(datos, moneda_pk, fechaMovimiento);

                using (ExcelPackage excel = new ExcelPackage())
                {
                    //Creamos una hoja
                    ExcelWorksheet worksheet = excel.Workbook.Worksheets.Add("Hoja 1");

                    //Cargamos la lista en la hoja de excel
                    worksheet.Cells["A1"].LoadFromDataTable(datos, true);

                    //Creamos un rango
                    //Parámetros: 1a fila, 1a columna, última fila, última columna
                    ExcelRange range = worksheet.Cells[1, 1, worksheet.Dimension.End.Row, worksheet.Dimension.End.Column];

                    //Añadimos una tabla con el rango
                    ExcelTable tab = worksheet.Tables.Add(range, "tabla");

                    //Formateamos la tabla
                    tab.TableStyle = TableStyles.Medium2;

                    //Le damos espacio entre columnas
                    worksheet.Cells.AutoFitColumns();

                    //Creo un memorystream
                    using (var memoryStream = new MemoryStream())
                    {
                        //Tipo de contenido del stream. XMLS en este caso
                        Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
                        //Cabezera del archivo
                        Response.AddHeader("content-disposition", "attachment; filename= informe.xlsx");
                        //Guardamos el documento como memory stream
                        excel.SaveAs(memoryStream);
                        //Escribimos el stream en la respuesta del navegador
                        memoryStream.WriteTo(Response.OutputStream);
                        //Vaciamos y eliminamos la respuesta por seguridad
                        Response.Flush();
                        Response.End();
                    }
                }

                if (respuesta.tipoRespuesta != TipoRespuesta.OK)
                {
                    return(View("Error"));
                }
            }
            //return View("_resultados");
            return(View(informe_VM));
        }