# 品项API模块使用说明 ## 概述 `project.js` 模块封装了品项相关的所有API接口,包括获取品项列表、创建、更新、删除等操作。 ## API接口 ### 1. 获取品项列表 ```javascript import projectApi from '@/apis/modules/project.js' // 基本用法 const result = await projectApi.getProjectList({ currentPage: 1, pageSize: 20 }); ``` ### 2. 获取品项选项(推荐用于下拉选择) ```javascript // 获取所有品项选项 const options = await projectApi.getProjectOptions(); // 带搜索参数的选项 const options = await projectApi.getProjectOptions({ currentPage: 1, pageSize: 1000, xmmc: '搜索关键词' }); ``` ### 3. 搜索品项 ```javascript const result = await projectApi.searchProjects('关键词', { currentPage: 1, pageSize: 20 }); ``` ### 4. 获取品项详情 ```javascript const detail = await projectApi.getProjectDetail('品项ID'); ``` ### 5. 创建品项 ```javascript const data = { xmmc: '品项名称', pxjg: 100, // 价格 description: '描述' }; const result = await projectApi.createProject(data); ``` ### 6. 更新品项 ```javascript const data = { xmmc: '更新后的名称', pxjg: 150 }; const result = await projectApi.updateProject('品项ID', data); ``` ### 7. 删除品项 ```javascript const result = await projectApi.deleteProject('品项ID'); ``` ## 在Vue组件中使用 ### 1. 导入API ```javascript import projectApi from '@/apis/modules/project.js' ``` ### 2. 在方法中调用 ```javascript methods: { async loadProjectOptions() { try { const options = await projectApi.getProjectOptions(); this.projectOptions = options; } catch (error) { console.error('加载品项选项失败:', error); } } } ``` ### 3. 在页面加载时调用 ```javascript async onLoad() { await this.loadProjectOptions(); } ``` ## 返回数据格式 ### 品项选项格式 ```javascript [ { value: '1', // 品项ID label: '品项名称', // 显示名称 px: '1', // 品项ID(兼容字段) pxmc: '品项名称', // 品项名称(兼容字段) pxjg: 100, // 品项价格 qt2: '', // 其他字段 description: '', // 描述 status: 1 // 状态 } ] ``` ## 错误处理 所有API调用都应该包含错误处理: ```javascript try { const result = await projectApi.getProjectOptions(); // 处理成功结果 } catch (error) { console.error('API调用失败:', error); // 处理错误情况 } ``` ## 注意事项 1. 所有API调用都是异步的,需要使用 `await` 或 `.then()` 2. 当API调用失败时,`getProjectOptions` 会返回默认数据 3. 分页参数 `currentPage` 从1开始 4. 搜索参数 `xmmc` 用于按品项名称搜索 5. 建议在生产环境中添加适当的错误提示给用户