Files
taimed-international-app/types/order.d.ts

141 lines
3.2 KiB
TypeScript

/**
* 商品信息
**/
export interface IGoods {
productId: number
productName: string
productImages?: string
price: number
vipPrice?: number | null
activityPrice?: number | null
isVipPrice?: number // 是否有VIP优惠 0-否 1-是
productAmount?: number // 购买数量
delFlag?: number // 删除标记 -1-已下架
}
/**
* 获取优惠价格参数
**/
export interface IGoodsDiscountParams {
productId: number
quantity: number
}
/**
* 订单接口
*/
export interface IOrder {
id: number
orderSn: string
orderMoney: number
paymentMethod: string // '4'-虚拟货币, '5'-真实货币
createTime: string
[key: string]: any
}
/**
* 课程订单商品信息
*/
export interface IOrderGoods {
productId: number
productName: string
productImages?: string
price: number
vipPrice?: number | null
activityPrice?: number | null
isVipPrice?: number // 是否有VIP优惠 0-否 1-是
productAmount?: number // 购买数量
goodsType: string // 商品类型 "05" for course
}
/**
* 优惠券实体信息
*/
export interface ICouponEntity {
id: number
couponName: string
couponAmount: number
useLevel: number // 满多少可用
couponRange: number // 0-全场 1-指定课程 2-指定品类
remark?: string
}
/**
* 优惠券信息
*/
export interface ICoupon {
id: number
couponId: number
canUse: number // 0-不可用 1-可用
canUseReason?: string
effectType: number // 0-永久有效
endTime?: string
couponEntity: ICouponEntity
}
/**
* 课程订单创建参数
*/
export interface ICourseOrderCreateParams {
buyType: number // 0-商品页直接下单 1-购物车结算
userId: number
paymentMethod: number // 4-天医币
orderMoney: number // 订单金额
realMoney: number // 实收金额
jfDeduction: number // 积分抵扣
couponId?: number // 优惠券ID
couponName?: string // 优惠券名称
vipDiscountAmount: number // VIP折扣金额
districtMoney: number // 地区优惠金额
remark?: string // 备注
productList: Array<{
productId: number
quantity: number
}>
orderType: string // "order"
addressId: number // 0 for course products
appName: string // "wumen"
come: number // 2
}
/**
* 价格明细项
*/
export interface IPriceBreakdownItem {
type: number // 1-商品总价 2-运费 3-优惠券 4-积分 5-活动立减 6-VIP立减
text: string
imgUrl?: string
icon?: string
}
/**
* 订单状态
*/
export interface IOrderState {
goodsList: IOrderGoods[]
totalPrice: number
vipPrice: number
districtAmount: number
actualPayment: number
jfNumber: number
jfNumberMax: number
jfNumberShow: string
couponList: ICoupon[]
selectedCoupon: ICoupon | null
showCouponPopup: boolean
remark: string
showRemarkPopup: boolean
payType: number
loading: boolean
submitting: boolean
buyingFlag: boolean
}
/**
* 支付方式选项接口
*/
export interface IPaymentOption {
value: '4' | '5'
name: string
}