public void Save(IEntityManager em, Transaction tx, Sales sales) { Guid ID = Guid.NewGuid(); string[] columns = { "ID", "SalesCode", "SalesDate", "CustomerId", "SalesmanId", "PaymentMethod", "Status", "Notes", "GrandTotal", "AmountInWords", "DueDate", "PrintCounter", "TermOfPayment", "CreatedDate", "ModifiedDate", "CreatedBy", "ModifiedBy" }; object[] values = { ID, sales.Code, sales.Date.ToShortDateString(), sales.CustomerId, sales.SalesmanId, sales.PaymentMethod, sales.Status == true?1:0, sales.Notes, sales.GrandTotal, sales.AmountInWords, sales.DueDate.ToShortDateString(), sales.PrintCounter, sales.TermOfPayment, DateTime.Now.ToShortDateString(), DateTime.Now.ToShortDateString(), Store.ActiveUser, Store.ActiveUser }; var q = new Query().Select(columns).From(tableName).Insert(values); em.ExecuteNonQuery(q.ToSql(), tx); foreach (var salesItem in sales.SalesItems) { salesItem.SalesId = ID; salesItemRepository.Save(em, tx, salesItem); productQtyRepository.UpdateQtyOut(Store.ActiveMonth, Store.ActiveYear, salesItem.ProductId, salesItem.Qty, true); } recordCounterRepository.UpdateSalesCounter(em, tx, sales.Date.Month, sales.Date.Year); }
public async Task <IActionResult> UploadSalesItem([FromBody] List <SalesItemRequest> items) { try { var rt = new List <SalesItemResponse>(); foreach (var item in items) { var obj = _mapper.Map <SalesItem>(item); _salesItem.Add(obj); rt.Add(_mapper.Map <SalesItemResponse>(obj)); } await _salesItem.Save(User.Identity.Name, _accessor.ActionContext.HttpContext.Connection.RemoteIpAddress.ToString()); return(Ok(rt)); } catch (Exception ex) { return(InternalServerError(ex)); } }