public async Task <IActionResult> Create(long?establecimientoId = null)
        {
            try
            {
                SalaViewModel model = null;

                if (establecimientoId.HasValue)
                {
                    model = new SalaViewModel()
                    {
                        EstablecimientoId = establecimientoId.Value
                    };
                    ViewBag.EstablecimientoId = establecimientoId.Value;
                }
                else
                {
                    model = new SalaViewModel()
                    {
                        Establecimientos = await _helperEstablecimiento.PoblarCombo()
                    };
                    ViewBag.EstablecimientoId = null;
                }

                return(View(model));
            }
            catch (Exception)
            {
                return(RedirectToAction(nameof(Index), new { establecimientoId }));
            }
        }
        public async Task <bool> DeletarSala(SalaViewModel salaVM)
        {
            try
            {
                var sala = Mapper.Map <Sala>(salaVM);
                if (await ValidarExcluirSala(sala.Id))
                {
                    var relacionais = await _salaProfessorRelacionalRepository.Get(x => x.IdSala == sala.Id);

                    foreach (var relacional in relacionais)
                    {
                        await BeginTransaction();

                        await Task.Run(() => _salaProfessorRelacionalRepository.Delete(relacional));
                        await Commit();
                    }

                    await BeginTransaction();

                    await Task.Run(() => _salaRepository.Delete(sala));
                    await Commit();

                    return(true);
                }
                return(false);
            }
            catch (Exception e)
            {
                throw e;
            }
        }
        public async Task <IActionResult> Edit(SalaViewModel vm, long?vbEstablecimiento = null)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    ViewBag.EstablecimientoId = vbEstablecimiento.HasValue ? vbEstablecimiento.Value : (dynamic)null;
                    throw new Exception("Error de validacion no controlado.");
                }

                var dto = new SalaDto()
                {
                    Id                = vm.Id,
                    Nombre            = vm.Nombre,
                    EstablecimientoId = vm.EstablecimientoId
                };

                await _salaServicio.Modificar(dto);

                return(RedirectToAction(nameof(Index), new { establecimientoId = vbEstablecimiento }));
            }
            catch (Exception)
            {
                return(View(vm));
            }
        }
        public async Task <IActionResult> Edit(long id, long?vbEstablecimiento = null)
        {
            try
            {
                var dto = (SalaDto)await _salaServicio.Obtener(id);

                var model = new SalaViewModel()
                {
                    Id                = dto.Id,
                    Nombre            = dto.Nombre,
                    EstablecimientoId = dto.EstablecimientoId,
                    EstaEliminado     = dto.EliminadoStr,
                    Establecimiento   = await _helperEstablecimiento.ObtenerEstablecimiento(dto.EstablecimientoId),
                    Establecimientos  = await _helperEstablecimiento.PoblarCombo()
                };

                ViewBag.EstablecimientoId = vbEstablecimiento;

                return(View(model));
            }
            catch (Exception)
            {
                return(RedirectToAction(nameof(Index), new { establecimientoId = vbEstablecimiento }));
            }
        }
예제 #5
0
 public object Delete([FromServices] ISalaAppService salaAppService,
                      [FromBody] SalaViewModel salaViewModel)
 {
     salaAppService.Excluir(salaViewModel);
     return(new
     {
         errors = false,
         message = "Cadastro efetuado com sucesso."
     });
 }
예제 #6
0
        public async Task <ActionResult <SalaViewModel> > Adicionar(SalaViewModel salaViewModel)
        {
            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            await _salaService.Adicionar(_mapper.Map <Sala>(salaViewModel));

            return(CustomResponse(salaViewModel));
        }
예제 #7
0
 public async Task <IHttpActionResult> DeletarSala(SalaViewModel sala)
 {
     try
     {
         return(Ok(await _salaAppService.DeletarSala(sala)));
     }
     catch (Exception e)
     {
         return(InternalServerError(e));
     }
 }
        public ValidationAppResult Adicionar(SalaViewModel salaViewModel)
        {
            var sala   = _mapper.Map <Sala>(salaViewModel);
            var result = _salaService.Adicionar(sala);

            if (!result.IsValid)
            {
                return(DomainToApplicationResult(result));
            }

            return(DomainToApplicationResult(result));
        }
예제 #9
0
 public ActionResult <SalaViewModel> Create([FromBody] SalaViewModel sala)
 {
     try
     {
         var salaDomain     = _mapper.Map <SalaViewModel, Sala>(sala);
         var salaAdicionada = _salaAppService.Add(salaDomain);
         return(Ok(_mapper.Map <Sala, SalaViewModel>(salaAdicionada)));
     }
     catch
     {
         return(BadRequest());
     }
 }
