예제 #1
0
 public AlimentoEstabelecimento(int numeroPreferenciasVerificadas, float distancia, Estabelecimento estabelecimento, Alimento alimento)
 {
     this.numeroPreferenciasVerificadas = numeroPreferenciasVerificadas;
     this.distancia       = distancia;
     this.estabelecimento = estabelecimento;
     this.alimento        = alimento;
 }
예제 #2
0
        public AlimentoEstabelecimento ConsultarAlimento(int idAlimento)
        {
            Alimento        a = estabelecimentos.ObterAlimento(idAlimento);
            Estabelecimento e = estabelecimentos.ObterEstabelecimento(a.IdEstabelecimento);

            return(new AlimentoEstabelecimento(e, a));
        }
예제 #3
0
        private AlimentoEstabelecimento(Parcel source)
        {
            ClassLoader estabelecimentoClassLoader = new Estabelecimento().Class.ClassLoader;
            ClassLoader alimentoClassLoader        = new Alimento().Class.ClassLoader;

            numeroPreferenciasVerificadas = source.ReadInt();
            estabelecimento = (Estabelecimento)source.ReadParcelable(estabelecimentoClassLoader);
            alimento        = (Alimento)source.ReadParcelable(alimentoClassLoader);
            distancia       = source.ReadFloat();
        }
예제 #4
0
        internal IList <Estabelecimento> ConsultarEstabelecimentos(int proprietarioAutenticado)
        {
            IList <Estabelecimento> res = new List <Estabelecimento>();

            using (var sqlCon = new SqlConnection(DAO.CONECTION_STRING))
            {
                string txtCmd = "SELECT * FROM Estabelecimento WHERE id_proprietario = @id_p";

                sqlCon.Open();
                using (var cmd = new SqlCommand(txtCmd, sqlCon))
                {
                    cmd.Parameters.Add("@id_p", SqlDbType.Int);
                    cmd.Parameters["@id_p"].Value = proprietarioAutenticado;

                    using (var reader = cmd.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            int idEstabelecimento = Convert.ToInt32(reader["id"]);

                            char[]          delim  = { ' ' };
                            string[]        coords = reader["coords"].ToString().Split(delim);
                            double          lat    = double.Parse(coords[0]);
                            double          lon    = double.Parse(coords[1]);
                            Estabelecimento e      = new Estabelecimento(idEstabelecimento, reader["nome"].ToString(),
                                                                         reader["contacto_tel"].ToString(), reader["morada"].ToString(), lat, lon,
                                                                         reader["horario"].ToString(), !Convert.ToBoolean(reader["ativo"]));

                            res.Add(e);
                        }
                    }
                }
                foreach (Estabelecimento e in res)
                {
                    IList <Classificacao> classif = classificacoes.ClassificacoesEstabelecimento(e.Id, sqlCon);

                    e.AdicionarClassificacoes(classif);
                    e.ClassificacaoMedia = e.ObterAvaliacaoMedia();
                }
            }
            return(res);
        }
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            SetContentView(Resource.Layout.PerfilEstabelecimento);

            nomeRestTextView  = FindViewById <TextView>(Resource.Id.nomeRestPerfilTextView);
            restRatingBar     = FindViewById <RatingBar>(Resource.Id.ratingRestPerfilRatingBar);
            ruaTextView       = FindViewById <TextView>(Resource.Id.ruaRestPerfilTextView);
            contactoTextView  = FindViewById <TextView>(Resource.Id.contactoRestPerfilTextView);
            descricaoTextView = FindViewById <TextView>(Resource.Id.descricaoRestPerfilTextView);
            foto = FindViewById <ImageView>(Resource.Id.restauranteImageView);

            // Botões
            botaoHorario     = FindViewById <Button>(Resource.Id.horarioRestPerfilButton);
            botaoComentarios = FindViewById <Button>(Resource.Id.comentariosRestPerfilButton);
            botaoPartilha    = FindViewById <Button>(Resource.Id.partilhaRestPerfilButton);
            botaoMapa        = FindViewById <ImageButton>(Resource.Id.direccoesEstabelecimentoPerfilButton);

            botaoHorario.Click     += HandlerBotaoHorario;
            botaoComentarios.Click += HandlerBotaoComentarios;
            botaoPartilha.Click    += HandlerBotaoPartilha;
            botaoMapa.Click        += HandlerBotaoMapa;

            estabelecimento = (Estabelecimento)Intent.GetParcelableExtra("estabelecimento");
            byte[] fotoEstabelecimento = estabelecimento.Foto;

            // Campos opcionais
            if (fotoEstabelecimento != null)
            {
                foto.SetImageBitmap(BitmapFactory.DecodeByteArray(fotoEstabelecimento, 0, fotoEstabelecimento.Length));
            }
            nomeRestTextView.Text  = estabelecimento.Nome;
            restRatingBar.Rating   = estabelecimento.ClassificacaoMedia;
            ruaTextView.Text       = estabelecimento.Morada;
            contactoTextView.Text  = estabelecimento.ContactoTel;
            descricaoTextView.Text = estabelecimento.Descricao ?? "";
        }
예제 #6
0
        public Estabelecimento ObterEstabelecimento(int idEstabelecimento)
        {
            Estabelecimento e = null;

            using (var sqlCon = new SqlConnection(DAO.CONECTION_STRING))
            {
                string txtCmd = "SELECT * FROM Estabelecimento WHERE id = @id AND ativo != 0";

                sqlCon.Open();
                using (var cmd = new SqlCommand(txtCmd, sqlCon))
                {
                    cmd.Parameters.Add("@id", SqlDbType.Int);
                    cmd.Parameters["@id"].Value = idEstabelecimento;

                    using (var reader = cmd.ExecuteReader())
                    {
                        if (reader.Read())
                        {
                            char[]   delim  = { ' ' };
                            string[] coords = reader["coords"].ToString().Split(delim);
                            double   lat    = double.Parse(coords[0], CultureInfo.InvariantCulture);
                            double   lon    = double.Parse(coords[1], CultureInfo.InvariantCulture);

                            e = new Estabelecimento(Convert.ToInt32(reader["id"]), reader["nome"].ToString(),
                                                    reader["contacto_tel"].ToString(), reader["morada"].ToString(), lat, lon,
                                                    reader["horario"].ToString(), !Convert.ToBoolean(reader["ativo"]));
                        }
                    }
                }
                if (e != null)
                {
                    e.AdicionarClassificacoes(classificacoes.ClassificacoesEstabelecimento(idEstabelecimento, sqlCon));
                    e.ClassificacaoMedia = e.ObterAvaliacaoMedia();
                }
            }
            return(e);
        }
예제 #7
0
 public AlimentoEstabelecimento(Estabelecimento estabelecimento, Alimento alimento)
 {
     this.estabelecimento = estabelecimento;
     this.alimento        = alimento;
 }