init: 橘视厅酒店版会员系统前端
This commit is contained in:
151
src/api/manage/daycard.ts
Normal file
151
src/api/manage/daycard.ts
Normal file
@@ -0,0 +1,151 @@
|
||||
import http from '@/utils/httpRequest'
|
||||
import type { ManageListResponse, ManageResponse, ManagePageParams } from './types'
|
||||
|
||||
// ===================== 天卡池 =====================
|
||||
|
||||
/** 天卡池实体 */
|
||||
export interface DayCardPoolItem {
|
||||
id: number
|
||||
/** 卡密(橘视厅激活码) */
|
||||
cardCode: string
|
||||
/** 第三方引用标识(橘视厅免密登录 uid) */
|
||||
thirdPartyRef: string
|
||||
/** 第三方卡号(D + 24位随机,App 用于访问内容) */
|
||||
thirdCardNo: string
|
||||
cardType: string
|
||||
partnerId: number
|
||||
/** 状态: UNUSED / RESERVED / USED */
|
||||
status: string
|
||||
/** 激活状态: PENDING / SUCCESS / FAILED */
|
||||
activateStatus: string
|
||||
activateError: string | null
|
||||
activatedAt: string | null
|
||||
orderNo: string | null
|
||||
deviceId: number | null
|
||||
importBatchId: number | null
|
||||
expireAt: string | null
|
||||
usedAt: string | null
|
||||
createdAt: string
|
||||
updatedAt: string
|
||||
}
|
||||
|
||||
/** 卡池列表参数 */
|
||||
export interface DayCardPoolListParams extends ManagePageParams {
|
||||
partnerId?: number
|
||||
status?: string
|
||||
cardCode?: string
|
||||
orderNo?: string
|
||||
}
|
||||
|
||||
/** 卡池统计 */
|
||||
export interface DayCardPoolStats {
|
||||
total: number
|
||||
available: number
|
||||
reserved: number
|
||||
used: number
|
||||
}
|
||||
|
||||
/** 导入卡密请求 */
|
||||
export interface DayCardPoolImportData {
|
||||
partnerId: number
|
||||
cardCodes: string[]
|
||||
}
|
||||
|
||||
/** 导入卡密响应 */
|
||||
export interface DayCardPoolImportResult {
|
||||
successCount: number
|
||||
totalCount: number
|
||||
}
|
||||
|
||||
/** 导入批次 */
|
||||
export interface DayCardImportBatch {
|
||||
id: number
|
||||
batchNo: string
|
||||
partnerId: number
|
||||
status: string
|
||||
totalCount: number
|
||||
successCount: number
|
||||
failCount: number
|
||||
remark: string | null
|
||||
createdAt: string
|
||||
}
|
||||
|
||||
/** 获取天卡池列表 */
|
||||
export function getDayCardPoolList (params?: DayCardPoolListParams): Promise<ManageListResponse<DayCardPoolItem>> {
|
||||
return http.get(http.adornUrl('/manage/daycard/pool/list'), { params: http.adornParams(params || {}) }).then(res => res.data)
|
||||
}
|
||||
|
||||
/** 获取卡池统计 */
|
||||
export function getDayCardPoolStats (partnerId?: number): Promise<ManageResponse<{ stats?: DayCardPoolStats }>> {
|
||||
return http.get(http.adornUrl('/manage/daycard/pool/stats'), { params: http.adornParams({ partnerId }) }).then(res => res.data)
|
||||
}
|
||||
|
||||
/** 导入卡密 */
|
||||
export function importDayCardPool (data: DayCardPoolImportData): Promise<ManageResponse<DayCardPoolImportResult>> {
|
||||
return http.post(http.adornUrl('/manage/daycard/pool/import'), http.adornData(data)).then(res => res.data)
|
||||
}
|
||||
|
||||
// ===================== 天卡订单 =====================
|
||||
|
||||
/** 天卡订单实体 */
|
||||
export interface DayCardOrderItem {
|
||||
id: number
|
||||
orderNo: string
|
||||
partnerId: number
|
||||
deviceId: number
|
||||
storeOrgId: number
|
||||
channelOrgId: number
|
||||
/** 卡号(值为 DayCardPoolEntity.cardCode) */
|
||||
cardNo: string | null
|
||||
/** 订单状态: CREATED / PAYING / PAID / PAY_FAILED / CANCELLED */
|
||||
status: string
|
||||
amount: number
|
||||
/** 支付渠道: WECHAT 等 */
|
||||
payChannel: string | null
|
||||
/** 微信支付二维码链接 */
|
||||
codeUrl: string | null
|
||||
payNo: string | null
|
||||
payAmount: number | null
|
||||
payTime: string | null
|
||||
expireTime: string | null
|
||||
cancelTime: string | null
|
||||
createdAt: string
|
||||
updatedAt: string
|
||||
/** 非表字段 */
|
||||
partnerName?: string
|
||||
deviceMac?: string
|
||||
}
|
||||
|
||||
/** 订单列表参数 */
|
||||
export interface DayCardOrderListParams extends ManagePageParams {
|
||||
partnerId?: number
|
||||
orderNo?: string
|
||||
status?: string
|
||||
startDate?: string
|
||||
endDate?: string
|
||||
}
|
||||
|
||||
/** 获取订单列表 */
|
||||
export function getDayCardOrderList (params?: DayCardOrderListParams): Promise<ManageListResponse<DayCardOrderItem>> {
|
||||
return http.get(http.adornUrl('/manage/daycard/list'), { params: http.adornParams(params || {}) }).then(res => res.data)
|
||||
}
|
||||
|
||||
/** 获取订单详情 */
|
||||
export function getDayCardOrderInfo (orderNo: string): Promise<ManageResponse<{ order?: DayCardOrderItem }>> {
|
||||
return http.get(http.adornUrl(`/manage/daycard/info/${orderNo}`), { params: http.adornParams() }).then(res => res.data)
|
||||
}
|
||||
|
||||
// ===================== 设备权益 =====================
|
||||
|
||||
/** 设备天卡权益 */
|
||||
export interface DeviceBenefits {
|
||||
hasBenefits: boolean
|
||||
thirdCardNo?: string
|
||||
cardCode?: string
|
||||
expireAt?: string
|
||||
}
|
||||
|
||||
/** 查询设备天卡权益 */
|
||||
export function getDeviceBenefits (deviceId: number): Promise<ManageResponse<DeviceBenefits>> {
|
||||
return http.get(http.adornUrl(`/manage/daycard/benefits/${deviceId}`), { params: http.adornParams() }).then(res => res.data)
|
||||
}
|
||||
Reference in New Issue
Block a user