1.优化/dice/reward_config/index页面中的备注根据结算金额来变化
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
"tipIndex": "色子点数须在 5~30 之间且本表内不重复。",
|
"tipIndex": "色子点数须在 5~30 之间且本表内不重复。",
|
||||||
"tierRecommendRules": "【结算金额与档位】【大奖】T1:结算金额>2;【小赚】T2:2>=结算金额>1;【抽水】T3:1>=结算金额>0;【惩罚】T4:0>结算金额;【再来一次】T5:0=结算金额。下方可为各档位填写推荐结算金额;表格中「所属档位」随结算金额自动计算,不可手动修改。",
|
"tierRecommendRules": "【结算金额与档位】【大奖】T1:结算金额>2;【小赚】T2:2>=结算金额>1;【抽水】T3:1>=结算金额>0;【惩罚】T4:0>结算金额;【再来一次】T5:0=结算金额。下方可为各档位填写推荐结算金额;表格中「所属档位」随结算金额自动计算,不可手动修改。",
|
||||||
"tierRecommendRealEv": "推荐结算金额",
|
"tierRecommendRealEv": "推荐结算金额",
|
||||||
"tierRecommendAutoMatch": "修改结算金额时自动匹配档位与备注",
|
"tierRecommendAutoMatch": "修改结算金额时自动匹配档位,并实时更新备注(大奖/小赚/抽水/惩罚/再来一次)",
|
||||||
"tierRecommendApplyAmount": "将推荐金额填入已选档位的行",
|
"tierRecommendApplyAmount": "将推荐金额填入已选档位的行",
|
||||||
"tierRecommendApplyAmountOk": "已为 {n} 行填入推荐结算金额",
|
"tierRecommendApplyAmountOk": "已为 {n} 行填入推荐结算金额",
|
||||||
"tierRecommendNoTierRows": "没有可根据结算金额推断档位的行",
|
"tierRecommendNoTierRows": "没有可根据结算金额推断档位的行",
|
||||||
|
|||||||
@@ -128,12 +128,12 @@
|
|||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<ElInputNumber
|
<ElInputNumber
|
||||||
v-model="row.real_ev"
|
v-model="row.real_ev"
|
||||||
@change="handleRealEvChange(row)"
|
|
||||||
controls-position="right"
|
controls-position="right"
|
||||||
size="small"
|
size="small"
|
||||||
:step="0.1"
|
:step="0.1"
|
||||||
:precision="2"
|
:precision="2"
|
||||||
class="full-width"
|
class="full-width"
|
||||||
|
@update:model-value="() => handleRealEvChange(row)"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</ElTableColumn>
|
</ElTableColumn>
|
||||||
@@ -152,7 +152,6 @@
|
|||||||
v-model="row.remark"
|
v-model="row.remark"
|
||||||
size="small"
|
size="small"
|
||||||
:placeholder="remarkPlaceholderForRow(row)"
|
:placeholder="remarkPlaceholderForRow(row)"
|
||||||
@input="markRemarkTouched(row)"
|
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</ElTableColumn>
|
</ElTableColumn>
|
||||||
@@ -225,12 +224,12 @@
|
|||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<ElInputNumber
|
<ElInputNumber
|
||||||
v-model="row.real_ev"
|
v-model="row.real_ev"
|
||||||
@change="handleRealEvChange(row)"
|
|
||||||
controls-position="right"
|
controls-position="right"
|
||||||
size="small"
|
size="small"
|
||||||
:step="0.1"
|
:step="0.1"
|
||||||
:precision="2"
|
:precision="2"
|
||||||
class="full-width"
|
class="full-width"
|
||||||
|
@update:model-value="() => handleRealEvChange(row)"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</ElTableColumn>
|
</ElTableColumn>
|
||||||
@@ -243,7 +242,7 @@
|
|||||||
<ElInput
|
<ElInput
|
||||||
v-model="row.remark"
|
v-model="row.remark"
|
||||||
size="small"
|
size="small"
|
||||||
:placeholder="$t('page.configPage.placeholderRemark')"
|
:placeholder="remarkPlaceholderForRow(row)"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
</ElTableColumn>
|
</ElTableColumn>
|
||||||
@@ -521,8 +520,6 @@
|
|||||||
tier: string
|
tier: string
|
||||||
remark: string
|
remark: string
|
||||||
weight: number
|
weight: number
|
||||||
/** 用户已手动改过备注时不再随档位自动覆盖 */
|
|
||||||
remarkTouched?: boolean
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const channelScope = useInjectedChannelDept()
|
const channelScope = useInjectedChannelDept()
|
||||||
@@ -605,27 +602,21 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function markRemarkTouched(row: IndexRow) {
|
/** 按当前结算金额推断档位并写入对应备注(T1大奖/T2小赚/T3抽水/T4惩罚/T5再来一次) */
|
||||||
row.remarkTouched = true
|
function syncRemarkFromSettlement(row: IndexRow) {
|
||||||
}
|
const tier = inferTierFromRealEv(rowRealEvNumber(row))
|
||||||
|
|
||||||
function syncRemarkFromTier(row: IndexRow) {
|
|
||||||
if (row.remarkTouched || row.tier === 'BIGWIN') {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
const tier = displayRowTier(row)
|
|
||||||
if (tier === '') {
|
if (tier === '') {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
row.remark = defaultRemarkForTier(tier, tierRecommend.T2)
|
row.remark = defaultRemarkForTier(tier)
|
||||||
}
|
}
|
||||||
|
|
||||||
function remarkPlaceholderForRow(row: IndexRow): string {
|
function remarkPlaceholderForRow(row: IndexRow): string {
|
||||||
const tier = displayRowTier(row)
|
const tier = displayRowTier(row)
|
||||||
if (tier === '') {
|
if (tier === '' || tier === '-') {
|
||||||
return t('page.configPage.placeholderRemark')
|
return t('page.configPage.placeholderRemark')
|
||||||
}
|
}
|
||||||
return defaultRemarkForTier(tier, tierRecommend.T2)
|
return defaultRemarkForTier(tier)
|
||||||
}
|
}
|
||||||
|
|
||||||
function displayRowTier(row: IndexRow): string {
|
function displayRowTier(row: IndexRow): string {
|
||||||
@@ -643,7 +634,7 @@
|
|||||||
applyRealEvDisplay(row, ev)
|
applyRealEvDisplay(row, ev)
|
||||||
}
|
}
|
||||||
syncRowTierFromRealEv(row)
|
syncRowTierFromRealEv(row)
|
||||||
syncRemarkFromTier(row)
|
syncRemarkFromSettlement(row)
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 奖励索引 id 与后端 DiceRewardConfigLogic 一致:0~25 */
|
/** 奖励索引 id 与后端 DiceRewardConfigLogic 一致:0~25 */
|
||||||
@@ -696,17 +687,19 @@
|
|||||||
|
|
||||||
function handleRealEvChange(row: IndexRow) {
|
function handleRealEvChange(row: IndexRow) {
|
||||||
if (row.tier === 'BIGWIN') {
|
if (row.tier === 'BIGWIN') {
|
||||||
|
row.remark = defaultRemarkForTier('BIGWIN')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
const n = rowRealEvNumber(row)
|
const n = rowRealEvNumber(row)
|
||||||
syncRowTierFromRealEv(row)
|
syncRowTierFromRealEv(row)
|
||||||
if (row.tier === 'T5') {
|
const tier = inferTierFromRealEv(n)
|
||||||
|
if (tier === 'T5') {
|
||||||
row.ui_text = t('page.configPage.tierRecommendT5UiText')
|
row.ui_text = t('page.configPage.tierRecommendT5UiText')
|
||||||
row.ui_text_en = t('page.configPage.tierRecommendT5UiTextEn')
|
row.ui_text_en = t('page.configPage.tierRecommendT5UiTextEn')
|
||||||
} else {
|
} else {
|
||||||
applyRealEvDisplay(row, n)
|
applyRealEvDisplay(row, n)
|
||||||
}
|
}
|
||||||
syncRemarkFromTier(row)
|
syncRemarkFromSettlement(row)
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleApplyRecommendRealEv() {
|
function handleApplyRecommendRealEv() {
|
||||||
@@ -735,7 +728,7 @@
|
|||||||
let count = 0
|
let count = 0
|
||||||
for (const row of indexRowsExcludeBigwin.value) {
|
for (const row of indexRowsExcludeBigwin.value) {
|
||||||
syncRowTierFromRealEv(row)
|
syncRowTierFromRealEv(row)
|
||||||
syncRemarkFromTier(row)
|
syncRemarkFromSettlement(row)
|
||||||
if (row.tier !== '') {
|
if (row.tier !== '') {
|
||||||
count++
|
count++
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -70,28 +70,21 @@ export const DEFAULT_TIER_REAL_EV_STANDARDS: TierRealEvStandards = {
|
|||||||
* T4 惩罚:0>金额
|
* T4 惩罚:0>金额
|
||||||
* T5 再来一次:=0
|
* T5 再来一次:=0
|
||||||
*/
|
*/
|
||||||
/** 各档位默认备注(奖励索引表;用户可手动改,改档位时会按规则刷新除非已手动编辑过备注) */
|
/** 各档位默认备注(与结算金额推断档位规则一致,修改结算金额时实时同步) */
|
||||||
export function defaultRemarkForTier(
|
export const TIER_REMARK_BY_TIER: Record<IndexTier, string> = {
|
||||||
tier: IndexTier | 'BIGWIN' | string,
|
T1: '大奖',
|
||||||
t2RealEvStandard?: number
|
T2: '小赚',
|
||||||
): string {
|
T3: '抽水',
|
||||||
if (tier === 'T1' || tier === 'BIGWIN') {
|
T4: '惩罚',
|
||||||
return '大奖格'
|
T5: '再来一次'
|
||||||
|
}
|
||||||
|
|
||||||
|
export function defaultRemarkForTier(tier: IndexTier | 'BIGWIN' | string): string {
|
||||||
|
if (tier === 'BIGWIN' || tier === 'T1') {
|
||||||
|
return TIER_REMARK_BY_TIER.T1
|
||||||
}
|
}
|
||||||
if (tier === 'T2') {
|
if (tier === 'T2' || tier === 'T3' || tier === 'T4' || tier === 'T5') {
|
||||||
if (t2RealEvStandard !== undefined && t2RealEvStandard <= 1) {
|
return TIER_REMARK_BY_TIER[tier]
|
||||||
return '完美回本'
|
|
||||||
}
|
|
||||||
return '小赚'
|
|
||||||
}
|
|
||||||
if (tier === 'T3') {
|
|
||||||
return '抽水'
|
|
||||||
}
|
|
||||||
if (tier === 'T4') {
|
|
||||||
return '惩罚'
|
|
||||||
}
|
|
||||||
if (tier === 'T5') {
|
|
||||||
return '再来一次'
|
|
||||||
}
|
}
|
||||||
return ''
|
return ''
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user