public ActionResult RegistrarPago()
 {
     ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS InfoUser = (ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS)Session["InfoUser"];
     ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Models.ING_PagosRealizados pago = new ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Models.ING_PagosRealizados();
     pago.PRE_Referencia = InfoUser.Referencia;
     return(View(pago));
 }
        public ActionResult RegistroPagos()
        {
            ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS InfoUser = (ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS)Session["InfoUser"];
            List <ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Models.VwING_PagosRealizados> listaPagos = new List <ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Models.VwING_PagosRealizados>();

            ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Methods.PagosRealizadosBusiness PagosRealizadosProxy = new ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Methods.PagosRealizadosBusiness((ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS)Session["InfoUser"]);
            listaPagos = PagosRealizadosProxy.GetByDireccion_ID(InfoUser.Direccion_ID);
            return(View(listaPagos));
        }
        public ActionResult EdoCtaResidente()
        {
            ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS InfoUser = (ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS)Session["InfoUser"];
            ViewBag.Direccion_ID    = InfoUser.Direccion_ID;
            ViewBag.DIR_Descripcion = InfoUser.Residencia;
            ViewBag.Referencia      = InfoUser.Referencia;

            ADESCOMBUSINESS.AccesoResidentes.EstadoCuenta.Models.VwCON_Cuentas Cuenta = new ADESCOMBUSINESS.AccesoResidentes.EstadoCuenta.Models.VwCON_Cuentas();
            Cuenta             = ADESCOMBUSINESS.AccesoResidentes.EstadoCuenta.Methods.CON_CuentasBusiness.GetCuentaCasa((ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS)Session["InfoUser"], InfoUser.Direccion_ID);
            ViewBag.CierresCta = new SelectList(GetCierres(Cuenta.Cuenta_ID), "Cierre_ID", "CIC_Descripcion");

            ViewBag.SaldoActual = Cuenta.CTA_Saldo;
            return(View());
        }
