예제 #1
0
        public async Task <IActionResult> Create([Bind("Id", "NomeCompleto", "Email", "Senha", "ConfirmarSenha", "IdPerfil", "IdContrato", "Horario", "CargaHorariaSemanal")] Funcionario funcionario, int[] Idcursos)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    // se não houver um funcionario com o mesmo e-mail
                    if (!haveFuncionario(funcionario))
                    {
                        _context.Add(funcionario);
                        await _context.SaveChangesAsync();

                        var currentFuncionario = _context.Funcionarios.Where(f => f.Email.Equals(funcionario.Email)).SingleOrDefault();

                        // criando a relação Funcionario -> Curso, e populando a tabela associativa
                        foreach (var curso in Idcursos)
                        {
                            FuncionarioCurso funcionarioCurso = new FuncionarioCurso();
                            funcionarioCurso.IdCurso = curso;
                            funcionarioCurso.IdFunc  = currentFuncionario.Id;
                            _context.Add(funcionarioCurso);
                            await _context.SaveChangesAsync();
                        }
                        return(RedirectToAction(nameof(Index)));
                    }
                    ViewData["MSG_E"] = "Já existe um Funcionario cadastrado com esse e-mail.";
                }
            }
            catch (DbUpdateException)
            {
                ModelState.AddModelError("", "Não foi possível inserir os dados.");
            }

            var perfis = _context.Perfis.OrderBy(i => i.Nivel).ToList();

            perfis.Insert(0, new Perfil()
            {
                Id = 0, Nivel = "Selecione o Perfil de Funcionário"
            });
            ViewBag.Perfis = perfis;

            var contratos = _context.Contratos.OrderBy(i => i.Tipo).ToList();

            contratos.Insert(0, new Contrato()
            {
                Id = 0, Tipo = "Selecione o Tipo de Contrato do Funcionário"
            });
            ViewBag.Contratos = contratos;

            var cursos = _context.Cursos.OrderBy(c => c.Nome).ToList();

            cursos.Insert(0, new Curso()
            {
                Id = 0, Nome = "Selecione os Cursos que esse Funcionário está relacionado"
            });
            ViewBag.Cursos = new MultiSelectList(cursos, "Id", "Nome");

            return(View(funcionario));
        }
예제 #2
0
        public async Task <IActionResult> Create([Bind("Id", "Nome", "IdMod", "CargaHoraria", "Sigla")] Curso curso, int[] UnidadeId)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    // se não existir um curso com esse nome já cadastrado
                    if (!haveCursos(curso))
                    {
                        _context.Add(curso);
                        await _context.SaveChangesAsync();

                        var currentCurso = _context.Cursos.Where(c => c.Nome.Equals(curso.Nome)).SingleOrDefault();

                        // Para cada unidade selecionada cria a relação Curso -> Unidades Curriculares
                        foreach (var ids in UnidadeId)
                        {
                            CursoUnidadeCurricular cursoUnidade = new CursoUnidadeCurricular();
                            cursoUnidade.IdCurso = currentCurso.Id;
                            cursoUnidade.IdUc    = ids;
                            _context.Add(cursoUnidade);
                            await _context.SaveChangesAsync();
                        }

                        return(RedirectToAction(nameof(Index)));
                    }
                    ViewData["MSG_E"] = "Já existe um Curso cadastrado com esse nome.";
                }
            }
            catch (DbUpdateException)
            {
                ModelState.AddModelError("", "Não foi possível inserir os dados.");
            }
            var modalidade = _context.Modalidades.OrderBy(i => i.Nome).ToList();

            modalidade.Insert(0, new Modalidade()
            {
                Id = 0, Nome = "Selecione a Modalidade"
            });
            ViewBag.Modalidades = modalidade;

            var unidades = _context.UnidadeCurriculares.OrderBy(u => u.Nome).ToList();

            unidades.Insert(0, new UnidadeCurricular()
            {
                Id = 0, Nome = "Selecione as Unidades Curriculares"
            });
            ViewBag.Unidades = new MultiSelectList(unidades, "Id", "Nome");
            return(View(curso));
        }
