diff --git a/src/layouts/Layout.vue b/src/layouts/Layout.vue index c0f2735..a5ee180 100644 --- a/src/layouts/Layout.vue +++ b/src/layouts/Layout.vue @@ -20,6 +20,10 @@ import { List, ChatLineRound, DataAnalysis, + Box, + Connection, + Star, + Search, } from '@element-plus/icons-vue' const router = useRouter() @@ -163,6 +167,70 @@ const handleCommand = (command: string) => { 报表统计 + + + + ISRM管理 + + + + 内部需求 + + + + 内部采购 + + + + 内部库存 + + + + 内部供应商 + + + + 内部合同 + + + + ISRM报表 + + + + + + SRM管理 + + + + 供应商管理 + + + + 采购管理 + + + + 询价管理 + + + + 合同管理 + + + + 供应商评估 + + + + 供应商绩效 + + + + SRM报表 + + 用户管理 diff --git a/src/router/index.ts b/src/router/index.ts index 33eb124..8c091bd 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -3,6 +3,7 @@ import Layout from '@/layouts/Layout.vue' import DashboardView from '@/views/DashboardView.vue' import UserManagementView from '@/views/UserManagementView.vue' import SettingsView from '@/views/SettingsView.vue' +// CRM import CustomerListView from '@/views/crm/CustomerListView.vue' import OpportunityView from '@/views/crm/OpportunityView.vue' import FunnelView from '@/views/crm/FunnelView.vue' @@ -12,7 +13,22 @@ import ProductView from '@/views/crm/ProductView.vue' import ContractView from '@/views/crm/ContractView.vue' import TaskView from '@/views/crm/TaskView.vue' import CommunicationView from '@/views/crm/CommunicationView.vue' -import ReportView from '@/views/crm/ReportView.vue' +import ReportView as CrmReportView from '@/views/crm/ReportView.vue' +// ISRM +import InternalDemandView from '@/views/isrm/InternalDemandView.vue' +import InternalPurchaseView from '@/views/isrm/InternalPurchaseView.vue' +import InternalInventoryView from '@/views/isrm/InternalInventoryView.vue' +import InternalSupplierView from '@/views/isrm/InternalSupplierView.vue' +import InternalContractView from '@/views/isrm/InternalContractView.vue' +import InternalReportView from '@/views/isrm/InternalReportView.vue' +// SRM +import SupplierView from '@/views/srm/SupplierView.vue' +import PurchaseView from '@/views/srm/PurchaseView.vue' +import InquiryView from '@/views/srm/InquiryView.vue' +import ContractView as SrmContractView from '@/views/srm/ContractView.vue' +import EvaluationView from '@/views/srm/EvaluationView.vue' +import PerformanceView from '@/views/srm/PerformanceView.vue' +import ReportView as SrmReportView from '@/views/srm/ReportView.vue' const router = createRouter({ history: createWebHistory(import.meta.env.BASE_URL), @@ -75,7 +91,74 @@ const router = createRouter({ { path: 'reports', name: 'reports', - component: ReportView, + component: CrmReportView, + }, + // ISRM + { + path: 'isrm/demand', + name: 'isrm-demand', + component: InternalDemandView, + }, + { + path: 'isrm/purchase', + name: 'isrm-purchase', + component: InternalPurchaseView, + }, + { + path: 'isrm/inventory', + name: 'isrm-inventory', + component: InternalInventoryView, + }, + { + path: 'isrm/supplier', + name: 'isrm-supplier', + component: InternalSupplierView, + }, + { + path: 'isrm/contract', + name: 'isrm-contract', + component: InternalContractView, + }, + { + path: 'isrm/report', + name: 'isrm-report', + component: InternalReportView, + }, + // SRM + { + path: 'srm/supplier', + name: 'srm-supplier', + component: SupplierView, + }, + { + path: 'srm/purchase', + name: 'srm-purchase', + component: PurchaseView, + }, + { + path: 'srm/inquiry', + name: 'srm-inquiry', + component: InquiryView, + }, + { + path: 'srm/contract', + name: 'srm-contract', + component: SrmContractView, + }, + { + path: 'srm/evaluation', + name: 'srm-evaluation', + component: EvaluationView, + }, + { + path: 'srm/performance', + name: 'srm-performance', + component: PerformanceView, + }, + { + path: 'srm/report', + name: 'srm-report', + component: SrmReportView, }, { path: 'users', diff --git a/src/views/isrm/InternalContractView.vue b/src/views/isrm/InternalContractView.vue new file mode 100644 index 0000000..f398817 --- /dev/null +++ b/src/views/isrm/InternalContractView.vue @@ -0,0 +1,177 @@ + + + + + + + 内部合同管理 + + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + 创建合同 + + + + + + + + + ¥{{ scope.row.amount.toLocaleString() }} + + + + + + + {{ scope.row.status }} + + + + + + 查看 + 编辑 + 删除 + + + + + + + + + + + + + diff --git a/src/views/isrm/InternalDemandView.vue b/src/views/isrm/InternalDemandView.vue new file mode 100644 index 0000000..6d2ac45 --- /dev/null +++ b/src/views/isrm/InternalDemandView.vue @@ -0,0 +1,214 @@ + + + + + + + 内部需求管理 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + 创建需求 + + + + + + + + + {{ scope.row.quantity }} {{ scope.row.unit }} + + + + + {{ scope.row.priority }} + + + + + {{ scope.row.status }} + + + + + + + 编辑 + 删除 + + + + + + + + + + + + + diff --git a/src/views/isrm/InternalInventoryView.vue b/src/views/isrm/InternalInventoryView.vue new file mode 100644 index 0000000..37e20be --- /dev/null +++ b/src/views/isrm/InternalInventoryView.vue @@ -0,0 +1,208 @@ + + + + + + + 内部库存管理 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + 添加库存 + + + + + + + + + {{ scope.row.quantity }} {{ scope.row.unit }} + + + + + + {{ scope.row.minStock }}-{{ scope.row.maxStock }} {{ scope.row.unit }} + + + + + + + + + {{ getStockStatusText(scope.row) }} + + + + + + 编辑 + 删除 + + + + + + + + + + + + + diff --git a/src/views/isrm/InternalPurchaseView.vue b/src/views/isrm/InternalPurchaseView.vue new file mode 100644 index 0000000..9422daf --- /dev/null +++ b/src/views/isrm/InternalPurchaseView.vue @@ -0,0 +1,186 @@ + + + + + + + 内部采购管理 + + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + 创建采购单 + + + + + + + + + + + ¥{{ scope.row.unitPrice }} + + + + + ¥{{ scope.row.totalAmount.toLocaleString() }} + + + + + {{ scope.row.status }} + + + + + + 查看 + 编辑 + 删除 + + + + + + + + + + + + + diff --git a/src/views/isrm/InternalReportView.vue b/src/views/isrm/InternalReportView.vue new file mode 100644 index 0000000..5864fc3 --- /dev/null +++ b/src/views/isrm/InternalReportView.vue @@ -0,0 +1,201 @@ + + + + + + + ISRM 报表统计 + + + + + + + + + + + + 需求总数 + {{ reportData.demands.total }} + 待审批 {{ reportData.demands.pending }} + + + + + + + + + + + + 采购总额 + ¥{{ (reportData.purchases.amount / 10000).toFixed(0) }}万 + 本月 ¥{{ (reportData.purchases.monthly / 10000).toFixed(0) }}万 + + + + + + + + + + + + 库存物品 + {{ reportData.inventory.total }} + 库存不足 {{ reportData.inventory.lowStock }} + + + + + + + + + + + + 内部供应商 + {{ reportData.suppliers.total }} + 启用 {{ reportData.suppliers.active }} + + + + + + + + + + + + 月度统计 + + + + + + + + + ¥{{ (scope.row.amount / 10000).toFixed(0) }}万 + + + + + + + + + + + diff --git a/src/views/isrm/InternalSupplierView.vue b/src/views/isrm/InternalSupplierView.vue new file mode 100644 index 0000000..e6223ac --- /dev/null +++ b/src/views/isrm/InternalSupplierView.vue @@ -0,0 +1,183 @@ + + + + + + + 内部供应商管理 + + + + + + + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + 添加供应商 + + + + + + + + + + + + {{ scope.row.phone }} + + + + + + + + {{ scope.row.status }} + + + + + + 编辑 + 删除 + + + + + + + + + + + + + diff --git a/src/views/srm/ContractView.vue b/src/views/srm/ContractView.vue new file mode 100644 index 0000000..837bb00 --- /dev/null +++ b/src/views/srm/ContractView.vue @@ -0,0 +1,173 @@ + + + + + + + 合同管理 + + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + 创建合同 + + + + + + + + ¥{{ scope.row.amount.toLocaleString() }} + + + + + + + {{ scope.row.status }} + + + + + + 查看 + 编辑 + 删除 + + + + + + + + + + + + + diff --git a/src/views/srm/EvaluationView.vue b/src/views/srm/EvaluationView.vue new file mode 100644 index 0000000..1a5de02 --- /dev/null +++ b/src/views/srm/EvaluationView.vue @@ -0,0 +1,210 @@ + + + + + + + 供应商评估 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + 创建评估 + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ scope.row.total.toFixed(2) }} + + + + + + + {{ scope.row.level }} + + + + + + + + 编辑 + + + + + + + + + + + + + diff --git a/src/views/srm/InquiryView.vue b/src/views/srm/InquiryView.vue new file mode 100644 index 0000000..08be4a5 --- /dev/null +++ b/src/views/srm/InquiryView.vue @@ -0,0 +1,178 @@ + + + + + + + 询价管理 + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + 创建询价单 + + + + + + + + + + {{ supplier }} + + + + + + {{ scope.row.status }} + + + + + + + 查看报价 + 编辑 + 删除 + + + + + + + + + + + + + diff --git a/src/views/srm/PerformanceView.vue b/src/views/srm/PerformanceView.vue new file mode 100644 index 0000000..54590f2 --- /dev/null +++ b/src/views/srm/PerformanceView.vue @@ -0,0 +1,165 @@ + + + + + + + 供应商绩效 + + + + + + + + + + + + + + + 搜索 + 重置 + + + + + + + + + {{ scope.row.ranking }} + + + + + + + + ¥{{ (scope.row.totalAmount / 10000).toFixed(0) }}万 + + + + + + + + + + + + + + + + + + + + 详情 + + + + + + + + + + + + + diff --git a/src/views/srm/PurchaseView.vue b/src/views/srm/PurchaseView.vue new file mode 100644 index 0000000..cc6f44d --- /dev/null +++ b/src/views/srm/PurchaseView.vue @@ -0,0 +1,182 @@ + + + + + + + 采购管理 + + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + 创建采购单 + + + + + + + + + + ¥{{ scope.row.unitPrice }} + + + + + ¥{{ scope.row.totalAmount.toLocaleString() }} + + + + + {{ scope.row.status }} + + + + + + 查看 + 编辑 + 删除 + + + + + + + + + + + + + diff --git a/src/views/srm/ReportView.vue b/src/views/srm/ReportView.vue new file mode 100644 index 0000000..becdfab --- /dev/null +++ b/src/views/srm/ReportView.vue @@ -0,0 +1,200 @@ + + + + + + + SRM 报表统计 + + + + + + + + + + + + 供应商总数 + {{ reportData.suppliers.total }} + 合作中 {{ reportData.suppliers.active }} + + + + + + + + + + + + 采购总额 + ¥{{ (reportData.purchases.amount / 10000).toFixed(0) }}万 + 本月 ¥{{ (reportData.purchases.monthly / 10000).toFixed(0) }}万 + + + + + + + + + + + + 合同总数 + {{ reportData.contracts.total }} + 执行中 {{ reportData.contracts.active }} + + + + + + + + + + + + 评估总数 + {{ reportData.evaluations.total }} + 优秀 {{ reportData.evaluations.excellent }} + + + + + + + + + + + + 月度统计 + + + + + + + + ¥{{ (scope.row.amount / 10000).toFixed(0) }}万 + + + + + + + + + + + + diff --git a/src/views/srm/SupplierView.vue b/src/views/srm/SupplierView.vue new file mode 100644 index 0000000..891022d --- /dev/null +++ b/src/views/srm/SupplierView.vue @@ -0,0 +1,197 @@ + + + + + + + 供应商管理 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + 添加供应商 + + + + + + + + + + + + {{ scope.row.phone }} + + + + + + + + + + + + + {{ scope.row.status }} + + + + + + 编辑 + 删除 + + + + + + + + + + + + +