From a1d7e81859f554f3a53680cc35f0f49bf1f77098 Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期四, 14 五月 2026 14:37:02 +0800
Subject: [PATCH] 导入项目

---
 src/api/mall/product/spu.ts |  111 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 111 insertions(+), 0 deletions(-)

diff --git a/src/api/mall/product/spu.ts b/src/api/mall/product/spu.ts
new file mode 100644
index 0000000..df72386
--- /dev/null
+++ b/src/api/mall/product/spu.ts
@@ -0,0 +1,111 @@
+import request from '@/config/axios'
+
+export interface Property {
+  propertyId?: number // 灞炴�х紪鍙�
+  propertyName?: string // 灞炴�у悕绉�
+  valueId?: number // 灞炴�у�肩紪鍙�
+  valueName?: string // 灞炴�у�煎悕绉�
+}
+
+export interface Sku {
+  id?: number // 鍟嗗搧 SKU 缂栧彿
+  name?: string // 鍟嗗搧 SKU 鍚嶇О
+  spuId?: number // SPU 缂栧彿
+  properties?: Property[] // 灞炴�ф暟缁�
+  price?: number | string // 鍟嗗搧浠锋牸
+  marketPrice?: number | string // 甯傚満浠�
+  costPrice?: number | string // 鎴愭湰浠�
+  barCode?: string // 鍟嗗搧鏉$爜
+  picUrl?: string // 鍥剧墖鍦板潃
+  stock?: number // 搴撳瓨
+  weight?: number // 鍟嗗搧閲嶉噺锛屽崟浣嶏細kg 鍗冨厠
+  volume?: number // 鍟嗗搧浣撶Н锛屽崟浣嶏細m^3 骞崇背
+  firstBrokeragePrice?: number | string // 涓�绾у垎閿�鐨勪剑閲�
+  secondBrokeragePrice?: number | string // 浜岀骇鍒嗛攢鐨勪剑閲�
+  salesCount?: number // 鍟嗗搧閿�閲�
+}
+
+export interface GiveCouponTemplate {
+  id?: number
+  name?: string // 浼樻儬鍒稿悕绉�
+}
+
+export interface Spu {
+  id?: number
+  name?: string // 鍟嗗搧鍚嶇О
+  categoryId?: number // 鍟嗗搧鍒嗙被
+  keyword?: string // 鍏抽敭瀛�
+  unit?: number | undefined // 鍗曚綅
+  picUrl?: string // 鍟嗗搧灏侀潰鍥�
+  sliderPicUrls?: string[] // 鍟嗗搧杞挱鍥�
+  introduction?: string // 鍟嗗搧绠�浠�
+  deliveryTypes?: number[] // 閰嶉�佹柟寮�
+  deliveryTemplateId?: number | undefined // 杩愯垂妯$増
+  brandId?: number // 鍟嗗搧鍝佺墝缂栧彿
+  specType?: boolean // 鍟嗗搧瑙勬牸
+  subCommissionType?: boolean // 鍒嗛攢绫诲瀷
+  skus?: Sku[] // sku鏁扮粍
+  description?: string // 鍟嗗搧璇︽儏
+  sort?: number // 鍟嗗搧鎺掑簭
+  giveIntegral?: number // 璧犻�佺Н鍒�
+  virtualSalesCount?: number // 铏氭嫙閿�閲�
+  price?: number // 鍟嗗搧浠锋牸
+  combinationPrice?: number // 鍟嗗搧鎷煎洟浠锋牸
+  seckillPrice?: number // 鍟嗗搧绉掓潃浠锋牸
+  salesCount?: number // 鍟嗗搧閿�閲�
+  marketPrice?: number // 甯傚満浠�
+  costPrice?: number // 鎴愭湰浠�
+  stock?: number // 鍟嗗搧搴撳瓨
+  createTime?: Date // 鍟嗗搧鍒涘缓鏃堕棿
+  status?: number // 鍟嗗搧鐘舵��
+}
+
+// 鑾峰緱 Spu 鍒楄〃
+export const getSpuPage = (params: PageParam) => {
+  return request.get({ url: '/product/spu/page', params })
+}
+
+// 鑾峰緱 Spu 鍒楄〃 tabsCount
+export const getTabsCount = () => {
+  return request.get({ url: '/product/spu/get-count' })
+}
+
+// 鍒涘缓鍟嗗搧 Spu
+export const createSpu = (data: Spu) => {
+  return request.post({ url: '/product/spu/create', data })
+}
+
+// 鏇存柊鍟嗗搧 Spu
+export const updateSpu = (data: Spu) => {
+  return request.put({ url: '/product/spu/update', data })
+}
+
+// 鏇存柊鍟嗗搧 Spu status
+export const updateStatus = (data: { id: number; status: number }) => {
+  return request.put({ url: '/product/spu/update-status', data })
+}
+
+// 鑾峰緱鍟嗗搧 Spu
+export const getSpu = (id: number) => {
+  return request.get({ url: `/product/spu/get-detail?id=${id}` })
+}
+
+// 鑾峰緱鍟嗗搧 Spu 璇︽儏鍒楄〃
+export const getSpuDetailList = (ids: number[]) => {
+  return request.get({ url: `/product/spu/list?spuIds=${ids}` })
+}
+
+// 鍒犻櫎鍟嗗搧 Spu
+export const deleteSpu = (id: number) => {
+  return request.delete({ url: `/product/spu/delete?id=${id}` })
+}
+
+// 瀵煎嚭鍟嗗搧 Spu Excel
+export const exportSpu = async (params: any) => {
+  return await request.download({ url: '/product/spu/export-excel', params })
+}
+
+// 鑾峰緱鍟嗗搧 SPU 绮剧畝鍒楄〃
+export const getSpuSimpleList = async () => {
+  return request.get({ url: '/product/spu/list-all-simple' })
+}

--
Gitblit v1.8.0