示例#1
0
        public static PersonaCondomini IsAuthenticate()
        {
            var result = new PersonaCondomini();
            if (HttpContext.Current.Session["utente"] != null)
            {
                var persona = HttpContext.Current.Session["utente"] as PersonaDTO;
                result.TipoAutenticazione = "SOGGETTO";
                result.Persona = persona;

                // Contatti
                if (persona != null)
                {
                    result.Contatti = new ContattiPersona(
                        getContatto("TELEFONO", persona.Contatti),
                        getContatto("CELLULARE", persona.Contatti),
                        getContatto("EMAIL", persona.Contatti),
                        getContatto("EMAILCERT", persona.Contatti)
                     );
                }
            }
            else if (HttpContext.Current.Session["condominio"] != null)
                result.TipoAutenticazione = "CONDOMINIO";
            else
                result.TipoAutenticazione = "FALLITA";

            return result;
        }
示例#2
0
        public static PersonaCondomini AuthenticateUser(string user, string password, int azienda)
        {
            var log = LogManager.GetLogger("Sfera");
            try
            {
                var service = new SferaService();
                var info = new UserInfo(0, azienda);
                var result = new PersonaCondomini();

                decimal codiceFiscale;
                var isCodiceFiscale = decimal.TryParse(password, out codiceFiscale);
                if (!isCodiceFiscale)
                {
                    result.TipoAutenticazione = "SOGGETTO";
                    var persona = service.VerificaUtentePersona(user, password, info);

                    if (persona != null)
                    {
                        HttpContext.Current.Session.Add("utente", persona);
                        var soggetti = service.GetSoggettiByPersona(persona.ID, info);
                        if (soggetti.Count == 1)
                        {
                            var soggetto = soggetti.SingleOrDefault();
                            if (soggetto != null)
                            {
                                result.NumeroCondomini = 1;
                                result.Persona = persona;
                                result.Condomini = new Dictionary<string, string> { { soggetto.IdCondominio.ToString(), soggetto.DescrizioneUnitaImmobiliare } };

                                // Contatti
                                result.Contatti = getContatti(persona);

                                HttpContext.Current.Session.Add("azienda", azienda);
                                HttpContext.Current.Session.Add("condomino", soggetto);
                                HttpContext.Current.Session.Add("condominio", soggetto.IdCondominio);

                                log.Info("Utente autenticato - " + Utility.GetMethodDescription() + " - username:"******"azienda", azienda);
                                HttpContext.Current.Session.Add("condomino", soggetto);
                                HttpContext.Current.Session.Add("condominio", soggetto.IdCondominio);

                            }
                        }
                    }
                }
                else
                {
                    result.TipoAutenticazione = "CONDOMINIO";
                    var condominio = service.AutenticazioneCondominio(user, password, info);
                    if (condominio != null)
                    {
                        HttpContext.Current.Session.Add("azienda", condominio.AziendaID); 
                        HttpContext.Current.Session.Add("condominio", condominio.ID);
                        result.Condominio = condominio;
                    }
                    else
                        return new PersonaCondomini { TipoAutenticazione = "FALLITA", ExceptionMessage = "Utente o password non riconosciuti"};
                }

                return result;
            }
            catch (Exception ex)
            {
                log.ErrorException(string.Format("Autenticazione fallita - user:{0} - password:{1} - azienda:{2}", user, password, azienda), ex);
                return new PersonaCondomini{TipoAutenticazione = "FALLITA", ExceptionMessage = ex.Message + Environment.NewLine + ex.StackTrace};
            }
        }
示例#3
0
        public static PersonaCondomini AggiornaAnagrafica(ContattiPersona contatti)
        {
            var result = new PersonaCondomini();
            if (HttpContext.Current.Session["utente"] != null)
            {
                var persona = HttpContext.Current.Session["utente"] as PersonaDTO;

                if (persona != null)
                {
                    result.TipoAutenticazione = "SOGGETTO";
                    result.Contatti = updateContatti(persona, contatti);

                    var service = new SferaService();
                    var info = new UserInfo(0, int.Parse(HttpContext.Current.Session["azienda"].ToString()));
                    result.Persona = service.GetPersonaByID(persona.ID, info);
                    HttpContext.Current.Session.Add("utente", result.Persona);
                }
            }
            else
                result.TipoAutenticazione = "FALLITA";

            return result;
        }
示例#4
0
        public static PersonaCondomini SetSoggettoCondominio(int idCondominio, int azienda)
        {
            var result = new PersonaCondomini();
            var persona = HttpContext.Current.Session["utente"] as PersonaDTO;
            if(persona != null)
            {
                var service = new SferaService();
                var info = new UserInfo(0, azienda);
                var soggetti = service.GetSoggettiByCondominioPersona(idCondominio, persona.ID, info);
                var soggetto = soggetti[0];
                HttpContext.Current.Session.Add("condomino", soggetto);
                HttpContext.Current.Session.Add("condominio", idCondominio);
                HttpContext.Current.Session.Add("azienda", azienda);

                result.Persona = persona;
                result.TipoAutenticazione = "SOGGETTO";
            }

            return result;
        }