protected void Page_Load(object sender, EventArgs e)
        {
            Controller_Tarifa controlTar = new Controller_Tarifa();

            if (controlTar.ValorUF() == 0)
            {
                string               FechaHoy   = DateTime.Now.ToString("dd-MM-yyyy");
                string               apiUrl     = "http://www.mindicador.cl/api";
                string               jsonString = "{}";
                WebClient            http       = new WebClient();
                JavaScriptSerializer jss        = new JavaScriptSerializer();

                http.Headers.Add(HttpRequestHeader.Accept, "application/json");
                jsonString = http.DownloadString(apiUrl);
                var indicatorsObject = jss.Deserialize <Dictionary <string, object> >(jsonString);

                Dictionary <string, Dictionary <string, string> > dailyIndicators = new Dictionary <string, Dictionary <string, string> >();

                int i = 0;
                foreach (var key in indicatorsObject.Keys.ToArray())
                {
                    var item = indicatorsObject[key];

                    if (item.GetType().FullName.Contains("System.Collections.Generic.Dictionary"))
                    {
                        Dictionary <string, object> itemObject    = (Dictionary <string, object>)item;
                        Dictionary <string, string> indicatorProp = new Dictionary <string, string>();

                        int j = 0;
                        foreach (var key2 in itemObject.Keys.ToArray())
                        {
                            indicatorProp.Add(key2, itemObject[key2].ToString());
                            j++;
                        }

                        dailyIndicators.Add(key, indicatorProp);
                    }
                    i++;
                }

                if (controlTar.IngresoValorUfDelDia(Convert.ToDouble(dailyIndicators["uf"]["valor"])))
                {
                    Response.Redirect("ModuloUsuario/View/Login.aspx");
                }
                else
                {
                    Response.Redirect("index.aspx");
                }
            }
            else
            {
                Response.Redirect("ModuloUsuario/View/Login.aspx");
            }
        }
        public void CargarBarnizTerminaciones()
        {
            Controller_Tarifa    preControl = new Controller_Tarifa();
            List <Terminaciones> lista      = preControl.Listar_Terminaciones();

            ddlBarnizUV.DataSource     = lista.Where(o => o.TipoTerm == "Barniz UV").ToList();
            ddlBarnizUV.DataTextField  = "NombreTerminacion";
            ddlBarnizUV.DataValueField = "NombreTerminacion";
            ddlBarnizUV.DataBind();
            ddlBarnizUV.Items.Insert(0, new ListItem("Seleccione Barniz UV...", "0"));
            ddlLaminado.DataSource     = lista.Where(o => o.TipoTerm == "Laminado").ToList();
            ddlLaminado.DataTextField  = "NombreTerminacion";
            ddlLaminado.DataValueField = "NombreTerminacion";
            ddlLaminado.DataBind();
            ddlLaminado.Items.Insert(0, new ListItem("Seleccione Laminado...", "0"));
            ddlQuintocolor.DataSource     = lista.Where(o => o.TipoTerm == "Quinto Color").ToList();
            ddlQuintocolor.DataTextField  = "NombreTerminacion";
            ddlQuintocolor.DataValueField = "NombreTerminacion";
            ddlQuintocolor.DataBind();
            ddlQuintocolor.Items.Insert(0, new ListItem("Seleccione Quinto Color...", "0"));
            ddlEmbolsado.DataSource     = lista.Where(o => o.TipoTerm == "Embolsado").ToList();
            ddlEmbolsado.DataTextField  = "NombreTerminacion";
            ddlEmbolsado.DataValueField = "NombreTerminacion";
            ddlEmbolsado.DataBind();
            ddlEmbolsado.Items.Insert(0, new ListItem("Seleccione Alzado ", "0"));
            ddlAlzado.DataSource     = lista.Where(o => o.TipoTerm == "Alzado").ToList();
            ddlAlzado.DataTextField  = "NombreTerminacion";
            ddlAlzado.DataValueField = "NombreTerminacion";
            ddlAlzado.DataBind();
            ddlAlzado.Items.Insert(0, new ListItem("Seleccione Alzado ", "0"));
            ddlInsercionManual.DataSource     = lista.Where(o => o.TipoTerm == "Inserción manual").ToList();
            ddlInsercionManual.DataTextField  = "NombreTerminacion";
            ddlInsercionManual.DataValueField = "NombreTerminacion";
            ddlInsercionManual.DataBind();
            ddlInsercionManual.Items.Insert(0, new ListItem("Seleccione Inserción manual ", "0"));
            ddlFajado.DataSource     = lista.Where(o => o.TipoTerm == "Fajado").ToList();
            ddlFajado.DataTextField  = "NombreTerminacion";
            ddlFajado.DataValueField = "NombreTerminacion";
            ddlFajado.DataBind();
            ddlFajado.Items.Insert(0, new ListItem("Seleccione Fajado ", "0"));
            ddlAdhesivo.DataSource     = lista.Where(o => o.TipoTerm == "Adhesivo").ToList();
            ddlAdhesivo.DataTextField  = "NombreTerminacion";
            ddlAdhesivo.DataValueField = "NombreTerminacion";
            ddlAdhesivo.DataBind();
            ddlAdhesivo.Items.Insert(0, new ListItem("Seleccione Adhesivo ", "0"));
            ddlPegado.DataSource     = lista.Where(o => o.TipoTerm == "Pegado").ToList();
            ddlPegado.DataTextField  = "NombreTerminacion";
            ddlPegado.DataValueField = "NombreTerminacion";
            ddlPegado.DataBind();
            ddlPegado.Items.Insert(0, new ListItem("Seleccione Pegado ", "0"));
        }
        public static string[] GuardarPresupuesto(int PagInterior, int Pagtapa, int EntradasxFormato, string Formato, string GramajeInt1, string GramajeTapa1, string Papelinterior, string PapelTapa, string Encuadernacion,
                                                  string Tiraje, string QuintoColor, string UV, string Laminado, string BarnizAcuosoTapa,
                                                  string NombrePres, string usuario, double ValorUF, string Embolsado, string AlzadoElementoPlano, string EmbolsadoMailaRev, string DesembolsadoSimple,
                                                  string Alzado, string InsercionManual, string Pegado, string Fajado, string Adhesivo, string SuministroCajas, string InsercionElemCajaSellado, string Enzunchado, string PegadoSticker)
        {
            Controller_Cotizador controlpres = new Controller_Cotizador();
            //string Tabla1 ="";
            string            PrecioTotal1 = "";
            string            PrecioUnit1  = "";
            string            MaquinaInt   = "";
            string            MaquinaTap   = "";
            Controller_Tarifa preControl   = new Controller_Tarifa();
            double            ValorUFs     = preControl.ValorUF();

            if (Tiraje != "")
            {
                string[] PrecioPrensa1 = CreacionTablaDetalle(CalcularPreciosPrensa(PagInterior, Pagtapa, EntradasxFormato, Formato, GramajeInt1, GramajeTapa1, Papelinterior, PapelTapa, Encuadernacion, Tiraje, QuintoColor, UV,
                                                                                    Laminado, BarnizAcuosoTapa, ValorUFs, Embolsado, AlzadoElementoPlano, EmbolsadoMailaRev, DesembolsadoSimple, Alzado, InsercionManual, Pegado, Fajado, Adhesivo, SuministroCajas, InsercionElemCajaSellado,
                                                                                    Enzunchado, PegadoSticker), Tiraje);

                PrecioTotal1 = PrecioPrensa1[1];
                PrecioUnit1  = PrecioPrensa1[2];
                MaquinaInt   = PrecioPrensa1[3];
                MaquinaTap   = PrecioPrensa1[3];
            }

            int idpres = controlpres.GuardarPresupuesto(NombrePres, PagInterior, Pagtapa, Formato, GramajeInt1.Replace(" grs", ""), GramajeTapa1.Replace(" grs", ""), Papelinterior, PapelTapa, Encuadernacion, MaquinaInt,
                                                        MaquinaTap, usuario, "Copesa", Tiraje, PrecioTotal1, PrecioUnit1, BarnizAcuosoTapa, QuintoColor, UV, Laminado, Embolsado);

            if (idpres > 0)
            {
                return(new[] { "OK", idpres.ToString() });
            }
            else
            {
                return(new[] { "Error al crear el registro, intentelo mas tarde" });
            }
        }
        public static string[] PrePrensa(int PagInterior, int Pagtapa, int EntradasxFormato, string Formato, string GramajeInt1, string GramajeTapa1, string Papelinterior, string PapelTapa, string Encuadernacion,
                                         string Tiraje, string QuintoColor, string UV, string Laminado, string BarnizAcuosoTapa, string ValorUF, string Embolsado, string AlzadoElementoPlano, string EmbolsadoMailaRev, string DesembolsadoSimple,
                                         string Alzado, string InsercionManual, string Pegado, string Fajado, string Adhesivo, string SuministroCajas, string InsercionElemCajaSellado, string Enzunchado, string PegadoSticker)
        {
            string            Tabla1       = "";
            string            PrecioTotal1 = "";
            string            PrecioUnit1  = "";
            Controller_Tarifa preControl   = new Controller_Tarifa();
            double            ValorUFs     = preControl.ValorUF();

            if (Tiraje != "")
            {
                string[] Detalle1 = CreacionTablaDetalle(CalcularPreciosPrensa(PagInterior, Pagtapa, EntradasxFormato, Formato, GramajeInt1, GramajeTapa1, Papelinterior, PapelTapa, Encuadernacion, Tiraje, QuintoColor, UV,
                                                                               Laminado, BarnizAcuosoTapa, ValorUFs, Embolsado, AlzadoElementoPlano, EmbolsadoMailaRev, DesembolsadoSimple, Alzado, InsercionManual, Pegado, Fajado, Adhesivo, SuministroCajas, InsercionElemCajaSellado,
                                                                               Enzunchado, PegadoSticker), Tiraje);
                Tabla1       = Detalle1[0];
                PrecioTotal1 = Math.Ceiling(Convert.ToDouble(Detalle1[1])).ToString("N0");
                PrecioUnit1  = Detalle1[2];
            }


            return(new[] { Tabla1, PrecioTotal1, PrecioUnit1, "" });
        }
        public void ValorUF()
        {
            Controller_Tarifa preControl = new Controller_Tarifa();

            lblCostoQ.Text = preControl.ValorUF().ToString("N2");
        }
        public static string[] CalcularPreciosPrensa(int PagInterior, int Pagtapa, int EntradasxFormato, string Formato, string GramajeInt1, string GramajeTapa1, string Papelinterior, string PapelTapa, string Encuadernacion,
                                                     string Tiraje, string QuintoColor, string UV, string Laminado, string BarnizAcuosoTapa, double ValorUF, string Embolsado, string AlzadoElementoPlano, string EmbolsadoMailaRev, string DesembolsadoSimple,
                                                     string Alzado, string InsercionManual, string Pegado, string Fajado, string Adhesivo, string SuministroCajas, string InsercionElemCajaSellado, string Enzunchado, string PegadoSticker)
        {
            string MaquinaInterior = "Rotativa";
            string MaquinaTapa     = "Plana";

            if (Tiraje != "")
            {
                Tiraje = Tiraje.Replace(".", "");
            }
            else
            {
                Tiraje = "0";
            }
            int GramajeInt = 0;

            if ("Seleccione Gramaje Papel..." != GramajeInt1 && GramajeInt1 != "")
            {
                GramajeInt = Convert.ToInt32(GramajeInt1.Replace(" grs", ""));
                if (GramajeInt >= 140)
                {
                    MaquinaInterior = "Plana";
                }
            }
            int GramajeTapa = 0;

            if ("Seleccione Gramaje Papel..." != GramajeTapa1 && GramajeTapa1 != "")
            {
                GramajeTapa = Convert.ToInt32(GramajeTapa1.Replace(" grs", ""));
            }
            if (Encuadernacion != "No")
            {
                if (Encuadernacion == "Hotmelt")
                {
                    Encuadernacion = "Hotmelt";
                }
            }
            #region EntradasxFormato
            int EntradasPag16    = 0;
            int EntradasPag12    = 0;
            int EntradasPag8     = 0;
            int EntradasPag4     = 0;
            int cantidadfaltante = 0;
            switch (EntradasxFormato)
            {
            case 16:
                EntradasPag16    = (PagInterior / 16);
                cantidadfaltante = PagInterior - (EntradasPag16 * 16);
                if (cantidadfaltante >= 8)
                {
                    EntradasPag8      = 1;
                    cantidadfaltante -= 8;
                    if (cantidadfaltante == 4)
                    {
                        EntradasPag4     = 1;
                        cantidadfaltante = 0;
                    }
                }
                else if (cantidadfaltante != 0)
                {
                    EntradasPag4     = 1;
                    cantidadfaltante = 0;
                }
                break;

            case 12:
                EntradasPag12    = (PagInterior / 12);
                cantidadfaltante = PagInterior - (EntradasPag12 * 12);
                if (cantidadfaltante >= 8)
                {
                    EntradasPag4      = 2;
                    cantidadfaltante -= 8;
                    if (cantidadfaltante == 4)
                    {
                        EntradasPag4     = 1;
                        cantidadfaltante = 0;
                    }
                }
                else if (cantidadfaltante != 0)
                {
                    EntradasPag4     = 1;
                    cantidadfaltante = 0;
                }
                break;

            case 8:
                EntradasPag8     = (PagInterior / 8);
                cantidadfaltante = PagInterior - (EntradasPag8 * 8);
                if (cantidadfaltante == 4)
                {
                    EntradasPag4     = 1;
                    cantidadfaltante = 0;
                }
                break;

            default:
                break;
            }
            #endregion
            Controller_Tarifa controlTarifa = new Controller_Tarifa();
            #region Impresion Interior Nuevo

            double CostoFijoPag16 = 0;
            double CostoFijoPag12 = 0;
            double CostoFijoPag8  = 0;
            double CostoFijoPag4  = 0;

            double CostoVariablePag16 = 0;
            double CostoVariablePag12 = 0;
            double CostoVariablePag8  = 0;
            double CostoVariablePag4  = 0;

            List <Impresion> lista        = controlTarifa.ListarImpresion(MaquinaInterior);
            string           PaginasTapas = "";
            switch (EntradasxFormato)
            {
            case 16: CostoFijoPag16 = EntradasPag16 * Math.Ceiling(lista.Where(x => (x.TipoCosto == "Fijo") && (x.Paginas == "16 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF);
                CostoFijoPag12      = EntradasPag12 * Math.Ceiling(lista.Where(x => (x.TipoCosto == "Fijo") && (x.Paginas == "12 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF);
                CostoFijoPag8       = EntradasPag8 * Math.Ceiling(lista.Where(x => (x.TipoCosto == "Fijo") && (x.Paginas == "8 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF);
                CostoFijoPag4       = EntradasPag4 * Math.Ceiling(lista.Where(x => (x.TipoCosto == "Fijo") && (x.Paginas == "4 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF);
                CostoVariablePag16  = EntradasPag16 * (Math.Ceiling(((lista.Where(x => (x.TipoCosto == "Variable") && (x.Paginas == "16 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0);
                CostoVariablePag12  = EntradasPag12 * (Math.Ceiling(((lista.Where(x => (x.TipoCosto == "Variable") && (x.Paginas == "12 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0);
                CostoVariablePag8   = EntradasPag8 * (Math.Ceiling(((lista.Where(x => (x.TipoCosto == "Variable") && (x.Paginas == "8 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0);
                CostoVariablePag4   = EntradasPag4 * (Math.Ceiling(((lista.Where(x => (x.TipoCosto == "Variable") && (x.Paginas == "4 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0);
                PaginasTapas        = "******";
                break;

            case 12: CostoFijoPag12 = EntradasPag12 * Math.Ceiling(lista.Where(x => (x.TipoCosto == "Fijo") && (x.Paginas == "12 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF);
                CostoFijoPag8       = EntradasPag8 * Math.Ceiling(lista.Where(x => (x.TipoCosto == "Fijo") && (x.Paginas == "8 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF);
                CostoFijoPag4       = EntradasPag4 * Math.Ceiling(lista.Where(x => (x.TipoCosto == "Fijo") && (x.Paginas == "4 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF);
                CostoVariablePag12  = EntradasPag12 * (Math.Ceiling(((lista.Where(x => (x.TipoCosto == "Variable") && (x.Paginas == "12 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0);
                CostoVariablePag8   = EntradasPag8 * (Math.Ceiling(((lista.Where(x => (x.TipoCosto == "Variable") && (x.Paginas == "8 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0);
                CostoVariablePag4   = EntradasPag4 * (Math.Ceiling(((lista.Where(x => (x.TipoCosto == "Variable") && (x.Paginas == "4 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0);
                PaginasTapas        = "******";
                break;

            case 8: CostoFijoPag8 = EntradasPag8 * Math.Ceiling(lista.Where(x => (x.TipoCosto == "Fijo") && (x.Paginas == "8 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF);
                CostoFijoPag4     = EntradasPag4 * Math.Ceiling(lista.Where(x => (x.TipoCosto == "Fijo") && (x.Paginas == "4 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF);
                CostoVariablePag8 = EntradasPag8 * (Math.Ceiling(((lista.Where(x => (x.TipoCosto == "Variable") && (x.Paginas == "8 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0);
                CostoVariablePag4 = EntradasPag4 * (Math.Ceiling(((lista.Where(x => (x.TipoCosto == "Variable") && (x.Paginas == "4 Paginas")).Select(x => x.Costo).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0);
                PaginasTapas      = "******";
                break;

            default: break;
            }

            #endregion
            #region Barniz Acuoso int
            //int TarifaCostoFijoBarnizInt = 0;
            //double TarifaCostoVariableBarnizAcuosoInt = Convert.ToDouble(controlTarifa.TarifaCostoBarnizAcuoso(GramajeInt, Formato, MaquinaInterior, Empresa));
            //int CostoFijo16Barniz = 0;
            //int CostoFijo12Barniz = 0;
            //int CostoFijo8Barniz = 0;
            //double CostoVari16Barniz = 0;
            //double CostoVari12Barniz = 0;
            //double CostoVari8Barniz = 0;
            //double CostoVari4Barniz = 0;
            //if (BarnizAcuosoInt != "No")
            //{
            //    TarifaCostoFijoBarnizInt = Convert.ToInt32(controlTarifa.TarifaCostoImpresion("Barniz Acuoso Parejo", "", MaquinaInterior, "Fijo", Empresa));
            //    switch (EntradasxFormato)
            //    {
            //        case 16:
            //            CostoFijo16Barniz = TarifaCostoFijoBarnizInt;
            //            CostoVari16Barniz = TarifaCostoVariableBarnizAcuosoInt;
            //            CostoVari8Barniz = (Math.Ceiling((TarifaCostoVariableBarnizAcuosoInt * (Convert.ToDouble(8) / Convert.ToDouble(16))) * 100) / 100);
            //            CostoVari4Barniz = (Math.Ceiling((TarifaCostoVariableBarnizAcuosoInt * (Convert.ToDouble(4) / Convert.ToDouble(16))) * 100) / 100);
            //            break;
            //        case 12:
            //            CostoFijo12Barniz = TarifaCostoFijoBarnizInt;
            //            CostoVari12Barniz = TarifaCostoVariableBarnizAcuosoInt;
            //            CostoVari8Barniz = (Math.Ceiling((TarifaCostoVariableBarnizAcuosoInt * (Convert.ToDouble(8) / Convert.ToDouble(12))) * 100) / 100);
            //            CostoVari4Barniz = (Math.Ceiling((TarifaCostoVariableBarnizAcuosoInt * (Convert.ToDouble(4) / Convert.ToDouble(12))) * 100) / 100);
            //            break;
            //        case 8:
            //            CostoFijo8Barniz = TarifaCostoFijoBarnizInt;
            //            CostoVari8Barniz = TarifaCostoVariableBarnizAcuosoInt;
            //            CostoVari4Barniz = (Math.Ceiling((TarifaCostoVariableBarnizAcuosoInt * (Convert.ToDouble(4) / Convert.ToDouble(8))) * 100) / 100);
            //            break;
            //    }
            //}
            #endregion
            #region Tapas Nuevo
            int    EntradasTapa          = 0;
            double ImpresionTapaFijo     = 0;
            double ImpresionTapaVariable = 0;
            int    EntradasQuintoColor   = 0;
            double QuintoColorFijo       = 0;
            double QuintoColorVari       = 0;
            int    EntradasPlizadoTapas  = 0;
            double PlizadoTapaFijo       = 0;
            double PlizadoTapaVari       = 0;

            List <Terminaciones> listaCostoTerm = controlTarifa.Listar_Terminaciones();
            if (Pagtapa > 0)
            {
                EntradasTapa = 1;


                List <Impresion> lista2 = controlTarifa.ListarImpresion(MaquinaTapa).Where(x => x.Paginas == PaginasTapas).ToList();
                ImpresionTapaFijo     = Math.Ceiling(lista2.Where(x => x.TipoCosto == "Fijo").Select(x => x.Costo).FirstOrDefault() * ValorUF);
                ImpresionTapaVariable = (Math.Ceiling(((lista2.Where(x => x.TipoCosto == "Variable").Select(x => x.Costo).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0) / Pagtapa;

                if (QuintoColor != "Seleccionar")
                {
                    EntradasQuintoColor = 1;
                    QuintoColorFijo     = Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == QuintoColor).Select(x => x.CostoFijo).FirstOrDefault() * ValorUF);
                    QuintoColorVari     = (Math.Ceiling(((listaCostoTerm.Where(x => x.NombreTerminacion == QuintoColor).Select(x => x.CostoVari).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0);
                }
                if (GramajeTapa >= 300)
                {
                    EntradasPlizadoTapas = 1;
                    PlizadoTapaFijo      = listaCostoTerm.Where(x => x.NombreTerminacion == "Plizado").Select(x => x.CostoFijo).FirstOrDefault();
                    PlizadoTapaVari      = listaCostoTerm.Where(x => x.NombreTerminacion == "Plizado").Select(x => x.CostoVari).FirstOrDefault();
                }
            }
            #endregion
            #region Encuadernacion Nuevo
            double valorEncuaFijo = 0;
            double valorEncuaVari = 0;
            if (Encuadernacion != "No")
            {
                Encuadernacion ListEnc = controlTarifa.ListarEncuadernacion(Encuadernacion);
                valorEncuaFijo = Math.Ceiling(ListEnc.ValorFijoEnc * ValorUF);
                valorEncuaVari = (Math.Ceiling(((ListEnc.ValorVariEnc * ValorUF) / 1000.0) * 100.0) / 100.0);
            }
            #endregion
            #region Terminaciones Nuevas
            double BarnizUVFijo     = (UV != "Seleccionar") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == UV).Select(x => x.CostoFijo).FirstOrDefault()) : 0;
            double BarnizUVVari     = (UV != "Seleccionar") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == UV).Select(x => x.CostoVari).FirstOrDefault()) : 0;
            double EmbolsadoVari    = (Embolsado != "Seleccionar") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == Embolsado).Select(x => x.CostoVari).FirstOrDefault()) : 0;
            double LaminadoVari     = (Laminado != "Seleccionar") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == Laminado).Select(x => x.CostoVari).FirstOrDefault()) : 0;
            double BarnizAcuosoFijo = ((Pagtapa > 0) && (BarnizAcuosoTapa != "No")) ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == "Barniz Acuoso (solo tiro)").Select(x => x.CostoFijo).FirstOrDefault() * ValorUF) : 0;
            double BarnizAcuosoVari = ((Pagtapa > 0) && (BarnizAcuosoTapa != "No")) ? Math.Ceiling(((listaCostoTerm.Where(x => x.NombreTerminacion == "Barniz Acuoso (solo tiro)").Select(x => x.CostoVari).FirstOrDefault() * ValorUF) / 1000.0) * 100.0) / 100.0 : 0;


            #endregion
            #region Manualidades
            double AlzadoElementoPlanoVari = (AlzadoElementoPlano == "Si") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == "Alzados").Select(x => x.CostoFijo).FirstOrDefault()) : 0;
            double EmbolsadoMailaRevVari   = (EmbolsadoMailaRev == "Si") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == "Embolsado manual").Select(x => x.CostoFijo).FirstOrDefault()) : 0;
            double DesembolsadoSimpleVari  = (DesembolsadoSimple == "Si") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == "Desembolsado simple").Select(x => x.CostoFijo).FirstOrDefault()) : 0;
            double AlzadoVari                   = (Alzado != "Seleccione Alzado") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == Alzado).Select(x => x.CostoVari).FirstOrDefault()) : 0;
            double InsercionManualVari          = (InsercionManual != "Seleccione Inserción manual ") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == InsercionManual).Select(x => x.CostoVari).FirstOrDefault()) : 0;
            double PegadoVari                   = (Pegado != "Seleccione Pegado") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == Pegado).Select(x => x.CostoVari).FirstOrDefault()) : 0;
            double FajadoVari                   = (Fajado != "Seleccione Fajado") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == Fajado).Select(x => x.CostoVari).FirstOrDefault()) : 0;
            double PegadoStickerVari            = (PegadoSticker != "Seleccione") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == "Pegado de Sticker").Select(x => x.CostoVari).FirstOrDefault()) : 0;
            double SuministroCajasVari          = (SuministroCajas != "Seleccione") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == "Suministro de cajas").Select(x => x.CostoVari).FirstOrDefault()) : 0;             //Mal Calculado
            double InsercionElemCajaSelladoVari = (InsercionElemCajaSellado != "Seleccione") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == "Caja y sellado de caja").Select(x => x.CostoVari).FirstOrDefault()) : 0; //Mal Calculado
            double EnzunchadoVari               = (Enzunchado != "Seleccione") ? Math.Ceiling(listaCostoTerm.Where(x => x.NombreTerminacion == "Paquete manualidad").Select(x => x.CostoVari).FirstOrDefault()) : 0;                   //Mal Calculado


            #endregion
            return(new[] { EntradasPag16.ToString(), CostoFijoPag16.ToString(), CostoVariablePag16.ToString(), EntradasPag12.ToString(), CostoFijoPag12.ToString(), CostoVariablePag12.ToString(),
                           EntradasPag8.ToString(), CostoFijoPag8.ToString(), CostoVariablePag8.ToString(), EntradasPag4.ToString(), CostoFijoPag4.ToString(), CostoVariablePag4.ToString(),
                           EntradasTapa.ToString(), ImpresionTapaFijo.ToString(), ImpresionTapaVariable.ToString(), valorEncuaFijo.ToString(), valorEncuaVari.ToString(), EntradasQuintoColor.ToString(),
                           QuintoColorFijo.ToString(), QuintoColorVari.ToString(), BarnizAcuosoFijo.ToString(), BarnizAcuosoVari.ToString(), EmbolsadoVari.ToString(), LaminadoVari.ToString(),
                           BarnizUVFijo.ToString(), BarnizUVVari.ToString(), EntradasPlizadoTapas.ToString(), PlizadoTapaFijo.ToString(), PlizadoTapaVari.ToString(),
                           MaquinaInterior, MaquinaTapa, AlzadoElementoPlanoVari.ToString(), EmbolsadoMailaRevVari.ToString(), DesembolsadoSimpleVari.ToString(), AlzadoVari.ToString(),
                           InsercionManualVari.ToString(), PegadoVari.ToString(), FajadoVari.ToString(), PegadoStickerVari.ToString(), SuministroCajasVari.ToString(), InsercionElemCajaSelladoVari.ToString(),
                           EnzunchadoVari.ToString(), Encuadernacion, QuintoColor, Embolsado, Laminado, UV });
        }