コード例 #1
0
        public ActionResult Create(Models.AgendaModel agenda)
        {
            var connString = "Server=DESKTOP-RSCA7A0\\SQLCAMPOS;Database=db_ness_entrevista;Trusted_Connection=True;";

            using (var conn = new SqlConnection(connString))
            {
                var data = DateTime.Parse(agenda.Data);

                //access SQL Server and run your command
                string QUERY = string.Empty;
                if (agenda.Paciente != null)
                {
                    QUERY = $"INSERT INTO TB_AGENDA (DT_AGENDA, CD_PACIENTE) VALUES ('{data.ToString("yyyy-MM-dd")}', {agenda.Paciente.ID}) ";
                }
                else
                {
                    QUERY = $"INSERT INTO TB_AGENDA (DT_AGENDA) VALUES ('{data.ToString("yyyy-MM-dd")}') ";
                }

                var cmd = new SqlCommand(QUERY, conn);
                conn.Open();
                cmd.ExecuteNonQuery();
                conn.Close();
            }

            // Voltar para a pagina de listagem de pacientes
            return(RedirectToAction("Index"));
        }
コード例 #2
0
        public ActionResult Edit(Models.AgendaModel agenda)
        {
            var connString = "Server=DESKTOP-RSCA7A0\\SQLCAMPOS;Database=db_ness_entrevista;Trusted_Connection=True;";

            using (var conn = new SqlConnection(connString))
            {
                var data = DateTime.Parse(agenda.Data);

                string QUERY = string.Empty;

                //access SQL Server and run your command
                if (agenda.Paciente == null)
                {
                    QUERY = $"UPDATE TB_AGENDA SET DT_AGENDA = '{data.ToString("yyyy-MM-dd")}', CD_PACIENTE=NULL WHERE CD_AGENDA = {agenda.ID}";
                }
                else
                {
                    QUERY = $"UPDATE TB_AGENDA SET DT_AGENDA = '{data.ToString("yyyy-MM-dd")}', CD_PACIENTE={agenda.Paciente.ID} WHERE CD_AGENDA = {agenda.ID}";
                }

                var cmd = new SqlCommand(QUERY, conn);
                conn.Open();
                cmd.ExecuteNonQuery();
                conn.Close();
            }

            // Voltar para a pagina de listagem de pacientes
            return(RedirectToAction("Index"));
        }
コード例 #3
0
        public MntDados(Models.AgendaModel agenda = null)
        {
            //salva dados corrente
            dadosAgenda = agenda;

            InitializeComponent();
            viewModel           = new DadosViewModel(this);
            this.BindingContext = viewModel;

            //mostra dados da agenda corrente
            if (agenda != null)
            {
                viewModel.Nome     = agenda.Nome;
                viewModel.Telefone = agenda.Telefone;
                viewModel.Imagem   = agenda.Imagem;

                viewModel.InformaAlteracao("Nome");
                viewModel.InformaAlteracao("Telefone");
                viewModel.InformaAlteracao("Imagem");
            }
            else
            {
                viewModel.Imagem = "profile.png";
                viewModel.InformaAlteracao("Imagem");
            }
        }
