import request from "@/utils/request"; export function getProductCodeSuggestions(params) { return request({ url: "/reports/product-code-suggestions", method: "get", params, }); } /** * 销售分析模块API接口 * 包含分析数据、基准数据、分类管理、店铺客户关联、报表分析等功能 */ // ==================== 分析数据管理 ==================== /** * 获取分析数据列表 * @param {Object} params - 查询参数 * @param {number} params.page - 页码 * @param {number} params.pageSize - 每页数量 * @param {string} params.productCode - 商品编号 * @param {string} params.productName - 商品名称 * @param {string} params.customerName - 客户名称 * @param {string} params.shopName - 店铺名称 * @param {string} params.status - 状态 * @param {string} params.startDate - 开始日期 * @param {string} params.endDate - 结束日期 * @returns {Promise} 返回数据列表和分页信息 */ export function getAnalysisDataList(params) { return request({ url: "/analysis-data", method: "get", params, }); } /** * 更新分析数据 * @param {number} id - 数据ID * @param {Object} data - 更新数据 * @returns {Promise} 更新结果 */ export function updateAnalysisData(id, data) { return request({ url: `/analysis-data/${id}`, method: "put", data, }); } /** * 删除分析数据 * @param {number} id - 数据ID * @returns {Promise} 删除结果 */ export function deleteAnalysisData(id) { return request({ url: `/analysis-data/${id}`, method: "delete", }); } /** * 批量删除分析数据 * @param {string} ids - 数据ID列表,逗号分隔 * @returns {Promise} 批量删除结果 */ export function batchDeleteAnalysisData(ids) { return request({ url: `/analysis-data/batch/${ids}`, method: "delete", }); } /** * 导出分析数据 * @param {Object} params - 导出参数 * @returns {string} 导出文件URL */ export function exportAnalysisData(params) { const queryString = new URLSearchParams(params).toString(); return request({ url: `/analysis-data/export?${queryString}`, responseType: "blob", method: "get", }); } // ==================== 数据导入 ==================== /** * 批量导入分析数据(物流数据) * @param {FormData} formData - 包含文件和分类ID的表单数据 * @returns {Promise} 导入结果 */ export function importAnalysisDataBatch(formData) { return request({ url: "/analysis-data/import-batch", method: "post", data: formData, headers: { "Content-Type": "multipart/form-data", }, }); } /** * 批量导入FBA数据 * @param {FormData} formData - 包含文件和店铺名称的表单数据 * @returns {Promise} 导入结果 */ export function importFBADataBatch(formData) { return request({ url: "/analysis-data/import/fba/batch", method: "post", data: formData, headers: { "Content-Type": "multipart/form-data", }, }); } /** * 保存导入的数据 * @param {Object} data - 导入的数据 * @returns {Promise} 保存结果 */ export function saveImportedData(data) { return request({ url: "/analysis-data/save-imported", method: "post", data, }); } // ==================== 基准数据管理 ==================== /** * 获取分类列表(简化版) * @returns {Promise} 分类列表 */ export function getCategoriesSimple() { return request({ url: "/categories/simple", method: "get", }); } /** * 获取分类详情 * @param {number} categoryId - 分类ID * @returns {Promise} 分类详情 */ export function getCategoryDetail(categoryId) { return request({ url: `/categories/${categoryId}`, method: "get", }); } /** * 获取基准数据列表 * @param {Object} params - 查询参数 * @param {number} params.page - 页码 * @param {number} params.pageSize - 每页数量 * @param {number} params.categoryId - 分类ID * @param {string} params.productCode - 商品编号 * @param {string} params.productName - 商品名称 * @returns {Promise} 基准数据列表和分页信息 */ export function getBaseDataList(params) { return request({ url: "/basedata", method: "get", params, }); } /** * 导出基准数据 * @param {number} categoryId - 分类ID * @returns {Promise} 导出文件URL */ export function exportBaseData(categoryId) { return request({ url: `/basedata/export/${categoryId}`, responseType: "blob", method: "get", }); } /** * 删除基准数据 * @param {number} id - 数据ID * @returns {Promise} 删除结果 */ export function deleteBaseData(id) { return request({ url: `/basedata/${id}`, method: "delete", }); } /** * 批量删除基准数据 * @param {string} ids - 数据ID列表,逗号分隔 * @returns {Promise} 批量删除结果 */ export function batchDeleteBaseData(ids) { return request({ url: `/basedata/batch/${ids}`, method: "delete", }); } /** * 新增基准数据 * @param {Object} data - 新增数据 * @returns {Promise} 新增结果 */ export function BaseDataAdd(data) { return request({ url: "/basedata", method: "post", data, }); } /** * 更新基准数据 * @param {number} id - 数据ID * @param {Object} data - 更新数据 * @returns {Promise} 更新结果 */ export function BaseDataUpdate(id, data) { return request({ url: `/basedata/${id}`, method: "put", data, }); } // ==================== 分类管理 ==================== /** * 获取分类列表 * @param {Object} params - 查询参数 * @param {number} params.page - 页码 * @param {number} params.pageSize - 每页数量 * @param {string} params.name - 分类名称 * @returns {Promise} 分类列表和分页信息 */ export function getCategoriesList(params) { return request({ url: "/categories", method: "get", params, }); } /** * 创建分类 * @param {Object} data - 分类数据 * @returns {Promise} 创建结果 */ export function createCategory(data) { return request({ url: "/categories", method: "post", data, }); } /** * 更新分类 * @param {number} id - 分类ID * @param {Object} data - 分类数据 * @returns {Promise} 更新结果 */ export function updateCategory(id, data) { return request({ url: `/categories/${id}`, method: "put", data, }); } /** * 删除分类 * @param {number} id - 分类ID * @returns {Promise} 删除结果 */ export function deleteCategory(id) { return request({ url: `/categories/${id}`, method: "delete", }); } // ==================== 店铺客户关联管理 ==================== /** * 获取店铺客户关联列表 * @param {Object} params - 查询参数 * @param {number} params.page - 页码 * @param {number} params.pageSize - 每页数量 * @param {string} params.shopName - 店铺名称 * @param {string} params.customerName - 客户名称 * @returns {Promise} 关联列表和分页信息 */ export function getShopCustomerList(params) { return request({ url: "/shop-customer", method: "get", params, }); } /** * 删除店铺客户关联 * @param {number} id - 关联ID * @returns {Promise} 删除结果 */ export function deleteShopCustomer(id) { return request({ url: `/shop-customer/${id}`, method: "delete", }); } /** * 批量删除店铺客户关联 * @param {string} ids - 关联ID列表,逗号分隔 * @returns {Promise} 批量删除结果 */ export function batchDeleteShopCustomer(ids) { return request({ url: `/shop-customer/batch/${ids}`, method: "delete", }); } /** * 导出店铺客户关联数据 * @returns {string} 导出文件URL */ export function exportShopCustomer() { return request({ url: "/shop-customer/export", responseType: "blob", method: "get", }); } /** * 新增店铺客户关联 * @param {Object} data - 新增数据 * @returns {Promise} 新增结果 */ export function ShopCustomerAdd(data) { return request({ url: "/shop-customer", method: "post", data, }); } /** * 更新店铺客户关联 * @param {number} id - 关联ID * @param {Object} data - 更新数据 * @returns {Promise} 更新结果 */ export function ShopCustomerUpdate(id, data) { return request({ url: `/shop-customer/${id}`, method: "put", data, }); } // ==================== 报表分析 ==================== /** * 获取报表筛选选项 * @returns {Promise} 筛选选项数据 */ export function getReportFilterOptions() { return request({ url: "/reports/filter-options", method: "get", }); } /** * 获取商品分析报表数据 * @param {Object} params - 查询参数 * @param {string} params.startDate - 开始日期 * @param {string} params.endDate - 结束日期 * @param {string} params.productCode - 商品编号 * @returns {Promise} 商品分析数据 */ export function getProductAnalysisReport(params) { return request({ url: "/reports/product-analysis", method: "get", params, }); } /** * 获取店铺分析报表数据 * @param {Object} params - 查询参数 * @param {string} params.startDate - 开始日期 * @param {string} params.endDate - 结束日期 * @param {string} params.shop - 店铺名称 * @returns {Promise} 店铺分析数据 */ export function getShopAnalysisReport(params) { return request({ url: "/reports/shop-analysis", method: "get", params, }); } /** * 获取分类分析报表数据 * @param {Object} params - 查询参数 * @param {string} params.startDate - 开始日期 * @param {string} params.endDate - 结束日期 * @returns {Promise} 分类分析数据 */ export function getCategoryAnalysisReport(params) { return request({ url: "/reports/category-analysis", method: "get", params, }); } /** * 获取整体分析报表数据 * @param {Object} params - 查询参数 * @param {string} params.startDate - 开始日期 * @param {string} params.endDate - 结束日期 * @returns {Promise} 整体分析数据 */ export function getOverallAnalysisReport(params) { return request({ url: "/reports/overall-analysis", method: "get", params, }); }