From dea89010e99556f05d29091a0202383b4376e886 Mon Sep 17 00:00:00 2001 From: duan <1004387497@qq.com> Date: Tue, 18 Feb 2025 18:47:15 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=8B=89=E5=8F=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/onlineShop/goodsGroupconfig.ts | 64 +++++ src/api/product/commonUnits.ts | 1 + src/api/product/index.ts | 58 +++++ src/api/product/productclassification.ts | 10 +- src/api/product/specificationsconfig.ts | 2 + src/components/CURD/PageContent.vue | 9 +- src/components/CURD/PageModal.vue | 73 +----- src/components/CURD/PageSearch.vue | 62 +---- src/components/CURD/usePage.ts | 1 - src/components/mycomponents/myDialog.vue | 46 ++++ src/views/devices/config/search.ts | 25 +- src/views/online-shop/goods-group.vue | 245 +++++++++++++++++- src/views/online-shop/goodsGroupconfig/add.ts | 104 ++++++++ .../online-shop/goodsGroupconfig/content.ts | 74 ++++++ .../online-shop/goodsGroupconfig/content2.ts | 34 +++ .../online-shop/goodsGroupconfig/edit.ts | 135 ++++++++++ .../online-shop/goodsGroupconfig/search.ts | 101 ++++++++ .../online-shop/goodsGroupconfig/search2.ts | 41 +++ .../goodsGroupconfig/selectGoodslist.vue | 92 +++++++ src/views/product/categoryconfig/content.ts | 5 +- src/views/product/index.vue | 164 +++++++++++- src/views/product/indexconfig/add.ts | 2 +- src/views/product/indexconfig/content.ts | 37 ++- src/views/product/indexconfig/edit.ts | 2 +- src/views/product/indexconfig/search.ts | 104 ++++++-- src/views/product/indexconfig/statistics.vue | 100 +++++++ 26 files changed, 1429 insertions(+), 162 deletions(-) create mode 100644 src/api/onlineShop/goodsGroupconfig.ts create mode 100644 src/api/product/index.ts create mode 100644 src/components/mycomponents/myDialog.vue create mode 100644 src/views/online-shop/goodsGroupconfig/add.ts create mode 100644 src/views/online-shop/goodsGroupconfig/content.ts create mode 100644 src/views/online-shop/goodsGroupconfig/content2.ts create mode 100644 src/views/online-shop/goodsGroupconfig/edit.ts create mode 100644 src/views/online-shop/goodsGroupconfig/search.ts create mode 100644 src/views/online-shop/goodsGroupconfig/search2.ts create mode 100644 src/views/online-shop/goodsGroupconfig/selectGoodslist.vue create mode 100644 src/views/product/indexconfig/statistics.vue diff --git a/src/api/onlineShop/goodsGroupconfig.ts b/src/api/onlineShop/goodsGroupconfig.ts new file mode 100644 index 0000000..3c76bf6 --- /dev/null +++ b/src/api/onlineShop/goodsGroupconfig.ts @@ -0,0 +1,64 @@ +import request from "@/utils/request"; +const baseURL = "/product/admin/prod/group"; +// 商品管理-商品分类 +const AuthAPI = { + // 列表 + getList(params: any) { + return request({ + url: `${baseURL}/list`, + method: "get", + params, + }); + }, + /** 分页*/ + getPage(params: any) { + return request({ + url: `${baseURL}/page`, + method: "get", + params, + }); + }, + // 新增 + addunit(data: any) { + return request({ + url: `${baseURL}`, + method: "post", + data: { ...data }, + }); + }, + // 获取详情 + getunitinfo(id: number) { + return request({ + url: `${baseURL}/${id}`, + method: "get", + }); + }, + // 编辑确定 + update(data: Object) { + return request({ + url: `${baseURL}`, + method: "put", + data, + }); + }, + // 删除 + deleteByIds(id: number | String) { + return request({ + url: `${baseURL}/${id}`, + method: "delete", + }); + }, + +}; + + + + +export interface Responseres { + code?: number | null; + data?: any; + msg?: null | string; + [property: string]: any; +} + +export default AuthAPI; \ No newline at end of file diff --git a/src/api/product/commonUnits.ts b/src/api/product/commonUnits.ts index 6e99e4d..755d9e0 100644 --- a/src/api/product/commonUnits.ts +++ b/src/api/product/commonUnits.ts @@ -1,6 +1,7 @@ import request from "@/utils/request"; const baseURL = "/product/admin/prod/unit"; +// 商品管理-常用单位 const AuthAPI = { /** 分页*/ diff --git a/src/api/product/index.ts b/src/api/product/index.ts new file mode 100644 index 0000000..42a00d8 --- /dev/null +++ b/src/api/product/index.ts @@ -0,0 +1,58 @@ +import request from "@/utils/request"; +const baseURL = "/product/admin/product"; +// 商品管理-商品列表 + +const AuthAPI = { + /** 分页*/ + getPage(params: any) { + return request({ + url: `${baseURL}/page`, + method: "get", + params, + }); + }, + // 单位新增 + addunit(data: any) { + return request({ + url: `${baseURL}`, + method: "post", + data, + }); + }, + // 获取详情 + getunitinfo(id: number) { + return request({ + url: `${baseURL}/${id}`, + method: "get", + }); + }, + // 编辑确定 + update(data: Object) { + return request({ + url: `${baseURL}`, + method: "put", + data, + }); + }, + // 删除 + deleteByIds(id: number | String) { + return request({ + url: `${baseURL}/${id}`, + method: "delete", + }); + }, + + +}; + + + + +export interface Responseres { + code?: number | null; + data?: any; + msg?: null | string; + [property: string]: any; +} + +export default AuthAPI; \ No newline at end of file diff --git a/src/api/product/productclassification.ts b/src/api/product/productclassification.ts index b7af4ae..c6b87d2 100644 --- a/src/api/product/productclassification.ts +++ b/src/api/product/productclassification.ts @@ -1,7 +1,15 @@ import request from "@/utils/request"; const baseURL = "/product/admin/prod/category"; - +// 商品管理-商品分类 const AuthAPI = { + // 列表 + getList(params: any) { + return request({ + url: `${baseURL}/list`, + method: "get", + params, + }); + }, /** 分页*/ getPage(params: any) { return request({ diff --git a/src/api/product/specificationsconfig.ts b/src/api/product/specificationsconfig.ts index 2fcc48b..69358e8 100644 --- a/src/api/product/specificationsconfig.ts +++ b/src/api/product/specificationsconfig.ts @@ -1,5 +1,7 @@ import request from "@/utils/request"; const baseURL = "/product/admin/prod/spec"; +// 商品管理-商品规格 + const AuthAPI = { /** 列表*/ getPage(params: any) { diff --git a/src/components/CURD/PageContent.vue b/src/components/CURD/PageContent.vue index 12193bd..d005bed 100644 --- a/src/components/CURD/PageContent.vue +++ b/src/components/CURD/PageContent.vue @@ -415,7 +415,10 @@ function handleSelectionChange(selection: any[]) { selectionData.value = selection; removeIds.value = selection.map((item) => item[pk]); } - +// 获取选中的表格数据 +function getselectTable() { + return selectionData.value; +} // 刷新 function handleRefresh(isRestart = false) { fetchPageData(lastFormData, isRestart); @@ -560,6 +563,7 @@ function handleFileExceed(files: File[]) { file.uid = genFileId(); uploadRef.value!.handleStart(file); } + // 下载导入模板 function handleDownloadTemplate() { const importTemplate = props.contentConfig.importTemplate; @@ -725,6 +729,7 @@ function handleModify(field: string, value: boolean | string | number, row: Reco if (props.contentConfig.modifyAction) { props.contentConfig.modifyAction({ [pk]: row[pk], + ...row, field: field, value: value, }); @@ -847,7 +852,7 @@ function saveXlsx(fileData: BlobPart, fileName: string) { } // 暴露的属性和方法 -defineExpose({ fetchPageData, exportPageData, getFilterParams }); +defineExpose({ fetchPageData, exportPageData, getFilterParams, getselectTable }); diff --git a/src/components/CURD/PageModal.vue b/src/components/CURD/PageModal.vue index a6121a2..e17b46e 100644 --- a/src/components/CURD/PageModal.vue +++ b/src/components/CURD/PageModal.vue @@ -1,20 +1,9 @@