public ActionResult Details(int id)
        {
            GestionPoliza gestionPoliza = unitOfWork.GestionPoliza.GetGestionPolizaWithClienteCondicionadoTipoGestion(id);

            if (gestionPoliza == null)
            {
                TempData["mensaje"] = ItemMensaje.ErrorDatosNoValidosDetails(Poliza.GetNombreModelo());
                return(RedirectToAction("Index"));
            }
            if (TempData.ContainsKey("mensaje"))
            {
                ViewBag.mensaje = TempData["mensaje"];
            }
            return(View(gestionPoliza));
        }
Exemplo n.º 2
0
 private bool IsValidFormatEdit(GestionPoliza gestionPoliza)
 {
     if (gestionPoliza == null)
     {
         return(false);
     }
     if (
         gestionPoliza.matricula.IsNullOrWhiteSpace() ||
         gestionPoliza.marcaVehiculo.IsNullOrWhiteSpace() ||
         gestionPoliza.modeloVehiculo.IsNullOrWhiteSpace() ||
         gestionPoliza.observaciones.IsNullOrWhiteSpace()
         )
     {
         return(false);
     }
     return(true);
 }
        public ActionResult EditPost(int id)
        {
            GestionPoliza gestionPoliza = gestionPolizaBLL.GetLastGestionPoliza(id);

            if (gestionPoliza == null)
            {
                TempData["mensaje"] = ItemMensaje.ErrorDatosNoValidosEditar(Poliza.GetNombreModelo());
                return(RedirectToAction("Index"));
            }
            var matriculaEstadoPrevio = gestionPoliza.matricula;

            if (TryUpdateModel(gestionPoliza, "", new string[] { "condicionadoPolizaId", "precio", "observaciones", "matricula", "marcaVehiculo", "modeloVehiculo" }) == false || gestionPolizaBLL.FieldsFormatEdit(gestionPoliza) == false)
            {
                TempData["mensaje"] = ItemMensaje.ErrorDatosNoValidosEditar(Poliza.GetNombreModelo());
                return(RedirectToAction("Details", new { id = gestionPoliza.gestionPolizaId }));
            }

            if (gestionPolizaBLL.ValidarFormatoMatricula(gestionPoliza.matricula) == false)
            {
                TempData["mensaje"] = ItemMensaje.ErrorValidarFormatoMatricula(Poliza.GetNombreModelo());
                return(RedirectToAction("Details", new { id = gestionPoliza.gestionPolizaId }));
            }
            // Si se ha modificado la matrícula, verifica que no esté en una póliza Activa.
            if (matriculaEstadoPrevio != gestionPoliza.matricula && gestionPolizaBLL.ExistMatriculaInPolizasActivas(gestionPoliza.matricula) == true)
            {
                TempData["mensaje"] = ItemMensaje.ErrorValidarMatriculaDuplicada(Poliza.GetNombreModelo(), gestionPoliza.matricula);
                return(RedirectToAction("Details", new { id = gestionPoliza.gestionPolizaId }));
            }
            try
            {
                Usuario usuarioLogado = GetUsuarioLogado();
                gestionPolizaBLL.UpdateGestionPoliza(gestionPoliza, usuarioLogado);
                TempData["mensaje"] = ItemMensaje.SuccessEditar(Poliza.GetNombreModelo(), gestionPoliza.polizaId.ToString(CultureInfo.GetCultureInfo("es-ES")));
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                ViewBag.mensaje = ItemMensaje.ErrorExcepcionEditar(Poliza.GetNombreModelo(), ex.GetType().ToString());
                IEnumerable <CondicionadoPoliza> condicionadosActivos = unitOfWork.CondicionadoPoliza.Where(c => c.activo == 1);
                ViewBag.condicionadoPolizaId = new SelectList(condicionadosActivos, "condicionadoPolizaId", "tipoCondicionado", gestionPoliza.condicionadoPolizaId);
                return(View(gestionPoliza));
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// Búsqueda por parámetros.
        /// Filtra por los parámetros que no están vacíos ,
        /// busca coincidencias por:
        /// Parámetro
        /// + estado Póliza ( 0=> no activa , 1 => activa ,  2=> todos)
        /// + fecha de Alta de la póliza (rango de fechas comprendido entre FechaInicio/FechaFinal)
        /// </summary>
        /// <param name="searchingFields"></param>
        /// <returns>Lista de gestion pólizas coincidentes (la última creada de cada póliza coincidente ) </returns>
        public List <GestionPoliza> SearchPolizas(PolizaSearchingFields searchingFields)
        {
            List <GestionPoliza> output = new List <GestionPoliza>();

            // Fecha Alta + Estado  (resto de campos vacíos).
            if (searchingFields.SearchingParam == PolizaSearchingParam.empty)
            {
                output = unitOfWork.GestionPoliza.GetLastGestionesPolizaWithCliente(searchingFields.FechaInicio, searchingFields.FechaFinal, (int)searchingFields.EstadoPoliza).ToList();
                return(output);
            }

            // Póliza Id
            if (searchingFields.SearchingParam == PolizaSearchingParam.polizaId)
            {
                GestionPoliza gestionPoliza = unitOfWork.GestionPoliza.GetLastGestionPolizaWithClienteBy(searchingFields.PolizaId);
                if (gestionPoliza != null)
                {
                    output.Add(gestionPoliza);
                }
                return(output);
            }
            // Fecha Alta + Estado + Matrícula que aparezca en cualquiera de sus gestionPoliza.
            if (searchingFields.SearchingParam == PolizaSearchingParam.matricula)
            {
                output = unitOfWork.GestionPoliza.GetLastGestionesPolizaWithClienteByMatricula(searchingFields.FechaInicio, searchingFields.FechaFinal, (int)searchingFields.EstadoPoliza, searchingFields.Value).ToList();
                return(output);
            }
            // Fecha Alta + Estado + NIF / NIE.
            if (searchingFields.SearchingParam == PolizaSearchingParam.dniCliente)
            {
                output = unitOfWork.GestionPoliza.GetLastGestionesPolizaWithClienteByDni(searchingFields.FechaInicio, searchingFields.FechaFinal, (int)searchingFields.EstadoPoliza, searchingFields.Value).ToList();
                return(output);
            }
            // Fecha Alta + Estado + Teléfono.
            if (searchingFields.SearchingParam == PolizaSearchingParam.telefonoCliente)
            {
                output = unitOfWork.GestionPoliza.GetLastGestionesPolizaWithClienteByTelefono(searchingFields.FechaInicio, searchingFields.FechaFinal, (int)searchingFields.EstadoPoliza, searchingFields.Value).ToList();
                return(output);
            }
            // Si no hay ningún resultado coincidente, devuelve una lista vacía.
            return(output);
        }
Exemplo n.º 5
0
        private bool IsValidFormatCreate(GestionPoliza gestionPoliza, string clienteId)
        {
            if (gestionPoliza == null || clienteId.IsNullOrWhiteSpace())
            {
                return(false);
            }
            bool success = Int32.TryParse(clienteId.Trim(), out int clienteID);

            if (success == false)
            {
                return(false);
            }

            if (gestionPoliza.matricula.IsNullOrWhiteSpace() || gestionPoliza.marcaVehiculo.IsNullOrWhiteSpace() ||
                gestionPoliza.modeloVehiculo.IsNullOrWhiteSpace() || gestionPoliza.observaciones.IsNullOrWhiteSpace() ||
                gestionPoliza.fechaInicio == null || gestionPoliza.fechaFin == null)
            {
                return(false);
            }
            return(true);
        }
Exemplo n.º 6
0
        private void CreatePoliza(GestionPoliza gestionPoliza, Usuario usuarioLogado, Cliente cliente)
        {
            // Asigna valores a la gestión póliza.
            gestionPoliza.usuarioId = usuarioLogado.usuarioId;
            //DateTime hoy = DateTime.Now;
            gestionPoliza.fechaGestion = DateTime.Now;

            // Tipo de gestión
            // 1 => ALTA
            gestionPoliza.tipoGestionId = 1;
            var poliza = new Poliza
            {
                // poliza.activo =>
                // -1 =>  estado temporal mientras se procesa la generación de póliza,
                // para poder recuperar el id de póliza si al generar el primer gestionPoliza se produce algún error.
                activo    = -1,
                clienteId = cliente.clienteId
            };

            //Crea el registro en la BBDD.
            unitOfWork.Poliza.Add(poliza);
            unitOfWork.SaveChanges();
        }