コード例 #1
0
        public void SetDefault()
        {
            Baratti = new List <AnnuncioViewModel>();
            //BarattiToken = new List<string>();
            TipoOfferta = TipoPagamento.HAPPY;
            PersonaModel utente = (HttpContext.Current.Session["utente"] as PersonaModel);

            if (utente != null)
            {
                PERSONA_INDIRIZZO indirizzo = utente.Indirizzo.FirstOrDefault(m => m.TIPO == (int)TipoIndirizzo.Residenza);
                NominativoDestinatario = utente.NomeVisibile;
                PERSONA_TELEFONO telefono = utente.Telefono.FirstOrDefault(m => m.TIPO == (int)TipoTelefono.Privato);
                if (telefono != null)
                {
                    TelefonoDestinatario = telefono.TELEFONO;
                }
                if (indirizzo != null)
                {
                    CapDestinatario       = indirizzo.INDIRIZZO.COMUNE.CAP;
                    IndirizzoDestinatario = indirizzo.INDIRIZZO.INDIRIZZO1;
                    CivicoDestinatario    = indirizzo.INDIRIZZO.CIVICO;
                }
                PERSONA_INDIRIZZO indirizzoSpedizione = utente.Indirizzo.FirstOrDefault(m => m.TIPO == (int)TipoIndirizzo.Spedizione);
                if (indirizzoSpedizione != null && indirizzoSpedizione.PERSONA_INDIRIZZO_SPEDIZIONE != null && indirizzoSpedizione.PERSONA_INDIRIZZO_SPEDIZIONE.Count() > 0)
                {
                    PERSONA_INDIRIZZO_SPEDIZIONE datiSpedizione = indirizzoSpedizione.PERSONA_INDIRIZZO_SPEDIZIONE.FirstOrDefault();
                    NominativoDestinatario = datiSpedizione.NOMINATIVO;
                    TelefonoDestinatario   = datiSpedizione.TELEFONO;
                    InfoExtraDestinatario  = datiSpedizione.INFO_EXTRA;
                    CapDestinatario        = indirizzoSpedizione.INDIRIZZO.COMUNE.CAP;
                    IndirizzoDestinatario  = indirizzoSpedizione.INDIRIZZO.INDIRIZZO1;
                    CivicoDestinatario     = indirizzoSpedizione.INDIRIZZO.CIVICO;
                }
            }
        }
コード例 #2
0
        public void SetIndirizzo(DatabaseContext db, int?comune, string indirizzo, int?civico, int tipoIndirizzo)
        {
            PERSONA_INDIRIZZO model = this.Indirizzo.SingleOrDefault(m => m.TIPO == tipoIndirizzo);
            bool modificato         = false;

            if (model == null)
            {
                if (!string.IsNullOrWhiteSpace(indirizzo))
                {
                    model                  = new PERSONA_INDIRIZZO();
                    model.ID_PERSONA       = this.Persona.ID;
                    model.DATA_INSERIMENTO = DateTime.Now;
                    model.TIPO             = tipoIndirizzo;
                    model.STATO            = (int)Stato.ATTIVO;
                    model.INDIRIZZO        = db.INDIRIZZO.Include("Comune").SingleOrDefault(m => m.INDIRIZZO1 == indirizzo && m.ID_COMUNE == comune && m.CIVICO == civico);
                    if (model.INDIRIZZO == null)
                    {
                        model.INDIRIZZO = new INDIRIZZO();
                        model.INDIRIZZO.DATA_INSERIMENTO = DateTime.Now;
                        model.INDIRIZZO.STATO            = (int)Stato.ATTIVO;
                        model.INDIRIZZO.ID_COMUNE        = (int)comune;
                        model.INDIRIZZO.INDIRIZZO1       = indirizzo;
                        model.INDIRIZZO.CIVICO           = (int)civico;
                        db.INDIRIZZO.Add(model.INDIRIZZO);
                    }
                    model.ID_INDIRIZZO = model.INDIRIZZO.ID;
                    db.PERSONA_INDIRIZZO.Add(model);
                    this.Indirizzo.Add(model);
                }
                modificato = db.SaveChanges() > 0;
            }
            else if (model.INDIRIZZO != null && model.INDIRIZZO.ID_COMUNE != comune || model.INDIRIZZO.INDIRIZZO1 != indirizzo || model.INDIRIZZO.CIVICO != civico)
            {
                if (string.IsNullOrWhiteSpace(indirizzo))
                {
                    db.Entry(model).State = EntityState.Deleted;
                    this.Indirizzo.Remove(model);
                }
                else
                {
                    model.INDIRIZZO = db.INDIRIZZO.Include("Comune").SingleOrDefault(m => m.INDIRIZZO1 == indirizzo && m.ID_COMUNE == comune && m.CIVICO == civico);
                    if (model.INDIRIZZO == null)
                    {
                        model.INDIRIZZO = new INDIRIZZO();
                        model.INDIRIZZO.DATA_INSERIMENTO = DateTime.Now;
                        model.INDIRIZZO.STATO            = (int)Stato.ATTIVO;
                        model.INDIRIZZO.ID_COMUNE        = (int)comune;
                        model.INDIRIZZO.INDIRIZZO1       = indirizzo;
                        model.INDIRIZZO.CIVICO           = (int)civico;
                        db.INDIRIZZO.Add(model.INDIRIZZO);
                    }
                    model.ID_INDIRIZZO    = model.INDIRIZZO.ID;
                    db.Entry(model).State = EntityState.Modified;
                }
                modificato = db.SaveChanges() > 0;
            }
        }
