mirror of
https://github.com/linux-do/new-api.git
synced 2025-09-18 00:16:37 +08:00
新增渠道复制
This commit is contained in:
parent
0a49715c3d
commit
08e10df887
@ -254,6 +254,19 @@ const ChannelsTable = () => {
|
|||||||
>
|
>
|
||||||
编辑
|
编辑
|
||||||
</Button>
|
</Button>
|
||||||
|
<Popconfirm
|
||||||
|
title='确定是否要复制此渠道?'
|
||||||
|
content='复制渠道的所有信息'
|
||||||
|
okType={'danger'}
|
||||||
|
position={'left'}
|
||||||
|
onConfirm={async () => {
|
||||||
|
copySelectedChannel(record.id);
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<Button theme='light' type='primary' style={{ marginRight: 1 }}>
|
||||||
|
复制
|
||||||
|
</Button>
|
||||||
|
</Popconfirm>
|
||||||
</div>
|
</div>
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
@ -340,6 +353,31 @@ const ChannelsTable = () => {
|
|||||||
setLoading(false);
|
setLoading(false);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const copySelectedChannel = async (id) => {
|
||||||
|
const channelToCopy = channels.find(channel => String(channel.id) === String(id));
|
||||||
|
console.log(channelToCopy)
|
||||||
|
channelToCopy.name += '_复制';
|
||||||
|
channelToCopy.created_time = null;
|
||||||
|
channelToCopy.balance = 0;
|
||||||
|
channelToCopy.used_quota = 0;
|
||||||
|
if (!channelToCopy) {
|
||||||
|
showError("渠道未找到,请刷新页面后重试。");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
const newChannel = {...channelToCopy, id: undefined};
|
||||||
|
const response = await API.post('/api/channel/', newChannel);
|
||||||
|
if (response.data.success) {
|
||||||
|
showSuccess("渠道复制成功");
|
||||||
|
await refresh();
|
||||||
|
} else {
|
||||||
|
showError(response.data.message);
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
showError("渠道复制失败: " + error.message);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
const refresh = async () => {
|
const refresh = async () => {
|
||||||
await loadChannels(activePage - 1, pageSize, idSort);
|
await loadChannels(activePage - 1, pageSize, idSort);
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user