public ActionResult UploadImagen(CatFierroModels Fierro)
        {
            try
            {
                if (Token.IsTokenValid())
                {
                    HttpPostedFileBase bannerImage = Request.Files[0] as HttpPostedFileBase;

                    MemoryStream ms = new MemoryStream();
                    bannerImage.InputStream.CopyTo(ms);
                    bannerImage.InputStream.Position = ms.Position = 0;
                    Stream s2 = ms;

                    if (!string.IsNullOrEmpty(bannerImage.FileName))
                    {
                        if (bannerImage != null && bannerImage.ContentLength > 0)
                        {
                            Stream s = bannerImage.InputStream;

                            if (Path.GetExtension(bannerImage.FileName).ToLower() == ".heic")
                            {
                                Image  img   = (Image)Auxiliar.ProcessFile(s);
                                Bitmap image = new Bitmap(ComprimirImagen.VaryQualityLevel((Image)img.Clone(), 35L));
                                Fierro.ImgFierro = image.ToBase64String(ImageFormat.Jpeg);
                            }
                            else
                            {
                                Bitmap img = new Bitmap(s);
                                Fierro.ImgFierro = img.ToBase64String(img.RawFormat);
                            }
                        }
                    }
                    else
                    {
                        ModelState.AddModelError(string.Empty, "Cargar imagen Fierro");
                    }
                    CatFierro_Datos FierroDatos = new CatFierro_Datos();
                    Fierro.Conexion = Conexion;
                    Fierro.Opcion   = 1;
                    Fierro.Usuario  = User.Identity.Name;

                    Fierro = FierroDatos.AbcCatFierro(Fierro);
                    if (!string.IsNullOrEmpty(Fierro.IDFierro))
                    {
                        if (!string.IsNullOrEmpty(bannerImage.FileName))
                        {
                            string baseDir       = Server.MapPath("~/Imagenes/Fierro/");
                            string fileExtension = Path.GetExtension(bannerImage.FileName);
                            fileExtension = fileExtension == (".heic") ? ".png" : fileExtension;

                            string fileName = Fierro.IDFierro + fileExtension;
                            Bitmap IMG3     = null;


                            if (Path.GetExtension(bannerImage.FileName) == ".heic")
                            {
                                Image  img   = (Image)Auxiliar.ProcessFile(s2);
                                Bitmap image = new Bitmap(ComprimirImagen.VaryQualityLevel((Image)img.Clone(), 35L));
                                IMG3 = ComprimirImagen.SaveJpeg(baseDir + fileName, image, 50, true);
                            }
                            else
                            {
                                Image Img2 = new Bitmap(s2);
                                IMG3 = ComprimirImagen.SaveJpeg(baseDir + fileName, Img2, 50, true);
                            }

                            Fierro.ImgFierro = IMG3.ToBase64String(ImageFormat.Jpeg);

                            Fierro.NombreArchivo = fileName;
                            Fierro = FierroDatos.ActualizarImagen(Fierro);
                            if (Fierro.Completado == true)
                            {
                                if (!string.IsNullOrEmpty(Fierro.Id_servicio))
                                {
                                    TempData["typemessage"] = "1";
                                    TempData["message"]     = "El fierro se registro correctamente a la compra.";
                                    Token.ResetToken();
                                    return(RedirectToAction("DocumentosCompra", "Compra", new { Id_1 = Fierro.Id_servicio }));
                                }
                                else
                                {
                                    TempData["typemessage"] = "1";
                                    TempData["message"]     = "Los datos se guardaron correctamente.";
                                    Token.ResetToken();
                                    return(RedirectToAction("Index"));
                                }
                            }
                            else
                            {
                                if (!string.IsNullOrEmpty(Fierro.Id_servicio))
                                {
                                    TempData["typemessage"] = "2";
                                    TempData["message"]     = "Ocurrio un error al intentar guardar la imagen de fierro. Intente más tarde.";
                                    return(RedirectToAction("DocumentosCompra", "Compra", new { Id_1 = Fierro.Id_servicio }));
                                }
                                else
                                {
                                    TempData["typemessage"] = "2";
                                    TempData["message"]     = "Ocurrio un error al intentar guardar los datos. Intente más tarde.";
                                    return(View(Fierro));
                                }
                            }
                        }
                    }
                    else
                    {
                        if (!string.IsNullOrEmpty(Fierro.Id_servicio))
                        {
                            TempData["typemessage"] = "2";
                            TempData["message"]     = "Ocurrio un error al intentar guardar la imagen del fierro. Intente más tarde.";
                            return(RedirectToAction("DocumentosCompra", "Compra", new { Id_1 = Fierro.Id_servicio }));
                        }
                        else
                        {
                            TempData["typemessage"] = "2";
                            TempData["message"]     = "Ocurrio un error al intentar guardar los datos. Intente más tarde.";
                            return(View(Fierro));
                        }
                    }
                }
                else
                {
                    if (!string.IsNullOrEmpty(Fierro.Id_servicio))
                    {
                        TempData["typemessage"] = "2";
                        TempData["message"]     = "Verifique sus datos";
                        return(RedirectToAction("DocumentosCompra", "Compra", new { Id_1 = Fierro.Id_servicio }));
                    }
                    else
                    {
                        TempData["typemessage"] = "2";
                        TempData["message"]     = "Verifique sus datos";
                        return(View(Fierro));
                    }
                }
                return(View(Fierro));
            }
            catch (Exception ex)
            {
                if (!string.IsNullOrEmpty(Fierro.Id_servicio))
                {
                    TempData["typemessage"] = "2";
                    TempData["message"]     = "Verifique sus datos";
                    return(RedirectToAction("DocumentosCompra", "Compra", new { Id_1 = Fierro.Id_servicio }));
                }
                else
                {
                    TempData["typemessage"] = "2";
                    TempData["message"]     = "Verifique sus datos";
                    return(View(Fierro));
                }
            }
        }
        public ActionResult Create(MovimientosCajaChicaModels model)
        {
            _CajaChica_Datos datos = new _CajaChica_Datos();

            try
            {
                if (Token.IsTokenValid())
                {
                    if (ModelState.IsValid)
                    {
                        HttpPostedFileBase bannerImage = Request.Files[0] as HttpPostedFileBase;
                        if (bannerImage != null && bannerImage.ContentLength > 0)
                        {
                            Stream s = bannerImage.InputStream;
                            if (Path.GetExtension(bannerImage.FileName).ToLower() == ".heic")
                            {
                                Image  img   = (Image)Auxiliar.ProcessFile(s);
                                Bitmap image = new Bitmap(ComprimirImagen.VaryQualityLevel((Image)img.Clone(), 35L));
                                model.FotoCheque = image.ToBase64String(ImageFormat.Jpeg);
                            }
                            else
                            {
                                Image  img  = new Bitmap(s);
                                Bitmap IMG3 = ComprimirImagen.SaveJpeg("", img, 50, false);
                                model.FotoCheque = IMG3.ToBase64String(img.RawFormat);
                            }
                        }
                        int Resultado = datos.GuardarMovimiento(model, User.Identity.Name);
                        if (Resultado == 1)
                        {
                            TempData["typemessage"] = "1";
                            TempData["message"]     = "Datos guardados correctamente.";
                            Token.ResetToken();
                            return(RedirectToAction("Index"));
                        }
                        else
                        {
                            string mensajeError = "Ocurrió un error al intentar guardar los datos. Intente más tarde.";
                            TempData["typemessage"] = "2";
                            TempData["message"]     = mensajeError;
                            ViewBag.ListaConceptos  = datos.LlenarComboConceptos(false);
                            ViewBag.ListaFormasPago = datos.LlenarComboFormaPagos(false);
                            return(View(model));
                        }
                    }
                    else
                    {
                        ViewBag.ListaConceptos  = datos.LlenarComboConceptos(false);
                        ViewBag.ListaFormasPago = datos.LlenarComboFormaPagos(false);
                        return(View(model));
                    }
                }
                else
                {
                    return(RedirectToAction("Index"));
                }
            }
            catch (Exception)
            {
                TempData["typemessage"] = "2";
                TempData["message"]     = "Error al procesar los datos";
                ViewBag.ListaConceptos  = datos.LlenarComboConceptos(false);
                ViewBag.ListaFormasPago = datos.LlenarComboFormaPagos(false);
                return(View(model));
            }
        }