public IHttpActionResult SaveTransactionDetail([FromBody] JObject data) { try { var para = data.SelectToken("rootObj").ToObject <IntegrationViewModel>(); IntegrationViewModel integrationViewModel = new IntegrationViewModel(); bool saveStatus = manageIntegration.Insert(para); return(Json(new { status = saveStatus, data = "" })); } catch (Exception ex) { return(Json(new { status = false, message = ex.Message })); } }
public bool Insert(IntegrationViewModel integrationViewModel) { try { using (TransactionScope scope = new TransactionScope()) { using (var db = new PERFECTIBSEntities()) { var transactions = new List <tblTransactionDetail>(); foreach (AmountInfo model in integrationViewModel.amountInfo) { var transaction = new tblTransactionDetail(); transaction.CurrencyCode = model.CurrencyType; transaction.Amount = model.Amount; transaction.PaymentDate = integrationViewModel.paymentDate; transaction.Rate = model.CurrencyRate; transaction.Type = integrationViewModel.type; transaction.AgentCode = model.AgentCode; transaction.IsTransfer = false; transactions.Add(transaction); } db.tblTransactionDetails.AddRange(transactions); db.SaveChanges(); bool isUpdated = false; if (integrationViewModel.type.Trim() == "BupaInvoice") { isUpdated = UpdateBupaInvoiceFlag(integrationViewModel.ids); } else if (integrationViewModel.type.Trim() == "AgentCommssion") { isUpdated = UpdateBupaAmountFlag(integrationViewModel.ids); } if (isUpdated) { scope.Complete(); } return(true); } } } catch (Exception) { throw; } }