feat: 平台卡片「关联N个资产」点击跳转资产页并按平台筛选(后端/api/assets新增provider参数,资产页可清除筛选标签)
This commit is contained in:
@@ -17,6 +17,7 @@ const store = reactive({
|
||||
search: '',
|
||||
filterType: '',
|
||||
filterStatus: '',
|
||||
filterProvider: '', // 按平台筛选(slug),从平台页「关联 N 个资产」跳转而来
|
||||
assetTab: '', // 资产页 TAB:'' 全部 / vps / domain / cloudflare / subscription(付费资产) / ai_agent
|
||||
monitorTab: '', // 监控中心 TAB:同上
|
||||
dark: localStorage.getItem('vps_dark') === '1',
|
||||
@@ -76,6 +77,7 @@ async function loadAssets() {
|
||||
const params = new URLSearchParams();
|
||||
if (store.filterType) params.set('asset_type', store.filterType);
|
||||
if (store.filterStatus) params.set('status', store.filterStatus);
|
||||
if (store.filterProvider) params.set('provider', store.filterProvider);
|
||||
if (store.search) params.set('q', store.search);
|
||||
params.set('sort', 'expiry_date'); params.set('order', 'asc');
|
||||
store.assets = await Api.get('/assets?' + params.toString());
|
||||
@@ -197,6 +199,19 @@ async function deleteAccount(a) {
|
||||
catch (e) { store.error = e.message; }
|
||||
}
|
||||
|
||||
/* ---------------- 平台页跳转:按平台查看资产 ---------------- */
|
||||
function openAssetsByProvider(p) {
|
||||
store.filterProvider = p.slug;
|
||||
store.assetTab = '';
|
||||
store.filterType = '';
|
||||
if (window.location.hash !== '#assets') window.location.hash = '#assets';
|
||||
loadAssets();
|
||||
}
|
||||
function clearProviderFilter() {
|
||||
store.filterProvider = '';
|
||||
loadAssets();
|
||||
}
|
||||
|
||||
/* ---------------- 服务器监控 ---------------- */
|
||||
async function viewServer(a) {
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user