예제 #3
0
        public async Task <IActionResult> Create([Bind("Nome")] Modalidade modalidade)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    if (!haveModalidade(modalidade))
                    {
                        _context.Add(modalidade);
                        await _context.SaveChangesAsync();

                        return(RedirectToAction(nameof(Index)));
                    }
                    else
                    {
                        ViewData["MSG_E"] = "Já existe uma Modalidade cadastrada com esse Nome.";
                    }
                }
            }
            catch (DbUpdateException)
            {
                ModelState.AddModelError("", "Não foi possível inserir os dados.");
            }
            return(View(modalidade));
        }
예제 #4
0
        public async Task <IActionResult> Create([Bind("InstituicaoID,Nome,Endereco")] Instituicao instituicao)
        {
            if (ModelState.IsValid)
            {
                _context.Add(instituicao);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(instituicao));
        }
예제 #5
0
        public async Task <IActionResult> Create([Bind("DepartamentoID,Nome")] Departamento departamento)
        {
            if (ModelState.IsValid)
            {
                _context.Add(departamento);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(departamento));
        }
예제 #6
0
        public async Task <IActionResult> Create([Bind("Id", "IdTurma", "Data", "HorarioInicio", "HorarioFim", "IdUc", "IdFunc")] Aula aula)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    // se o usuário tiver contrato intermitente e
                    // se a data da aula não coincidir com a folga do funcionário, entra no if
                    if (isIntermitente(aula) && dayLimit(aula))
                    {
                        ViewData["MSG_ERR"] = "Erro! A data selecionada coincide com a folga desse Funcionário!";
                    }
                    else
                    {
                        // se não houver aula na data e horário passados, insere a aula no banco
                        if (!haveAulaT(aula, null) && !haveAulaF(aula, null))
                        {
                            // se o funcionario não ultrapassar as 10 horas de trabalho
                            if (calculaHora(aula))
                            {
                                // adicionando a aula ao banco
                                _context.Add(aula);
                                await _context.SaveChangesAsync();

                                return(RedirectToAction(nameof(Index)));
                            }
                            else
                            {
                                ViewData["MSG_ERR"] = "Erro! O Funcionário já ultrapassou o limite de horas trabalhadas no dia selecionado!";
                            }
                        }
                        else
                        {
                            ViewData["MSG_ERR"] = "Erro! Já existe uma aula com essa turma ou com esse funcionário cadastrada nessa data e coincidente com este horário";
                        }
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
            ViewBag.Turmas       = _context.Turmas.OrderBy(t => t.Sigla).ToList();
            ViewBag.Unidades     = _context.UnidadeCurriculares.OrderBy(u => u.Nome).ToList();
            ViewBag.Funcionarios = _context.Funcionarios.OrderBy(f => f.NomeCompleto).ToList();
            return(View());
        }
예제 #7
0
 public async Task<IActionResult> Create([Bind("Periodo", "NomeTurma", "NomeCurso, IdCurso")] Turma turma)
 {
     try
     {
         if (ModelState.IsValid)
         {
             _context.Add(turma);
             await _context.SaveChangesAsync();
             return RedirectToAction(nameof(Index));
         }
     }
     catch (DbUpdateException)
     {
         ModelState.AddModelError("", "Não foi possível inserir os dados.");
     }
     return View(turma);
 }
예제 #8
0
 public async Task<IActionResult> Create([Bind("Autor, Titulo, Genero, Editora, Idioma, DataPub, QtdePag")] Livro livro)
 {
     try
     {
         if (ModelState.IsValid)
         {
             _context.Add(livro);
             await _context.SaveChangesAsync();
             return RedirectToAction(nameof(Index));
         }
     }
     catch (DbUpdateException ex)
     {
         ModelState.AddModelError(ex.Message, "Falha ao inserir");
     }
     return View(livro);
 }
예제 #9
0
        public async Task <IActionResult> Create([Bind("Nome, numIntegrantes, Email, CatMusical, numAlbuns")] Banda banda)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _context.Add(banda);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch (DbUpdateException ex)
            {
                ModelState.AddModelError(ex.Message, "Falha ao inserir");
            }
            return(View(banda));
        }
예제 #10
0
        public async Task <IActionResult> Create([Bind("Nome,Endereco")] Instituicao instituicao)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _context.Add(instituicao);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch (DbUpdateException)
            {
                ModelState.AddModelError("", "Não foi possível inserir os dados.");
            }
            return(View(instituicao));
        }
