From ed79b4cd7c82be706df6817c10fd9fcc61b798e9 Mon Sep 17 00:00:00 2001 From: Kalane Date: Thu, 16 Sep 2021 14:23:09 +0200 Subject: [PATCH] feat: add back records tab --- .../Summoner/Records/RecordCard.vue | 16 ++-- client/src/helpers/summoner.js | 27 +++---- client/src/store/modules/summoner.js | 5 +- client/src/views/SummonerRecords.vue | 74 +++++++------------ .../Controllers/Http/SummonersController.ts | 10 ++- 5 files changed, 57 insertions(+), 75 deletions(-) diff --git a/client/src/components/Summoner/Records/RecordCard.vue b/client/src/components/Summoner/Records/RecordCard.vue index c059cae..d7a2c44 100644 --- a/client/src/components/Summoner/Records/RecordCard.vue +++ b/client/src/components/Summoner/Records/RecordCard.vue @@ -5,7 +5,7 @@ :style="{ backgroundImage: `${hover ? gradientHover : gradient}, - url('https://raw.communitydragon.org/latest/plugins/rcp-be-lol-game-data/global/default/v1/champion-splashes/${record.champion.id}/${record.champion.id}000.jpg')` + url('https://raw.communitydragon.org/latest/plugins/rcp-be-lol-game-data/global/default/v1/champion-splashes/${record.champion_id}/${record.champion_id}000.jpg')` }" :class="borderColor" class="relative w-full p-4 mx-2 mt-6 leading-none bg-center bg-cover border rounded-lg record-card" @@ -21,18 +21,18 @@ {{ title }} Champion Played -
{{ record[property] }}
+
{{ record.amount }}
{{ record.result === 'Win' ? 'Won' : 'Lost' }} + :class="record.result ? 'text-green-400' : 'text-red-400'" + >{{ record.result ? 'Won' : 'Lost' }} {{ timeDifference(record.date) }}
@@ -41,7 +41,7 @@
- match {{ record.gameId }} + {{ record.id }} {{ gameModes[record.gamemode].name }}
@@ -65,10 +65,6 @@ export default { type: String, required: true }, - property: { - type: String, - required: true - }, record: { type: Object, required: true diff --git a/client/src/helpers/summoner.js b/client/src/helpers/summoner.js index d191680..c4938a1 100644 --- a/client/src/helpers/summoner.js +++ b/client/src/helpers/summoner.js @@ -66,21 +66,22 @@ export function createBasicSummonerData(RiotData) { /** * Return the formatted records of a summoner - * @param {Object} records : raw records from the database stats + * @param {Object} recordsDto : raw records from the database stats */ -export function createRecordsData(records) { - records.maxTime.time = secToTime(records.maxTime.time) - records.maxGold.gold = records.maxGold.gold.toLocaleString() - records.maxDmgTaken.dmgTaken = records.maxDmgTaken.dmgTaken.toLocaleString() - records.maxDmgChamp.dmgChamp = records.maxDmgChamp.dmgChamp.toLocaleString() - records.maxDmgObj.dmgObj = records.maxDmgObj.dmgObj.toLocaleString() - records.maxKp.kp = `${records.maxKp.kp}%` +export function createRecordsData(recordsDto) { + const records = recordsDto.reduce((acc, record) => { + acc[record.what] = record + return acc + }, {}) - // New record fields - if (records.maxLiving) { - records.maxLiving.longestLiving = secToTime(records.maxLiving.longestLiving) - records.maxHeal.heal = records.maxHeal.heal.toLocaleString() - } + records.game_duration.amount = secToTime(records.game_duration.amount) + records.gold.amount = records.gold.amount.toLocaleString() + records.damage_taken.amount = records.damage_taken.amount.toLocaleString() + records.damage_dealt_champions.amount = records.damage_dealt_champions.amount.toLocaleString() + records.damage_dealt_objectives.amount = records.damage_dealt_objectives.amount.toLocaleString() + records.kp.amount = `${records.kp.amount}%` + records.time_spent_living.amount = secToTime(records.time_spent_living.amount) + records.heal.amount = records.heal.amount.toLocaleString() return records } diff --git a/client/src/store/modules/summoner.js b/client/src/store/modules/summoner.js index 9698aac..f8dd1dc 100644 --- a/client/src/store/modules/summoner.js +++ b/client/src/store/modules/summoner.js @@ -25,7 +25,7 @@ export const state = { championsLoaded: false }, records: { - list: [], + list: {}, recordsLoaded: false }, live: { @@ -81,6 +81,7 @@ export const mutations = { state.overview.matchIndex = infos.matches.length state.overview.stats = infos.stats state.overview.loaded = true + state.records.recordsLoaded = false }, RECORDS_FOUND(state, { records }) { state.records.list = records @@ -218,7 +219,7 @@ export const actions = { const resp = await axios(({ url: 'summoner/records', data: { puuid: state.basic.account.puuid }, method: 'POST' })).catch(() => { }) console.log('---RECORDS---') console.log(resp.data) - const records = resp.data ? createRecordsData(resp.data) : {} + const records = resp.data.length ? createRecordsData(resp.data) : {} commit('RECORDS_FOUND', { records }) }, diff --git a/client/src/views/SummonerRecords.vue b/client/src/views/SummonerRecords.vue index b3324a5..39349e5 100644 --- a/client/src/views/SummonerRecords.vue +++ b/client/src/views/SummonerRecords.vue @@ -1,6 +1,6 @@ @@ -204,47 +185,42 @@ -
Multi kills
-
+
Multi kills
+
@@ -268,7 +244,7 @@
-