fetch(add): 新增企业设备授权
All checks were successful
构建并部署前端到测试环境 / build-and-deploy (push) Successful in 2m25s
All checks were successful
构建并部署前端到测试环境 / build-and-deploy (push) Successful in 2m25s
This commit is contained in:
@@ -97,6 +97,7 @@
|
||||
:remote-method="searchPackage"
|
||||
:loading="packageLoading"
|
||||
clearable
|
||||
@change="handlePackageChange"
|
||||
>
|
||||
<ElOption
|
||||
v-for="pkg in packageOptions"
|
||||
@@ -273,7 +274,21 @@
|
||||
const rules = reactive<FormRules>({
|
||||
package_id: [{ required: true, message: '请选择套餐', trigger: 'change' }],
|
||||
shop_id: [{ required: true, message: '请选择店铺', trigger: 'change' }],
|
||||
cost_price: [{ required: true, message: '请输入成本价', trigger: 'blur' }]
|
||||
cost_price: [
|
||||
{ required: true, message: '请输入成本价', trigger: 'blur' },
|
||||
{
|
||||
validator: (rule: any, value: any, callback: any) => {
|
||||
if (value === undefined || value === null || value === '') {
|
||||
callback(new Error('请输入成本价'))
|
||||
} else if (form.package_base_price && value < form.package_base_price) {
|
||||
callback(new Error(`成本价不能低于套餐价格 ¥${(form.package_base_price / 100).toFixed(2)}`))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
},
|
||||
trigger: 'blur'
|
||||
}
|
||||
]
|
||||
})
|
||||
|
||||
// 表单数据
|
||||
@@ -281,7 +296,8 @@
|
||||
id: 0,
|
||||
package_id: undefined,
|
||||
shop_id: undefined,
|
||||
cost_price: 0
|
||||
cost_price: 0,
|
||||
package_base_price: 0 // 存储选中套餐的成本价,用于验证
|
||||
})
|
||||
|
||||
// 成本价表单验证规则
|
||||
@@ -589,11 +605,13 @@
|
||||
form.package_id = row.package_id
|
||||
form.shop_id = row.shop_id
|
||||
form.cost_price = row.cost_price
|
||||
form.package_base_price = 0
|
||||
} else {
|
||||
form.id = 0
|
||||
form.package_id = undefined
|
||||
form.shop_id = undefined
|
||||
form.cost_price = 0
|
||||
form.package_base_price = 0
|
||||
}
|
||||
|
||||
// 重置表单验证状态
|
||||
@@ -602,6 +620,23 @@
|
||||
})
|
||||
}
|
||||
|
||||
// 处理套餐选择变化
|
||||
const handlePackageChange = (packageId: number | undefined) => {
|
||||
if (packageId) {
|
||||
// 从套餐选项中找到选中的套餐
|
||||
const selectedPackage = packageOptions.value.find(pkg => pkg.id === packageId)
|
||||
if (selectedPackage) {
|
||||
// 将套餐的价格设置为成本价
|
||||
form.cost_price = selectedPackage.price
|
||||
form.package_base_price = selectedPackage.price
|
||||
}
|
||||
} else {
|
||||
// 清空时重置成本价
|
||||
form.cost_price = 0
|
||||
form.package_base_price = 0
|
||||
}
|
||||
}
|
||||
|
||||
// 处理弹窗关闭事件
|
||||
const handleDialogClosed = () => {
|
||||
// 清除表单验证状态
|
||||
@@ -611,6 +646,7 @@
|
||||
form.package_id = undefined
|
||||
form.shop_id = undefined
|
||||
form.cost_price = 0
|
||||
form.package_base_price = 0
|
||||
}
|
||||
|
||||
// 删除分配
|
||||
|
||||
Reference in New Issue
Block a user