fix: 【V5.17.0】游戏详情-详情tab页面优化-大家都在玩-1212测试-第2点 https://jira.shanqu.cc/browse/GHZS-656
This commit is contained in:
@ -71,51 +71,49 @@ class DescViewModel(
|
||||
return
|
||||
}
|
||||
|
||||
val labelGames = arrayListOf<String>()
|
||||
for (relatedGame in relatedGames ?: listOf()) {
|
||||
if (relatedGame.game == null) continue
|
||||
val size = relatedGame.game!!.size
|
||||
if (size > 4) {
|
||||
val randomArray = RandomUtils.getRandomArray(4 - mIdMaps.size, size)
|
||||
for (i in randomArray) {
|
||||
mIdMaps[relatedGame.game!![i]] = "标签推荐"
|
||||
}
|
||||
break
|
||||
} else {
|
||||
relatedGame.game!!.take(4 - mIdMaps.size).forEach {
|
||||
mIdMaps[it] = "标签推荐"
|
||||
}
|
||||
}
|
||||
if (mIdMaps.size == 4) {
|
||||
break
|
||||
relatedGame.game?.let {
|
||||
labelGames.addAll(it)
|
||||
}
|
||||
}
|
||||
|
||||
if (labelGames.isNotEmpty()) {
|
||||
val gameIds = labelGames.take(4)
|
||||
gameIds.forEach {
|
||||
mIdMaps[it] = "标签推荐"
|
||||
}
|
||||
}
|
||||
val labelGameCount = mIdMaps.size
|
||||
|
||||
if (installGames != null) {
|
||||
if (installGames.size > 4) {
|
||||
val randomArray = RandomUtils.getRandomArray(4, installGames.size)
|
||||
for (i in randomArray) {
|
||||
mIdMaps[installGames[i]] = "安装推荐"
|
||||
}
|
||||
} else {
|
||||
installGames.forEach {
|
||||
mIdMaps[it] = "安装推荐"
|
||||
}
|
||||
val gameIds = installGames.take(4)
|
||||
gameIds.forEach {
|
||||
mIdMaps[it] = "安装推荐"
|
||||
}
|
||||
}
|
||||
|
||||
if (downloadGames != null) {
|
||||
if (downloadGames.size > 4) {
|
||||
val randomArray = RandomUtils.getRandomArray(4, downloadGames.size)
|
||||
for (i in randomArray) {
|
||||
mIdMaps[downloadGames[i]] = "下载推荐"
|
||||
}
|
||||
} else {
|
||||
downloadGames.forEach {
|
||||
mIdMaps[it] = "下载推荐"
|
||||
}
|
||||
val gameIds = downloadGames.take(4)
|
||||
gameIds.forEach {
|
||||
mIdMaps[it] = "下载推荐"
|
||||
}
|
||||
}
|
||||
|
||||
if (mIdMaps.size < 6 && labelGames.size > labelGameCount) {
|
||||
for (i in labelGameCount until labelGames.size) {
|
||||
mIdMaps[labelGames[i]] = "标签推荐"
|
||||
if (mIdMaps.size >= 6) break
|
||||
}
|
||||
}
|
||||
|
||||
if (mIdMaps.size < 6) {
|
||||
val entity = mDataList.find { it.type == DetailEntity.Type.RECOMMENDED_GAMES.value }
|
||||
mDataList.remove(entity)
|
||||
assembleListWithRecommendedGames()
|
||||
return
|
||||
}
|
||||
|
||||
getGamesDigestByIds {
|
||||
mRelatedGameList.clear()
|
||||
mRelatedGameList.addAll(it)
|
||||
|
||||
Reference in New Issue
Block a user