コード例 #1
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void UpdateBungalow()
        {
            string descrição, nomeParque, localização, tipologia;
            int    preçoBase;
            byte   númeroMáximoPessoas;

            Console.Write("Nome do parque: ");
            nomeParque = Console.ReadLine();

            Console.Write("Localização: ");
            localização = Console.ReadLine();

            Console.Write("Descrição: ");
            descrição = Console.ReadLine();

            Console.Write("Preço Base: ");
            preçoBase = int.Parse(Console.ReadLine());

            Console.Write("Número Máximo de Pessoas: ");
            númeroMáximoPessoas = byte.Parse(Console.ReadLine());

            Console.Write("Tipologia: ");
            tipologia = Console.ReadLine();

            using (var context = new GlampinhoEF()) {
                context.UpdateAlojamentoBungalow(preçoBase, númeroMáximoPessoas, descrição, nomeParque, localização, tipologia);
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void FindFacturas()
        {
            int      NIF, total = 0;
            string   nomeParque;
            DateTime dataInicio, dataFim;

            List <int> data;

            Console.Write("NIF: ");
            NIF = int.Parse(Console.ReadLine());

            Console.Write("Data Inicio(YYYY-MM-DD): ");
            dataInicio = Convert.ToDateTime(Console.ReadLine());

            Console.Write("Data Fim(YYYY-MM-DD): ");
            dataFim = Convert.ToDateTime(Console.ReadLine());

            Console.Write("Nome Parque: ");
            nomeParque = Console.ReadLine();

            using (var context = new GlampinhoEF()) {
                data = context.Database.SqlQuery <int>("SELECT preçoTotal FROM Factura INNER JOIN (\n" +
                                                       "SELECT idFactura FROM Estada INNER JOIN(\n" +
                                                       "SELECT A.id FROM HóspedeEstada INNER JOIN(\n" +
                                                       "SELECT Distinct id FROM ParqueCampismo INNER JOIN AlojamentoEstada ON ParqueCampismo.nome=@p0 )AS A ON HóspedeEstada.id=A.id and HóspedeEstada.NIF=@p1 ) AS B ON B.id=Estada.id and Estada.dataInício between @p2 and @p3)AS C ON Factura.id = C.idFactura",
                                                       nomeParque, NIF, dataInicio, dataFim).ToList();
            }

            foreach (var custo in data)
            {
                total += custo;
            }

            Console.WriteLine("Despedas totais do hóspede com NIF: {0} - {1} Euros\n", NIF, total);
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void CreateExtra(string tipoExtra)
        {
            Extra extra = new Extra();

            Console.Write("Id: ");
            extra.id = int.Parse(Console.ReadLine());

            Console.Write("Descrição: ");
            extra.descrição = Console.ReadLine();

            Console.Write("Preço Dia: ");
            extra.preçoDia = int.Parse(Console.ReadLine());

            if (tipoExtra.Equals("3"))
            {
                using (var context = new GlampinhoEF()) {
                    extra.associado = "alojamento";

                    context.Extra.Add(extra);
                    context.SaveChanges();
                }
            }
            else
            {
                using (var context = new GlampinhoEF()) {
                    extra.associado = "pessoa";

                    context.Extra.Add(extra);
                    context.SaveChanges();
                }
            }
        }
コード例 #4
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void UpdateTenda()
        {
            string descrição, nomeParque, localização;
            int    preçoBase, área;
            byte   númeroMáximoPessoas;

            Console.Write("Nome do parque: ");
            nomeParque = Console.ReadLine();

            Console.Write("Localização: ");
            localização = Console.ReadLine();

            Console.Write("Descrição: ");
            descrição = Console.ReadLine();

            Console.Write("Preço Base: ");
            preçoBase = int.Parse(Console.ReadLine());

            Console.Write("Número Máximo de Pessoas: ");
            númeroMáximoPessoas = byte.Parse(Console.ReadLine());

            Console.Write("Área: ");
            área = int.Parse(Console.ReadLine());

            using (var context = new GlampinhoEF())
            {
                context.UpdateAlojamentoTenda(preçoBase, númeroMáximoPessoas, descrição, nomeParque, localização, área);
            }
        }
コード例 #5
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void UpdateHóspede()
        {
            Hóspede updateHóspede = new Hóspede();

            Console.Write("Nome: ");
            updateHóspede.nome = Console.ReadLine();

            Console.Write("NIF: ");
            updateHóspede.NIF = int.Parse(Console.ReadLine());

            Console.Write("Morada: ");
            updateHóspede.morada = Console.ReadLine();

            Console.Write("Email: ");
            updateHóspede.email = Console.ReadLine();

            Console.Write("Numero Identificação: ");
            updateHóspede.númeroIdentificação = int.Parse(Console.ReadLine());

            using (var context = new GlampinhoEF()) {
                context.Hóspede.Attach(updateHóspede);

                var entry = context.Entry(updateHóspede);
                entry.Property(e => e.nome).IsModified   = true;
                entry.Property(e => e.morada).IsModified = true;
                entry.Property(e => e.email).IsModified  = true;
                entry.Property(e => e.númeroIdentificação).IsModified = true;
                entry.Property(e => e.NIF).IsModified = true;
                context.SaveChanges();
            }
        }
コード例 #6
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void CreateActividade()
        {
            Actividades actividade = new Actividades();

            Console.Write("Nome Actividade: ");
            actividade.nome = Console.ReadLine();

            Console.Write("Nome Parque: ");
            actividade.nomeParque = Console.ReadLine();

            Console.Write("Número Sequencial: ");
            actividade.númeroSequencial = int.Parse(Console.ReadLine());

            Console.Write("Descrição: ");
            actividade.descrição = Console.ReadLine();

            Console.Write("Lotação: ");
            actividade.lotaçãoMáxima = int.Parse(Console.ReadLine());

            Console.Write("Preço participante: ");
            actividade.preçoParticipante = int.Parse(Console.ReadLine());

            Console.Write("Data Realização(YYYY-MM-DD HH:MM:SS): ");
            string dataRealização = Console.ReadLine();

            actividade.ano            = int.Parse(dataRealização.Substring(0, 4));
            actividade.dataRealização = Convert.ToDateTime(dataRealização);

            using (var context = new GlampinhoEF()) {
                context.Actividades.Add(actividade);
                context.SaveChanges();
            }
        }
コード例 #7
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void DeleteHóspede()
        {
            int NIF;

            Console.Write("NIF: ");
            NIF = int.Parse(Console.ReadLine());

            using (var context = new GlampinhoEF()) {
                context.deleteHospede(NIF);
            }
        }
コード例 #8
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void FinishEstadaWithFactura()
        {
            int idEstada;

            Console.Write("ID Estada: ");
            idEstada = int.Parse(Console.ReadLine());

            using (var context = new GlampinhoEF()) {
                context.finishEstadaWithFactura(idEstada);
            }
        }
コード例 #9
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void DeleteBungalow()
        {
            string nomeParque, localização;

            Console.Write("Nome do parque: ");
            nomeParque = Console.ReadLine();

            Console.Write("Localização: ");
            localização = Console.ReadLine();

            using (var context = new GlampinhoEF()) {
                context.deleteAlojamento(localização, nomeParque);
            }
        }
コード例 #10
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void SendEmails()
        {
            List <string> messages;

            Console.Write("Intervalo: ");
            int intervalo = int.Parse(Console.ReadLine());

            using (var context = new GlampinhoEF()) {
                messages = context.SendEmails1(intervalo).ToList();
            }

            Console.WriteLine("\nEmails enviados: \n");

            messages.ForEach((string message) => {
                Console.Write(message);
            });
        }
コード例 #11
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void DeleteActividade()
        {
            string nomeParque;
            int    númeroSequencial, ano;

            Console.Write("Nome Parque: ");
            nomeParque = Console.ReadLine();

            Console.Write("Número Sequencial: ");
            númeroSequencial = int.Parse(Console.ReadLine());

            Console.Write("Ano(YYYY): ");
            ano = int.Parse(Console.ReadLine());

            using (var context = new GlampinhoEF()) {
                context.deleteAtividades(nomeParque, númeroSequencial, ano);
            }
        }
コード例 #12
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void UpdateExtra(string tipoExtra)
        {
            Extra extra = new Extra();

            Console.Write("Id: ");
            extra.id = int.Parse(Console.ReadLine());

            Console.Write("Descrição: ");
            extra.descrição = Console.ReadLine();

            Console.Write("Preço Dia: ");
            extra.preçoDia = int.Parse(Console.ReadLine());

            if (tipoExtra.Equals("3"))
            {
                using (var context = new GlampinhoEF()) {
                    extra.associado = "alojamento";

                    context.Extra.Attach(extra);

                    var entry = context.Entry(extra);
                    entry.Property(e => e.descrição).IsModified = true;
                    entry.Property(e => e.preçoDia).IsModified  = true;
                    entry.Property(e => e.associado).IsModified = true;
                    context.SaveChanges();
                }
            }
            else
            {
                using (var context = new GlampinhoEF()) {
                    extra.associado = "pessoa";

                    context.Extra.Attach(extra);

                    var entry = context.Entry(extra);
                    entry.Property(e => e.descrição).IsModified = true;
                    entry.Property(e => e.preçoDia).IsModified  = true;
                    entry.Property(e => e.associado).IsModified = true;
                    context.SaveChanges();
                }
            }
        }
コード例 #13
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void DeleteParque()
        {
            string         nomeParque;
            List <int>     hóspedes, estadas;
            ParqueCampismo parque = new ParqueCampismo();

            Console.Write("Nome Parque: ");
            nomeParque = Console.ReadLine();

            parque.nome = nomeParque;

            using (var context = new GlampinhoEF()) {
                hóspedes = context.Database.SqlQuery <int>(
                    "SELECT DISTINCT NIF FROM HóspedeEstada \n" +
                    "EXCEPT\n" +
                    "SELECT DISTINCT NIF FROM HóspedeEstada INNER JOIN ( SELECT id FROM AlojamentoEstada WHERE nomeParque<>@p0 ) AS A ON A.id=HóspedeEstada.id", nomeParque).ToList();
            }

            hóspedes.ForEach((hóspede) => {
                using (var context = new GlampinhoEF()) {
                    context.deleteHospede(hóspede);
                }
            });

            using (var context = new GlampinhoEF()) {
                estadas = context.Database.SqlQuery <int>(
                    "SELECT A.id FROM Estada INNER JOIN(SELECT * FROM AlojamentoEstada WHERE nomeParque = @p0) AS A ON Estada.id = A.id", nomeParque).ToList();

                context.Entry(parque).State = EntityState.Deleted;
                context.SaveChanges();
            }

            estadas.ForEach((estadaId) => {
                Estada estada = new Estada();
                estada.id     = estadaId;

                using (var context = new GlampinhoEF()) {
                    context.Entry(estada).State = EntityState.Deleted;
                    context.SaveChanges();
                }
            });
        }
コード例 #14
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void DeleteExtra(string tipoExtra)
        {
            int id;

            Console.Write("Id: ");
            id = int.Parse(Console.ReadLine());

            if (tipoExtra.Equals("3"))
            {
                using (var context = new GlampinhoEF()) {
                    context.deleteExtra(id);
                }
            }
            else
            {
                using (var context = new GlampinhoEF()) {
                    context.deleteExtraPessoa(id);
                }
            }
        }
コード例 #15
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void ListarActividades()
        {
            Console.Write("Data Inicio(YYYY-MM-DD): ");
            DateTime dataInicio = Convert.ToDateTime(Console.ReadLine());

            Console.Write("Data Fim(YYYY-MM-DD): ");
            DateTime dataFim = Convert.ToDateTime(Console.ReadLine());

            using (var context = new GlampinhoEF()) {
                var actividades = context.listarAtividades(dataInicio, dataFim);
                Console.WriteLine("\nActividades disponiveis: \n");

                string output = "";

                foreach (var a in actividades)
                {
                    output += "Nome: " + a.nome + " Descrição: " + a.descrição + "\n";
                }
                Console.WriteLine(output);
            }
        }
コード例 #16
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void InscreverHóspede()
        {
            int    NIF, numeroSequencial, ano;
            string nomeParque;

            Console.Write("NIF Hospede: ");
            NIF = int.Parse(Console.ReadLine());

            Console.Write("Nome Parque: ");
            nomeParque = Console.ReadLine();

            Console.Write("Numero Sequencial: ");
            numeroSequencial = int.Parse(Console.ReadLine());

            Console.Write("Ano(YYYY): ");
            ano = int.Parse(Console.ReadLine());

            using (var context = new GlampinhoEF()) {
                context.inscreverHóspede(NIF, numeroSequencial, nomeParque, ano);
            }
        }
コード例 #17
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void CreateEstadaInTime()
        {
            string   tipoAloj;
            int      NIFResponsável, NIFHóspede, tempoEstada, idExtraPessoal, idExtraAlojamento;
            byte     lotação;
            DateTime dataInício, dataFim;

            Console.Write("NIF Hóspede Responsável: ");
            NIFResponsável = int.Parse(Console.ReadLine());

            Console.Write("NIF Hóspede Acompanhante: ");
            NIFHóspede = int.Parse(Console.ReadLine());

            Console.Write("Data Inicial da Estada(YYYY-MM-DD HH:MM:SS): ");
            dataInício = Convert.ToDateTime(Console.ReadLine());

            Console.Write("Data Final da Estada(YYYY-MM-DD HH:MM:SS): ");
            dataFim = Convert.ToDateTime(Console.ReadLine());

            tempoEstada = dataFim.Subtract(dataInício).Days;

            Console.Write("Tipo de Alojamento(tenda/bungalow): ");
            tipoAloj = Console.ReadLine();

            Console.Write("Lotação de pessoas: ");
            lotação = byte.Parse(Console.ReadLine());

            Console.Write("Identificador extra pessoal: ");
            idExtraPessoal = int.Parse(Console.ReadLine());

            Console.Write("Identificador extra alojamento: ");
            idExtraAlojamento = int.Parse(Console.ReadLine());

            using (var context = new GlampinhoEF()) {
                context.createEstadaInTime(NIFResponsável, NIFHóspede, tempoEstada, tipoAloj, lotação, idExtraPessoal, idExtraAlojamento);
            }
        }
コード例 #18
0
ファイル: Program.cs プロジェクト: RuiDTLima/SI2
        private static void CreateHóspede()
        {
            Hóspede newHóspede = new Hóspede();

            Console.Write("Nome: ");
            newHóspede.nome = Console.ReadLine();

            Console.Write("NIF: ");
            newHóspede.NIF = int.Parse(Console.ReadLine());

            Console.Write("Morada: ");
            newHóspede.morada = Console.ReadLine();

            Console.Write("Email: ");
            newHóspede.email = Console.ReadLine();

            Console.Write("Numero Identificação: ");
            newHóspede.númeroIdentificação = int.Parse(Console.ReadLine());

            using (var context = new GlampinhoEF()) {
                context.Hóspede.Add(newHóspede);
                context.SaveChanges();
            }
        }