コード例 #3
0
        public void SetDefault()
        {
            PersonaModel      utente    = (HttpContext.Current.Session["utente"] as PersonaModel);
            PERSONA_INDIRIZZO indirizzo = utente.Indirizzo.FirstOrDefault(m => m.TIPO == (int)TipoIndirizzo.Residenza);

            NominativoDestinatario = utente.NomeVisibile;
            PERSONA_TELEFONO telefono = utente.Telefono.FirstOrDefault(m => m.TIPO == (int)TipoTelefono.Privato);

            if (telefono != null)
            {
                TelefonoDestinatario = telefono.TELEFONO;
            }
            if (indirizzo != null)
            {
                CapDestinatario       = indirizzo.INDIRIZZO.COMUNE.CAP;
                IndirizzoDestinatario = indirizzo.INDIRIZZO.INDIRIZZO1;
                CivicoDestinatario    = indirizzo.INDIRIZZO.CIVICO;
            }
            PERSONA_INDIRIZZO indirizzoSpedizione = utente.Indirizzo.FirstOrDefault(m => m.TIPO == (int)TipoIndirizzo.Spedizione);

            if (indirizzoSpedizione != null && indirizzoSpedizione.PERSONA_INDIRIZZO_SPEDIZIONE != null && indirizzoSpedizione.PERSONA_INDIRIZZO_SPEDIZIONE.Count() > 0)
            {
                PERSONA_INDIRIZZO_SPEDIZIONE datiSpedizione = indirizzoSpedizione.PERSONA_INDIRIZZO_SPEDIZIONE.FirstOrDefault();
                NominativoDestinatario = datiSpedizione.NOMINATIVO;
                TelefonoDestinatario   = datiSpedizione.TELEFONO;
                InfoExtraDestinatario  = datiSpedizione.INFO_EXTRA;
                CapDestinatario        = indirizzoSpedizione.INDIRIZZO.COMUNE.CAP;
                IndirizzoDestinatario  = indirizzoSpedizione.INDIRIZZO.INDIRIZZO1;
                CivicoDestinatario     = indirizzoSpedizione.INDIRIZZO.CIVICO;
            }

            NomeTitolareCarta    = utente.Persona.NOME;
            CognomeTitolareCarta = utente.Persona.COGNOME;
            // caricare ultimo o i metodi di pagamento inseriti, caricandoli prima nella sessione utente
            PERSONA_METODO_PAGAMENTO metodoPagamento = utente.MetodoPagamento.LastOrDefault();

            if (metodoPagamento != null)
            {
                TipoCarta            = (TipoCartaCredito)metodoPagamento.TIPO_CARTA;
                NumeroCarta          = metodoPagamento.NUMERO;
                Cvv2                 = (int)metodoPagamento.CVV2;
                MeseScadenzaCarta    = (Month)metodoPagamento.MESE;
                AnnoScadenzaCarta    = (int)metodoPagamento.ANNO;
                NomeTitolareCarta    = metodoPagamento.NOME;
                CognomeTitolareCarta = metodoPagamento.COGNOME;
            }
        }
