From 660c88975c6b5377a43d0103d421509d323170d6 Mon Sep 17 00:00:00 2001 From: Hide_D Date: Fri, 8 Apr 2022 00:55:13 +0900 Subject: [PATCH] =?UTF-8?q?fix,refac:=20=EA=B6=8C=ED=95=9C=20=EB=B6=80?= =?UTF-8?q?=EC=A1=B1=EC=9D=98=20=EA=B2=BD=EC=9A=B0=20'-'=EC=9D=84=20?= =?UTF-8?q?=EC=9E=98=20=EB=9D=84=EC=9A=B0=EB=8F=84=EB=A1=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hwe/ts/PageNationGeneral.vue | 6 +-- hwe/ts/components/GeneralList.vue | 48 ++++++++++--------- hwe/ts/defs/API/Nation.ts | 6 +-- hwe/ts/gridCellRenderer/GridTooltipCell.vue | 16 ++++--- hwe/ts/gridCellRenderer/SimpleTooltipCell.vue | 7 ++- 5 files changed, 46 insertions(+), 37 deletions(-) diff --git a/hwe/ts/PageNationGeneral.vue b/hwe/ts/PageNationGeneral.vue index 7711a2b2..86aaee66 100644 --- a/hwe/ts/PageNationGeneral.vue +++ b/hwe/ts/PageNationGeneral.vue @@ -67,17 +67,17 @@ async function reload() { if (permission == 0) { const rawGeneralList = merge2DArrToObjectArr(column, list); generalList.value = rawGeneralList.map((v) => { - return { permission, ...v }; + return { permission, st0: true, st1: false, st2: false, ...v }; }); } else if (permission == 1) { const rawGeneralList = merge2DArrToObjectArr(column, list); generalList.value = rawGeneralList.map((v) => { - return { permission, ...v }; + return { permission, st0: true, st1: true, st2: false, ...v }; }); } else if ([2, 3, 4].includes(permission)) { const rawGeneralList = merge2DArrToObjectArr(column, list); generalList.value = rawGeneralList.map((v) => { - return { permission, ...v }; + return { permission, st0: true, st1: true, st2: true, ...v }; }); for (const [troopLeader, troopName] of troops) { diff --git a/hwe/ts/components/GeneralList.vue b/hwe/ts/components/GeneralList.vue index c395d951..c89ebc14 100644 --- a/hwe/ts/components/GeneralList.vue +++ b/hwe/ts/components/GeneralList.vue @@ -259,7 +259,7 @@ function storeDisplaySetting() { return; } - const nickName = prompt("선택한 설정의 별명을 지어주세요", currentSetting.value[0]?'':currentSetting.value[1]); + const nickName = prompt("선택한 설정의 별명을 지어주세요", currentSetting.value[0] ? "" : currentSetting.value[1]); if (!nickName) { return; } @@ -288,10 +288,9 @@ function onGridReady(params: GridReadyEvent) { params.api.setDomLayout("normal"); } loadLastUsedSettings(); - if(currentSetting.value[0]){ + if (currentSetting.value[0]) { setDisplaySetting(currentSetting.value, defaultDisplaySetting[currentSetting.value[1]]); - } - else{ + } else { setDisplaySetting(currentSetting.value, unwrap(displaySettings.value.get(currentSetting.value[1]))); } @@ -304,7 +303,7 @@ function getRowHeight(): number { return rowHeight.value; } type headerType = - | keyof Omit + | keyof Omit | "stat" | "icon" | "goldRice" @@ -372,6 +371,9 @@ function getColumnList(): [headerType, ProvidedColumnGroup | Column, number?][] return result; } function naiveCheClassNameFilter(value: string): string { + if (!value) { + return "-"; + } const text = value.split("_").pop() ?? "None"; if (text === "None") { return "-"; @@ -381,6 +383,9 @@ function naiveCheClassNameFilter(value: string): string { function numberFormatter(unit?: string) { if (unit) { return (value: GenValueParams): string => { + if (value.value == null) { + return "-"; + } const valueText = (value.value as number).toLocaleString(); return `${valueText} ${unit}`; }; @@ -390,7 +395,7 @@ function numberFormatter(unit?: string) { }; } function extractTroopInfo(value: GeneralListItem): [string, GeneralListItemP2] | undefined { - if (value.permission == 0 || value.permission == 1) { + if (!value.st2) { return undefined; } const troopID = value.troop; @@ -538,22 +543,16 @@ const columnRawDefs = ref sortable: true, comparator: (a, b, c, d) => c.data.officerLevel - d.data.officerLevel, cellRenderer: ({ data }: GenValueParams) => { - if ([2, 3, 4].includes(data.permission)) { - const dataP2 = data as GeneralListItemP2; - if (2 <= dataP2.officerLevel && dataP2.officerLevel <= 4) { - const cityName = gameConstStore.value.cityConst[dataP2.officer_city].name; - return `${cityName}
${dataP2.officerLevelText}`; - } + if (data.st2 && 2 <= data.officerLevel && data.officerLevel <= 4) { + const cityName = gameConstStore.value.cityConst[data.officer_city].name; + return `${cityName}
${data.officerLevelText}`; } return data.officerLevelText; }, filterValueGetter: ({ data }) => { - if ([2, 3, 4].includes(data.permission)) { - const dataP2 = data as GeneralListItemP2; - if (2 <= dataP2.officerLevel && dataP2.officerLevel <= 4) { - const cityName = gameConstStore.value.cityConst[dataP2.officer_city].name; - return convertSearch초성(`${cityName} ${dataP2.officerLevelText}`); - } + if (data.st2 && 2 <= data.officerLevel && data.officerLevel <= 4) { + const cityName = gameConstStore.value.cityConst[data.officer_city].name; + return convertSearch초성(`${cityName} ${data.officerLevelText}`); } return convertSearch초성(data.officerLevelText); }, @@ -647,7 +646,7 @@ const columnRawDefs = ref headerName: "도시", field: "city", valueGetter: ({ data }) => { - if (data.permission == 0 || data.permission == 1) { + if (!data.st2) { return "-"; } return gameConstStore.value.cityConst[data.city].name; @@ -656,7 +655,7 @@ const columnRawDefs = ref sortable: true, width: 60, filterValueGetter: ({ data }) => { - if (data.permission == 0 || data.permission == 1) { + if (!data.st2) { return "-"; } return convertSearch초성(gameConstStore.value.cityConst[data.city].name); @@ -740,7 +739,7 @@ const columnRawDefs = ref columnGroupShow: "open", filter: true, filterValueGetter: ({ data }) => { - if (data.permission == 0 || data.permission == 1) { + if (!data.st2) { return "-"; } const name = gameConstStore.value.iActionInfo.crewtype[data.crewtype].name; @@ -767,7 +766,7 @@ const columnRawDefs = ref headerName: "훈/사", width: 60, cellRenderer: ({ data }: GenValueParams) => { - if (data.permission == 0 || data.permission == 1) { + if (!data.st2) { return "?"; } return `${data.train}
${data.atmos}`; @@ -890,6 +889,9 @@ const columnRawDefs = ref if (data.npc >= 2) { return "NPC 장수"; } + if (!data.reservedCommand) { + return "-"; + } const commandList = data.reservedCommand; if (!commandList) { return "???"; @@ -930,7 +932,7 @@ const columnRawDefs = ref field: "turntime", width: 60, valueFormatter: ({ value, data }) => { - if (data.permission == 0 || data.permission == 1) { + if (!data.st2) { return "-"; } const turntime = value as string; diff --git a/hwe/ts/defs/API/Nation.ts b/hwe/ts/defs/API/Nation.ts index 1544eb85..3bc48e6b 100644 --- a/hwe/ts/defs/API/Nation.ts +++ b/hwe/ts/defs/API/Nation.ts @@ -73,9 +73,9 @@ export type GeneralListItemP2 = GeneralListItemP1 & { export type RawGeneralListItem = GeneralListItemP0 | GeneralListItemP1 | GeneralListItemP2; export type GeneralListItem = - ({ permission: 0 } & GeneralListItemP0) | - ({ permission: 1 } & GeneralListItemP1) | - ({ permission: 2 | 3 | 4 } & GeneralListItemP2); + (GeneralListItemP0 & { st0: true, st1: false, st2: false, permission: 0 }) | + (GeneralListItemP1 & { st0: true, st1: true, st2: false, permission: 1 }) | + (GeneralListItemP2 & { st0: true, st1: true, st2: true, permission: 2 | 3 | 4 }); type ResponseEnv = { year: number, diff --git a/hwe/ts/gridCellRenderer/GridTooltipCell.vue b/hwe/ts/gridCellRenderer/GridTooltipCell.vue index 1a189faa..c56bb0fd 100644 --- a/hwe/ts/gridCellRenderer/GridTooltipCell.vue +++ b/hwe/ts/gridCellRenderer/GridTooltipCell.vue @@ -2,16 +2,22 @@