Пример #1
0
        public Cotizacion FindCotizacionRCbyID(int cotizacionID)
        {
            double     maxVaorUSD = Convert.ToDouble(_catalogoRepository.GetGlobalParam((int)globalParam.MaxPagoVolRC));
            Cotizacion cot        = _cotizacionRepository.FindCotizacionRC(cotizacionID);

            //Valor maximo para la cobertura (24 mil USD)
            cot.bk_te_CotizacionRCActInm.MaxPagoVoluntarioUrgenciaMedica = cot.MonedaID == 1 ? maxVaorUSD * cot.TipoCambio.Value : maxVaorUSD;

            //Deducibles
            if (cot.bk_te_CotizacionDeducible != null)
            {
                CotizacionDeducible cotDeduc;

                cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.SubLineaNegocioID == 9).FirstOrDefault();
                cot.bk_te_CotizacionRCActInm.DeducibleValorID     = cotDeduc.DeducibleValorID;
                cot.bk_te_CotizacionRCActInm.DeducibleUnidadID    = cotDeduc.UnidadDeducibleID;
                cot.bk_te_CotizacionRCActInm.DeducibleAplicaID    = cotDeduc.DeducibleAplicaID;
                cot.bk_te_CotizacionRCActInm.DeducibleValorIDMin  = cotDeduc.DeducibleValorIDMinimo;
                cot.bk_te_CotizacionRCActInm.DeducibleUnidadIDMin = cotDeduc.UnidadDeducibleIDMinimo;

                cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.SubLineaNegocioID == 30).FirstOrDefault();
                cot.bk_te_CotizacionRCActInm.ArrendatarioDeducibleValorID     = cotDeduc.DeducibleValorID;
                cot.bk_te_CotizacionRCActInm.ArrendatarioDeducibleUnidadID    = cotDeduc.UnidadDeducibleID;
                cot.bk_te_CotizacionRCActInm.ArrendatarioDeducibleAplicaID    = cotDeduc.DeducibleAplicaID;
                cot.bk_te_CotizacionRCActInm.ArrendatarioDeducibleValorIDMin  = cotDeduc.DeducibleValorIDMinimo;
                cot.bk_te_CotizacionRCActInm.ArrendatarioDeducibleUnidadIDMin = cotDeduc.UnidadDeducibleIDMinimo;

                cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.SubLineaNegocioID == 31).FirstOrDefault();
                cot.bk_te_CotizacionRCActInm.BienesDeducibleValorID     = cotDeduc.DeducibleValorID;
                cot.bk_te_CotizacionRCActInm.BienesDeducibleUnidadID    = cotDeduc.UnidadDeducibleID;
                cot.bk_te_CotizacionRCActInm.BienesDeducibleAplicaID    = cotDeduc.DeducibleAplicaID;
                cot.bk_te_CotizacionRCActInm.BienesDeducibleValorIDMin  = cotDeduc.DeducibleValorIDMinimo;
                cot.bk_te_CotizacionRCActInm.BienesDeducibleUnidadIDMin = cotDeduc.UnidadDeducibleIDMinimo;

                switch (cot.bk_te_CotizacionRCActInm.RCActInmCruzadaID)
                {
                case 1: cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.TarifaID == 24).FirstOrDefault(); break;

                case 2: cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.TarifaID == 25).FirstOrDefault(); break;

                case 3: cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.TarifaID == 26).FirstOrDefault(); break;

                case 4: cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.TarifaID == 27).FirstOrDefault(); break;
                }

                cot.bk_te_CotizacionRCActInm.CruzadaDeducibleValorID     = cotDeduc.DeducibleValorID;
                cot.bk_te_CotizacionRCActInm.CruzadaDeducibleUnidadID    = cotDeduc.UnidadDeducibleID;
                cot.bk_te_CotizacionRCActInm.CruzadaDeducibleAplicaID    = cotDeduc.DeducibleAplicaID;
                cot.bk_te_CotizacionRCActInm.CruzadaDeducibleValorIDMin  = cotDeduc.DeducibleValorIDMinimo;
                cot.bk_te_CotizacionRCActInm.CruzadaDeducibleUnidadIDMin = cotDeduc.UnidadDeducibleIDMinimo;

                cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.SubLineaNegocioID == 32).FirstOrDefault();
                cot.bk_te_CotizacionRCActInm.ContaminacionDeducibleValorID     = cotDeduc.DeducibleValorID;
                cot.bk_te_CotizacionRCActInm.ContaminacionDeducibleUnidadID    = cotDeduc.UnidadDeducibleID;
                cot.bk_te_CotizacionRCActInm.ContaminacionDeducibleAplicaID    = cotDeduc.DeducibleAplicaID;
                cot.bk_te_CotizacionRCActInm.ContaminacionDeducibleValorIDMin  = cotDeduc.DeducibleValorIDMinimo;
                cot.bk_te_CotizacionRCActInm.ContaminacionDeducibleUnidadIDMin = cotDeduc.UnidadDeducibleIDMinimo;

                cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.SubLineaNegocioID == 33).FirstOrDefault();
                cot.bk_te_CotizacionRCActInm.AsumidaDeducibleValorID     = cotDeduc.DeducibleValorID;
                cot.bk_te_CotizacionRCActInm.AsumidaDeducibleUnidadID    = cotDeduc.UnidadDeducibleID;
                cot.bk_te_CotizacionRCActInm.AsumidaDeducibleAplicaID    = cotDeduc.DeducibleAplicaID;
                cot.bk_te_CotizacionRCActInm.AsumidaDeducibleValorIDMin  = cotDeduc.DeducibleValorIDMinimo;
                cot.bk_te_CotizacionRCActInm.AsumidaDeducibleUnidadIDMin = cotDeduc.UnidadDeducibleIDMinimo;

                cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.SubLineaNegocioID == 34).FirstOrDefault();
                cot.bk_te_CotizacionRCActInm.ContIndependienteDeducibleValorID     = cotDeduc.DeducibleValorID;
                cot.bk_te_CotizacionRCActInm.ContIndependienteDeducibleUnidadID    = cotDeduc.UnidadDeducibleID;
                cot.bk_te_CotizacionRCActInm.ContIndependienteDeducibleAplicaID    = cotDeduc.DeducibleAplicaID;
                cot.bk_te_CotizacionRCActInm.ContIndependienteDeducibleValorIDMin  = cotDeduc.DeducibleValorIDMinimo;
                cot.bk_te_CotizacionRCActInm.ContIndependienteDeducibleUnidadIDMin = cotDeduc.UnidadDeducibleIDMinimo;

                //Productos en Mexico
                if (cot.bk_te_CotizacionRCTrabajoTerm != null)
                {
                    cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.TarifaID == 28).FirstOrDefault();
                    cot.bk_te_CotizacionRCTrabajoTerm.DeducibleValorID     = cotDeduc.DeducibleValorID;
                    cot.bk_te_CotizacionRCTrabajoTerm.DeducibleUnidadID    = cotDeduc.UnidadDeducibleID;
                    cot.bk_te_CotizacionRCTrabajoTerm.DeducibleAplicaID    = cotDeduc.DeducibleAplicaID;
                    cot.bk_te_CotizacionRCTrabajoTerm.DeducibleValorIDMin  = cotDeduc.DeducibleValorIDMinimo;
                    cot.bk_te_CotizacionRCTrabajoTerm.DeducibleUnidadIDMin = cotDeduc.UnidadDeducibleIDMinimo;

                    cotDeduc = cot.bk_te_CotizacionDeducible.Where(x => x.TarifaID == 29).FirstOrDefault();
                    cot.bk_te_CotizacionRCTrabajoTerm.UnionMezclaDeducibleValorID     = cotDeduc.DeducibleValorID;
                    cot.bk_te_CotizacionRCTrabajoTerm.UnionMezclaDeducibleUnidadID    = cotDeduc.UnidadDeducibleID;
                    cot.bk_te_CotizacionRCTrabajoTerm.UnionMezclaDeducibleAplicaID    = cotDeduc.DeducibleAplicaID;
                    cot.bk_te_CotizacionRCTrabajoTerm.UnionMezclaDeducibleValorIDMin  = cotDeduc.DeducibleValorIDMinimo;
                    cot.bk_te_CotizacionRCTrabajoTerm.UnionMezclaDeducibleUnidadIDMin = cotDeduc.UnidadDeducibleIDMinimo;
                }
            }

            return(cot);
        }