forked from powerfun/udpservice
解决虚拟用户一直增长的bug
This commit is contained in:
parent
fec18db7a8
commit
917e5d9800
@ -23,9 +23,16 @@ namespace OnlineUserPool.Hander
|
|||||||
|
|
||||||
private void Init()
|
private void Init()
|
||||||
{
|
{
|
||||||
var randomUser = WebService.GetMapRouteRandomUser(top, null);
|
var records = WebService.GetMapRouteRandomRecord(top, null);
|
||||||
mapRecordRankings = WebService.GetRecordFileFromServer(randomUser.Select(n => n.RankingId).ToList());
|
var pageSize = 10;
|
||||||
|
var pageCount = (int)Math.Ceiling(records.Count / (double)pageSize);
|
||||||
|
mapRecordRankings = new List<MapRecordRanking>();
|
||||||
|
for (int i = 0; i < pageCount; i++)
|
||||||
|
{
|
||||||
|
mapRecordRankings.AddRange(WebService.GetRecordFileFromServer(records.Skip(i* pageSize).Take(pageSize).Select(n => n.RankingId).ToList()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 获取虚拟人物数据
|
/// 获取虚拟人物数据
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -90,15 +97,15 @@ namespace OnlineUserPool.Hander
|
|||||||
if (end.Count > 0)
|
if (end.Count > 0)
|
||||||
{
|
{
|
||||||
var virutalEndCount = mapRecordRankings.Count(d => d.UserId < 0 && d.End);
|
var virutalEndCount = mapRecordRankings.Count(d => d.UserId < 0 && d.End);
|
||||||
var routeIds = mapRecordRankings.Select(n => n.RouteId).ToList();
|
var routeIds = mapRecordRankings.Select(n => n.RouteId).Distinct().ToList();
|
||||||
mapRecordRankings.RemoveAll(n => n.End);
|
mapRecordRankings.RemoveAll(n => n.End);
|
||||||
if (virutalEndCount > 0)
|
if (virutalEndCount > 0)
|
||||||
{
|
{
|
||||||
var randomUser = WebService.GetMapRouteRandomUser(ConfigHelp.Top - virutalEndCount, routeIds);
|
var randomUser = WebService.GetMapRouteRandomRecord(virutalEndCount, routeIds);
|
||||||
|
|
||||||
var str = "参数:" + (ConfigHelp.Top - virutalEndCount) + "," + string.Join(",",routeIds) + "\r\n";
|
//var str = "参数:" + (ConfigHelp.Top - virutalEndCount) + "," + string.Join(",",routeIds) + "\r\n";
|
||||||
str += "服务端返回:" + Newtonsoft.Json.JsonConvert.SerializeObject(randomUser) +"\r\n";
|
//str += "服务端返回:" + Newtonsoft.Json.JsonConvert.SerializeObject(randomUser) +"\r\n";
|
||||||
Log.Information(str);
|
//Log.Information(str);
|
||||||
var addRankings = WebService.GetRecordFileFromServer(randomUser.Select(n => n.RankingId).ToList());
|
var addRankings = WebService.GetRecordFileFromServer(randomUser.Select(n => n.RankingId).ToList());
|
||||||
mapRecordRankings.AddRange(addRankings);
|
mapRecordRankings.AddRange(addRankings);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -56,7 +56,7 @@ namespace OnlineUserPool.Unility
|
|||||||
return PostAsync<JsonResult<List<MapRecordRanking>>>("MapRecord/GetRandomList", id).ConfigureAwait(false).GetAwaiter().GetResult().data;
|
return PostAsync<JsonResult<List<MapRecordRanking>>>("MapRecord/GetRandomList", id).ConfigureAwait(false).GetAwaiter().GetResult().data;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static List<MapRouteAndUserQueryVM> GetMapRouteRandomUser(int top, IEnumerable<int> routeIds)
|
public static List<MapRouteAndUserQueryVM> GetMapRouteRandomRecord(int top, IEnumerable<int> routeIds)
|
||||||
{
|
{
|
||||||
var routeIdsStr = "";
|
var routeIdsStr = "";
|
||||||
if(routeIds != null)
|
if(routeIds != null)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user