public ActionResult CotizadorEnLinea(string nombre, string paterno, string materno, string email, string telefono, string medio) { try { if (!HttpContext.User.Identity.IsAuthenticated || Session["UserObj"]==null) { Logear acceso = new Logear(); var user = acceso.LoginAgenteWeb(4, "a"); string name = user.Tables["catAgentes"].Rows[0]["cNombre"].ToString(); VarProcAMC VarProcAMC = new VarProcAMC(); VarProcAMC.IniciarCarga(); Session["UserObj"] = user; Session["Periodo"] = "Periodo: " + VarProcAMC.strPeriodo; Session["UserRol"] = ""; System.Web.Security.FormsAuthentication.SetAuthCookie(name, false); } var CtExp = NuevaCotizacionExpress(); CtExp.cotizacion.nombres = nombre; CtExp.cotizacion.apellidoPaterno = paterno; CtExp.cotizacion.apellidoMaterno = materno; CtExp.cotizacion.email = email; CtExp.cotizacion.codigoNegro = medio.Length > 4 ? medio.Remove(4) : medio;//medios CtExp.Telefonos.cTel = telefono; return View("CotExpress", CtExp); } catch (Exception err) { Response.StatusCode = (int)(System.Net.HttpStatusCode.InternalServerError); LogDeErrores.RegistroErrorWeb(err, DatoUsuario.idAgente, DatoUsuario.nomAgente, DatoUsuario.sIp, DatoUsuario.sHostName); return Json("ErrInterno"); } }
public void Calculo(ref GenericoViewModel model, string Tipo) { try { model.conductores.Remove(model.conductores.FirstOrDefault(x => x.nombre == "-- Seleccione un conductor asignado --")); switch (Tipo) { case "C": /************************************************************/ if (model.vehiculos.Count == model.numVehiculos && model.conductores.Count == model.numConductores) { var logged = (DataSet)Session["UserObj"]; ClsComplemento Modi = new ClsComplemento(); VarProcAMC objVarProcAMC = new VarProcAMC(); model.periodo = VarProcAMC.strPeriodo; double curDerechoEndoso = 0; if (!string.IsNullOrEmpty(model.ModulodeTrabajo)) { model.calculos = new List<ClsCalculo>(); } //rCtz.cotizacion.CalculaCotizacion(rCtz.cotizacion, logged.Tables["catAgentes"].Rows[0]["nAgenteID"].ToString(), MnInf.ConvierteCobertura100(rCtz.cotizacion, "C"), MnInf.ConvierteTersa(rCtz.cotizacion, "C"), false); //MnInf.LlenarlvCot(FrmDetalleGeneral.objCotizacion, strOrigen, "lvCot"); if (model.calculos == null) model.calculos = new List<ClsCalculo>(); else { if (model.nQuitarPorPrima != 0) { model.calculos.Clear(); } } for (int i = 1; i < 5; ) { ClsCalculo ObjCalculo = new ClsCalculo(); int contCober = 0; int contCond = 0; int cobertura100 = VldVeh.ValidaConvierteCobertura100(ref contCober, ref contCond, model.cobertura100, model.vehiculos, model.conductores, "C"); int contTerssa = 0; int terssa = VldVeh.ValidaConvierteTerssa(ref contTerssa, model.tersa, model.vehiculos, "C"); MnInf.LlenaObjetoCalculo(CentralAgentesMvc.App_Start.CastObject.Cast<ClsCotizacion>(model), "C", ref ObjCalculo, i); if (objVarProcAMC.CalculaPrimas(ref ObjCalculo, ref curDerechoEndoso, VarProcAMC.strPeriodo, 0, "A", true, 0, 0, contCober, contTerssa, "") == true) { model.ObjCalculo = ObjCalculo; model.complemento.precioAguila = ObjCalculo.mTotal; } else { //MessageBox.Show("Error en cálculo"); //return; } model.calculos.Add(ObjCalculo); i++; } if (model.formaPago > 0) { model.ObjCalculo = model.calculos[model.formaPago - 1]; objVarProcAMC = new VarProcAMC(); model.RevisaCedeComision(CentralAgentesMvc.App_Start.CastObject.Cast<ClsCotizacion>(model), model.QuiereCederComision, model.ObjCalculo.primaNeta, "C"); model.vehiculos = model.ObjCalculo.vehiculos; } } else { if (model.vehiculos.Count != model.numVehiculos) MensajesError.ErroresCalculo.Add("No se han capturado todos los vehiculos especificados."); if (model.conductores.Count != model.numConductores) MensajesError.ErroresCalculo.Add("No se han capturado todos los conductores especificados."); } /************************************************************************/ break; case "R": break; } } catch (Exception err) { Response.StatusCode = (int)(System.Net.HttpStatusCode.InternalServerError); LogDeErrores.RegistroErrorWeb(err, DatoUsuario.idAgente, DatoUsuario.nomAgente, DatoUsuario.sIp, DatoUsuario.sHostName); throw err; } }
public ActionResult CalculoCotizacionCedida(bool ejecutaCalculo) { try { MensajesError.ErroresCalculo = new List<string>(); ResumenCotizar rCtz = new ResumenCotizar(); rCtz.calculos = new List<ClsCalculo>(); rCtz.Origen = (string)Session["RsmClc"]; GenericoViewModel model = new GenericoViewModel(); model = (GenericoViewModel)Session["ModeloEnUso"]; if (model.nQuitarPorPrima != 0) { rCtz.QuiereCederComision = model.QuiereCederComision = false; rCtz.porcentajeCede = model.nQuitarPorPrima; //model.porcentajecomision = model.nQuitarPorPrima; } rCtz.PorcentajeComisionSource = new Dictionary<int, string>(); for (int i = 0; i < 21; i++) { rCtz.PorcentajeComisionSource.Add(i, i.ToString()); } //rCtz.PorcentajeComisionSource = model.PorcentajeComisionSource; if (!ejecutaCalculo) { DefaultCalculos(ref rCtz); model.CalculoCotizacion = rCtz; Session["ModeloEnUso"] = model; return PartialView("_CotizarPartial", rCtz); } // Realiza el calculo string modulo = "C"; Calculo(ref model, modulo); if (!CedeComision.cargado) { CedeComision.ProcarOriginal = model.control; CedeComision.primanetaOriginal = model.ObjCalculo.PrimaNetaInicial; CedeComision.subtotalOriginal = model.ObjCalculo.mSubtotal; CedeComision.totaloriginal = model.ObjCalculo.mTotal; CedeComision.cargado = true; } ClsCotizacion cot = CentralAgentesMvc.App_Start.CastObject.Cast<ClsCotizacion>(model); rCtz.QuiereCederComision = model.QuiereCederComision = true; double nvoprocar = 0; double quitarprima = 0; VarProcAMC objVarProcAMC = new VarProcAMC(); objVarProcAMC.CedeComision(CedeComision.ProcarOriginal, CedeComision.primanetaOriginal, nvoprocar, ref quitarprima, rCtz.porcentajeCede, "C", cot); cot.control = Math.Round(cot.control, 2); string ModulodeTrabajo = model.ModulodeTrabajo; model = CentralAgentesMvc.App_Start.CastObject.Cast<GenericoViewModel>(cot); model.ModulodeTrabajo = ModulodeTrabajo; Calculo(ref model, modulo); if (model.formaPago == 0) model.formaPago = 1; ClsCalculo ObjCalculoRes = (ClsCalculo)model.calculos[model.formaPago - 1]; rCtz.DerechoPoliza = decimal.Parse(ObjCalculoRes.dchosPoliza.ToString()); rCtz.ExtensionRC = decimal.Parse(ObjCalculoRes.mcurExtRC.ToString()); rCtz.AccidentesPersonales = decimal.Parse(ObjCalculoRes.mAP.ToString()); rCtz.Recargos = decimal.Parse(ObjCalculoRes.RecPagFrac.ToString()); rCtz.SubTotal = decimal.Parse(ObjCalculoRes.mSubtotal.ToString()); rCtz.IVA = ObjCalculoRes.IVA; rCtz.PorcentajeIVA = ObjCalculoRes.PorcentajeIVA; rCtz.TotalCotizacion = decimal.Parse(ObjCalculoRes.mTotal.ToString()); rCtz.mPago1de = (model.formaPago == 1 ? ObjCalculoRes.mTotal : ObjCalculoRes.mPago1de); rCtz.Descripcion2Pago = (model.formaPago == 3 ? "3" : ObjCalculoRes.nPago2de.ToString().Trim()) + " Pago(s) de.:"; rCtz.mPago2de = (model.formaPago == 3 ? ObjCalculoRes.mPago1de : ObjCalculoRes.mPago2de); rCtz.OpcionesPagoInfo = new List<ClsOpcionesPago>(); rCtz.VehiculosInfo = new List<ClsVehiculo>(); rCtz.OpcionesPagoInfo.Add(new ClsOpcionesPago() { OpcionPagoID = 1, DescripcionRubro = "Pago Inicial:", PagoContado = string.Format("{0:C2}", ((ClsCalculo)model.calculos[0]).mTotal), PagoSemestral = string.Format("{0:C2}", ((ClsCalculo)model.calculos[1]).mPago1de), PagoTrimestral = string.Format("{0:C2}", ((ClsCalculo)model.calculos[2]).mPago1de), PagoMensual = string.Format("{0:C2}", ((ClsCalculo)model.calculos[3]).mPago1de) }); rCtz.OpcionesPagoInfo.Add(new ClsOpcionesPago() { OpcionPagoID = 2, DescripcionRubro = "Pagos Subsecuentes:", PagoContado = string.Format("{0}", ""), PagoSemestral = string.Format("{0:C2}", ((ClsCalculo)model.calculos[1]).mPago2de), PagoTrimestral = string.Format("{0:C2}", ((ClsCalculo)model.calculos[2]).mPago1de), PagoMensual = string.Format("{0:C2}", ((ClsCalculo)model.calculos[3]).mPago2de) }); rCtz.OpcionesPagoInfo.Add(new ClsOpcionesPago() { OpcionPagoID = 3, DescripcionRubro = "Número de Pagos Subsecuentes:", PagoContado = string.Format("{0}", ""), PagoSemestral = string.Format("{0}", ((ClsCalculo)model.calculos[1]).nPago2de), PagoTrimestral = string.Format("3"), PagoMensual = string.Format("{0}", ((ClsCalculo)model.calculos[3]).nPago2de) }); rCtz.OpcionesPagoInfo.Add(new ClsOpcionesPago() { OpcionPagoID = 4, DescripcionRubro = "<strong><i>Total:</i></strong>", PagoContado = string.Format("<strong><i>{0:C2}</i></strong>", ((ClsCalculo)model.calculos[0]).mTotal), PagoSemestral = string.Format("<strong><i>{0:C2}</i></strong>", ((ClsCalculo)model.calculos[1]).mTotal), PagoTrimestral = string.Format("<strong><i>{0:C2}</i></strong>", ((ClsCalculo)model.calculos[2]).mTotal), PagoMensual = string.Format("<strong><i>{0:C2}</i></strong>", ((ClsCalculo)model.calculos[3]).mTotal) }); foreach (ClsVehiculo vehiculoCal in model.ObjCalculo.vehiculos) { rCtz.VehiculosInfo.Add(new ClsVehiculo() { subRamo = vehiculoCal.subRamo, nNumVehi = vehiculoCal.nNumVehi, tpoEspecifAuto = vehiculoCal.DescripcionTipo.Trim(), mSUVA = vehiculoCal.mSUVA, mRespCivil = vehiculoCal.mRespCivil, mAyDLegal = vehiculoCal.mAyDLegal, mDañosMateria = vehiculoCal.mDañosMateria, mRoboTot = vehiculoCal.mRoboTot, mEquiEspec = vehiculoCal.mEquiEspec, mAsisViaje = vehiculoCal.mAsisViaje, mVehiSustitu = vehiculoCal.mVehiSustitu, mTotCoberturas = vehiculoCal.mTotCoberturas, mSA = vehiculoCal.mSA, mcurExtRC = vehiculoCal.mcurExtRC, mSubtotal = vehiculoCal.mSubtotal, PorcentajeIVA = vehiculoCal.PorcentajeIVA, mTotal = vehiculoCal.mTotal, }); } if (MensajesError.ErroresCalculo != null) { if (MensajesError.ErroresCalculo.Count() > 0) rCtz.WarningCalculoInfo = MensajesError.ErroresCalculo; } model.CalculoCotizacion = rCtz; Session["ModeloEnUso"] = model; return PartialView("_CotizarPartial", rCtz); } catch (Exception err) { Response.StatusCode = (int)(System.Net.HttpStatusCode.InternalServerError); LogDeErrores.RegistroErrorWeb(err, DatoUsuario.idAgente, DatoUsuario.nomAgente, DatoUsuario.sIp, DatoUsuario.sHostName); return Json("ErrInterno"); } }
private bool SignIn(string userName, string password, bool persistCookie = false) { FormsAuthentication.SignOut(); bool success = false; Logear acceso = new Logear(); var userNameOld = (userName.ToLower() == "test" ? "0" : userName); var passwordOld = (password == "Test2015k" ? "0" : password); var user = acceso.LoginAgenteWeb(int.Parse(userNameOld), passwordOld); if (user != null) { string rol = ""; string name = user.Tables["catAgentes"].Rows[0]["cNombre"].ToString(); if (user.Tables["catAgentes"].Rows[0]["nAgenteID"].ToString() == "0") { rol = "A"; name = (userName.ToLower() == "test" ? "Usuario Test" : "Nancy Martinez"); } VarProcAMC ProcAMC = new VarProcAMC(); if (!ProcAMC.IniciarCarga()) { Session["UserObj"] = null; ModelState.AddModelError("", "Error en inicio de la carga de variables"); } else { VarProcCentral proCentral = new VarProcCentral(); proCentral.IniciaDatos(VarProcAMC.strPeriodo); AccesoSistema accesos = new AccesoSistema(); accesos.P_AccesosSistema("03", "E"); Session["UserObj"] = user; Session["Periodo"] = "Periodo: " + VarProcAMC.strPeriodo; Session["UserRol"] = rol; if (password.Equals("agente" + userName)) { Session["ChangePassword"] = 1; } else { Session["ChangePassword"] = 0; } FormsAuthentication.SetAuthCookie(name, false); success = true; } } return success; }