예제 #10
0
        public async Task <SalaViewModel> ObtenerSala(long id)
        {
            var dto = (SalaDto)await _salaServicio.Obtener(id);

            var modelo = new SalaViewModel()
            {
                Id                = dto.Id,
                EstaEliminado     = dto.EliminadoStr,
                Nombre            = dto.Nombre,
                EstablecimientoId = dto.EstablecimientoId
            };

            return(modelo);
        }
        public async Task <bool> SalvarSala(SalaViewModel salaVM)
        {
            try
            {
                var sala           = Mapper.Map <Sala>(salaVM);
                var idsProfessores = salaVM.IdsProfessores;
                //Salvar Sala
                await BeginTransaction();

                if (sala.Id == 0)
                {
                    sala = await Task.Run(() => _salaRepository.AddReturn(sala));
                }
                else
                {
                    await Task.Run(() => _salaRepository.Update(sala));
                }
                await Commit();

                //Deletar SalaProfessorRelacional
                var salasProfessoresRalacionais = await _salaProfessorRelacionalRepository.Get(x => x.IdSala == sala.Id);

                foreach (var relacional in salasProfessoresRalacionais)
                {
                    await BeginTransaction();

                    await Task.Run(() => _salaProfessorRelacionalRepository.Delete(relacional));
                    await Commit();
                }
                //Inserir SalaProfessorRelacional
                foreach (int idProfessor in idsProfessores)
                {
                    SalaProfessorRelacional salaProfessor = new SalaProfessorRelacional
                    {
                        IdProfessor = idProfessor,
                        IdSala      = sala.Id
                    };
                    await BeginTransaction();

                    await Task.Run(() => _salaProfessorRelacionalRepository.Add(salaProfessor));
                    await Commit();
                }
                return(true);
            }
            catch (Exception e)
            {
                throw e;
            }
        }
예제 #12
0
        public ActionResult CadastrarSala(SalaViewModel model, int Status)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            Sala sala = new Sala
            {
                SALA      = model.SALA,
                ID_STATUS = Status
            };

            _salasNegocios.Salvar(sala);
            return(RedirectToAction("ListagemSalas", new RouteValueDictionary(new { Controller = "Sala", Action = "ListagemSalas" })));
        }
예제 #13
0
        public ActionResult Index(SalaViewModel model)
        {
            if (model.NomeSala != null && model.NomeSala != "")
            {
                model.ListaSalas = db.Salas.Where(i => i.NomeSala.ToUpper().Contains(model.NomeSala.ToUpper())).ToList();

                return(View(model));
            }
            else
            {
                model.ListaSalas = db.Salas.ToList();

                return(View(model));
            }
        }
예제 #14
0
 public ActionResult Edit(int id, [FromBody] SalaViewModel sala)
 {
     try
     {
         if (id != sala.SalaId)
         {
             return(BadRequest());
         }
         _salaAppService.Update(_mapper.Map <SalaViewModel, Sala>(sala));
         return(NoContent());
     }
     catch
     {
         return(BadRequest());
     }
 }
예제 #15
0
 public ActionResult Delete(int id, [FromBody] SalaViewModel sala)
 {
     try
     {
         if (sala.SalaId != id)
         {
             return(BadRequest());
         }
         _salaAppService.Remove(_mapper.Map <SalaViewModel, Sala>(sala));
         return(NoContent());
     }
     catch
     {
         return(BadRequest());
     }
 }
예제 #16
0
        public async Task <ActionResult <SalaViewModel> > Atualizar(Guid id, SalaViewModel SalaViewModel)
        {
            if (id != SalaViewModel.Id)
            {
                NotificarErro("O id informado não é o mesmo que foi passado por parâmetro");
                return(CustomResponse(SalaViewModel));
            }

            if (!ModelState.IsValid)
            {
                return(CustomResponse(ModelState));
            }

            await _salaService.Atualizar(_mapper.Map <Sala>(SalaViewModel));

            return(CustomResponse(SalaViewModel));
        }
        public async Task <IActionResult> Post([FromForm] SalaViewModel salaViewModel)
        {
            try
            {
                var sala = new SalaViewModel
                {
                    SalaTitulo    = salaViewModel.SalaTitulo,
                    SalaDescricao = salaViewModel.SalaDescricao,
                };

                await _salaManager.Post(_mapper.Map <SalaModel>(sala));

                return(View());
            }
            catch (Exception ex)
            {
                TempData["NotifyMessage"] = "" + ex.Message;
                return(BadRequest());
            }
        }
예제 #18
0
        public ActionResult Assign(int id)
        {
            ViewBag.Title = "Asignar docente a salas";

            var usuario = servicio.ObtenerDocentePorId(usuarioLogueado, id);
            var salas   = servicio.ObtenerSalasPorInstitucion(usuarioLogueado);

            SalaViewModel model = new SalaViewModel();

            model.Usuario = usuario;

            model.Salas = salas.Select(x => new SalaSelectedViewModel()
            {
                Id       = x.Id,
                Nombre   = x.Nombre,
                Selected = usuario.Salas?.Any(s => s.Id == x.Id) ?? false
            }).ToArray();

            return(View(model));
        }
