From 7c9714610dc002236ed2393a2db0e102c03cac15 Mon Sep 17 00:00:00 2001 From: gxwebsoft Date: Wed, 1 May 2024 16:56:52 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B4=E7=90=86=E7=B3=BB=E7=BB=9F=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E5=8F=8A=E6=9D=83=E9=99=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/system/order/index.ts | 143 ++++++++++++++++++++++++++++ src/api/system/order/model/index.ts | 84 ++++++++++++++++ src/router/routes.ts | 35 +++---- 3 files changed, 242 insertions(+), 20 deletions(-) create mode 100644 src/api/system/order/index.ts create mode 100644 src/api/system/order/model/index.ts diff --git a/src/api/system/order/index.ts b/src/api/system/order/index.ts new file mode 100644 index 0000000..de06b64 --- /dev/null +++ b/src/api/system/order/index.ts @@ -0,0 +1,143 @@ +import request from '@/utils/request'; +import type { ApiResult, PageResult } from '@/api'; +import type { Order, OrderParam } from './model'; +import { SERVER_API_URL } from '@/config/setting'; + +/** + * 分页查询订单 + */ +export async function pageOrder(params: OrderParam) { + const res = await request.get>>( + SERVER_API_URL + '/system/order/page', + { + params + } + ); + if (res.data.code === 0) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 查询订单列表 + */ +export async function listOrder(params?: OrderParam) { + const res = await request.get>( + SERVER_API_URL + '/system/order', + { + params + } + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 添加订单 + */ +export async function addOrder(data: Order) { + const res = await request.post>( + SERVER_API_URL + '/system/order', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 修改订单 + */ +export async function updateOrder(data: Order) { + const res = await request.put>( + SERVER_API_URL + '/system/order', + data + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 删除订单 + */ +export async function removeOrder(id?: number) { + const res = await request.delete>( + SERVER_API_URL + '/system/order/' + id + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 批量删除订单 + */ +export async function removeBatchOrder(data: (number | undefined)[]) { + const res = await request.delete>( + SERVER_API_URL + '/system/order/batch', + { + data + } + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 修改用户状态 + */ +export async function updateOrderStatus(orderId?: number, status?: number) { + const res = await request.put>( + SERVER_API_URL + '/system/order/status', + { + orderId, + status + } + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 根据id查询订单 + */ +export async function getOrder(id: number) { + const res = await request.get>( + SERVER_API_URL + '/system/order/' + id + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + +/** + * 检查IP是否存在 + */ +export async function checkExistence( + field: string, + value: string, + id?: number +) { + const res = await request.get>( + SERVER_API_URL + '/system/order/existence', + { + params: { field, value, id } + } + ); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/src/api/system/order/model/index.ts b/src/api/system/order/model/index.ts new file mode 100644 index 0000000..21b1342 --- /dev/null +++ b/src/api/system/order/model/index.ts @@ -0,0 +1,84 @@ +import type { PageParam } from '@/api'; + +/** + * 订单 + */ +export interface Order { + // ID + orderId?: number; + // 订单号 + orderNo?: string; + // 类型 + type?: number; + // 订单金额 + money?: string; + // 实际付款金额(包含运费) + payPrice?: string; + // 套餐ID + planId?: number; + // 卡ID + priceId?: number; + // 获得的会员等级 + gradeId?: number; + // 卡名称 + priceName?: string; + // 用户ID + userId?: number; + // 持有者ID + memberId?: number; + // 真实姓名 + realName?: string; + // 联系电话 + phone?: string; + // 付款时间 + payTime?: string; + // 支付流水号 + transactionId?: string; + // 付款状态(10未付款 20已付款) + payStatus?: number; + // 到期时间 + expirationTime?: string; + // 所在省份 + province?: string; + // 所在城市 + city?: string; + // 所在辖区 + region?: string; + // 所在地区 + area?: string; + // 街道地址 + address?: string; + // 退款凭证 + refundImage?: string; + // 退款理由 + refundContent?: string; + // 订单是否已结算(0未结算 1已结算) + isSettled?: number; + // 排序(数字越小越靠前) + sortNumber?: number; + // 备注 + comments?: string; + // 状态, 0正常, 1冻结 + status?: number; + // 是否删除, 0否, 1是 + deleted?: number; + companyId?: number; + companyName?: string; + // 租户id + tenantId?: number; + tenantName?: string; + // 创建时间 + createTime?: string; + // 修改时间 + updateTime?: string; +} + +/** + * 订单搜索条件 + */ +export interface OrderParam extends PageParam { + orderId?: number; + keywords?: string; + // 商户编号 + merchantCode?: string; +} diff --git a/src/router/routes.ts b/src/router/routes.ts index f7c49f7..fcb630e 100644 --- a/src/router/routes.ts +++ b/src/router/routes.ts @@ -15,26 +15,21 @@ export const routes = [ component: () => import('@/views/passport/login/index.vue'), meta: { title: '登录' } }, - { - path: '/register', - component: () => import('@/views/passport/register/step/index.vue'), - meta: { title: '免费注册' } - }, - { - path: '/forget', - component: () => import('@/views/passport/forget/index.vue'), - meta: { title: '忘记密码' } - }, - { - path: '/wx-work-login', - component: () => import('@/views/passport/wx-work/index.vue'), - meta: { title: '企业微信登录' } - }, - { - path: '/token-login', - component: () => import('@/views/passport/token-login/index.vue'), - meta: { title: '快捷登录' } - }, + // { + // path: '/forget', + // component: () => import('@/views/passport/forget/index.vue'), + // meta: { title: '忘记密码' } + // }, + // { + // path: '/wx-work-login', + // component: () => import('@/views/passport/wx-work/index.vue'), + // meta: { title: '企业微信登录' } + // }, + // { + // path: '/token-login', + // component: () => import('@/views/passport/token-login/index.vue'), + // meta: { title: '快捷登录' } + // }, { path: '/cms/category/:id', component: () => import('@/views/cms/category/preview/index.vue'),