# 数据模拟 - 基础数据检测 ## 涉及页面 - 数据模拟操作页面(新增) ## API | 方法 | 路径 | 说明 | |------|------|------| | POST | /mock/dataCheck | 检测指定模块的基础数据是否就绪 | **请求参数:** | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| | modules | List\ | 是 | 要检测的模块列表,可选值:sales(销售)、purchase(采购)、quality(质量) | 请求体示例: ```json { "modules": ["sales", "purchase", "quality"] } ``` **响应:** ```json { "code": 200, "msg": "操作成功", "data": { "totalItems": 6, "passedItems": 3, "items": [ { "module": "common", "itemName": "产品数据", "minRequired": 1, "currentCount": 5, "passed": true, "message": "通过" }, { "module": "sales", "itemName": "客户数据", "minRequired": 1, "currentCount": 0, "passed": false, "message": "缺少客户数据,请先在【基础数据-客户管理】中添加至少1条客户" } ] } } ``` ## 检测规则 ### 销售模块 (sales) | 检测项 | 最低数量 | 未通过提示 | |--------|----------|------------| | 产品数据 | 1 | 缺少产品数据,请先在【基础数据-产品管理】中添加至少1条产品 | | 客户数据 | 1 | 缺少客户数据,请先在【基础数据-客户管理】中添加至少1条客户 | | 报价审批模板 | 1 | 缺少报价审批模板,请先在【系统管理-审批模板】中创建报价审批模板 | | 发货审批模板 | 1 | 缺少发货审批模板,请先在【系统管理-审批模板】中创建发货审批模板 | ### 采购模块 (purchase) | 检测项 | 最低数量 | 未通过提示 | |--------|----------|------------| | 产品数据 | 1 | 缺少产品数据,请先在【基础数据-产品管理】中添加至少1条产品 | | 供应商数据 | 1 | 缺少供应商数据,请先在【基础数据-供应商管理】中添加至少1条供应商 | | 采购审批模板 | 1 | 缺少采购审批模板,请先在【系统管理-审批模板】中创建采购审批模板 | ### 质量模块 (quality) | 检测项 | 最低数量 | 未通过提示 | |--------|----------|------------| | 产品数据 | 1 | 缺少产品数据,请先在【基础数据-产品管理】中添加至少1条产品 | | 检测标准 | 1 | 缺少检测标准,请先在【质量管理-检测标准】中创建检测标准 | | 指标绑定 | 1 | 缺少指标绑定,请先在【质量管理-检测标准绑定】中将检测标准与产品绑定 | ## 前端修改点 ### 1. 数据模拟页面入口 在左侧菜单新增"数据模拟"菜单项,路由 `/mock`。 ### 2. 数据检测区域 ```html ``` ### 3. data 数据 ```js data() { return { selectedModules: ['sales', 'purchase', 'quality'], checking: false, checkResult: null, } } ``` ### 4. 方法 ```js import request from '@/utils/request' methods: { async handleCheck() { if (this.selectedModules.length === 0) { this.$message.warning('请至少选择一个模块') return } this.checking = true try { const res = await request.post('/mock/dataCheck', { modules: this.selectedModules }) this.checkResult = res.data } finally { this.checking = false } } } ``` ## 注意事项 - 产品数据(公共基础)在多个模块间共享,检测结果中只出现一次,不会重复展示 - 检测仅做只读查询,不写入任何数据 - 模块参数为空数组时返回空检测列表 - 建议在数据模拟开始前先调用此接口确认基础数据就绪