Files
chazhi/src/utils/order.ts
2025-12-28 13:52:22 +08:00

379 lines
12 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// 预约服务分类
export enum ReserveServiceCategory {
ReserveRoom = 'ReserveRoom', // 预约茶室
GroupBuying = 'GroupBuying', // 团购
}
/** 售后服务分类 **/
// 个人原因
enum PersonalReasonEnum {
OverBought = 1, // 买多了/买错了
NoLongerNeeded = 2 // 计划有变,暂时不需要的
}
// 商家原因
enum MerchantReasonEnum {
CannotContact = 3, // 电话联系不上商家
NotServing = 4, // 商家营业但不接待
Renovating = 5 // 商家停止装修
}
// 个人原因映射
export const PersonalReasonMap: { label: string, value: PersonalReasonEnum }[] = [
{ label: '买多了/买错了', value: PersonalReasonEnum.OverBought },
{ label: '计划有变,暂时不需要的', value: PersonalReasonEnum.NoLongerNeeded }
]
// 商家原因映射
export const MerchantReasonMap: { label: string, value: MerchantReasonEnum }[] = [
{ label: '电话联系不上商家', value: MerchantReasonEnum.CannotContact },
{ label: '商家营业但不接待', value: MerchantReasonEnum.NotServing },
{ label: '商家停止装修', value: MerchantReasonEnum.Renovating }
]
// 售后原因映射(用于提交时的参数转换)
export const ReasonMap: Record<number, string> = {
[PersonalReasonEnum.OverBought]: '买多了/买错了',
[PersonalReasonEnum.NoLongerNeeded]: '计划有变,暂时不需要的',
[MerchantReasonEnum.CannotContact]: '已退款',
[MerchantReasonEnum.NotServing]: '申请售后',
[MerchantReasonEnum.Renovating]: '申请售后中'
}
/** 结束 **/
// 订单来源
export enum OrderSource {
Combo = 'combo', // TODO 团购套餐用于替代下面的Direct和Franchise
DouYin = 'douyin', // 抖音团购
TeaRoom = 'teaRoom', // 茶室
TeaSpecialist = 'teaSpecialist' // 茶艺师
}
// 订单来源对应名称
export const OrderSourceText: Record<OrderSource, string> = {
[OrderSource.Combo]: 'combo',
[OrderSource.DouYin]: '抖音',
[OrderSource.TeaRoom]: '茶室',
[OrderSource.TeaSpecialist]: '茶艺师',
}
// 订单状态
export enum OrderStatus {
Consuming = 'consuming', // 消费中(服务中)
Reserved = 'reserved', // 预约单(已预约)
Serving = 'serving', // 服务中(茶艺师订单独有的)
Pending = 'pending', // 待付款
Confirm = 'confirm', // 待确认
Finished = 'finished', // 已完结
Cancelled = 'cancelled', // 已取消
ToUse = 'toUse', // 待使用
Used = 'used', // 已使用(交易完成)
Refunded = 'refunded', // 已退款
AfterSaleApply = 'afterSaleApply', // 申请售后
AfterSaleProcessing = 'afterSaleProcessing', // 申请售后中
}
// 订单状态对应名称
export const OrderStatusText: Record<OrderStatus, string> = {
[OrderStatus.Consuming]: '消费中',
[OrderStatus.Reserved]: '预约单',
[OrderStatus.Serving]: '服务中',
[OrderStatus.Pending]: '待付款',
[OrderStatus.Confirm]: '待确认',
[OrderStatus.Finished]: '已完结',
[OrderStatus.Cancelled]: '已取消',
[OrderStatus.ToUse]: '待使用',
[OrderStatus.Used]: '已使用',
[OrderStatus.Refunded]: '已退款',
[OrderStatus.AfterSaleApply]: '申请售后',
[OrderStatus.AfterSaleProcessing]: '申请售后中'
}
// 对应tabbar显示的标题
export const OrderStatusTitle: Record<OrderSource, Record<OrderStatus, string>> = {
[OrderSource.TeaRoom]: {
[OrderStatus.Consuming]: '消费中',
[OrderStatus.Reserved]: '预约单',
[OrderStatus.Serving]: '服务中',
[OrderStatus.Pending]: '等待付款',
[OrderStatus.Confirm]: '待确认',
[OrderStatus.Finished]: '交易完成',
[OrderStatus.Cancelled]: '订单取消',
[OrderStatus.ToUse]: '待使用',
[OrderStatus.Used]: '交易完成',
[OrderStatus.Refunded]: '售后完成',
[OrderStatus.AfterSaleApply]: '申请售后',
[OrderStatus.AfterSaleProcessing]: '申请售后中'
},
[OrderSource.TeaSpecialist]: {
[OrderStatus.Consuming]: '消费中',
[OrderStatus.Reserved]: '已预约',
[OrderStatus.Serving]: '服务中',
[OrderStatus.Pending]: '待付款',
[OrderStatus.Confirm]: '订单待确认',
[OrderStatus.Finished]: '已完结',
[OrderStatus.Cancelled]: '订单取消',
[OrderStatus.ToUse]: '待使用',
[OrderStatus.Used]: '交易完成',
[OrderStatus.Refunded]: '售后完成',
[OrderStatus.AfterSaleApply]: '申请售后',
[OrderStatus.AfterSaleProcessing]: '申请售后中'
},
[OrderSource.Combo]: {
[OrderStatus.Consuming]: '消费中',
[OrderStatus.Reserved]: '预约单',
[OrderStatus.Serving]: '服务中',
[OrderStatus.Pending]: '待付款',
[OrderStatus.Confirm]: '待确认',
[OrderStatus.Finished]: '已完结',
[OrderStatus.Cancelled]: '已取消',
[OrderStatus.ToUse]: '待使用',
[OrderStatus.Used]: '交易完成',
[OrderStatus.Refunded]: '售后完成',
[OrderStatus.AfterSaleApply]: '申请售后',
[OrderStatus.AfterSaleProcessing]: '申请售后中'
},
[OrderSource.DouYin]: {
[OrderStatus.Consuming]: '消费中',
[OrderStatus.Reserved]: '预约单',
[OrderStatus.Serving]: '服务中',
[OrderStatus.Pending]: '待付款',
[OrderStatus.Confirm]: '待确认',
[OrderStatus.Finished]: '已完结',
[OrderStatus.Cancelled]: '已取消',
[OrderStatus.ToUse]: '待使用',
[OrderStatus.Used]: '已使用', // DouYin专属
[OrderStatus.Refunded]: '售后完成',
[OrderStatus.AfterSaleApply]: '申请售后',
[OrderStatus.AfterSaleProcessing]: '申请售后中'
}
}
// 茶艺师订单状态数字(根据UI图还缺已退款、待接单、售后中、售后完成)
export enum TeaSpecialistOrderStatus {
Pending = 0, // 待付款(未支付)
Pay = 1, // 预约单、已预约(已支付)
Cancelled = 2, // 已取消(订单取消)
Confirm = 3, // 待确认(已接单)
Serving = 4, // 服务中
Finished = 5, // 已完成
}
// 茶艺师订单状态文本
export enum TeaSpecialistOrderStatusText {
All = 'all', // 全部
Pending = 'pending', // 待付款
Pay = 'pay', // 已支付(预约单、已预约)
Cancelled = 'cancelled', // 已取消
Confirm = 'confirm', // 待确认
Serving = 'serving', // 服务中
Finished = 'finished', // 已完成
}
// 状态内容映射
export const TeaSpecialistOrderStatusTextValue: Record<TeaSpecialistOrderStatus, any> = {
[TeaSpecialistOrderStatus.Pending]: {
title: '等待付款'
},
[TeaSpecialistOrderStatus.Pay]: {
title: '已预约'
},
[TeaSpecialistOrderStatus.Cancelled]: {
title: '订单取消'
},
[TeaSpecialistOrderStatus.Confirm]: {
title: '订单待确认'
},
[TeaSpecialistOrderStatus.Serving]: {
title: '服务中'
},
[TeaSpecialistOrderStatus.Finished]: {
title: '交易完成'
},
}
// 茶艺师订单状态文本对应值
export const TeaSpecialistOrderStatusValue: Record<TeaSpecialistOrderStatusText, string | number> = {
[TeaSpecialistOrderStatusText.All]: '',
[TeaSpecialistOrderStatusText.Pending]: 0,
[TeaSpecialistOrderStatusText.Pay]: 1,
[TeaSpecialistOrderStatusText.Cancelled]: 2,
[TeaSpecialistOrderStatusText.Confirm]: 3,
[TeaSpecialistOrderStatusText.Serving]: 4,
[TeaSpecialistOrderStatusText.Finished]: 5,
}
// 下单类型
export const OrderType = {
TeaRoomOrder: 'teaRoomOrder',
TeaSpecialist: 'teaSpecialist',
}
// 包间订单状态数字(根据UI图还缺已退款、待接单、售后中、售后完成)
export enum TeaRoomOrderStatus {
Pending = 0, // 待付款
Pay = 1, // 已支付(预约单)
Consumption = 2, // 消费中
Finished = 3, // 完成
Cancelled = 4, // 订单取消
Refunded = 5, // 已退款
}
// 包间订单状态文本
export enum TeaRoomOrderStatusText {
All = 'all', // 全部
Pending = 'pending', // 待付款
Pay = 'pay', // 已支付(预约单)
Consumption = 'consumption', // 消费中
Finished = 'finished', // 已完成
Cancelled = 'cancelled', // 已取消
Refunded = 'refunded', // 已取消
}
// 状态内容映射
export const TeaRoomOrderStatusTextValue: Record<TeaRoomOrderStatus, any> = {
[TeaRoomOrderStatus.Pending]: {
title: '等待付款'
},
[TeaRoomOrderStatus.Pay]: {
title: '已预约'
},
[TeaRoomOrderStatus.Consumption]: {
title: '消费中'
},
[TeaRoomOrderStatus.Finished]: {
title: '交易完成'
},
[TeaRoomOrderStatus.Cancelled]: {
title: '订单取消'
},
[TeaRoomOrderStatus.Refunded]: {
title: '已退款'
},
}
// 包间订单状态文本对应值
export const TeaRoomOrderStatusValue: Record<TeaRoomOrderStatusText, string | number> = {
[TeaRoomOrderStatusText.All]: '',
[TeaRoomOrderStatusText.Pending]: 0,
[TeaRoomOrderStatusText.Pay]: 1,
[TeaRoomOrderStatusText.Consumption]: 2,
[TeaRoomOrderStatusText.Finished]: 3,
[TeaRoomOrderStatusText.Cancelled]: 4,
[TeaRoomOrderStatusText.Refunded]: 5,
}
// 包间订单套餐状态数字(根据UI图还缺已退款、待接单、售后中、售后完成)
export enum TeaRoomPackageOrderStatus {
Pending = 0, // 待付款
ToUse = 1, // 待使用
Used = 2, // 已使用
Refunded = 3, // 已退款
}
// 套餐订单状态文本
export enum TeaRoomPackageOrderStatusText {
All = 'all', // 全部
Pending = 'pending', // 待付款
ToUse = 'toUse', // 待使用
Used = 'used', // 已使用
Refunded = 'refunded', // 已退款
}
// 套餐订单状态文本对应值
export const TeaRoomPackageOrderStatusValue: Record<TeaRoomPackageOrderStatusText, string | number> = {
[TeaRoomPackageOrderStatusText.All]: '',
[TeaRoomPackageOrderStatusText.Pending]: 0,
[TeaRoomPackageOrderStatusText.ToUse]: 1,
[TeaRoomPackageOrderStatusText.Used]: 2,
[TeaRoomPackageOrderStatusText.Refunded]: 3,
}
// 套餐订单状态内容映射
export const TeaRoomPackageOrderStatusTextValue: Record<TeaRoomPackageOrderStatus, any> = {
[TeaRoomPackageOrderStatus.Pending]: {
title: '待付款'
},
[TeaRoomPackageOrderStatus.ToUse]: {
title: '待使用'
},
[TeaRoomPackageOrderStatus.Used]: {
title: '交易完成'
},
[TeaRoomPackageOrderStatus.Refunded]: {
title: '售后完成'
},
}
// 本地-团购套餐订单状态
export enum GroupComboOrderStatus {
ToUse = 0, // 待使用
Used = 1, // 已使用
Refunded = 3, // 已退款
Refunding = 4, // 退款中
}
// 本地-团购套餐订单状态
export enum GroupComboOrderStatusText {
All = 'all', // 全部
ToUse = 'toUse', // 待使用
Used = 'used', // 已使用
Refunded = 'refunded', // 已退款
Refunding = 'refunding', // 退款中
}
export const GroupComboOrderStatusValue: Record<GroupComboOrderStatusText, string | number> = {
[GroupComboOrderStatusText.All]: '',
[GroupComboOrderStatusText.ToUse]: 0,
[GroupComboOrderStatusText.Used]: 1,
[GroupComboOrderStatusText.Refunded]: 3,
[GroupComboOrderStatusText.Refunding]: 4,
}
export const GroupComboOrderStatusTextValue: Record<GroupComboOrderStatus, any> = {
[GroupComboOrderStatus.ToUse]: {
title: '待使用'
},
[GroupComboOrderStatus.Used]: {
title: '交易完成'
},
[GroupComboOrderStatus.Refunded]: {
title: '退款成功'
},
[GroupComboOrderStatus.Refunding]: {
title: '退款中'
},
}
// 抖音状态
export enum DouYinOrderStatus {
ToUse = 0, // 待使用
Used = 1, // 已使用
}
// 抖音订单状态文本
export enum DouYinOrderStatusText {
All = 'all', // 全部
ToUse = 'toUse', // 待使用
Used = 'used', // 已使用
}
export const DouYinOrderStatusValue: Record<DouYinOrderStatusText, string | number> = {
[DouYinOrderStatusText.All]: '',
[DouYinOrderStatusText.ToUse]: 0,
[DouYinOrderStatusText.Used]: 1,
}
export const DouYinOrderStatusTextValue: Record<DouYinOrderStatus, any> = {
[DouYinOrderStatus.ToUse]: {
title: '待使用'
},
[DouYinOrderStatus.Used]: {
title: '交易完成'
},
}