diff --git a/.env.dev b/.env.dev index dc7d2502..05d5d68a 100644 --- a/.env.dev +++ b/.env.dev @@ -4,7 +4,7 @@ NODE_ENV=production VITE_DEV=true # 请求路径 -VITE_BASE_URL='http://api-dashboard.yudao.iocoder.cn' +VITE_BASE_URL='https://xrhomeapi.asset-cloud.com.cn' # 文件上传类型:server - 后端上传, client - 前端直连上传,仅支持S3服务 VITE_UPLOAD_TYPE=server diff --git a/src/api/product/summary/index.ts b/src/api/product/summary/index.ts new file mode 100644 index 00000000..5a2f80a7 --- /dev/null +++ b/src/api/product/summary/index.ts @@ -0,0 +1,79 @@ +import request from "@/config/axios"; + +// 商品汇总分页查询参数 +export interface SummaryPageReqVO { + pageNo: number; // 页码,从 1 开始 + pageSize: number; // 每页条数,最大值为 100 + name?: string; // 商品名称 + deviceId?: string; // 设备IMEI + barCode?: string; // SKU 的条形码 + keyword?: string; // 关键字 + introduction?: string; // 商品简介 + description?: string; // 商品详情 + categoryId?: string; // 商品分类编号 + brandId?: string; // 商品品牌编号 + picUrl?: string; // 商品封面图 + sliderPicUrls?: string; // 商品轮播图地址数组,以逗号分隔 最多上传15张 + sort?: string; // 排序字段 + price?: string; // 商品价格,单位使用:分 + marketPrice?: string; // 市场价,单位使用:分 + costPrice?: string; // 成本价,单位: 分 + createTime?: string[]; // 创建时间 +} + +// 商品汇总 VO +export interface SummaryVO { + id: number; // 商品编号,自增 + deviceId: string; // 设备IMEI + barCode: string; // SKU 的条形码 + name: string; // 商品名称 + keyword: string; // 关键字 + introduction: string; // 商品简介 + description: string; // 商品详情 + categoryId: number; // 商品分类编号 + brandId: number; // 商品品牌编号 + picUrl: string; // 商品封面图 + sliderPicUrls: string; // 商品轮播图地址 + // 数组,以逗号分隔 + // 最多上传15张 + sort: number; // 排序字段 + price: number; // 商品价格,单位使用:分 + marketPrice: number; // 市场价,单位使用:分 + costPrice: number; // 成本价,单位: 分 +} + +// 商品汇总 API +export const SummaryApi = { + // 查询商品汇总分页 + getSummaryPage: async (params: SummaryPageReqVO) => { + return await request.get({ url: `/product/summary/sumPage`, params }); + }, + + // 查询商品汇总详情 + getSummary: async (id: number) => { + return await request.get({ url: `/product/summary/get?id=` + id }); + }, + + // 新增商品汇总 + createSummary: async (data: SummaryVO) => { + return await request.post({ url: `/product/summary/create`, data }); + }, + + // 修改商品汇总 + updateSummary: async (data: SummaryVO) => { + return await request.put({ url: `/product/summary/update`, data }); + }, + + // 删除商品汇总 + deleteSummary: async (id: number) => { + return await request.delete({ url: `/product/summary/delete?id=` + id }); + }, + + // 导出商品汇总 Excel + exportSummary: async (params) => { + return await request.download({ + url: `/product/summary/export-excel`, + params, + }); + }, +}; diff --git a/src/views/mall/product/summary/SummaryForm.vue b/src/views/mall/product/summary/SummaryForm.vue new file mode 100644 index 00000000..a5b50db4 --- /dev/null +++ b/src/views/mall/product/summary/SummaryForm.vue @@ -0,0 +1,174 @@ + + diff --git a/src/views/mall/product/summary/index.vue b/src/views/mall/product/summary/index.vue new file mode 100644 index 00000000..7cfabbf1 --- /dev/null +++ b/src/views/mall/product/summary/index.vue @@ -0,0 +1,334 @@ + + +