コード例 #4
0
        public ActionResult Index()
        {
            var agendas = new List <Models.AgendaModel>();

            // Acessar o banco de dados e listar todos os pacientes:
            // Exemplo da pagina: https://www.mssqltips.com/sqlservertip/5677/how-to-get-started-with-sql-server-and-net/
            var connString = "Server=DESKTOP-RSCA7A0\\SQLCAMPOS;Database=db_ness_entrevista;Trusted_Connection=True;";

            using (var conn = new SqlConnection(connString))
            {
                //access SQL Server and run your command
                string QUERY = "SELECT A.CD_AGENDA, A.CD_PACIENTE, A.DT_AGENDA, P.DC_PACIENTE, P.DT_CRIADOEM FROM TB_AGENDA A  LEFT JOIN TB_PACIENTE P ON A.CD_PACIENTE = P.CD_PACIENTE ORDER BY CD_AGENDA ASC";
                var    cmd   = new SqlCommand(QUERY, conn);
                conn.Open();
                //execute the SQLCommand
                var dr = cmd.ExecuteReader();

                //check if there are records
                if (dr.HasRows)
                {
                    // check if there are rows for read
                    while (dr.Read())
                    {
                        var agenda = new Models.AgendaModel();

                        // ID da agenda
                        agenda.ID = dr.GetInt32(dr.GetOrdinal("CD_AGENDA"));

                        // Data da agenda
                        agenda.Data = dr.GetDateTime(dr.GetOrdinal("DT_AGENDA")).ToString("dd/MM/yyyy");

                        // A data da agenda pode estar disponivel ou não quando estiver disponivel, não existira um paciente  vinculado para esta data
                        if (!dr.IsDBNull(dr.GetOrdinal("CD_PACIENTE")))
                        {
                            // Existe um paciente vinculado a esta data, carrega-lo para posterior exibição
                            // Data de criação do paciente
                            agenda.Paciente          = new Models.PacienteModel();
                            agenda.Paciente.ID       = dr.GetInt32(dr.GetOrdinal("CD_PACIENTE"));
                            agenda.Paciente.Nome     = dr.GetString(dr.GetOrdinal("DC_PACIENTE"));
                            agenda.Paciente.CriadoEm = dr.GetDateTime(dr.GetOrdinal("DT_CRIADOEM"));
                        }

                        agendas.Add(agenda);
                    }
                }
                else
                {
                    // TODO yet I dont knows what to do when thre isnt paciente
                }

                dr.Close();

                conn.Close();
            }

            return(View(agendas));
        }
コード例 #5
0
        public DadosViewModel(MntDados pai)
        {
            ParentPage     = pai;
            this.OkCommand = new Command(async() =>
            {
                //verifica se todos os campos foram informados
                if (ParentPage.DadosOk())
                {
                    //atualizar lista de eventos da aplicação, avisando janela pai que dados foram alterados
                    Models.AgendaModel novo = new Models.AgendaModel(0, Nome, Telefone, Imagem);
                    if (ParentPage.dadosAgenda != null)
                    {
                        novo.Id = ParentPage.dadosAgenda.Id;
                    }
                    MessagingCenter.Send <Application, Models.AgendaModel>(App.Current, "MntDados", novo);

                    //encerrar tela
                    var telaInicial = Application.Current.MainPage as Views.MasterDetailPrincipal;
                    await telaInicial.PopAsync();
                }
            });

            this.DeleteCommand = new Command(async() =>
            {
                if (ParentPage.dadosAgenda == null)
                {
                    await ParentPage.DisplayAlert("Erro", "Dados não podem ser eliminados", "Ok");
                }
                else
                {
                    var respota = await ParentPage.DisplayAlert("Elimina Registro", "Confirma eliminação do registro?", "Sim", "Não");
                    if (respota)
                    {
                        MessagingCenter.Send <Application, Models.AgendaModel>(App.Current, "DeleteDados", ParentPage.dadosAgenda);

                        //encerrar tela
                        var telaInicial = Application.Current.MainPage as Views.MasterDetailPrincipal;
                        await telaInicial.PopAsync();
                    }
                }
            });

            this.shareCommand = new Command(async() =>
            {
                if (ParentPage.dadosAgenda != null)
                {
                    string dados = ParentPage.dadosAgenda.Nome + " - " + ParentPage.dadosAgenda.Telefone;
                    await DependencyService.Get <Interfaces.IDeviceSpecific>().CompartilharDados("Agenda Telefônica", dados);
                }
                else
                {
                    await ParentPage.DisplayAlert("Alerta", "Não foi possível compartilhar dados", "Ok");
                }
            });
        }
