修复
All checks were successful
构建并部署前端到测试环境 / build-and-deploy (push) Successful in 4m35s

This commit is contained in:
sexygoat
2026-03-31 15:13:19 +08:00
parent 104d62b17d
commit 3372be99b8
9 changed files with 383 additions and 218 deletions

View File

@@ -57,28 +57,28 @@
width="600px"
>
<ElForm ref="formRef" :model="form" :rules="rules" label-width="100px">
<ElFormItem label="企业编号" prop="enterprise_code">
<div style="display: flex; gap: 8px">
<ElInput
v-model="form.enterprise_code"
placeholder="请输入企业编号或点击生成"
:disabled="dialogType === 'edit'"
clearable
style="flex: 1"
/>
<CodeGeneratorButton
v-if="dialogType === 'add'"
code-type="enterprise"
@generated="handleCodeGenerated"
/>
</div>
</ElFormItem>
<ElRow :gutter="20">
<ElCol :span="12">
<ElFormItem label="企业编号" prop="enterprise_code">
<ElInput
v-model="form.enterprise_code"
placeholder="请输入企业编号"
:disabled="dialogType === 'edit'"
/>
</ElFormItem>
</ElCol>
<ElCol :span="12">
<ElFormItem label="企业名称" prop="enterprise_name">
<ElInput v-model="form.enterprise_name" placeholder="请输入企业名称" />
</ElFormItem>
</ElCol>
</ElRow>
<ElRow :gutter="20">
<ElCol :span="12">
<ElFormItem label="营业执照号" prop="business_license">
<ElInput v-model="form.business_license" placeholder="请输入营业执照号" />
</ElFormItem>
</ElCol>
<ElCol :span="12">
<ElFormItem label="法人代表" prop="legal_person">
<ElInput v-model="form.legal_person" placeholder="请输入法人代表" />
@@ -86,6 +86,11 @@
</ElCol>
</ElRow>
<ElRow :gutter="20">
<ElCol :span="12">
<ElFormItem label="营业执照号" prop="business_license">
<ElInput v-model="form.business_license" placeholder="请输入营业执照号" />
</ElFormItem>
</ElCol>
<ElCol :span="12">
<ElFormItem label="所在地区" prop="region">
<ElCascader
@@ -99,6 +104,8 @@
/>
</ElFormItem>
</ElCol>
</ElRow>
<ElRow :gutter="20">
<!-- 只有非代理账号才显示归属店铺选择 -->
<ElCol :span="12" v-if="!isAgentAccount">
<ElFormItem label="归属店铺" prop="owner_shop_id">
@@ -225,6 +232,7 @@
import ArtButtonTable from '@/components/core/forms/ArtButtonTable.vue'
import ArtMenuRight from '@/components/core/others/ArtMenuRight.vue'
import TableContextMenuHint from '@/components/core/others/TableContextMenuHint.vue'
import CodeGeneratorButton from '@/components/business/CodeGeneratorButton.vue'
import type { MenuItemType } from '@/components/core/others/ArtMenuRight.vue'
import { formatDateTime } from '@/utils/business/format'
import { regionData } from '@/utils/constants/regionData'
@@ -478,7 +486,7 @@
{
prop: 'operation',
label: '操作',
width: 190,
width: 280,
fixed: 'right',
formatter: (row: EnterpriseItem) => {
const buttons = []
@@ -501,6 +509,15 @@
)
}
if (hasAuth('enterprise_customer:device_authorization')) {
buttons.push(
h(ArtButtonTable, {
text: '设备授权',
onClick: () => manageDevices(row)
})
)
}
return h('div', { style: 'display: flex; gap: 8px;' }, buttons)
}
}
@@ -712,6 +729,11 @@
})
}
// 处理企业编码生成
const handleCodeGenerated = (code: string) => {
form.enterprise_code = code
}
// 提交表单
const handleSubmit = async (formEl: FormInstance | undefined) => {
if (!formEl) return
@@ -810,6 +832,13 @@
})
}
const manageDevices = (row: EnterpriseItem) => {
router.push({
path: '/asset-management/enterprise-devices',
query: { id: row.id }
})
}
// 企业客户操作菜单项配置
const enterpriseOperationMenuItems = computed((): MenuItemType[] => {
const items: MenuItemType[] = []