public Task <AsyncTaskResult> HandleAsync(WithdrawApplyCreatedEvent evnt) { return(TryTransactionAsync(async(connection, transaction) => { var effectedRows = await connection.UpdateAsync(new { Cash = evnt.FinalCash, LockedCash = evnt.FinalLockedCash, Version = evnt.Version, EventSequence = evnt.Sequence }, new { Id = evnt.AggregateRootId, //Version = evnt.Version - 1 }, ConfigSettings.WalletTable, transaction); if (effectedRows == 1) { await connection.InsertAsync(new { Id = evnt.WithdrawApplyId, WalletId = evnt.AggregateRootId, Amount = evnt.Info.Amount, BankName = evnt.Info.BankName, BankNumber = evnt.Info.BankNumber, BankOwner = evnt.Info.BankOwner, Remark = evnt.Info.Remark, CreatedOn = evnt.Timestamp, Status = (int)WithdrawApplyStatus.Placed }, ConfigSettings.WithdrawApplysTable, transaction); } })); }
//提现申请 private void Handle(WithdrawApplyCreatedEvent evnt) { _withdrawApplys.Add(new WithdrawApply(evnt.WithdrawApplyId, evnt.Info, WithdrawApplyStatus.Placed)); _cash = evnt.FinalCash; _lockedCash = evnt.FinalLockedCash; }