|
|
@ -469,7 +469,14 @@ function openPkgEdit(row) { |
|
|
|
|
|
|
|
|
async function submitPackage() { |
|
|
async function submitPackage() { |
|
|
pkgFormError.value = '' |
|
|
pkgFormError.value = '' |
|
|
if (!pkgForm.name || (!pkgEditingId.value && !pkgForm.code)) { |
|
|
|
|
|
|
|
|
const name = String(pkgForm.name || '').trim() |
|
|
|
|
|
const code = String(pkgForm.code || '').trim() |
|
|
|
|
|
if (pkgEditingId.value) { |
|
|
|
|
|
if (!name) { |
|
|
|
|
|
pkgFormError.value = '请填写名称' |
|
|
|
|
|
return |
|
|
|
|
|
} |
|
|
|
|
|
} else if (!code || !name) { |
|
|
pkgFormError.value = '请填写编码和名称' |
|
|
pkgFormError.value = '请填写编码和名称' |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
@ -482,7 +489,7 @@ async function submitPackage() { |
|
|
if (pkgEditingId.value) { |
|
|
if (pkgEditingId.value) { |
|
|
// 后端 Update: price/validityDays 仅 >0 才写入;编辑时若用户未改就原样提交正值 |
|
|
// 后端 Update: price/validityDays 仅 >0 才写入;编辑时若用户未改就原样提交正值 |
|
|
const payload = { |
|
|
const payload = { |
|
|
name: pkgForm.name, |
|
|
|
|
|
|
|
|
name, |
|
|
amountBytes, |
|
|
amountBytes, |
|
|
sort: Number(pkgForm.sort || 0), |
|
|
sort: Number(pkgForm.sort || 0), |
|
|
status: pkgForm.status |
|
|
status: pkgForm.status |
|
|
@ -494,8 +501,8 @@ async function submitPackage() { |
|
|
ui.toast('套餐已更新') |
|
|
ui.toast('套餐已更新') |
|
|
} else { |
|
|
} else { |
|
|
await request.post(urls.ADMIN_TRAFFIC_PACKAGES, { |
|
|
await request.post(urls.ADMIN_TRAFFIC_PACKAGES, { |
|
|
code: pkgForm.code.trim(), |
|
|
|
|
|
name: pkgForm.name.trim(), |
|
|
|
|
|
|
|
|
code, |
|
|
|
|
|
name, |
|
|
amountBytes, |
|
|
amountBytes, |
|
|
price: Number(pkgForm.price || 0), |
|
|
price: Number(pkgForm.price || 0), |
|
|
validityDays: Number(pkgForm.validityDays || 0), |
|
|
validityDays: Number(pkgForm.validityDays || 0), |
|
|
|