private decimal DecutMoney(Player Dplayer, decimal amount, string cause) { Player myPlayer = _playerService.FindPlayerByName(Dplayer.WeixinName); _playerService.AdjustAccount(myPlayer, -amount, cause); return(myPlayer.Account.Balance); }
public override PayOrder CompletePayOrder(object obj) { WxPayData wxPayData = (WxPayData)obj; PayOrder payOrder = FindPayOrder(wxPayData); if (payOrder != null && payOrder.Success == false) { Player player = _playerService.FindPlayerByName(payOrder.WeixinName); //IstoreHouse.GetPlayerByName(payOrder.WeixinName); try { // player_.Account.Addmount(payOrder.Amount, "充值"); _playerService.AdjustAccount(player, payOrder.Amount, "充值"); if (ManagePlayer.GetOnlyInstance().WeixinName == player.IntroducerWeixinName && payOrder.Amount <= 10) { _playerService.AdjustAccount(player, payOrder.Amount * (decimal)0.02, "随机奖励"); } else { Player introducer = _playerService.FindPlayerByName(player.IntroducerWeixinName); //IstoreHouse.GetPlayerByName(player_.IntroducerWeixinName); _playerService.AdjustAccount(introducer, payOrder.Amount * (decimal)0.02, "分享奖励"); } payOrder.Success = true; _storeHouse.SaveChanges(); //IstoreHouse.SaveChanges(); } catch (Exception) { _logger.LogInformation("rechargeError:out_trade_no:" + payOrder.Out_trade_no + "_weixinName:" + payOrder.WeixinName + "_amount:" + payOrder.Amount); } } return(payOrder); }