예제 #19
0
        public Sale()
        {
            this.InitializeComponent();

            SalaViewModel saleVM = new SalaViewModel();

            DataContext = saleVM;

            if (App.admin == true)
            {
                dodajSalu_button.Visibility   = Visibility.Visible;
                izbrisiSalu_button.Visibility = Visibility.Visible;
                editujSalu_button.Visibility  = Visibility.Visible;
            }
            else
            {
                dodajSalu_button.Visibility   = Visibility.Collapsed;
                izbrisiSalu_button.Visibility = Visibility.Collapsed;
                editujSalu_button.Visibility  = Visibility.Collapsed;
            }
        }
예제 #20
0
        public ActionResult Assign(int id, SalaViewModel model)
        {
            var salas   = servicio.ObtenerSalasPorInstitucion(usuarioLogueado);
            var usuario = servicio.ObtenerDocentePorId(usuarioLogueado, id);

            foreach (var sala in usuario.Salas ?? new Sala[] { })
            {
                if (model.Salas.Any(x => x.Selected && x.Id == sala.Id) == false)
                {
                    servicio.DesasignarDocenteSala(usuario, sala, usuarioLogueado);
                }
            }

            foreach (var item in model.Salas.Where(x => x.Selected))
            {
                var sala = salas.Single(x => x.Id == item.Id);

                servicio.AsignarDocenteSala(usuario, sala, usuarioLogueado);
            }


            return(RedirectToAction("Index"));
        }
 public SalaPage()
 {
     InitializeComponent();
     BindingContext = salaVM = new SalaViewModel();
 }
 private void Sala_Click(object sender, RoutedEventArgs e)
 {
     DataContext = new SalaViewModel();
 }
예제 #23
0
        // GET: Salas1
        public async Task <IActionResult> Index()
        {
            var temAcesso = await Usuario_Tem_Acesso("Tela de Sala", _context);

            if (!temAcesso)
            {
                return(RedirectToAction("Index", "Home"));
            }



            var applicationDbContext = _context.Sala.Include(p => p.Filial);

            var listaSala = (from SL in _context.Sala
                             join FL in _context.Filial on SL.IdFilial equals FL.Id
                             select
                             new
            {
                SL.Id,
                SL.Nome,
                SL.Capacidade,
                NomeFilial = FL.Nome,
                SL.Multimidia,
                SL.Wifi
            }).ToList();

            List <SalaViewModel> listaSalaVM = new List <SalaViewModel>();

            foreach (var item in listaSala)
            {
                SalaViewModel SalaVM = new SalaViewModel();

                SalaVM.IdSala     = item.Id;
                SalaVM.Nome       = item.Nome;
                SalaVM.Capacidade = item.Capacidade;
                SalaVM.IdFilial   = item.NomeFilial;
                SalaVM.Multimidia = item.Multimidia;
                SalaVM.Wifi       = item.Wifi;

                listaSalaVM.Add(SalaVM);
            }

            var conn = new SqlConnection(@"Integrated Security=SSPI;Persist Security Info=False;User ID=DAVIS;Initial Catalog=GestaoS;Data Source=DAVIS-RODRIGUES");

            using (conn)
            {
                conn.Open();



                var ListaSemPerfilQr = conn.Query(@"SELECT NOMECOMPLETO FROM ASPNETUSERS (NOLOCK)
                                                    WHERE NOT EXISTS(SELECT USERID FROM PerfilUsuario(NOLOCK) WHERE AspNetUsers.Id = UserId)
                                                    ORDER BY NomeCompleto").ToList();

                conn.Close();

                var Valor = ListaSemPerfilQr.Count();

                var Qtde = Valor.ToString();

                var QtdeUsuario = int.Parse(Qtde);


                TempData["QtdeSemPerfil"] = QtdeUsuario;
            }

            return(View(listaSalaVM));
        }
예제 #24
0
        // GET: Salas
        public ActionResult Index()
        {
            SalaViewModel model = new SalaViewModel(db.Salas.ToList());

            return(View(model));
        }
예제 #25
0
 public object Post([FromServices] ISalaAppService salaAppService,
                    [FromBody] SalaViewModel salaViewModel)
 {
     return(salaAppService.Adicionar(salaViewModel));
 }
        public void Editar(SalaViewModel salaViewModel)
        {
            var sala = _mapper.Map <Sala>(salaViewModel);

            _salaService.Alterar(sala);
        }
        public void Excluir(SalaViewModel salaViewModel)
        {
            var sala = _mapper.Map <Sala>(salaViewModel);

            _salaService.Remover(sala);
        }