public async Task <List <Dokument> > GetList(TypDokumentu typ, Guid przedsiebiorstwoId) { var sql = "select d.Id as DokumentId, d.Numer, d.MagazynId, d.Data, d.KontrahentId, " + "d.TypDokumentu, PrzedsiebiorstwoId, " + "pd.Id as PozycjaId, pd.ProduktId, pd.StawkaVat, " + "pd.CenaNetto, pd.CenaBrutto, " + "pd.Ilosc, pd.WartoscNetto, pd.WartoscBrutto, pd.WartoscVat from Dokument d " + "inner join Magazyn M on d.MagazynId = M.Id " + "inner join PozycjaDokumentu PD on d.Id = PD.DokumentId where PrzedsiebiorstwoId = @PrzedsiebiorstwoId AND TypDokumentu = @TypDokumentu"; using (var conn = _dbConnectionSource.GetConnection()) { var result = await conn.QueryAsync(sql, new { PrzedsiebiorstwoId = przedsiebiorstwoId, TypDokumentu = typ }); return(result.GroupBy(x => x.DokumentId).Select(x => new Dokument { Id = x.Key, Data = x.First().Data, MagazynId = x.First().MagazynId, TypDokumentu = (TypDokumentu)x.First().TypDokumentu, Numer = x.First().Numer, KontrahentId = x.First().KontrahentId, PozycjeDokumentu = x.Select(pd => new PozycjaDokumentu { Id = pd.PozycjaId, ProduktId = pd.ProduktId, CenaNetto = pd.CenaNetto, CenaBrutto = pd.CenaBrutto, Ilosc = pd.Ilosc, WartoscNetto = pd.WartoscNetto, WartoscVat = pd.WartoscVat, WartoscBrutto = pd.WartoscBrutto, StawkaVat = (StawkaVat)pd.StawkaVat }).ToList() }).ToList()); } }
public Task <List <Dokument> > GetList(TypDokumentu typ, Guid przedsiebiorstwoId) { return(Task.FromResult(_dokumenty.Where(x => x.TypDokumentu == typ).ToList())); }