diff --git a/src/common/apis/manage/goods.ts b/src/common/apis/manage/goods.ts new file mode 100644 index 0000000..2bd908a --- /dev/null +++ b/src/common/apis/manage/goods.ts @@ -0,0 +1,96 @@ +import { request } from "@/http/axios" +import { PageDTO, ResponseData, BasePageQuery } from "../type" + +export interface ShopGoodsDTO { + goodsId?: number + goodsName?: string + categoryId?: number + categoryName?: string + price?: number + stock?: number + status?: number + autoApproval?: number + coverImg?: string + creatorId?: number + creatorName?: string + createTime?: string + remark?: string + cabinetName?: string + cellNo?: number + cellNoStr?: string + totalStock?: number + usageInstruction?: string +} + +export interface SearchShopGoodsQuery extends BasePageQuery { + goodsName?: string + categoryId?: number + status?: number + autoApproval?: number + minPrice?: number + maxPrice?: number +} + +/** 获取商品列表 */ +export function getGoodsList(query: SearchShopGoodsQuery) { + return request>>({ + url: "manage/goods/list", + method: "get", + params: query + }) +} + +/** 新增商品 */ +export function addGoods(data: { + goodsName: string + categoryId: number + price: number + stock: number + status: number + autoApproval: number + coverImg: string + goodsDetail?: string + usageInstruction?: string +}) { + return request>({ + url: "manage/goods", + method: "post", + data + }) +} + +/** 删除商品 */ +export function deleteGoods(goodsIds: number[]) { + return request>({ + url: `manage/goods/${goodsIds.join(',')}`, + method: "delete" + }) +} + +/** 修改商品 */ +export function updateGoods(goodsId: number, data: { + goodsName?: string + categoryId?: number + price?: number + stock?: number + status?: number + autoApproval?: number + coverImg?: string + goodsDetail?: string + usageInstruction?: string +}) { + return request>({ + url: `manage/goods/${goodsId}`, + method: "put", + data + }) +} + +/** 获取单个商品信息 */ +export function getGoodsInfo(goodsId: number) { + return request>({ + url: "manage/goods/getGoodsInfo", + method: "get", + params: { goodsId } + }) +} \ No newline at end of file diff --git a/src/common/apis/shop/type.ts b/src/common/apis/shop/type.ts index 219bd05..c0cd808 100644 --- a/src/common/apis/shop/type.ts +++ b/src/common/apis/shop/type.ts @@ -101,7 +101,12 @@ export interface GetOrdersByOpenIdDTO { export interface GetBalanceResponse { userid: string corpid: string + /** 剩余借呗 */ balance: number + /** 已用借呗 */ + useBalance: number + /** 借呗总额 */ + balanceLimit: number } export interface QyLoginDTO { diff --git a/src/common/apis/type.ts b/src/common/apis/type.ts new file mode 100644 index 0000000..cde7738 --- /dev/null +++ b/src/common/apis/type.ts @@ -0,0 +1,24 @@ + +export type ResponseData = { + code: number; + msg: string; + data: T; +}; + +export type PageDTO = { + total: number; + rows: Array; +}; + +export interface BasePageQuery extends BaseQuery { + pageNum?: number; + pageSize?: number; +} + +export interface BaseQuery { + beginTime?: string; + endTime?: string; + orderColumn?: string; + orderDirection?: string; + timeRangeColumn?: string; +} \ No newline at end of file diff --git a/src/pages/manage/goods/goodsList.vue b/src/pages/manage/goods/goodsList.vue new file mode 100644 index 0000000..d3dbc56 --- /dev/null +++ b/src/pages/manage/goods/goodsList.vue @@ -0,0 +1,261 @@ + + + + + \ No newline at end of file diff --git a/src/pages/me/index.vue b/src/pages/me/index.vue index 4d2f6b6..71e0fa2 100644 --- a/src/pages/me/index.vue +++ b/src/pages/me/index.vue @@ -1,16 +1,17 @@