76 lines
2.2 KiB
TypeScript
Raw Permalink Normal View History

2026-07-27 11:28:33 +08:00
const { ObjectId } = require('mongodb');
enum Status {
unpay = 'unpay', // 未支付
paid = 'paid',// 已支付
expired = 'expired', // 已过期
goodsFeeRefunded = 'goodsFeeRefunded', // 已退还浸酒费用
refunded = 'refunded', // 已退款
shipped = 'shipped', // 已发货
completed = 'completed', // 已完成
}
interface Wine {
name: string,
details: string,
quantity: number,
price: number,
totalPrice: number,
code: string
}
interface ReceiveInfo {
name: string;//收货人姓名
phone: string;//收货人电话
region: string[];//收货人地区
address: string;//收货人地址
}
interface AfterSale {
notes: string,
waybillNo: string
}
interface RefundRecord {
amount: number; //退费金额
applyTime: number; //退费申请时间
platform: 'unionPay';
reason: string; //退费原因
type: 'goodsFee' | 'shippingFee'; //退费类型
refundSerialNo: string; //退费流水号
result: 'refunding' | 'refunded' | 'refund_fail'; //退费状态
operator: string;//操作人
operatorId: string;//操作人id
}
interface MedicineWineOrder {
_id: ObjectId;
createTime: number;
storeId: string;//门店id
name: string,
patientId: string, // 患者id
pickUpType: 'store' | 'delivery';// 取货方式: 门店自取 | 快递配送
shippingNo?: string;//配送单号
orderNo: string;//订单号
orderId: string; // 关联咨询订单号
rpNo: string;//关联处方id
// rpSerialNo: string;//关联处方流水号
status: Status;
wines: Wine[],
goodsFee?: number;//浸酒费用
shippingOriginalFee?: number;//配送原价
shippingDiscount?: number;//配送优惠
shippingFee?: number;//配送费用
totalFee?: number; //总费用
receiveInfo?: ReceiveInfo;//收货人信息
tradeNo?: string;//交易号
disabled: boolean;
updateTime: number;
blhno: string;//病历号
syncHisChargeStatus: 'charged' | 'refunded';// 已同步his支付状态 charged: 已收取医保退款 refunded: 已退还医保退款
syncHisDelivery: 'charged' | 'refunded';// 已同步his物流状态 charged: 已收取运费 refunded: 已退还运费
refundRecords?: RefundRecord[];//退费记录
deliveryCancelled?: boolean;//配送已取消
afterSale?: AfterSale;//售后信息
}