コード例 #4
0
        public void Load(PersonaModel utente)
        {
            this.Email = utente.Email.SingleOrDefault(item =>
                                                      item.ID_PERSONA == utente.Persona.ID && item.TIPO == (int)TipoEmail.Registrazione)
                         .EMAIL;
            this.Nome    = utente.Persona.NOME;
            this.Cognome = utente.Persona.COGNOME;
            PERSONA_TELEFONO modelTelefono = utente.Telefono.SingleOrDefault(item =>
                                                                             item.ID_PERSONA == utente.Persona.ID && item.TIPO == (int)TipoTelefono.Privato);

            if (modelTelefono != null)
            {
                this.Telefono = modelTelefono.TELEFONO;
            }
            PERSONA_INDIRIZZO modelIndirizzo = utente.Indirizzo.SingleOrDefault(item =>
                                                                                item.ID_PERSONA == utente.Persona.ID && item.TIPO == (int)TipoIndirizzo.Residenza &&
                                                                                item.STATO == (int)Stato.ATTIVO);

            if (modelIndirizzo != null && modelIndirizzo.INDIRIZZO != null)
            {
                this.Citta     = modelIndirizzo.INDIRIZZO.COMUNE.NOME;
                this.IDCitta   = modelIndirizzo.INDIRIZZO.ID_COMUNE;
                this.Indirizzo = modelIndirizzo.INDIRIZZO.INDIRIZZO1;
                this.Civico    = modelIndirizzo.INDIRIZZO.CIVICO;
            }
            // caricamento indirizzo di spedizione
            PERSONA_INDIRIZZO modelIndirizzoSpedizione = utente.Indirizzo.SingleOrDefault(item =>
                                                                                          item.ID_PERSONA == utente.Persona.ID && item.TIPO == (int)TipoIndirizzo.Spedizione &&
                                                                                          item.STATO == (int)Stato.ATTIVO);

            if (modelIndirizzoSpedizione != null && modelIndirizzoSpedizione.INDIRIZZO != null)
            {
                this.CittaSpedizione     = modelIndirizzoSpedizione.INDIRIZZO.COMUNE.NOME;
                this.IDCittaSpedizione   = modelIndirizzoSpedizione.INDIRIZZO.ID_COMUNE;
                this.IndirizzoSpedizione = modelIndirizzoSpedizione.INDIRIZZO.INDIRIZZO1;
                this.CivicoSpedizione    = modelIndirizzoSpedizione.INDIRIZZO.CIVICO;
            }

            this.HasLoginFacebook = utente.Persona.FACEBOOK_TOKEN_PERMANENTE != null;
        }
