public override async Task <ActionResult> HandleAsync(Guid id, CancellationToken cancellationToken = default) { await _repo.DeletePurchaseItem(id); await _repo.Save(); return(Ok()); }
public void Save(Purchase purchase) { Transaction tx = null; try { using (var em = EntityManagerFactory.CreateInstance(ds)) { tx = em.BeginTransaction(); Guid ID = Guid.NewGuid(); string[] columns = { "ID", "PurchaseCode", "PurchaseDate", "SupplierId", "PaymentMethod", "Status", "Notes", "GrandTotal", "AmountInWords", "DueDate", "PrintCounter", "TermOfPayment", "CreatedDate", "CreatedBy" }; object[] values = { ID, purchase.Code, purchase.Date.ToShortDateString(), purchase.SupplierId, purchase.PaymentMethod, purchase.Status == true?1:0, purchase.Notes, purchase.GrandTotal, purchase.AmountInWords, purchase.DueDate.ToShortDateString(), purchase.PrintCounter, purchase.TermOfPayment, DateTime.Now.ToShortDateString(), Store.ActiveUser }; var q = new Query().Select(columns).From(tableName).Insert(values); em.ExecuteNonQuery(q.ToSql(), tx); foreach (var purchaseItems in purchase.PurchaseItems) { purchaseItems.PurchaseId = ID; purchaseItemRepository.Save(em, tx, purchaseItems); //update product productQtyRepository.UpdateQtyIn(Store.ActiveMonth, Store.ActiveYear, purchaseItems.ProductId, purchaseItems.Qty, true); } recordCounterRepository.UpdatePurchaseCounter(purchase.Date.Month, purchase.Date.Year); tx.Commit(); } } catch (Exception ex) { tx.Rollback(); throw ex; } }
public override async Task <ActionResult> HandleAsync([FromBody] UpdatePurchaseItemRequest request, CancellationToken cancellationToken = default) { var PurchaseItem = new PurchaseItem { Id = request.Id, ProductId = request.ProductId, PurchaseId = request.PurchaseId, UOM = (Core.UnitOfMeasure)request.UOM, Notes = request.Notes, Price = request.Price, Quantity = request.Quantity }; _repo.UpdatePurchaseItem(PurchaseItem); await _repo.Save(); return(Ok(PurchaseItem)); }
public void Save() { repository.Save(); }