/// <summary> /// 小游戏 - 删除游戏的人员数据 - 内部用 /// </summary> /// <param name="request"></param> /// <returns></returns> public virtual async Task <bool> DeleteGameUserDataAsync(DeleteGameUserDataRequest request) { try { var gameVersion = GameVersion; var userId = request.UserId; // 删除用户相关数据 using (var dbHelper = DbHelper.CreateDbHelper()) { await Task.WhenAll( DalGameUserInfo.DeleteGameUserInfoAsync(dbHelper, gameVersion, userId), DalGameUserPointDetail.DeleteGameUserPointDetailAsync(dbHelper, gameVersion, userId), DalGameUserPrize.DeleteGameUserPrizeAsync(dbHelper, gameVersion, userId), DalGameUserShare.DeleteGameUserShareAsync(dbHelper, gameVersion, userId) ); } return(true); } catch (Exception e) { Logger.Error( $"{ManagerName} -> DeleteGameUserDataAsync -> {JsonConvert.SerializeObject(request)} ", e.InnerException ?? e); throw; } }
/// <summary> /// 获取 用户信息 /// </summary> /// <param name="request"></param> /// <returns></returns> public virtual async Task <GetGameUserInfoResponse> GetGameUserInfoAsync(GetGameUserInfoRequest request) { try { var gameVersion = GameVersion; // 获取用户信息 var taskUserInfo = DalGameUserInfo.GetGameUserInfoAsync(true, gameVersion, request.UserId); // 获取用户已领取奖品 var taskUserPrizeList = DalGameUserPrize.GetGameUserPrizeAsync(true, gameVersion, request.UserId); await Task.WhenAll(taskUserInfo, taskUserPrizeList); var result = new GetGameUserInfoResponse(); result.Point = taskUserInfo.Result?.Point ?? 0; result.PrizeItems = taskUserPrizeList .Result? .Select(p => new GetGameUserInfoResponsePrizeItems { PrizeName = p.PrizeName, PrizePic = p.PrizePicUrl, PrizeDesc = p.PrizeDesc, PrizeTitle = p.PrizeTitle, PrizeStartTime = p.PrizeStartTime, PrizeEndTime = p.PrizeEndTime }) .ToList(); return(result); } catch (Exception e) { Logger.Error($"{ManagerName} -> GetGameUserInfoAsync -> {JsonConvert.SerializeObject(request)} ", e.InnerException ?? e); throw; } }