public void UpdateUserBalance(UserBalance entity) { var maxTime = 3; var currentTime = 0; while (currentTime < maxTime) { try { this.Update <UserBalance>(entity); break; } catch (StaleObjectStateException ex) { //throw new Exception("资金处理错误,请重试", ex); } catch (Exception ex) { var writer = Common.Log.LogWriterGetter.GetLogWriter(); writer.Write("ERROR_UserBalanceManager", "_UpdateUserBalance", Common.Log.LogType.Error, "更新用户资金问题出错", ex.ToString()); //throw new Exception("资金处理错误,请重试", ex); } currentTime++; Thread.Sleep(1000); } }
public async Task <bool> GetData(string msisdn) { try { Tools.Tools.SetProgressIndicator(true); SystemTray.ProgressIndicator.Text = "fetching data"; var client = new VikingsApi(); OAuthUtility.ComputeHash = (key, buffer) => { using (var hmac = new HMACSHA1(key)) { return(hmac.ComputeHash(buffer)); } }; string json = await client.GetInfo(new AccessToken((string)IsolatedStorageSettings.ApplicationSettings["tokenKey"], (string)IsolatedStorageSettings.ApplicationSettings["tokenSecret"]), client.Balance, new KeyValuePair { name = "msisdn", content = msisdn }); if (Error.HandleError(json, "there seems to be no connection")) { return(false); } Tools.Tools.SetProgressIndicator(false); Balance = new UserBalance(json); return(true); } catch (Exception) { Message.ShowToast("Could not load bundle info, please try again later"); return(false); } }
/// <summary> /// 取得最后一笔充值成功记录 /// </summary> /// <param name="param"></param> /// <returns></returns> public static UserBalance GetLastRecharge(CardInfoParam param) { RechargeFactory factory = new RechargeFactory(); try { if (param == null) { throw new Exception("Param is null"); } UserBalance userBalance = new UserBalance(); WxOrder wxOrder = factory.GetLastRecharge(param); //if (wxOrder == null) throw new Exception("DAL.WeChat.RechargeFactory.GetLastRecharge()==null"); userBalance.lastOrder = wxOrder; return(userBalance); } catch (Exception ex) { LogHelper.WriteLog(new Log() { message = ex.Message }, "GetLastRecharge"); throw ex; } }
public async Task ShouldNotBeAbleToWithdrawMoreThanBalance() { var walletAddress = "1234"; var userId = 1111; double withdrawAmount = 6; var walletUser = new WalletUser(walletAddress, userId); var userBalance = new UserBalance { Balance = 5 }; var chat = new Chat { Id = 123456789 }; _walletUserRepositoryMock.Setup(x => x.GetByUserId(userId)).Returns(walletUser); _userBalanceRepositoryMock.Setup(x => x.Get(userId)).ReturnsAsync(userBalance); await _sut.Handle(chat, userId, withdrawAmount); _botServiceMock.Verify(x => x.SendTextMessage(chat.Id, string.Format(ReplyConstants.InsufficientBalance, userBalance.Balance.RoundMetahashHash(), withdrawAmount.RoundMetahashHash()) , It.IsAny <IReplyMarkup>())); _botServiceMock.VerifyNoOtherCalls(); _withdrawalRepositoryMock.VerifyNoOtherCalls(); _mhcHttpClientMock.VerifyNoOtherCalls(); }
public async Task ShouldCreateAndRetrieveTableRecord() { var tableName = "integration"; await _sut.DeleteTableAsync(tableName); await _sut.CreateTableAsync(tableName); var userId = 123; var userBalanceEntity = await _sut.Retrieve <UserBalance>(tableName, AzureTableConstants.UserBalance.PartitionKeyName, userId.ToString()); Assert.IsNull(userBalanceEntity); userBalanceEntity = new UserBalance(userId) { Balance = 1000, Address = "address", DefaultTipAmount = 5 }; userBalanceEntity = await _sut.InsertOrMergeEntity(tableName, userBalanceEntity); var savedUserBalanceEntity = await _sut.Retrieve <UserBalance>(tableName, AzureTableConstants.UserBalance.PartitionKeyName, userId.ToString()); Assert.IsNotNull(savedUserBalanceEntity); Assert.AreEqual(userBalanceEntity.PartitionKey, savedUserBalanceEntity.PartitionKey); Assert.AreEqual(userBalanceEntity.RowKey, savedUserBalanceEntity.RowKey); Assert.AreEqual(userBalanceEntity.Balance, savedUserBalanceEntity.Balance); Assert.AreEqual(userBalanceEntity.Address, savedUserBalanceEntity.Address); Assert.AreEqual(userBalanceEntity.DefaultTipAmount, savedUserBalanceEntity.DefaultTipAmount); }
public async Task <OutUserDTO> Save(InUserCreateDTO userDTO) { _personValidate.ValidateExistPerson(userDTO.Person); _userValidate.ValidateExistUser(userDTO); var user = BuildUser(userDTO); var userBalance = new UserBalance() { UserId = user.UserId, Principal = true, PermissionAdmin = true, Balance = new Balance() { CurrencyId = (int)eCurrencies.EURO, StatusId = (int)eStatuses.ACTIVE, Amount = 0, CreatedAt = DateTime.UtcNow }, User = user }; await _userBalance.Save(userBalance); return(BuildUserDTO(userBalance.User)); }
public void GetBalanceById() { try { var options = CreateNewContextOptions(); using (var db = new EntireMoneyProcessingContext(options)) { ProcessingTestHelper.PopulateDefaultMoneyCtx(db); } using (var db = new EntireMoneyProcessingContext(options)) { var repository = new SystemMoneyProcessing(db); //IocHelper.GetObject<ISystemMoneyProcessing>(db); var user = db.Set <User>().First(); UserBalance result = null; Assert.DoesNotThrow(() => result = repository.GetUserBalance(user.Id)); Assert.NotNull(result); } } catch (Exception ex) { LogEventManager.Logger.Error(ex); throw; } }
public async Task ShouldNotMultiplyWithUserDefaultTipAmount() { var tipAmount = 2; var text = $"!tip {tipAmount}"; var senderUserId = 1111; var receiverUserId = 9999; var senderBalance = new UserBalance { Balance = 20, DefaultTipAmount = 10 }; var receiverBalance = new UserBalance() { Balance = 5 }; _userBalanceRepository.Setup(x => x.Get(senderUserId)).ReturnsAsync(senderBalance); _userBalanceRepository.Setup(x => x.Get(receiverUserId)).ReturnsAsync(receiverBalance); var amount = await _sut.TryTip(text, senderUserId, receiverUserId); Assert.AreEqual(tipAmount, amount); Assert.AreEqual(20 - tipAmount, senderBalance.Balance); Assert.AreEqual(5 + tipAmount, receiverBalance.Balance); }
public async Task ShouldSettleTotalTipGivenAndReceived() { var senderUserId = 1111; var receiverUserId = 9999; var tipAmount = 12; var senderUserBalance = new UserBalance { Balance = 1000, TotalTipsGiven = 10.2, TotalTipsReceived = 4.6 }; var receiverUserBalance = new UserBalance { Balance = 30.20, TotalTipsGiven = 409.5, TotalTipsReceived = 300.984 }; _userBalanceRepository.Setup(x => x.Get(senderUserId)).ReturnsAsync(senderUserBalance); _userBalanceRepository.Setup(x => x.Get(receiverUserId)).ReturnsAsync(receiverUserBalance); var amount = await _sut.TryTip($"!tip {tipAmount}", senderUserId, receiverUserId); Assert.AreEqual(1000 - amount, senderUserBalance.Balance); Assert.AreEqual(10.2 + amount, senderUserBalance.TotalTipsGiven); Assert.AreEqual(4.6, senderUserBalance.TotalTipsReceived); Assert.AreEqual(30.20 + amount, receiverUserBalance.Balance); Assert.AreEqual(409.5, receiverUserBalance.TotalTipsGiven); Assert.AreEqual(300.984 + amount, receiverUserBalance.TotalTipsReceived); }
public async Task <UserBalance> UpdateUserBalanceAsync(Guid userId, Guid transactionId, decimal amount, DateTime updateDate) { using var context = _contextFactory.Invoke(); var user = new User() { Id = userId }; var transaction = new Transaction() { Id = transactionId }; context.Users.Attach(user); context.Transactions.Attach(transaction); var balance = new UserBalance() { Id = Guid.NewGuid(), Amount = amount, BalanceDate = updateDate, User = user, UserId = userId, Transaction = transaction, TransactionId = transactionId }; context.UserBalances.Add(balance); await context.SaveChangesAsync(); return(balance); }
public async Task <ServiceResponse <UserBalance> > UpdateBalance(UserBalance updatedBalance, string id) { ServiceResponse <UserBalance> serviceResponse = new ServiceResponse <UserBalance>(); try { UserBalance userBalance = await _context.UserBalance.FirstAsync(s => s.user_id == id); if (updatedBalance.add > 0) { userBalance.balance += updatedBalance.add; } if (updatedBalance.remove > 0) { userBalance.balance -= updatedBalance.remove; } await _context.SaveChangesAsync(); serviceResponse.Data = userBalance; } catch (Exception ex) { serviceResponse.Success = false; serviceResponse.Message = ex.Message; } return(serviceResponse); }
/// <summary> /// 根据卡号取得卡信息 /// </summary> /// <param name="param"></param> /// <returns></returns> public static UserBalance GetBalance(CardInfoParam param) { RechargeFactory factory = new RechargeFactory(); try { if (param == null) { throw new Exception("Param is null"); } UserBalance userBalance = factory.GetBalance(param); if (userBalance == null) { throw new Exception("DAL.WeChat.RechargeFactory.GetBalance()==null"); } return(userBalance); } catch (Exception ex) { LogHelper.WriteLog(new Log() { message = ex.Message }, "GetBalance"); throw ex; } }
public int Delete(int id) { UserBalance UserBalanceToDelete = this.context.UserBalances.SingleOrDefault(e => e.UserBalanceId == id); this.context.UserBalances.Remove(UserBalanceToDelete); return(this.context.SaveChanges()); }
protected void Page_Load(object sender, EventArgs e) { ExamineRelationId = RequestData.Get <string>("ExamineRelationId"); id = RequestData.Get <string>("id"); if (!string.IsNullOrEmpty(id)) { ubEnt = UserBalance.Find(id); } switch (RequestActionString) { case "AutoSave": if (!string.IsNullOrEmpty(RequestData.Get <string>("ToRoleCode"))) { ubEnt.ToRoleCode = RequestData.Get <string>("ToRoleCode"); } if (!string.IsNullOrEmpty(RequestData.Get <string>("ToRoleName"))) { ubEnt.ToRoleName = RequestData.Get <string>("ToRoleName"); } if (!string.IsNullOrEmpty(RequestData.Get <string>("ToUserId"))) { ubEnt.ToUserId = RequestData.Get <string>("ToUserId"); } if (!string.IsNullOrEmpty(RequestData.Get <string>("ToUserName"))) { ubEnt.ToUserName = RequestData.Get <string>("ToUserName"); } if (!string.IsNullOrEmpty(RequestData.Get <string>("Balance"))) { ubEnt.Balance = RequestData.Get <int>("Balance"); } ubEnt.DoUpdate(); break; case "delete": IList <string> ids = RequestData.GetList <string>("ids"); foreach (string str in ids) { ubEnt = UserBalance.Find(str); ubEnt.DoDelete(); } break; case "Create": ubEnt = new UserBalance(); ubEnt.ExamineRelationId = RequestData.Get <string>("ExamineRelationId"); ubEnt.RelationName = RequestData.Get <string>("RelationName"); ubEnt.SortIndex = RequestData.Get <int>("SortIndex"); ubEnt.DoCreate(); PageState.Add("ubEnt", ubEnt); break; default: DoSelect(); break; } }
public int Update(UserBalance userBalance) { UserBalance userBalanceToUpdate = this.context.UserBalances.SingleOrDefault(e => e.UserBalanceId == userBalance.UserBalanceId); userBalanceToUpdate.Paid = userBalance.Paid; userBalanceToUpdate.RemainingAcount = userBalance.RemainingAcount; return(this.context.SaveChanges()); }
public static UserBalance Create( UserModel user = null, decimal amount = 0, CurrencyType currencyType = CurrencyType.BitCoin ) { user = user ?? UserFaker.Create(); var id = UserBalance.Create(user, currencyType, amount); return(UserBalanceRepository.Find(id)); }
public void Create_DataCorrect_BalanceCreated() { var user = UserFaker.Create(); var id = UserBalance.Create(user, CurrencyType.BitCoin); var balance = UserBalance.Find(id); Assert.NotNull(balance); Assert.AreEqual(user.id, balance.User().id); }
public ActionResult UpdateBalance(UserBalance m) { inject(); var update = new Services.Account().UpdateAccountBalance(m.AccountNo, m.Balance); return(RedirectToAction("User1", new { userid = m.Id })); return(RedirectToAction("User1", new { userid = m.Id })); }
public async Task <IActionResult> UpdateBalance(UserBalance updatedBalance) { ServiceResponse <UserBalance> response = await _balanceService.UpdateBalance(updatedBalance, _jWTService.GetID()); if (response.Data == null) { return(NotFound(response)); } return(Ok(response)); }
// Room End ------------------------------------------------------------------- public ActionResult UpdateCustomerBalance(int paid, int cid) { float remaining = 0; UserBalance ub = this.UserBalanceService.GetByCustomer(cid); remaining = ub.UserBalanceAmount - paid; return(Json(new { result = remaining }, JsonRequestBehavior.AllowGet)); }
public void Create_WithAmount_BalanceEquals() { var randomBalance = Rand.SmallDecimal(); var user = UserFaker.Create(); var id = UserBalance.Create(user, CurrencyType.BitCoin, randomBalance); var balance = UserBalance.Find(id); Assert.NotNull(balance); Assert.AreEqual(user.id, balance.User().id); Assert.AreEqual(randomBalance, balance.balance); }
public ActionResult EditUserBalance(UserBalance ub) { if (Session["logedIn"] == null) { return(Redirect("/unauthorized")); } ub.Paid = ub.Paid; ub.RemainingAcount = ub.UserBalanceAmount - ub.Paid; this.UserBalanceService.Update(ub); return(Redirect("/Admin/DetailsUserBalance?id=" + ub.CustomerId)); }
public ActionResult CreateUser([FromBody] JsonElement body) { string json = JsonSerializer.Serialize(body); var userObejct = JsonSerializer.Deserialize <User>(json); var hashedPassword = passwordHash.HashPassword(userObejct.Password, null, false); var newUser = new User() { Email = userObejct.Email, Name = userObejct.Name, Phone = userObejct.Phone, UserRole = "U", Password = hashedPassword, CreateBy = 1, CreateDate = DateTime.Now, Active = 1 }; try { _context.Users.Add(newUser); _context.SaveChanges(); int userId = _context.Users .Where(u => u.Email == userObejct.Email) .Select(u => u.Id) .SingleOrDefault(); var newUserBalance = new UserBalance() { UserId = userId, BalanceAmount = 0, Active = 1, CreateBy = 1, CreateDate = DateTime.Now }; _context.UserBalances.Add(newUserBalance); _context.SaveChanges(); } catch (DbUpdateException ex) { //This either returns a error string, or null if it can’t handle that error if (ex != null) { return(BadRequest(ex.ToString())); //return the error string } throw; //couldn’t handle that error, so rethrow } return(Ok(new { result = "OK" })); }
public UserInfoViewModel getInfoMapping(ApplicationUser user) { List <Service> services = helper.getUserServices(user.Id); List <Service> activeSerives = helper.getServicesFiltered(services, CoreController.ServiceStatus.Active.ToString()); List <Service> doneServices = helper.getServicesFiltered(services, CoreController.ServiceStatus.Done.ToString()); var userManager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(new ApplicationDbContext())); List <UserWorkBinding> userWork = db.UserWorkBindings.Where(a => a.UserId.Equals(user.Id)).Include("UserWork").ToList(); double speed = UserHelperLibrary.ServiceProviderSpeed(helper.findUser(user.Id), doneServices.Count); double avg = UserHelperLibrary.ServiceProviderAvgServices(helper.findUser(user.Id), services.Count); UserBalance balance = helper.getUserBalance(user); DateTime dateOfTheLastService = doneServices.Count > 0? doneServices.OrderBy(a => a.LastModificationDate).FirstOrDefault().LastModificationDate:user.CreationDate; return(new UserInfoViewModel { Email = user.Email, Age = user.Age, Country = user.Country, CreationDate = user.CreationDate, JobDescription = user.JobDescription, JoiningDate = user.JoiningDate, Name = user.Name, MartialStatus = user.MartialStatus, PictureId = user.PictureId, Sex = user.Sex, Status = user.Status, Type = user.Type, phoneNumber = user.PhoneNumber, PersonalDescription = user.PersonalDescription, FireBaseId = user.FireBaseId, Id = user.Id, HasRegistered = user.verifiedInterpreter, UserWorks = userWork.Select(a => a.UserWork).ToList(), NumberOfActiveServices = activeSerives.Count(), NumberOfDoneServices = doneServices.Count(), Speed = speed < 1 ? 1 : speed, AvgServicesInOneDay = avg == 0 ? 1 : avg, UserRoles = userManager.GetRoles(user.Id).ToList(), SocialStatus = user.SocialState, ImageUrl = user.imageUrl, SocialToken = user.SocialToken, TotalBalance = balance.TransferedBalance, AvailableBalance = balance.DoneBalance, SuspendedBalance = balance.SuspendedBalance, CompetitionBalance = balance.CompetitionBalance, PointsBalance = user.PointsBalance, UserSpecialCode = user.UserSpecialCode, UserName = user.UserName, VerifiedUser = user.verifiedInterpreter, ServiceProviderPoints = user.ServiceProviderPoints, dateOfLastService = dateOfTheLastService, rank = user.rank }); }
public void GetPositive_DataCorrect_GotOne() { var user = UserFaker.Create(); var amount = Rand.SmallDecimal(); UserBalanceFaker.Create(user, amount); var balances = UserBalance.GetPositive(user); Assert.AreEqual(amount, balances[0].balance); }
public IActionResult Balance(IFormCollection Form) { string userID = Form["user_id"]; User u = _pokerContext.User.Where(u => u.SlackID.Equals(userID)).FirstOrDefault(); UserBalance balance = _pokerContext.UserBalance.Where(b => b.UserID == u.ID).FirstOrDefault(); var sessions = _pokerRepo.UpdateBalances(); Console.WriteLine(u.RealName + " has requested their balance."); if (sessions == null) { string gameOnText = "There is a game going on so your balance may not be accurate."; _slackClient.PostAPIMessage( text: gameOnText, channel: userID ); } var balances = _pokerRepo.GetUserBalances(); try { foreach (Session s in sessions) { var b = balances.Where(b => b.UserID == s.UserID).FirstOrDefault(); var text2 = "Poker Session Total: " + s.Chips.ToString() + " Balance: " + b.Balance; _slackClient.PostAPIMessage( text: text2, channel: s.User.SlackID ); } } catch { } string text = ""; try { text = "Your balance is: " + balance.Balance; } catch { text = "You have never played in a cash game."; } _slackClient.PostAPIMessage( text: text, channel: userID ); return(new EmptyResult()); }
public ActionResult UpdateBalance(string userid) { inject(); var user = _context.tblAccounts.Where(a => a.userId == userid).SingleOrDefault(); UserBalance userBalance = new UserBalance { AccountNo = user.acctNo, Balance = Convert.ToDecimal(user.ActiveAmount), Id = user.userId }; return(PartialView("_UserCredit", userBalance)); }
public static void SaveTile(bool failed, UserBalance balance, string backcontent) { var i = 0; while (i < 5) { try { var color = (bool)IsolatedStorageSettings.ApplicationSettings["tileAccentColor"] ? (SolidColorBrush)Application.Current.Resources["TransparentBrush"] : new SolidColorBrush(new Color { A = 255, R = 150, G = 8, B = 8 }); BackTile customBackTile; if (failed) { customBackTile = new BackTile(color, backcontent, string.Empty, string.Empty, string.Empty, string.Empty); } else if (balance.Data != null) { customBackTile = new BackTile(color, balance.Credit, balance.Data, balance.Sms, balance.VikingSms, balance.VikingMinutes); } else { customBackTile = new BackTile(color, balance.Credit, "0 MB", "0 SMS", balance.VikingMinutes, string.Empty); } if (!Helper.SaveElement(customBackTile, Tile.Back)) { i++; continue; } } catch (Exception) { i++; if (i == 5) { return; } } i = 5; } }
public static void SaveTile(bool failed, UserBalance balance) { var i = 0; while (i < 5) { try { var color = (bool)IsolatedStorageSettings.ApplicationSettings["tileAccentColor"] ? (SolidColorBrush)Application.Current.Resources["TransparentBrush"] : new SolidColorBrush(new Color { A = 255, R = 150, G = 8, B = 8 }); FrontTile customFrontTile; if (failed) { customFrontTile = new FrontTile(color, "?"); } else if (balance.Data != null) { customFrontTile = new FrontTile(color, string.IsNullOrWhiteSpace(balance.Remaining.ToString()) ? "?" : balance.Remaining.ToString()); } else { customFrontTile = new FrontTile(color, "0"); } if (!Helper.SaveElement(customFrontTile, Tile.Front)) { i++; continue; } } catch (Exception) { i++; if (i == 5) { return; } continue; } i = 5; } }
public async Task ShouldValidateToZeroWhenBalanceIsInsufficient(string text, int tipAmount) { var senderUserId = 1111; var receiverUserId = 9999; var senderBalance = new UserBalance { Balance = 1 }; var receiverBalance = new UserBalance(); _userBalanceRepository.Setup(x => x.Get(senderUserId)).ReturnsAsync(senderBalance); _userBalanceRepository.Setup(x => x.Get(receiverUserId)).ReturnsAsync(receiverBalance); var amount = await _sut.TryTip(text, senderUserId, receiverUserId); Assert.AreEqual(tipAmount, amount); Assert.AreEqual(1, senderBalance.Balance); Assert.AreEqual(0, receiverBalance.Balance); }
protected void Timer1_Tick(object sender, EventArgs e) { if (CurrentCountDown > 0) { CurrentCountDown = CurrentCountDown - 1; Label1.Text = CurrentCountDown.ToString(); if (CurrentCountDown == 0) { //btnDone.Enabled = true; // User daily link click ins/upd // userbalance upd/ins // ins usertransactionhistory using (TheFacade facade = new TheFacade()) { UserDailyLinkClick userDailyLinkClickOld = facade.AdvertiseFacade.GetUserDailyLinkClickToday(DateTime.Now.Date,CurrentUserID); if (userDailyLinkClickOld == null || userDailyLinkClickOld.IID <= 0) { UserDailyLinkClick userDailyLinkClick = new UserDailyLinkClick(); userDailyLinkClick.UserID = CurrentUserID; userDailyLinkClick.ClickCount = 1; userDailyLinkClick.Date = DateTime.Now; facade.Insert<UserDailyLinkClick>(userDailyLinkClick); } else { int click = userDailyLinkClickOld.ClickCount; userDailyLinkClickOld.ClickCount=click+1; facade.Update<UserDailyLinkClick>(userDailyLinkClickOld); } decimal Amount = Convert.ToDecimal(0.05); decimal sponsorAmount = (Amount * 5) / 100; decimal actualAmount=Amount-sponsorAmount; UserBalance userBalanceOld = facade.AdvertiseFacade.GetUserBalanceByUserID(CurrentUserID); if (userBalanceOld == null) { UserBalance userBalance = new UserBalance(); userBalance.Amount = actualAmount; userBalance.UserID = CurrentUserID; facade.Insert<UserBalance>(userBalance); } else { userBalanceOld.Amount = userBalanceOld.Amount + actualAmount; facade.Update<UserBalance>(userBalanceOld); } UserTransactionHistory userTransactionHistory = new UserTransactionHistory(); userTransactionHistory.UserID = CurrentUserID; userTransactionHistory.UserTransactionTypeID = Convert.ToInt32(EnumHelper.UserTransactionType.Click); userTransactionHistory.Amount = actualAmount ; userTransactionHistory.ActualAmount = Amount; userTransactionHistory.Date = DateTime.Now; userTransactionHistory.Description = "You have received $"+actualAmount.ToString()+" for clicking a advetrisement"; userTransactionHistory.Status = 1; userTransactionHistory.TAXAmount = 0; Guid TransactionKey = System.Guid.NewGuid(); userTransactionHistory.TransactionKey = TransactionKey; facade.Insert<UserTransactionHistory>(userTransactionHistory); SystemUser user = facade.TanviFacade.GetSystemUserById(CurrentUserID); UserTransactionHistory userTransactionHistory2 = new UserTransactionHistory(); userTransactionHistory2.UserID = user.SponsorID.Value; userTransactionHistory2.UserTransactionTypeID = Convert.ToInt32(EnumHelper.UserTransactionType.Sponsor); userTransactionHistory2.Amount = sponsorAmount; userTransactionHistory2.ActualAmount = sponsorAmount; userTransactionHistory2.Date = DateTime.Now; userTransactionHistory2.Description = "You have received $" + sponsorAmount.ToString() + " sponsor amount for clicking a advetrisement of your sponsored user"; userTransactionHistory2.Status = 1; userTransactionHistory2.TAXAmount = 0; userTransactionHistory2.TransactionKey = TransactionKey; facade.Insert<UserTransactionHistory>(userTransactionHistory2); UserBalance sponsorUserBalance = facade.AdvertiseFacade.GetUserBalanceByUserID(user.SponsorID.Value); if (sponsorUserBalance == null) { sponsorUserBalance = new UserBalance(); sponsorUserBalance.Amount = sponsorAmount; sponsorUserBalance.UserID = user.SponsorID.Value; facade.Insert<UserBalance>(sponsorUserBalance); } else { sponsorUserBalance.Amount = sponsorUserBalance.Amount + sponsorAmount; facade.Update<UserBalance>(sponsorUserBalance); } Label1.Text = "Done"; Timer1.Enabled = false; Response.Redirect("~/Advertise/ClickAdd.aspx"); } } } }