コード例 #5
0
        public void SetIndirizzo(DatabaseContext db, string nomeComune, int?comune, string indirizzo, string civico, int tipoIndirizzo)
        {
            PERSONA_INDIRIZZO model = this.Indirizzo.SingleOrDefault(m => m.TIPO == tipoIndirizzo &&
                                                                     m.STATO == (int)Stato.ATTIVO);
            bool modificato = false;

            if ((comune == null || comune <= 0) && !string.IsNullOrWhiteSpace(nomeComune))
            {
                string paese       = nomeComune.Split('(')[0];
                COMUNE modelComune = db.COMUNE.FirstOrDefault(m => m.NOME == paese);
                if (modelComune == null)
                {
                    throw new Exception(App_GlobalResources.ErrorResource.SettingsCity);
                }
                //var modelComune = db.COMUNE.FirstOrDefault(m => m.NOME == nomeComune);
                if (modelComune != null)
                {
                    comune = modelComune.ID;
                }
            }

            if (!((string.IsNullOrWhiteSpace(indirizzo) && comune == null && string.IsNullOrWhiteSpace(civico)) ||
                  (!string.IsNullOrWhiteSpace(indirizzo) && comune != null && !string.IsNullOrWhiteSpace(civico))))
            {
                throw new Exception(App_GlobalResources.ErrorResource.SettingsAddress);
            }

            if (model == null)
            {
                // se l'utente non aveva un indirizzo e ne ha inserito uno
                if (!string.IsNullOrWhiteSpace(indirizzo))
                {
                    model                  = new PERSONA_INDIRIZZO();
                    model.ID_PERSONA       = this.Persona.ID;
                    model.DATA_INSERIMENTO = DateTime.Now;
                    model.TIPO             = tipoIndirizzo;
                    model.STATO            = (int)Stato.ATTIVO;
                    model.INDIRIZZO        = db.INDIRIZZO.Include("Comune").SingleOrDefault(m => m.INDIRIZZO1 == indirizzo && m.ID_COMUNE == comune && m.CIVICO == civico);
                    if (model.INDIRIZZO == null)
                    {
                        // se l'indirizzo inserito non è stato trovato a db
                        model.INDIRIZZO = new INDIRIZZO();
                        model.INDIRIZZO.DATA_INSERIMENTO = DateTime.Now;
                        model.INDIRIZZO.STATO            = (int)Stato.ATTIVO;
                        model.INDIRIZZO.ID_COMUNE        = (int)comune;
                        model.INDIRIZZO.INDIRIZZO1       = indirizzo;
                        model.INDIRIZZO.CIVICO           = civico;
                        db.INDIRIZZO.Add(model.INDIRIZZO);
                    }
                    // aggiungo l'indirizzo all'utente
                    model.ID_INDIRIZZO = model.INDIRIZZO.ID;
                    db.PERSONA_INDIRIZZO.Add(model);
                    this.Indirizzo.Add(model);
                }
                modificato = db.SaveChanges() > 0;
            }
            else if (model.INDIRIZZO != null && model.INDIRIZZO.ID_COMUNE != comune || model.INDIRIZZO.INDIRIZZO1 != indirizzo || model.INDIRIZZO.CIVICO != civico)
            {
                // se l'utente aveva un indirizzo ed è stato modificato o cancellato
                db.Entry(model).State = EntityState.Deleted;
                this.Indirizzo.Remove(model);
                db.PERSONA_INDIRIZZO.Remove(model);

                if (!string.IsNullOrWhiteSpace(indirizzo))
                {
                    PERSONA_INDIRIZZO nuovoIndirizzo = new PERSONA_INDIRIZZO();
                    nuovoIndirizzo.ID_PERSONA       = model.ID_PERSONA;
                    nuovoIndirizzo.ORDINE           = model.ORDINE;
                    nuovoIndirizzo.TIPO             = model.TIPO;
                    nuovoIndirizzo.DATA_INSERIMENTO = DateTime.Now;
                    nuovoIndirizzo.STATO            = (int)Stato.ATTIVO;
                    // se l'indirizzo è stato modificato allora associo il nuovo
                    nuovoIndirizzo.INDIRIZZO = db.INDIRIZZO.Include("Comune").SingleOrDefault(m => m.INDIRIZZO1 == indirizzo && m.ID_COMUNE == comune && m.CIVICO == civico);
                    if (nuovoIndirizzo.INDIRIZZO == null)
                    {
                        // se non trovo l'indirizzo nuovo su db lo inserisco
                        nuovoIndirizzo.INDIRIZZO = new INDIRIZZO();
                        nuovoIndirizzo.INDIRIZZO.DATA_INSERIMENTO = DateTime.Now;
                        nuovoIndirizzo.INDIRIZZO.STATO            = (int)Stato.ATTIVO;
                        nuovoIndirizzo.INDIRIZZO.ID_COMUNE        = (int)comune;
                        nuovoIndirizzo.INDIRIZZO.INDIRIZZO1       = indirizzo;
                        nuovoIndirizzo.INDIRIZZO.CIVICO           = civico;
                        db.INDIRIZZO.Add(nuovoIndirizzo.INDIRIZZO);
                        db.SaveChanges();
                    }
                    nuovoIndirizzo.ID_INDIRIZZO = nuovoIndirizzo.INDIRIZZO.ID;
                    db.PERSONA_INDIRIZZO.Add(nuovoIndirizzo);
                }
                modificato = db.SaveChanges() > 0;
            }
        }