コード例 #1
0
        public async Task <IActionResult> Edit(Guid id, [Bind("Id,Name,Extension,DataCadastro,Length,FileStream,TccId")] FileTCC fileTCC)
        {
            if (id != fileTCC.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(fileTCC);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!FileTCCExists(fileTCC.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["TccId"] = new SelectList(_context.Tccs, "TccId", "Tema", fileTCC.TccId);
            return(View(fileTCC));
        }
コード例 #2
0
        public async Task <IActionResult> AddDataLocalApresentacao(Tcc tccAtualizado, IList <int> checkNotificaMembrosBanca)
        {
            Tcc        tcc             = _context.Tccs.Where(x => x.TccId == tccAtualizado.TccId).FirstOrDefault();
            Calendario calendarioAtivo = _context.Calendario.Where(x => x.Ativo == true).FirstOrDefault();

            if (tccAtualizado.DataApresentacao == null)
            {
                TempData["Error"] = "Favor, informe a data de apresentação.";
            }
            else if (tccAtualizado.DataApresentacao.Value.Date < calendarioAtivo.DataInicio.Date || tccAtualizado.DataApresentacao.Value.Date > calendarioAtivo.DataFim.Date)
            {
                TempData["Error"] = "Data de apresentação inválida! Favor, informe uma data entre " + calendarioAtivo.DataInicio.ToString("dd/MM/yyyy") + " à " + calendarioAtivo.DataFim.ToString("dd/MM/yyyy") + ".";
            }
            else if (tccAtualizado.LocalApresentacao == null)
            {
                TempData["Error"] = "Favor, informe o local da apresentação.";
            }
            else if (ModelState.IsValid)
            {
                tcc.DataApresentacao  = tccAtualizado.DataApresentacao;
                tcc.LocalApresentacao = tccAtualizado.LocalApresentacao;
                tcc.StatusId          = _context.Status.Where(x => x.DescStatus.Contains("Homologado Banca")).Select(x => x.StatusId).FirstOrDefault();
                _context.Update(tcc);
                await _context.SaveChangesAsync();

                TempData["Success"] = "Banca homologada com sucesso";
                if (checkNotificaMembrosBanca.Count > 0)
                {
                    tcc.Usuario = _context.Usuario.Where(x => x.Id == tccAtualizado.UsuarioId).FirstOrDefault();
                    List <Banca> banca = _context.Banca.Where(x => x.TccId == tcc.TccId).ToList();
                    FileTCC      file  = _context.FileTCC.Where(f => f.TccId == tcc.TccId).OrderByDescending(f => f.DataCadastro).FirstOrDefault();
                    foreach (Banca item in banca)
                    {
                        _senderEmail.NotificarMembrosBancaViaEmail(tcc, _context.Usuario.Where(x => x.Id == item.UsuarioId).FirstOrDefault(), file.Id.ToString());
                    }
                    _senderEmail.NotificarMembrosBancaViaEmail(tcc, tcc.Usuario, file.Id.ToString());
                    TempData["Success"] += " e enviada notificação via e-mail para os membros da banca";
                }
                TempData["Success"] += ".";
                return(RedirectToAction("Index", "Bancas", new { area = "" }));
            }

            if (tccAtualizado.TccId != 0)
            {
                tcc.Usuario = _context.Usuario.Where(x => x.Id == tccAtualizado.UsuarioId).FirstOrDefault();
                Banca bancaOrientador = _context.Banca.Where(x => x.TccId == tccAtualizado.TccId && x.TipoUsuario.DescTipo.ToLower().Equals("orientador")).FirstOrDefault();
                ViewBag.Orientador      = _context.Usuario.Where(x => x.Id == bancaOrientador.UsuarioId).FirstOrDefault();
                ViewBag.CalendarioAtivo = _context.Calendario.Where(x => x.Ativo == true).FirstOrDefault();
            }

            return(View(tcc));
        }
コード例 #3
0
        public async Task <IActionResult> Create([Bind("Id,Name,Extension,DataCadastro,Length,FileStream,TccId")] FileTCC fileTCC)
        {
            if (ModelState.IsValid)
            {
                fileTCC.Id = Guid.NewGuid();
                _context.Add(fileTCC);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["TccId"] = new SelectList(_context.Tccs, "TccId", "Tema", fileTCC.TccId);
            return(View(fileTCC));
        }
コード例 #4
0
        public async Task <IActionResult> SaveFile(List <IFormFile> arquivos, int TccId)
        {
            var arquivo    = arquivos.First();
            var fileBinary = new byte[arquivo.Length];

            using (var stream = arquivo.OpenReadStream())
            {
                stream.Read(fileBinary, 0, fileBinary.Length);
            }

            var fileSample = new FileTCC
            {
                Id           = Guid.NewGuid(),
                Name         = arquivo.FileName,
                Extension    = arquivo.ContentType,//"pdf",
                DataCadastro = DateTime.Now,
                Length       = arquivo.Length,
                FileStream   = fileBinary,
                TccId        = TccId
            };

            _context.Add(fileSample);
            await _context.SaveChangesAsync();

            Tcc tcc = _context.Tccs.Where(x => x.TccId == TccId).FirstOrDefault();

            tcc.Status = _context.Status.Where(x => x.StatusId == tcc.StatusId).FirstOrDefault();
            List <FileTCC> filesTcc = _context.FileTCC.Where(x => x.TccId == TccId).ToList();

            if (tcc.Status.DescStatus.ToLower().Equals("cadastrado") &&
                tcc.Resumo != null && !tcc.Resumo.Equals("") &&
                filesTcc != null && filesTcc.Count > 0)
            {
                tcc.StatusId = _context.Status.Where(x => x.DescStatus.ToLower().Contains("pré-homologado")).Select(x => x.StatusId).FirstOrDefault();
                _context.Update(tcc);
                await _context.SaveChangesAsync();
            }

            //return RedirectToAction("Index");
            ViewBag.TccId = TccId;
            return(View("Anexo", _context.FileTCC.Where(f => f.TccId == TccId)));
        }