fix:工厂管理前端文案改为供应商库,相关字段同步替换
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
d06cf5c270
commit
60157025f2
|
|
@ -11,7 +11,7 @@
|
|||
router
|
||||
>
|
||||
<el-menu-item v-if="isAdmin" index="/users">用户管理</el-menu-item>
|
||||
<el-menu-item index="/factories">工厂管理</el-menu-item>
|
||||
<el-menu-item index="/factories">供应商库</el-menu-item>
|
||||
<el-menu-item v-if="isAdmin" index="/dictionary">材料分类管理</el-menu-item>
|
||||
<el-menu-item index="/materials">材料管理</el-menu-item>
|
||||
<el-menu-item v-if="isAdmin" index="/screen/overview">数据大屏</el-menu-item>
|
||||
|
|
@ -68,7 +68,7 @@ const { state, isAdmin, clearAuth } = useAuth()
|
|||
const active = computed(() => route.path)
|
||||
const titleMap = {
|
||||
'/users': '用户管理',
|
||||
'/factories': '工厂管理',
|
||||
'/factories': '供应商库',
|
||||
'/dictionary': '材料分类管理',
|
||||
'/materials': '材料管理'
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
<template>
|
||||
<div class="page">
|
||||
<div class="page-title">
|
||||
工厂详情
|
||||
供应商详情
|
||||
<el-button class="back-btn" plain size="small" @click="goBack">返回</el-button>
|
||||
</div>
|
||||
<div class="card detail-card" v-if="factory">
|
||||
<el-descriptions :column="1" border class="detail-descriptions">
|
||||
<el-descriptions-item label="工厂全称">{{ displayText(factory.factory_name) }}</el-descriptions-item>
|
||||
<el-descriptions-item label="供应商全称">{{ displayText(factory.factory_name) }}</el-descriptions-item>
|
||||
<el-descriptions-item label="品牌">{{ displayText(factory.brand) }}</el-descriptions-item>
|
||||
<el-descriptions-item label="经销商">{{ displayText(factory.dealer_name) }}</el-descriptions-item>
|
||||
<el-descriptions-item label="产品分类">{{ displayText(factory.product_category) }}</el-descriptions-item>
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
<template>
|
||||
<div class="page">
|
||||
<div class="page-title">工厂管理</div>
|
||||
<div class="page-title">供应商库</div>
|
||||
<div class="toolbar">
|
||||
<el-button v-if="isAdmin" type="primary" @click="openCreate">新增工厂</el-button>
|
||||
<el-button v-if="isAdmin" type="primary" @click="openCreate">新增供应商</el-button>
|
||||
</div>
|
||||
<el-table v-loading="tableLoading" :data="factories" border :max-height="560">
|
||||
<el-table-column prop="factory_name" label="工厂全称" />
|
||||
<el-table-column prop="factory_name" label="供应商全称" />
|
||||
<el-table-column prop="brand" label="品牌" />
|
||||
<el-table-column prop="dealer_name" label="经销商" />
|
||||
<el-table-column label="用户账号">
|
||||
|
|
@ -49,7 +49,7 @@
|
|||
<el-form-item label="产品分类">
|
||||
<el-input v-model="form.product_category" />
|
||||
</el-form-item>
|
||||
<el-form-item label="工厂全称" required>
|
||||
<el-form-item label="供应商全称" required>
|
||||
<el-input v-model="form.factory_name" />
|
||||
</el-form-item>
|
||||
<el-form-item label="品牌" required>
|
||||
|
|
@ -150,7 +150,7 @@ const onRegionChange = (val) => {
|
|||
const openCreate = () => {
|
||||
resetForm()
|
||||
isEdit.value = false
|
||||
dialogTitle.value = '新增工厂'
|
||||
dialogTitle.value = '新增供应商'
|
||||
dialogVisible.value = true
|
||||
}
|
||||
|
||||
|
|
@ -161,7 +161,7 @@ const openEdit = async (row) => {
|
|||
const detail = await fetchFactoryDetail(row.id)
|
||||
Object.assign(form, detail)
|
||||
regionValue.value = [detail.province, detail.city, detail.district].filter(Boolean).map(regionLabel)
|
||||
dialogTitle.value = '编辑工厂'
|
||||
dialogTitle.value = '编辑供应商'
|
||||
dialogVisible.value = true
|
||||
}
|
||||
|
||||
|
|
@ -181,7 +181,7 @@ const onSubmit = async () => {
|
|||
}
|
||||
|
||||
const onDelete = (row) => {
|
||||
ElMessageBox.confirm(`确认删除工厂 ${row.factory_name} 吗?`, '提示', { type: 'warning' })
|
||||
ElMessageBox.confirm(`确认删除供应商 ${row.factory_name} 吗?`, '提示', { type: 'warning' })
|
||||
.then(async () => {
|
||||
await deleteFactory(row.id)
|
||||
ElMessage.success('删除成功')
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@
|
|||
<el-descriptions-item label="成本对比">{{ formatPercent(material.cost_compare) }}</el-descriptions-item>
|
||||
<el-descriptions-item label="成本说明">{{ displayText(material.cost_desc) }}</el-descriptions-item>
|
||||
<el-descriptions-item label="案例">{{ displayText(material.cases) }}</el-descriptions-item>
|
||||
<el-descriptions-item label="所属工厂">{{ displayText(material.factory_name) }}</el-descriptions-item>
|
||||
<el-descriptions-item label="所属供应商">{{ displayText(material.factory_name) }}</el-descriptions-item>
|
||||
<el-descriptions-item label="质量等级">{{ formatStarLevel(material.quality_level) }}</el-descriptions-item>
|
||||
<el-descriptions-item label="耐久等级">{{ formatStarLevel(material.durability_level) }}</el-descriptions-item>
|
||||
<el-descriptions-item label="环保等级">{{ formatStarLevel(material.eco_level) }}</el-descriptions-item>
|
||||
|
|
|
|||
|
|
@ -475,7 +475,7 @@ const handleImportExcel = async (options) => {
|
|||
pagination.page = 1
|
||||
await loadMaterials()
|
||||
importDialogVisible.value = false
|
||||
ElMessage.success(`导入完成:新增 ${result.created} 条,更新 ${result.updated} 条,跳过 ${result.skipped} 条,新建工厂 ${result.created_factory || 0} 条`)
|
||||
ElMessage.success(`导入完成:新增 ${result.created} 条,更新 ${result.updated} 条,跳过 ${result.skipped} 条,新建供应商 ${result.created_factory || 0} 条`)
|
||||
} catch (error) {
|
||||
ElMessage.error(error.response?.data?.detail || '导入失败')
|
||||
} finally {
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
{{ scope.row.role === 'admin' ? '管理员' : '普通账号' }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="factory_name" label="所属工厂" />
|
||||
<el-table-column prop="factory_name" label="所属供应商" />
|
||||
<el-table-column prop="phone" label="手机" />
|
||||
<el-table-column prop="email" label="邮箱" />
|
||||
<el-table-column label="操作" width="240">
|
||||
|
|
@ -54,7 +54,7 @@
|
|||
<el-option label="普通账号" value="user" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属工厂" v-if="form.role === 'user'" required>
|
||||
<el-form-item label="所属供应商" v-if="form.role === 'user'" required>
|
||||
<el-select v-model="form.factory">
|
||||
<el-option v-for="item in factories" :key="item.id" :label="item.factory_name" :value="item.id" />
|
||||
</el-select>
|
||||
|
|
|
|||
Loading…
Reference in New Issue