Esempio n. 1
0
 public AgendaController()
 {
     business_  = new AgendaBUS();
     _viewModel = new AgendaVM {
         Agendas = business_.Listar()
     };
     business_._mensagem += (msg_, tipo_) => CriarTempData(msg_, tipo_);
 }
Esempio n. 2
0
        public AgendaController(Action <BlockController> blockGotFocusHandler, Action <BlockController, bool> collapseRequested, int initialOmitDays)
            : base(blockGotFocusHandler, collapseRequested)
        {
            VM = new AgendaVM(VMGotFocus)
            {
                AllowRequestMore = true
            };

            //hook up VM events
            VM.PropertyChanged += (s, e) =>
            {
                if (e.PropertyName == "BoxVisibilityIncluded")
                {
                    RefreshDefinitely(true);
                }
            };
            VM.ItemGotFocus = idx =>
            {
                LastFocusedBoxId = VM.Rows[idx].AgendaEntry.Box.RowId;
            };
            VM.MoreRequested = () =>
            {
                if (Size == AgendaSize.TwoWeeks)
                {
                    Size = AgendaSize.Month;
                }
                else if (Size == AgendaSize.Month)
                {
                    Size = AgendaSize.All;
                }
                VM.AllowRequestMore = Size != AgendaSize.All;
                RefreshDefinitely(true);
            };
            VM.MouseOpenRequested = (eventSource, rowVM) =>
            {
                LastFocusedBoxId = rowVM.AgendaEntry.Box.RowId;
                HandleCommand(Globals.Commands.OPEN);
            };

            NDaysToOmit = initialOmitDays; //refreshes
        }
Esempio n. 3
0
        public ActionResult Obter(AgendaVM model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var client = new HttpClient();
                    client.BaseAddress = new Uri(ConfigurationManager.AppSettings["service:ApiAddress"].ToString());
                    client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));

                    var identity = (ClaimsPrincipal)Thread.CurrentPrincipal;

                    var response = client.PutAsync("Agenda",
                                                   new FormUrlEncodedContent(new[]
                    {
                        new KeyValuePair <string, string>("IdClinica", identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault()),
                        new KeyValuePair <string, string>("IdOdontologista", model.IdOdontologista.ToString()),
                        new KeyValuePair <string, string>("TempoAtendimento", model.TempoAtendimento.ToString())
                    })).Result;
                    if (response.IsSuccessStatusCode)
                    {
                        this.ShowMessage("Agenda salva.", "Sucesso!");
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        ModelState.AddModelError(string.Empty, response.Content.ReadAsStringAsync().Result);
                        return(View(model));
                    }
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError(string.Empty, ex);
                    return(View(model));
                }
            }
            return(View());
        }
Esempio n. 4
0
 public ActionResult Inserir(AgendaVM _model)
 {
     business_.Inserir(_model.Agenda);
     return(RedirectToAction("Listar"));
 }
Esempio n. 5
0
        public ActionResult Obter(int IdOdonto)
        {
            var client = new HttpClient();

            client.BaseAddress = new Uri(ConfigurationManager.AppSettings["service:ApiAddress"].ToString());
            client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));

            var identity = (ClaimsPrincipal)Thread.CurrentPrincipal;

            var model = new AgendaVM();

            model.IdOdontologista = (int)IdOdonto;

            var responseAgenda = client.GetAsync("Agenda?"
                                                 + "idClinica=" + identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault()
                                                 + "&idOdontologista=" + IdOdonto)
                                 .Result;

            var EmpResponseAgenda = responseAgenda.Content.ReadAsStringAsync().Result;

            var agenda = JsonConvert.DeserializeObject <AgendaDTL.Agenda>(EmpResponseAgenda);

            model.TempoAtendimento = agenda.TempoAtendimento;

            var response = client.GetAsync("SemanaAgenda?"
                                           + "idClinica=" + identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault()
                                           + "&idOdontologista=" + IdOdonto)
                           .Result;

            var EmpResponse = response.Content.ReadAsStringAsync().Result;

            var semanasAgenda = JsonConvert.DeserializeObject <List <AgendaDTL.SemanaAgenda> >(EmpResponse);


            model.AgendaSemana = new List <SemanaAgendaVM>();
            foreach (var semana in semanasAgenda)
            {
                model.AgendaSemana.Add(
                    new SemanaAgendaVM(semana.Id, semana.IdOdontologista, semana.DiaSemana,
                                       semana.HorarioAtendimentoInicio, semana.HorarioAtendimentoTermino)
                    );
            }

            response = client.GetAsync("DiaAgenda?"
                                       + "idClinica=" + identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault()
                                       + "&idOdontologista=" + IdOdonto)
                       .Result;

            EmpResponse = response.Content.ReadAsStringAsync().Result;

            var diasAgenda = JsonConvert.DeserializeObject <List <AgendaDTL.DiaAgenda> >(EmpResponse);


            model.AgendaDia = new List <DiaAgendaVM>();
            foreach (var dia in diasAgenda)
            {
                model.AgendaDia.Add(
                    new DiaAgendaVM()
                {
                    Id   = dia.Id,
                    Data = dia.Data,
                    HorarioAtendimentoInicio  = dia.HorarioAtendimentoInicio,
                    HorarioAtendimentoTermino = dia.HorarioAtendimentoTermino,
                    IdOdontologista           = dia.IdOdontologista
                }
                    );
            }

            response = client.GetAsync("AgendaDayOff?"
                                       + "idClinica=" + identity.Claims.Where(c => c.Type == ClaimTypes.Sid).Select(c => c.Value).SingleOrDefault()
                                       + "&idOdontologista=" + IdOdonto)
                       .Result;

            EmpResponse = response.Content.ReadAsStringAsync().Result;

            var dayoffAgenda = JsonConvert.DeserializeObject <List <AgendaDTL.AgendaDayOff> >(EmpResponse);


            model.AgendaDayOff = new List <DayOffVM>();
            foreach (var dia in dayoffAgenda)
            {
                model.AgendaDayOff.Add(
                    new DayOffVM()
                {
                    Id              = dia.Id,
                    Data            = dia.Data,
                    IdOdontologista = dia.IdOdontologista
                }
                    );
            }

            return(View(model));
        }