2
This commit is contained in:
@@ -27,6 +27,7 @@
|
||||
|
||||
<script setup lang="ts">
|
||||
import { reactive, onMounted } from 'vue'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import { get, post, put, del } from '../../api/http'
|
||||
|
||||
type Unit = { id: number; name: string }
|
||||
@@ -38,28 +39,43 @@ async function reload() {
|
||||
try {
|
||||
const res = await get<any>('/api/product-units')
|
||||
state.list = Array.isArray(res?.list) ? res.list : (Array.isArray(res) ? res : [])
|
||||
} catch (e: any) {
|
||||
ElMessage.error(e?.message || '加载失败')
|
||||
} finally { state.loading = false }
|
||||
}
|
||||
|
||||
async function create() {
|
||||
if (!state.newName.trim()) return
|
||||
if (!state.newName || !state.newName.trim()) { ElMessage.warning('请输入名称'); return }
|
||||
state.loading = true
|
||||
try {
|
||||
await post('/api/admin/dicts/units', { name: state.newName.trim() })
|
||||
state.newName = ''
|
||||
await reload()
|
||||
ElMessage.success('已新增')
|
||||
} catch (e: any) {
|
||||
ElMessage.error(e?.message || '新增失败')
|
||||
} finally { state.loading = false }
|
||||
}
|
||||
|
||||
async function update(row: Unit) {
|
||||
if (!row?.id || !row.name?.trim()) return
|
||||
await put(`/api/admin/dicts/units/${row.id}`, { name: row.name.trim() })
|
||||
try {
|
||||
await put(`/api/admin/dicts/units/${row.id}`, { name: row.name.trim() })
|
||||
ElMessage.success('已保存')
|
||||
} catch (e: any) {
|
||||
ElMessage.error(e?.message || '保存失败')
|
||||
}
|
||||
}
|
||||
|
||||
async function remove(row: Unit) {
|
||||
if (!row?.id) return
|
||||
await del(`/api/admin/dicts/units/${row.id}`)
|
||||
await reload()
|
||||
try {
|
||||
await del(`/api/admin/dicts/units/${row.id}`)
|
||||
await reload()
|
||||
ElMessage.success('已删除')
|
||||
} catch (e: any) {
|
||||
ElMessage.error(e?.message || '删除失败')
|
||||
}
|
||||
}
|
||||
|
||||
onMounted(reload)
|
||||
|
||||
Reference in New Issue
Block a user