Esempio n. 1
0
        public async Task <List <Produkt> > GetList(Guid przedsiebiorstwoId)
        {
            var sql = @"SELECT P.Id as ProduktId,
                            p.ShortName as ProduktSkrot,
                            p.Name as ProduktNazwa,
                            p.MagazynId as MagazynId,
                            k.PrzedsiebiorstwoId as PrzedsiebiorstwoId,
                            k.Id as KategoriaId,
                            k.Name as KategoriaNazwa,
                            JM.Id as JednostkaMiaryId,
                            JM.Name as JednostkaMiaryNazwa
                            FROM Produkt P
                            INNER JOIN Magazyn M on P.MagazynId = M.Id
                            INNER JOIN JednostkaMiary JM on P.UnitId = JM.Id
                            LEFT JOIN Kategoria K on P.KategoriaId = K.Id
                            WHERE K.PrzedsiebiorstwoId = @PrzedsiebiorstwoId";

            using (var conn = _dbConnectionSource.GetConnection())
            {
                var result = await conn.QueryAsync(sql, new { PrzedsiebiorstwoId = przedsiebiorstwoId });

                return(result.Select(x => new Produkt
                {
                    Id = x.ProduktId,
                    Nazwa = x.ProduktNazwa,
                    Skrot = x.ProduktSkrot,
                    Kategoria = new Kategoria(x.KategoriaId, x.KategoriaNazwa, x.PrzedsiebiorstwoId),
                    JednostkaMiary = new JednostkaMiary(x.JednostkaMiaryId, x.JednostkaMiaryNazwa, x.PrzedsiebiorstwoId),
                    MagazynId = x.MagazynId
                }).ToList());
            }
        }
Esempio n. 2
0
        public async Task Delete(Guid id)
        {
            var sql = "DELETE FROM Kontrahent where Id = @Id";

            using (var conn = _dbConnectionSource.GetConnection())
            {
                await conn.ExecuteAsync(sql, new { Id = id });
            }
        }
        public async Task Delete(Rezerwacja rezerwacja)
        {
            var deleteRezerwacja = "DELETE FROM Rezerwacja WHERE Id = @Id";
            var deletePozycje    = "DELETE FROM PozycjaRezerwacji WHERE RezerwacjaId = @Id";

            using (var conn = _dbConnectionSource.GetConnection())
            {
                using (var tx = conn.BeginTransaction())
                {
                    await conn.ExecuteAsync(deletePozycje, new { Id = rezerwacja.Id }, tx);

                    await conn.ExecuteAsync(deleteRezerwacja, new { Id = rezerwacja.Id }, tx);

                    tx.Commit();
                }
            }
        }
Esempio n. 4
0
        private async Task <List <Kategoria> > GetKategorieListAsync(Specification <Kategoria> specification)
        {
            var sql = "SELECT Id, Name, PrzedsiebiorstwoId FROM [dbo].[Kategoria] WHERE " + specification.ToSql();

            using (var conn = _dbConnectionSource.GetConnection())
            {
                var parameters = new DynamicParameters();

                foreach (var dynamicParamsFunc in specification.GetDynamicParameters())
                {
                    dynamicParamsFunc(parameters);
                }

                var result = await conn.QueryAsync(sql, parameters);

                return(result.Select(x => new Kategoria(x.Id, x.Name, x.PrzedsiebiorstwoId)).ToList());
            }
        }
        private async Task <List <JednostkaMiary> > GetKategorieListAsync(Specification <JednostkaMiary> specification)
        {
            var sql = "SELECT Id, Name as Nazwa, PrzedsiebiorstwoId FROM [dbo].[JednostkaMiary] WHERE " + specification.ToSql();

            using (var conn = _dbConnectionSource.GetConnection())
            {
                var parameters = new DynamicParameters();

                foreach (var dynamicParamsFunc in specification.GetDynamicParameters())
                {
                    dynamicParamsFunc(parameters);
                }

                var result = await conn.QueryAsync <JednostkaMiary>(sql, parameters);

                return(result.ToList());
            }
        }
        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());
            }
        }
Esempio n. 7
0
        private async Task <List <Magazyn> > GetKategorieListAsync(Specification <Magazyn> specification)
        {
            var sql = "SELECT Id, Skrot, Nazwa, PrzedsiebiorstwoId FROM [dbo].[Magazyn] WHERE " + specification.ToSql();

            using (var conn = _dbConnectionSource.GetConnection())
            {
                var parameters = new DynamicParameters();

                foreach (var dynamicParamsFunc in specification.GetDynamicParameters())
                {
                    dynamicParamsFunc(parameters);
                }

                var result = await conn.QueryAsync(sql, parameters);

                return(result.Select(x => new Magazyn
                {
                    Id = x.Id,
                    Nazwa = x.Nazwa,
                    Skrot = x.Skrot,
                    PrzedsiebiorstwoId = x.PrzedsiebiorstwoId
                }).ToList());
            }
        }
        public User GetUser(Specification <User> specification, Guid przedsiebiorstwoId)
        {
            var sql = "SELECT Id, Email, PasswordHash, Age, Salt FROM [dbo].[User] WHERE " + specification.ToSql();

            using (var conn = _dbConnectionSource.GetConnection())
            {
                var parameters = new DynamicParameters();

                foreach (var dynamicParamsFunc in specification.GetDynamicParameters())
                {
                    dynamicParamsFunc(parameters);
                }

                var user = conn.QuerySingleOrDefault(sql, parameters);

                if (user == null)
                {
                    return(null);
                }

                var userClaims = GetClaims(conn, user.Id, user.Email, przedsiebiorstwoId);
                return(new User(user.Id, user.Email, user.PasswordHash, user.Age, user.Salt, userClaims, przedsiebiorstwoId));
            }
        }