예제 #4
0
        public ActionResult Login(ADESCOMBUSINESS.DataAccess.Models.LoginRQ User)
        {
            if (String.IsNullOrEmpty(User.TipoIngreso))
            {
                ViewBag.MessageError = "Indique si es Administrador o Residente";
                ModelState.AddModelError("", "");
            }

            if (!User.TipoIngreso.Equals("Administrador") && !User.TipoIngreso.Equals("Residente"))
            {
                ViewBag.MessageError = "Indique si es Administrador o Residente";
                ModelState.AddModelError("", "");
            }

            if (ModelState.IsValid)
            {
                try
                {
                    if (User.TipoIngreso.Equals("Administrador"))
                    {
                        ADESCOMBUSINESS.DataAccess.Models.LoginRS login      = new ADESCOMBUSINESS.DataAccess.Models.LoginRS();
                        ADESCOMBUSINESS.LoginBusiness             LoginProxy = new ADESCOMBUSINESS.LoginBusiness();
                        login = LoginProxy.Login(User);

                        if (login.Usuario_ID == 0 || login.CIA_Nombre == "" || login.Compania_ID == 0 || login.Token == "")
                        {
                            ViewBag.MessageError = "El usuario no existe o la contraseña es incorrecta";
                        }
                        else
                        {
                            /* HttpCookie myCookie = new HttpCookie("lastUserLogged");
                             * myCookie.Values["User"] = User.UsrUsuario;
                             * myCookie.Expires = DateTime.Now.AddDays(15);
                             * Response.Cookies.Add(myCookie);*/

                            Session["InfoUser"] = login;
                            ADESCOMBUSINESS.DataAccess.Models.CompanyInfo CompanyInfo = new ADESCOMBUSINESS.DataAccess.Models.CompanyInfo();

                            List <ADESCOMBUSINESS.Areas.Configuracion.Models.VwCIA_ConfigParam> ListaParametros = new List <ADESCOMBUSINESS.Areas.Configuracion.Models.VwCIA_ConfigParam>();
                            ListaParametros = ADESCOMBUSINESS.Areas.Configuracion.Methods.CIA_ConfigParamBusiness.GetAll(login);

                            List <ADESCOMBUSINESS.Areas.Configuracion.Models.SIS_TipoNotificacion> Notificaciones = new List <ADESCOMBUSINESS.Areas.Configuracion.Models.SIS_TipoNotificacion>();
                            Notificaciones = ADESCOMBUSINESS.Areas.Configuracion.Methods.SIS_TipoNotificacionBusiness.GetAll((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"]);

                            foreach (ADESCOMBUSINESS.Areas.Configuracion.Models.VwCIA_ConfigParam param in ListaParametros)
                            {
                                switch (param.TCP_Nombre)
                                {
                                case "CantLlaves":
                                    CompanyInfo.CantLlaves = Convert.ToInt32(param.CPA_Valor);
                                    break;

                                case "Llave1_Descripcion":
                                    CompanyInfo.DescLlave1 = param.CPA_Valor.ToString();
                                    break;

                                case "Llave2_Descripcion":
                                    CompanyInfo.DescLlave2 = param.CPA_Valor.ToString();
                                    break;

                                case "Llave3_Descripcion":
                                    CompanyInfo.DescLlave3 = param.CPA_Valor.ToString();
                                    break;

                                case "Llave1_Etiqueta":
                                    CompanyInfo.LabelLlave1 = param.CPA_Valor.ToString();
                                    break;

                                case "Llave2_Etiqueta":
                                    CompanyInfo.LabelLlave2 = param.CPA_Valor.ToString();
                                    break;

                                case "Llave3_Etiqueta":
                                    CompanyInfo.LabelLlave3 = param.CPA_Valor.ToString();
                                    break;

                                case "EmailNotifications":
                                    CompanyInfo.NotifEmail = GetTiposNotif(Notificaciones, Convert.ToInt32(param.CPA_Valor));
                                    break;

                                case "PushNotifications":
                                    CompanyInfo.NotifPush = GetTiposNotif(Notificaciones, Convert.ToInt32(param.CPA_Valor));
                                    break;

                                case "AppNotifications":
                                    CompanyInfo.NotifBuzonApp = GetTiposNotif(Notificaciones, Convert.ToInt32(param.CPA_Valor));
                                    break;
                                }
                            }

                            Session["CompanyInfo"] = CompanyInfo;

                            return(RedirectToAction("Index", "Inicio"));
                        }
                    }
                    else
                    {
                        ADESCOMBUSINESS.App.Login.Models.Login_RQ loginRQ = new ADESCOMBUSINESS.App.Login.Models.Login_RQ();
                        loginRQ.UserName    = User.UsrUsuario;
                        loginRQ.Password    = User.Password;
                        loginRQ.Device_id   = "WEB";
                        loginRQ.Device_type = "WEB";

                        ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS loginResidenteRS = new ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS();
                        ADESCOMBUSINESS.App.Login.Models.Login_RS          loginRS          = new ADESCOMBUSINESS.App.Login.Models.Login_RS();
                        ADESCOMBUSINESS.App.Login.Methods.LoginBusiness    LoginProxy       = new ADESCOMBUSINESS.App.Login.Methods.LoginBusiness();
                        loginRS = LoginProxy.Login(loginRQ);

                        if (loginRS.Error != null)
                        {
                            ViewBag.MessageError = loginRS.Error.ErrorMsg;
                        }
                        else
                        {
                            loginResidenteRS.Celular        = loginRS.Sesion.Celular;
                            loginResidenteRS.CIA_CodPais    = loginRS.Sesion.CIA_CodPais;
                            loginResidenteRS.CIA_Nombre     = loginRS.Sesion.CIA_Nombre;
                            loginResidenteRS.Compania_ID    = loginRS.Sesion.Compania_ID;
                            loginResidenteRS.Direccion_ID   = loginRS.Sesion.Direccion_ID;
                            loginResidenteRS.Email          = loginRS.Sesion.Email;
                            loginResidenteRS.NombreCompleto = loginRS.Sesion.NombreCompleto;
                            loginResidenteRS.Referencia     = loginRS.Sesion.Referencia;
                            loginResidenteRS.ReferenciaFija = loginRS.Sesion.ReferenciaFija;
                            loginResidenteRS.Residencia     = loginRS.Sesion.Residencia;
                            loginResidenteRS.Residente_ID   = loginRS.Sesion.Residente_ID;
                            loginResidenteRS.Telefono       = loginRS.Sesion.Telefono;
                            loginResidenteRS.Token          = loginRS.Sesion.Token;
                            loginResidenteRS.UserName       = loginRS.Sesion.UserName;

                            Session["InfoUser"] = loginResidenteRS;

                            return(RedirectToAction("Index", "ResidentesHome"));
                        } //App Login incorrecto
                    }     //Es residente o administrador
                }         //Try
                catch (Exception ex)
                {
                    ViewBag.MessageError = ex.Message;
                }
            }
            return(View(User));
        }
        public ActionResult RegistrarPago(FormCollection Form)
        {
            ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS InfoUser = (ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS)Session["InfoUser"];

            ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Models.ING_PagosRealizados Registro = new ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Models.ING_PagosRealizados();

            //Comprobante
            Registro.PRE_Comprobante = Form["SavedFile"];

            if (String.IsNullOrEmpty(Registro.PRE_Comprobante))
            {
                ModelState.AddModelError("PRE_Comprobante", "La imágen del comprobante es requerida");
            }

            try { Registro.PRE_Monto = Convert.ToDecimal(Form["PRE_Monto"]); }
            catch { ModelState.AddModelError("PRE_Monto", "Formato Incorrecto"); }

            if (Registro.PRE_Monto <= 0)
            {
                ModelState.AddModelError("PRE_Monto", "El monto debe ser mayor a 0");
            }

            Registro.PRE_Referencia = Form["PRE_Referencia"];

            int Cuenta_ID = Convert.ToInt32(ADESCOMBUSINESS.App.Common.GlobalBusiness.ObtConfigParam(InfoUser.Compania_ID, "CuentaCuotas"));

            if (Cuenta_ID == 0)
            {
                ModelState.AddModelError("PRE_Monto", "");
                ViewBag.Error = "Error al obtener la cuenta destino";
            }

            try
            {
                this.PagosRealizadosProxy = new ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Methods.PagosRealizadosBusiness((ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS)Session["InfoUser"]);
            }
            catch (Exception ex) { return(RedirectToAction("SesionExpired", "Inicio", new { Area = "", Mensaje = ex.Message })); }

            List <ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Models.VwING_PagosRealizados> PagosPendientes = new List <ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Models.VwING_PagosRealizados>();

            PagosPendientes = PagosRealizadosProxy.GetUnauthorizedByResident(InfoUser.Compania_ID, InfoUser.Direccion_ID);
            if (PagosPendientes != null && PagosPendientes.Count > 0)
            {
                ModelState.AddModelError("PRE_Monto", "");
                ViewBag.Error = "Usted tiene pagos pendientes para su autorización. Si necesita ayuda, comuníquese con la mesa directiva.";
            }

            Registro.Cuenta_ID      = Cuenta_ID;
            Registro.Compania_ID    = InfoUser.Compania_ID;
            Registro.Direccion_ID   = InfoUser.Direccion_ID;
            Registro.Residente_ID   = InfoUser.Residente_ID;
            Registro.PRE_Monto      = Registro.PRE_Monto;
            Registro.PRE_Referencia = InfoUser.Referencia;
            Registro.UsuarioCreo    = InfoUser.UserName;
            Registro.PRE_Estatus    = "ACT";
            Registro.PRE_FechaPago  = ADESCOMBUSINESS.GlobalBusiness.ObtFechaHoraServer();

            if (ModelState.IsValid)
            {
                try
                {
                    try
                    {
                        this.PagosRealizadosProxy = new ADESCOMBUSINESS.AccesoResidentes.RegistroPagos.Methods.PagosRealizadosBusiness((ADESCOMBUSINESS.DataAccess.Models.ResidenteLoginRS)Session["InfoUser"]);
                    }
                    catch (Exception ex) { return(RedirectToAction("SesionExpired", "Inicio", new { Area = "", Mensaje = ex.Message })); }

                    PagosRealizadosProxy.Crear(Registro);

                    ViewBag.Error = "OK";
                }
                catch (Exception ex)
                {
                    ViewBag.Error = ex.Message;
                }
            }

            return(View(Registro));
        }