From 2b2f0c0ed59d4b21e1a37bd0ff9fe90f2e464869 Mon Sep 17 00:00:00 2001 From: lihaoyuan <18278596806@163.com> Date: Tue, 30 Dec 2025 11:58:09 +0800 Subject: [PATCH] =?UTF-8?q?update:=E6=96=B0=E5=A2=9E=E5=95=86=E5=93=81?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/goodsTool.js | 61 +++++- src/views/product/goodsImport/importBrand.vue | 199 +++++++++++++++++ .../product/goodsImport/importCategory.vue | 201 ++++++++++++++++++ src/views/product/goodsImport/importGoods.vue | 201 ++++++++++++++++++ src/views/product/goodsImport/index.vue | 115 ++++++++++ 5 files changed, 776 insertions(+), 1 deletion(-) create mode 100644 src/views/product/goodsImport/importBrand.vue create mode 100644 src/views/product/goodsImport/importCategory.vue create mode 100644 src/views/product/goodsImport/importGoods.vue create mode 100644 src/views/product/goodsImport/index.vue diff --git a/src/api/goodsTool.js b/src/api/goodsTool.js index 360ed5a..188d622 100644 --- a/src/api/goodsTool.js +++ b/src/api/goodsTool.js @@ -45,6 +45,28 @@ export async function downloadTempGoods() { responseType: 'blob', }) } +//商品导入 下载三个模板 +export async function downloadBrandTemplate() { + return request({ + url: '/admin/shop/shop-sync-import/brandTemplate', + method: 'get', + responseType: 'blob', + }) +} +export async function downloadCategoryTemplate() { + return request({ + url: '/admin/shop/shop-sync-import/categoryTemplate', + method: 'get', + responseType: 'blob', + }) +} +export async function downloadGoodsTemplate() { + return request({ + url: '/admin/shop/shop-sync-import/shopTemplate', + method: 'get', + responseType: 'blob', + }) +} export async function exportUncheckShopData(storeId) { return request({ url: '/admin/shop/shop-sync-productMapper/exportUncheckShopData', @@ -128,6 +150,37 @@ export async function importGoodsData(data) { data, }) } +//商品导入的三个导入 +export async function categoryImportData(data) { + return request({ + url: '/admin/shop/shop-sync-import/categoryImportData', + method: 'post', + headers: { + 'Content-Type': 'multipart/form-data', + }, + data, + }) +} +export async function brandImportData(data) { + return request({ + url: '/admin/shop/shop-sync-import/brandImportData', + method: 'post', + headers: { + 'Content-Type': 'multipart/form-data', + }, + data, + }) +} +export async function shopImportData(data) { + return request({ + url: '/admin/shop/shop-sync-import/shopImportData', + method: 'post', + headers: { + 'Content-Type': 'multipart/form-data', + }, + data, + }) +} export async function syncShopImages(data) { data = stringify(data) @@ -169,5 +222,11 @@ export default { importGoodsData, syncShopImages, getImgList, - saveBatchBarcode + saveBatchBarcode, + downloadBrandTemplate, + downloadCategoryTemplate, + downloadGoodsTemplate, + categoryImportData, + brandImportData, + shopImportData } diff --git a/src/views/product/goodsImport/importBrand.vue b/src/views/product/goodsImport/importBrand.vue new file mode 100644 index 0000000..6a9726b --- /dev/null +++ b/src/views/product/goodsImport/importBrand.vue @@ -0,0 +1,199 @@ + + + + + \ No newline at end of file diff --git a/src/views/product/goodsImport/importCategory.vue b/src/views/product/goodsImport/importCategory.vue new file mode 100644 index 0000000..58e0d98 --- /dev/null +++ b/src/views/product/goodsImport/importCategory.vue @@ -0,0 +1,201 @@ + + + + + \ No newline at end of file diff --git a/src/views/product/goodsImport/importGoods.vue b/src/views/product/goodsImport/importGoods.vue new file mode 100644 index 0000000..73751d8 --- /dev/null +++ b/src/views/product/goodsImport/importGoods.vue @@ -0,0 +1,201 @@ + + + + + \ No newline at end of file diff --git a/src/views/product/goodsImport/index.vue b/src/views/product/goodsImport/index.vue new file mode 100644 index 0000000..cd9a730 --- /dev/null +++ b/src/views/product/goodsImport/index.vue @@ -0,0 +1,115 @@ + + + + +