private static bool GetPayment(int game, int server, string account, string userID) { try { GameUser userInfo = new PersonalCacheStruct <GameUser>().FindKey(userID); if (userInfo == null) { return(false); } var chatService = new TjxChatService(); OrderInfo[] model = PayManager.getPayment(game, server, account); foreach (OrderInfo order in model) { userInfo.PayGold = MathUtils.Addition(userInfo.PayGold, order.GameCoins, int.MaxValue); //userInfo.Update(); PayManager.Abnormal(order.OrderNO); DialHelper.ReturnRatioGold(userID, order.GameCoins); //大转盘抽奖奖励充值返还 chatService.SystemSendWhisper(userInfo, string.Format(LanguageManager.GetLang().PaySuccessMsg, order.GameCoins)); DoGiff(userID, order); FestivalHelper.GetPayReward(userInfo, order.GameCoins, FestivalType.PayReward); } return(true); } catch (Exception ex) { BaseLog log = new BaseLog("PaymentLog"); log.SaveLog(ex); return(false); } }
/// <summary> /// /// </summary> /// <param name="user"></param> public void Notify(IUser user) { int gameId = GameEnvironment.ProductCode; int serverId = GameEnvironment.ProductServerId; int userId = user.GetUserId(); string pid = user.GetPassportId(); OrderInfo[] orderList = PayManager.getPayment(gameId, serverId, pid); foreach (var orderInfo in orderList) { if (DoNotify(userId, orderInfo)) { PayManager.Abnormal(orderInfo.OrderNO); TraceLog.ReleaseWriteFatal("Payment order:{0},Pid:{1} notify success", orderInfo.OrderNO, pid); } else { TraceLog.ReleaseWriteFatal("Payment order:{0},Pid:{1} notify faild", orderInfo.OrderNO, pid); } } }