コード例 #6
0
        /// <summary>
        /// Ação de Delete, ira deletar o paciente informado
        /// </summary>
        /// <param name="id">parametro com o id do paciente, precisa se chamar ID por causa da definição de rota, ver artigo: https://stackoverflow.com/questions/45058519/an-optional-parameter-must-be-a-reference-type-a-nullable-type-or-be-declared</param>
        /// <returns></returns>
        public ActionResult Details(int id)
        {
            var agenda = new Models.AgendaModel();

            var connString = "Server=DESKTOP-RSCA7A0\\SQLCAMPOS;Database=db_ness_entrevista;Trusted_Connection=True;";

            using (var conn = new SqlConnection(connString))
            {
                //access SQL Server and run your command
                string QUERY = $"SELECT A.CD_AGENDA, A.CD_PACIENTE, A.DT_AGENDA, P.DC_PACIENTE, P.DT_CRIADOEM FROM TB_AGENDA A  LEFT JOIN TB_PACIENTE P ON A.CD_PACIENTE = P.CD_PACIENTE WHERE CD_AGENDA = {id}";
                var    cmd   = new SqlCommand(QUERY, conn);
                conn.Open();
                //execute the SQLCommand
                var dr = cmd.ExecuteReader();

                //check if there are records
                if (dr.HasRows)
                {
                    // check if there are rows for read
                    if (dr.Read())
                    {
                        // ID da agenda
                        agenda.ID = dr.GetInt32(dr.GetOrdinal("CD_AGENDA"));

                        // Data da agenda
                        agenda.Data = dr.GetDateTime(dr.GetOrdinal("DT_AGENDA")).ToString("dd/MM/yyyy");

                        // A data da agenda pode estar disponivel ou não quando estiver disponivel, não existira um paciente  vinculado para esta data
                        if (!dr.IsDBNull(dr.GetOrdinal("CD_PACIENTE")))
                        {
                            // Existe um paciente vinculado a esta data, carrega-lo para posterior exibição
                            // Data de criação do paciente
                            agenda.Paciente          = new Models.PacienteModel();
                            agenda.Paciente.ID       = dr.GetInt32(dr.GetOrdinal("CD_PACIENTE"));
                            agenda.Paciente.Nome     = dr.GetString(dr.GetOrdinal("DC_PACIENTE"));
                            agenda.Paciente.CriadoEm = dr.GetDateTime(dr.GetOrdinal("DT_CRIADOEM"));
                        }
                    }
                }
                else
                {
                    // TODO yet I dont knows what to do when thre isnt paciente
                }

                dr.Close();

                conn.Close();
            }

            return(View(agenda));
        }
コード例 #7
0
        public ActionResult Scheduling(Models.AgendaModel agenda)
        {
            var connString = "Server=DESKTOP-RSCA7A0\\SQLCAMPOS;Database=db_ness_entrevista;Trusted_Connection=True;";

            using (var conn = new SqlConnection(connString))
            {
                string QUERY = $"UPDATE TB_AGENDA SET CD_PACIENTE={Request.Form["PacienteID"]} WHERE CD_AGENDA = {agenda.ID}";
                var    cmd   = new SqlCommand(QUERY, conn);
                conn.Open();
                cmd.ExecuteNonQuery();
                conn.Close();
            }

            // Voltar para a pagina de listagem de pacientes
            return(RedirectToAction("Index"));
        }
コード例 #8
0
        public ActionResult Delete(Models.AgendaModel paciente)
        {
            var connString = "Server=DESKTOP-RSCA7A0\\SQLCAMPOS;Database=db_ness_entrevista;Trusted_Connection=True;";

            using (var conn = new SqlConnection(connString))
            {
                //access SQL Server and run your command
                string QUERY = $"DELETE FROM TB_AGENDA WHERE CD_AGENDA = {paciente.ID}";
                var    cmd   = new SqlCommand(QUERY, conn);
                conn.Open();
                cmd.ExecuteNonQuery();
                conn.Close();
            }

            // Voltar para a pagina de listagem de pacientes
            return(RedirectToAction("Index"));
        }