Пример #1
0
        public async Task <IActionResult> Edit(int id, [Bind("idChamado,DH_Abertura,DH_Fechamento,descricao,categoriasId,comentariosId,logsId,gruposId,prioridadesId")] chamados chamados)
        {
            if (id != chamados.idChamado)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(chamados);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!chamadosExists(chamados.idChamado))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["categoriasId"]  = new SelectList(_context.Categoria, "idCategoria", "idCategoria", chamados.categoriasId);
            ViewData["comentariosId"] = new SelectList(_context.Comentarios, "idComentario", "idComentario", chamados.comentarios);
            ViewData["gruposId"]      = new SelectList(_context.grupos, "idGrupo", "idGrupo", chamados.gruposId);
            ViewData["logsId"]        = new SelectList(_context.Logs, "idLog", "idLog", chamados.logs);
            ViewData["prioridadesId"] = new SelectList(_context.Prioridades, "idPrioridade", "idPrioridade", chamados.prioridadesId);
            return(View(chamados));
        }
Пример #2
0
        public async Task <IActionResult> Create([Bind("idChamado,DH_Abertura,DH_Fechamento,descricao,categoriasId,comentariosId,logsId,gruposId,prioridadesId,Arquivo")] chamados chamados)
        {
            if (ModelState.IsValid)
            {
                //Se o chamdo for aberto pelo proprio usuario pega o id pelo usuario logado
                if (chamados.UsuarioId == 0)
                {
                    //recupera usuario logado e busca no banco de dados
                    var userName = User.Identity.Name;
                    var user     = await _context.Users.FirstOrDefaultAsync(x => x.UserName == userName);

                    var usuario = await _context.Usuario.FirstOrDefaultAsync(x => x.PessoaId == user.Id);

                    chamados.UsuarioId = usuario.IdUsuario;
                }


                chamados.status      = "Aberto";
                chamados.DH_Abertura = DateTime.Now;
                _context.Add(chamados);
                await _context.SaveChangesAsync();

                if (chamados.Arquivo != null)
                {
                    var retorno = Upload(chamados.Arquivo);
                    var arquivo = new Arquivos();
                    arquivo.Arquivo     = string.Format(@"{0}\{1}{2}", retorno.CaminhoDBArquivo, retorno.NomeArquivo, retorno.ExtensaoArquivo);
                    arquivo.NomeArquivo = chamados.Arquivo.FileName;
                    arquivo.DH_Cadastro = DateTime.Now;
                    arquivo.chamdosId   = chamados.idChamado;

                    //salva
                    _context.Arquivos.Add(arquivo);
                    await _context.SaveChangesAsync();
                }

                //registra log da alteração
                logsController logs = new logsController(_context);
                var            log  = new logs();
                log.IdUsuario = chamados.UsuarioId;
                log.Tipo      = TipoLogEnum.Criacao;
                log.chamdosId = chamados.idChamado;
                logs.SalvarLog(log);



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

            // ViewBag.categoriasId = new SelectList(_context.Categoria.ToList(), "idCategoria", "categoria", chamados.categoriasId);
            //ViewData["categoriasId"] = new SelectList(_context.Categoria, "idCategoria", "idCategoria", chamados.categoriasId);
            //ViewData["comentariosId"] = new SelectList(_context.Comentarios, "idComentario", "idComentario", chamados.comentariosId);
            //ViewBag.gruposId = new SelectList(_context.grupos.ToList(), "idGrupo", "grupo", chamados.gruposId);
            //ViewData["gruposId"] = new SelectList(_context.grupos, "idGrupo", "idGrupo", chamados.gruposId);
            //ViewData["logsId"] = new SelectList(_context.Logs, "idLog", "idLog", chamados.logsId);
            //ViewData["prioridadesId"] = new SelectList(_context.Prioridades, "idPrioridade", "idPrioridade", chamados.prioridadesId);
            return(await Index());
        }
Пример #3
0
        // GET: chamados
        public async Task <IActionResult> Index()
        {
            var chamadosAbertos = _context.Chamados.Where(x => x.DH_Fechamento == DateTime.MinValue);
            var model           = new chamados();

            model.ListaChamados = chamadosAbertos;

            return(View(model));
        }
Пример #4
0
        public async Task <IActionResult> ChamadosFechados()
        {
            var chamados = _context.Chamados.Where(x => x.DH_Fechamento != DateTime.MinValue).AsQueryable();

            var model = new chamados();

            model.ListaChamados = chamados;


            return(View(model));
        }
Пример #5
0
        public async Task <IActionResult> MeusChamadosTecnico()
        {
            var userId      = _userManager.GetUserId(User);
            var funcionario = _context.Funcionario.FirstOrDefault(x => x.PessoaId == Int32.Parse(userId));

            var chamados = _context.Chamados.Where(x => x.FuncionarioId == funcionario.IdFuncionario).AsQueryable();


            var model = new chamados();

            model.ListaChamados = chamados;


            return(View(model));
        }
Пример #6
0
        public async Task <IActionResult> AlterarGrupo(chamados chamado)
        {
            //validar isso direito, essa validação ta mal feita pra caraca
            if (chamado.idChamado == 0)
            {
                return(null);
            }

            var chamadoBanco = _context.Chamados.FirstOrDefault(x => x.idChamado == chamado.idChamado);
            var grupo        = _context.grupos.FirstOrDefault(x => x.idGrupo == chamado.gruposId);

            chamadoBanco.gruposId = grupo.idGrupo;
            _context.Chamados.Update(chamadoBanco);
            _context.SaveChanges();

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