예제 #11
0
        public async Task <IActionResult> Create([Bind("Marca, Modelo, Cor, NumRodas, NumChassi")] Carro carro)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _context.Add(carro);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch (DbUpdateException ex)
            {
                ModelState.AddModelError(ex.Message, "Falha ao inserir");
            }
            return(View(carro));
        }
예제 #12
0
        public async Task <IActionResult> Create([Bind("Nome, Idade, Instrumento, Telefone, Sexo")] Musico musico)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _context.Add(musico);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch (DbUpdateException ex)
            {
                ModelState.AddModelError(ex.Message, "Falha ao inserir");
            }
            return(View(musico));
        }
예제 #13
0
        public async Task <IActionResult> Create([Bind("Titulo, Autor, Editora, QtdePag, CapaDura, AnoPub, Valor")] Livro livro)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _context.Add(livro);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch (DbUpdateException ex)
            {
                ModelState.AddModelError(ex.Message, "Falha ao inserir");
            }
            return(View(livro));
        }
예제 #14
0
        public async Task <IActionResult> Create([Bind("Id", "Nome")] UnidadeCurricular unidadecurricular)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _context.Add(unidadecurricular);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch (DbUpdateException)
            {
                ModelState.AddModelError("", "Não foi possível inserir os dados.");
            }
            return(View(unidadecurricular));
        }
        public async Task <IActionResult> Create([Bind("Nome")] Departamento departamento)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _context.Add(departamento);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch (DbUpdateException)
            {
                ModelState.TryAddModelError("", "Não possível inserir os dados");
            }
            return(View(departamento));
        }
예제 #16
0
        public async Task <IActionResult> Create([Bind("Nome, InstituicaoId")] Departamento departamento)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _context.Add(departamento);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }

            catch
            {
                ModelState.AddModelError("", "Não foi possível inserir os dados.");
            }

            return(View(departamento));
        }
예제 #17
0
        public async Task <IActionResult> Create([Bind("Id", "Nome", "Endereço")] Instituicao instituicao)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _context.Add(instituicao);
                    TempData["Message"] = "Instituição " + instituicao.Nome + " foi criada com sucesso.";
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch
            {
                ModelState.AddModelError("", "Não foi possível inserir os dados.");
            }

            return(View(instituicao));
        }
예제 #18
0
        public async Task <IActionResult> Create([Bind("Id", "IdCurso", "Modulo", "Sigla", "Ano", "Semestre")] Turma turma)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _context.Add(turma);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            catch (DbUpdateException)
            {
                ModelState.AddModelError("", "Não foi possível inserir os dados.");
            }
            var cursos = _context.Cursos.OrderBy(i => i.Nome).ToList();

            cursos.Insert(0, new Curso()
            {
                Id = 0, Nome = "Selecione o Curso"
            });
            ViewBag.Cursos = cursos;

            ViewBag.Semestre = new[]
            {
                new SelectListItem()
                {
                    Value = "", Text = "Selecione o Semestre"
                },
                new SelectListItem()
                {
                    Value = "Primeiro", Text = "Primeiro"
                },
                new SelectListItem()
                {
                    Value = "Segundo", Text = "Segundo"
                }
            };
            return(View(turma));
        }
예제 #19
0
 public void CadastrarLogin(Login login)
 {
     _dbContext.Add(login);
     _dbContext.SaveChanges();
 }
예제 #20
0
 public void InserirOperacoes(Operacao operacao)
 {
     _dbContext.Add(operacao);
     _dbContext.SaveChanges();
 }
예제 #21
0
 public Usuario Cadastrar(Usuario usuario)
 {
     _dbContext.Add(usuario);
     _dbContext.SaveChanges();
     return(usuario);
 }
 public void CadastrarEstrategia(Estrategia estrategia)
 {
     _dbContext.Add(estrategia);
     _dbContext.SaveChanges();
 }
예제 #23
0
 public void InserirDados(Carteira carteira)
 {
     _dbContext.Add(carteira);
     _dbContext.SaveChanges();
 }
예제 #24
0
 public void InserirDadosTrader(Trader trader)
 {
     _dbContext.Add(trader);
     _dbContext.SaveChanges();
 }