public IActionResult Add(ReferenciaViewModel model)
        {
            if (ModelState.IsValid)
            {
                Referencia c = null;

                if (model.Id > 0)
                {
                    c = referenciaGerenciador.RecuperarPorId(model.Id);
                }
                else
                {
                    c = new Referencia();
                }

                c.Id       = model.Id;
                c.Nome     = model.Nome;
                c.Telefone = model.Telefone;


                referenciaGerenciador.Add(c);
            }

            return(RedirectToAction("Index"));
        }
        public IActionResult Add(int Id)
        {
            var c     = referenciaGerenciador.RecuperarPorId(Id);
            var model = new ReferenciaViewModel()
            {
                Id       = c.Id,
                Nome     = c.Nome,
                Telefone = c.Telefone,
            };

            return(View(model));
        }
        public IActionResult Index()
        {
            var referencia = referenciaGerenciador.RecuperarReferencia()
                             .Select(c => new ReferenciaViewModel()
            {
                Nome     = c.Nome,
                Telefone = c.Telefone,
            });

            var model = new ReferenciaViewModel {
                Referencias = referencia
            };

            return(View(model));
        }
Пример #4
0
        /// <summary>
        /// obtém a referência atual do usuário, criando caso ainda não exista e sincronizando as atividades
        /// </summary>
        /// <param name="idUsu">int - id do usuário sendo pesquisado</param>
        /// <returns></returns>
        public virtual async Task <ReferenciaViewModel> GetReferenciaAsync(int idUsu)
        {
            //exemplo de include, para desabilitar o lazy load tirando o virtual
            Usuario usuLogado = await _db.Usuarios
                                .AsNoTracking()
                                .Include(x => x.Atividades)
                                .Include(x => x.Referencias)
                                .Where(x => x.Id == idUsu)
                                .FirstOrDefaultAsync();

            //.FindAsync(idUsu);

            if (usuLogado != null)
            {
                var referencia = usuLogado.GetReferencia();
                referencia.SincronizaAtividades(new CalendarioServices());
                await _db.SaveChangesAsync();

                ReferenciaViewModel rvm = new ReferenciaViewModel
                {
                    Id               = referencia.Id,
                    PrevistoDoMes    = referencia.Previsto,
                    PrevistoCorrente = referencia.PrevistoCorrente,
                    RealizadoDoMes   = referencia.Realizado,

                    SaldoDoMes = referencia.SaldoDoMes,
                    Saldo      = referencia.Saldo,

                    BancoDeHoras = referencia.BancoDeHoras,

                    Ano = referencia.Ano,
                    Mes = referencia.Mes
                };

                return(rvm);
            }

            return(new ReferenciaViewModel());
        }