火箭份数配置
This commit is contained in:
parent
b1bb7a2267
commit
143752c86c
@ -62,6 +62,7 @@ type RewardRow = {
|
|||||||
rewardName: string;
|
rewardName: string;
|
||||||
rewardScene: string;
|
rewardScene: string;
|
||||||
rewardType: string;
|
rewardType: string;
|
||||||
|
rewardCopies: number;
|
||||||
sort: number;
|
sort: number;
|
||||||
weight: number;
|
weight: number;
|
||||||
};
|
};
|
||||||
@ -201,6 +202,7 @@ const rewardColumns = [
|
|||||||
{ dataIndex: 'rewardCover', key: 'rewardCover', title: '封面', width: 220 },
|
{ dataIndex: 'rewardCover', key: 'rewardCover', title: '封面', width: 220 },
|
||||||
{ dataIndex: 'rewardAmount', key: 'rewardAmount', title: '数量/金币/天数', width: 150 },
|
{ dataIndex: 'rewardAmount', key: 'rewardAmount', title: '数量/金币/天数', width: 150 },
|
||||||
{ dataIndex: 'expireDays', key: 'expireDays', title: '有效天数', width: 130 },
|
{ dataIndex: 'expireDays', key: 'expireDays', title: '有效天数', width: 130 },
|
||||||
|
{ dataIndex: 'rewardCopies', key: 'rewardCopies', title: '份数', width: 110 },
|
||||||
{ dataIndex: 'weight', key: 'weight', title: '权重', width: 110 },
|
{ dataIndex: 'weight', key: 'weight', title: '权重', width: 110 },
|
||||||
{ dataIndex: 'enabled', key: 'enabled', title: '启用', width: 90 },
|
{ dataIndex: 'enabled', key: 'enabled', title: '启用', width: 90 },
|
||||||
{ dataIndex: 'sort', key: 'sort', title: '排序', width: 100 },
|
{ dataIndex: 'sort', key: 'sort', title: '排序', width: 100 },
|
||||||
@ -319,6 +321,7 @@ function normalizeRewardRows(rows: Array<Record<string, any>> | undefined) {
|
|||||||
rewardName: String(row.rewardName || ''),
|
rewardName: String(row.rewardName || ''),
|
||||||
rewardScene: String(row.rewardScene || 'TOP1'),
|
rewardScene: String(row.rewardScene || 'TOP1'),
|
||||||
rewardType: String(row.rewardType || 'GOLD'),
|
rewardType: String(row.rewardType || 'GOLD'),
|
||||||
|
rewardCopies: toNumber(row.rewardCopies, 1),
|
||||||
sort: toNumber(row.sort, index + 1),
|
sort: toNumber(row.sort, index + 1),
|
||||||
weight: toNumber(row.weight, 1),
|
weight: toNumber(row.weight, 1),
|
||||||
}));
|
}));
|
||||||
@ -407,6 +410,7 @@ function handleRewardSceneChange(row: Record<string, any>) {
|
|||||||
row.rewardType = 'GOLD';
|
row.rewardType = 'GOLD';
|
||||||
handleRewardTypeChange(row);
|
handleRewardTypeChange(row);
|
||||||
}
|
}
|
||||||
|
row.rewardCopies = row.rewardScene === 'IN_ROOM' ? toNumber(row.rewardCopies, 1) : 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleResourceSelect(item: ResourceOption) {
|
function handleResourceSelect(item: ResourceOption) {
|
||||||
@ -553,6 +557,7 @@ function addRewardRow(scene = 'TOP1', rewardType = 'GOLD') {
|
|||||||
rewardName: isNone ? '轮空' : rewardType === 'GOLD' ? '金币' : '',
|
rewardName: isNone ? '轮空' : rewardType === 'GOLD' ? '金币' : '',
|
||||||
rewardScene: scene,
|
rewardScene: scene,
|
||||||
rewardType,
|
rewardType,
|
||||||
|
rewardCopies: 1,
|
||||||
sort: rewardRows.value.length + 1,
|
sort: rewardRows.value.length + 1,
|
||||||
weight: 1,
|
weight: 1,
|
||||||
});
|
});
|
||||||
@ -604,6 +609,12 @@ function validateRewards() {
|
|||||||
message.warning('轮空只能配置在房用户奖励');
|
message.warning('轮空只能配置在房用户奖励');
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (row.rewardScene !== 'IN_ROOM') {
|
||||||
|
row.rewardCopies = 1;
|
||||||
|
} else if (toNumber(row.rewardCopies, 0) <= 0) {
|
||||||
|
message.warning('在房用户奖励份数必须大于 0');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
if (!String(row.rewardName || '').trim()) {
|
if (!String(row.rewardName || '').trim()) {
|
||||||
message.warning('请输入奖励名称');
|
message.warning('请输入奖励名称');
|
||||||
return false;
|
return false;
|
||||||
@ -646,6 +657,8 @@ async function saveRewards() {
|
|||||||
rewardName: row.rewardType === 'NONE' ? '轮空' : row.rewardName.trim(),
|
rewardName: row.rewardType === 'NONE' ? '轮空' : row.rewardName.trim(),
|
||||||
rewardScene: row.rewardScene,
|
rewardScene: row.rewardScene,
|
||||||
rewardType: row.rewardType,
|
rewardType: row.rewardType,
|
||||||
|
rewardCopies:
|
||||||
|
row.rewardScene === 'IN_ROOM' ? toNumber(row.rewardCopies, 1) : 1,
|
||||||
sort: toNumber(row.sort, 1),
|
sort: toNumber(row.sort, 1),
|
||||||
weight: toNumber(row.weight, 1),
|
weight: toNumber(row.weight, 1),
|
||||||
})),
|
})),
|
||||||
@ -960,7 +973,7 @@ watch(rewardLevel, () => {
|
|||||||
:data-source="rewardRows"
|
:data-source="rewardRows"
|
||||||
:loading="rewardLoading"
|
:loading="rewardLoading"
|
||||||
:pagination="false"
|
:pagination="false"
|
||||||
:scroll="{ x: 1660 }"
|
:scroll="{ x: 1770 }"
|
||||||
row-key="localKey"
|
row-key="localKey"
|
||||||
>
|
>
|
||||||
<template #bodyCell="{ column, record, index }">
|
<template #bodyCell="{ column, record, index }">
|
||||||
@ -1045,6 +1058,15 @@ watch(rewardLevel, () => {
|
|||||||
class="table-number"
|
class="table-number"
|
||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
|
<template v-else-if="column.key === 'rewardCopies'">
|
||||||
|
<InputNumber
|
||||||
|
v-model:value="record.rewardCopies"
|
||||||
|
:disabled="record.rewardScene !== 'IN_ROOM'"
|
||||||
|
:min="1"
|
||||||
|
:precision="0"
|
||||||
|
class="table-number"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
<template v-else-if="column.key === 'weight'">
|
<template v-else-if="column.key === 'weight'">
|
||||||
<InputNumber
|
<InputNumber
|
||||||
v-model:value="record.weight"
|
v-model:value="record.weight"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user