public override Response Add(Dto.Transaction dto) { var resp = _customerBusiness.Get(dto.CustomerId); if (resp.Type != ResponseType.Success) { return(resp); } var customer = resp.Data; SetCustomerBalance(customer, dto.IsDebt, dto.Amount); customer.User = null; // prevent updating users table _customerBusiness.OwnerId = OwnerId; using (var tx = Uow.BeginTransaction()) { //update customer's remaining balance _customerBusiness.Edit(customer); base.Add(dto); tx.Commit(); } _dashboardBusiness.RefreshUserCache(OwnerId); return(new Response { Type = ResponseType.Success }); }