public async Task <uint> Handle(CreatePurchaseTermCommand request, CancellationToken cancellationToken) { VendorPurchaseTerm purchaseTerm = _Mapper.Map <CreatePurchaseTermCommand, VendorPurchaseTerm> (request); await _database.VendorPurchaseTerm.AddAsync(purchaseTerm); await _database.SaveAsync(); return(purchaseTerm.Id); }
public async Task <uint> Handle(NewVendorPurchaseTermDto request, CancellationToken cancellationToken) { var vendor = _database.Vendor .AsNoTracking() .FirstOrDefaultAsync(v => v.Id == request.VendorId); if (vendor == null) { throw new NotFoundException(nameof(Vendor), request.VendorId); } var item = await _database.Item .AsNoTracking() .FirstOrDefaultAsync(i => i.Id == request.ItemId); if (item == null) { throw new NotFoundException(nameof(Item), request.ItemId); } VendorPurchaseTerm newTerm = new VendorPurchaseTerm() { VendorId = request.VendorId, ItemId = request.ItemId, VendorProductId = request.VendorProductId, MinimumQuantity = request.MinimumQuantity, Leadtime = request.Leadtime, Priority = request.Priority, UnitPrice = request.UnitPrice }; _database.VendorPurchaseTerm.Add(newTerm); await _database.SaveAsync(); return(newTerm.Id); }
public static PurchaseTermViewModel Create(VendorPurchaseTerm purchaseTerm) { return(Projection.Compile().Invoke(purchaseTerm)); }