diff --git a/src/views/merchant/List.vue b/src/views/merchant/List.vue
index a94a1bb..654e14d 100644
--- a/src/views/merchant/List.vue
+++ b/src/views/merchant/List.vue
@@ -62,6 +62,17 @@
:label-col="{ span: 6 }"
:wrapper-col="{ span: 16 }"
>
+
+
+
+
@@ -199,6 +210,12 @@ export default defineComponent({
width: 80,
align: 'center',
},
+ {
+ title: '商家分类',
+ dataIndex: 'category_name',
+ key: 'category_name',
+ width: 120,
+ },
{
title: '商家名称',
dataIndex: 'name',
@@ -329,6 +346,7 @@ export default defineComponent({
const formState = ref({
name: '',
+ category_id: undefined,
business_hours: '',
address: '',
longitude: null,
@@ -338,13 +356,30 @@ export default defineComponent({
const rules = {
name: [{ required: true, message: '请输入商家名称' }],
+ category_id: [{ required: true, message: '请选择商家分类' }],
business_hours: [{ required: true, message: '请输入营业时间' }],
address: [{ required: true, message: '请输入详细地址' }],
phone: [{ required: true, message: '请输入联系电话' }],
}
+ // 获取商家分类
+ const categories = ref([])
+
+ const fetchCategories = async () => {
+ try {
+ const res = await request.get('/api/merchant-categories')
+ if (res.code === 200 && res.data) {
+ categories.value = res.data.items || []
+ }
+ } catch (error) {
+ console.error('获取商家分类失败:', error)
+ message.error('获取商家分类失败')
+ }
+ }
+
// 显示添加模态框
const showAddModal = async () => {
+ await fetchCategories()
addModalVisible.value = true
await nextTick()
initAddMap()
@@ -486,6 +521,7 @@ export default defineComponent({
// 重置表单状态
formState.value = {
name: '',
+ category_id: undefined,
business_hours: '',
address: '',
longitude: null,
@@ -681,7 +717,8 @@ export default defineComponent({
handlePreviewCancel,
handleRemove,
handleSaveImages,
- handleCancelImages
+ handleCancelImages,
+ categories
}
}
})