public async Task <Guid> Handle(ProduktCreateCommand request, CancellationToken cancellationToken) { var kategorie = await _kategoriaRepository.GetList(request.PrzedsiebiorstwoId); var kategoria = kategorie.FirstOrDefault(x => x.Nazwa == request.Kategoria); if (kategoria == null) { kategoria = new Kategoria(request.Kategoria, request.PrzedsiebiorstwoId); await _kategoriaRepository.Save(kategoria); } var jednostkiMiary = await _jednostkaMiaryRepository.GetList(request.PrzedsiebiorstwoId); var jednostkaMiary = jednostkiMiary.FirstOrDefault(x => x.Nazwa == request.JednostkaMiary); if (jednostkaMiary == null) { jednostkaMiary = new JednostkaMiary(request.JednostkaMiary, request.PrzedsiebiorstwoId); await _jednostkaMiaryRepository.Save(jednostkaMiary); } var produkt = new Produkt { Id = Guid.NewGuid(), Skrot = request.ShortName, Nazwa = request.Name, Kategoria = kategoria, JednostkaMiary = jednostkaMiary, MagazynId = request.MagazynId }; return(await _produktRepository.Save(produkt)); }
public async Task <List <JednostkaMiaryDto> > Handle(JednostkaMiaryListQuery request, CancellationToken cancellationToken) { var jednostkiMiary = await _repository.GetList(request.PrzedsiebiorstwoId); return(jednostkiMiary.Select(x => new JednostkaMiaryDto { Id = x.Id, Name = x.Nazwa }).ToList()); }