Exemplo n.º 1
0
        public ActionResult DeleteConfirmed(int condicionadoId)
        {
            CondicionadoPoliza condicionadoPoliza = unitOfWork.CondicionadoPoliza.Get(condicionadoId);

            if (condicionadoPoliza == null)
            {
                TempData["mensaje"] = ItemMensaje.ErrorDatosNoValidosDesactivarActivar(CondicionadoPoliza.GetNombreModelo());
                return(RedirectToAction("Index"));
            }

            if (condicionadoPoliza.activo == 1)
            {
                // Validación :  no se puede desactivar condicionado si alguna póliza en vigor (activa) tiene ese tipo de Condicionado.
                if (condicionadoPolizaBLL.AnyPolizaActivaWithThisCondicionado(condicionadoPoliza) == true)
                {
                    List <int> polizasIdActivas = condicionadoPolizaBLL.GetPolizasActivasIdWithThisCondicionado(condicionadoPoliza);
                    TempData["mensaje"] = ItemMensaje.ErrorPolizaVigorDesactivarCondicionado(CondicionadoPoliza.GetNombreModelo(), polizasIdActivas);
                    return(RedirectToAction("Index"));
                }
                try
                {
                    condicionadoPolizaBLL.DeleteCondicionado(condicionadoPoliza);
                    TempData["mensaje"] = ItemMensaje.SuccessDesactivar(CondicionadoPoliza.GetNombreModelo(), condicionadoPoliza.tipoCondicionado);
                    return(RedirectToAction("Index"));
                }
                catch (Exception ex)
                {
                    TempData["mensaje"] = ItemMensaje.ErrorExcepcionDesactivar(CondicionadoPoliza.GetNombreModelo(), ex.GetType().ToString());
                    return(RedirectToAction("Index"));
                }
            }
            if (condicionadoPoliza.activo == 0)
            {
                try
                {
                    condicionadoPolizaBLL.UnDeleteCondicionado(condicionadoPoliza);
                    TempData["mensaje"] = ItemMensaje.SuccessActivar(CondicionadoPoliza.GetNombreModelo(), condicionadoPoliza.tipoCondicionado);
                    return(RedirectToAction("Index"));
                }
                catch (Exception ex)
                {
                    TempData["mensaje"] = ItemMensaje.ErrorExcepcionActivar(CondicionadoPoliza.GetNombreModelo(), ex.GetType().ToString());
                    return(RedirectToAction("Index"));
                }
            }
            TempData["mensaje"] = ItemMensaje.ErrorDatosNoValidosDesactivarActivar(CondicionadoPoliza.GetNombreModelo());
            return(RedirectToAction("Index"));
        }