public async Task <IEnumerable <Movimento> > GetMovimentoWithItem(FilterMovim filter)
        {
            var item = _db.Set <ItemMovimento>();

            var movimento = await DBSet.AsNoTracking()
                            .Include(u => u.Usuario)
                            .Include(f => f.Frota)
                            //.Include(i => i.ItemMovimento).ThenInclude(x => x.ClienteProduto).ThenInclude(x => x.Cliente)
                            //.Include(i => i.ItemMovimento).ThenInclude(x => x.ClienteProduto).ThenInclude(x => x.Produto)
                            .Where(x => x.DataHoraInicial >= filter.DataHoraInicial && x.DataHoraInicial <= filter.DataHoraFinal.AddDays(1))
                            .ToListAsync();

            var cliprod = await _clienteProdutoRepository.GetAllWithInclude();

            var itemMovim = await item.AsNoTracking()
                            .GroupBy(x => new { x.ClienteProdutoId, x.MovimentoId })
                            .Select(g => new {
                ClienteProdutoId = g.Key.ClienteProdutoId,
                MovimentoId      = g.Key.MovimentoId,
                Qtd = g.Sum(x => x.Qtd)
            }).ToListAsync();

            movimento.ForEach(x =>
            {
                var group    = itemMovim.Where(i => i.MovimentoId == x.Id);
                var itemList = new List <ItemMovimento>();
                foreach (var item in group)
                {
                    var rel = cliprod.FirstOrDefault(r => r.Id == item.ClienteProdutoId);

                    var itMv = new ItemMovimento
                    {
                        ClienteProdutoId = item.ClienteProdutoId,
                        ClienteProduto   = rel,
                        MovimentoId      = item.MovimentoId,
                        Movimento        = x,
                        Qtd = item.Qtd
                    };

                    itemList.Add(itMv);
                }

                x.ItemMovimento = itemList;
            });

            return(movimento);
        }
Esempio n. 2
0
 public bool ExisteDescricao(Pais entity)
 {
     return(DBSet.AsNoTracking().Any(x => x.Descricao.ToUpper().Trim() == entity.Descricao.ToUpper().Trim() &&
                                     x.Id != entity.Id));
 }
Esempio n. 3
0
 public async Task <Pais> ObterPaisEstados(Guid id)
 {
     return(await DBSet.AsNoTracking().Include(x => x.Estados).FirstOrDefaultAsync(x => x.Id == id));
 }
 public bool ExistNumber(Coletor coletor)
 {
     return(DBSet.AsNoTracking().Any(x => x.Numero == coletor.Numero && x.Id != coletor.Id));
 }
 public async Task <Coletor> SearchIdWitoutTracking(long id)
 {
     return(await DBSet.AsNoTracking().FirstOrDefaultAsync(x => x.Id == id));
 }
 public bool ExistCode(Usuario user)
 {
     return(DBSet.AsNoTracking().Any(x => x.Codigo == user.Codigo && x.Id != user.Id));
 }
 public bool ExistName(Usuario user)
 {
     return(DBSet.AsNoTracking().Any(x => x.Nome == user.Nome && x.Id != user.Id));
 }
 public bool ExistLogin(Usuario user)
 {
     return(DBSet.AsNoTracking().Any(x => x.Login == user.Login && x.Id != user.Id));
 }
 public async Task <Usuario> FindUserByLoginAndPassword(string login, string password)
 {
     return(await DBSet.AsNoTracking().FirstOrDefaultAsync(x => x.Login == login && x.Senha == password));
 }
Esempio n. 10
0
 public bool ExistPlaca(Frota frota)
 {
     return(DBSet.AsNoTracking().Any(x => x.Placa == frota.Placa && x.Id != frota.Id));
 }
 public bool ExistRelaionship(ClienteProduto cliProd)
 {
     return(DBSet.AsNoTracking().Any(x => (x.ClienteId == cliProd.ClienteId && x.ProdutoId == cliProd.ProdutoId) && x.Id != cliProd.Id));
 }
 public bool ExistBarCode(ClienteProduto cliProd)
 {
     return(DBSet.AsNoTracking().Any(x => x.CodigoBarra == cliProd.CodigoBarra && x.Id != cliProd.Id));
 }
 public bool ExistDescription(Produto prod)
 {
     return(DBSet.AsNoTracking().Any(x => x.Descricao == prod.Descricao && x.Id != prod.Id));
 }
 public bool ExistCode(Produto prod)
 {
     return(DBSet.AsNoTracking().Any(x => x.Codigo == prod.Codigo && x.Id != prod.Id));
 }
 public bool ExistDescription(Cliente client)
 {
     return(DBSet.AsNoTracking().Any(x => x.Descricao == client.Descricao && x.Id != client.Id));
 }
 public bool ExistCode(Cliente client)
 {
     return(DBSet.AsNoTracking().Any(x => x.Codigo == client.Codigo && x.Id != client.Id));
 }