/// 交易订单模型 class OrderTrade { final int id; final String orderNo; final int userId; final String coinCode; final int direction; // 1=买入, 2=卖出 final String price; final String quantity; final String amount; final int status; // 1=待处理, 2=已完成, 3=已取消 final DateTime? createTime; final DateTime? updateTime; OrderTrade({ required this.id, required this.orderNo, required this.userId, required this.coinCode, required this.direction, required this.price, required this.quantity, required this.amount, required this.status, this.createTime, this.updateTime, }); factory OrderTrade.fromJson(Map json) { return OrderTrade( id: json['id'] as int? ?? 0, orderNo: json['orderNo'] as String? ?? '', userId: json['userId'] as int? ?? 0, coinCode: json['coinCode'] as String? ?? '', direction: json['direction'] as int? ?? 1, price: json['price']?.toString() ?? '0.00', quantity: json['quantity']?.toString() ?? '0', amount: json['amount']?.toString() ?? '0.00', status: json['status'] as int? ?? 1, createTime: json['createTime'] != null ? DateTime.tryParse(json['createTime']) : null, updateTime: json['updateTime'] != null ? DateTime.tryParse(json['updateTime']) : null, ); } /// 方向文字 String get directionText => direction == 1 ? '买入' : '卖出'; /// 状态文字 String get statusText { switch (status) { case 1: return '待处理'; case 2: return '已完成'; case 3: return '已取消'; default: return '未知'; } } /// 是否为买入 bool get isBuy => direction == 1; } /// 充提订单模型 class OrderFund { final int id; final String orderNo; final int userId; final int orderType; // 1=充值, 2=提现 final String amount; final int status; // 1=待审核, 2=已通过, 3=已拒绝, 4=已取消 final String remark; final String? auditRemark; final DateTime? createTime; final DateTime? auditTime; OrderFund({ required this.id, required this.orderNo, required this.userId, required this.orderType, required this.amount, required this.status, required this.remark, this.auditRemark, this.createTime, this.auditTime, }); factory OrderFund.fromJson(Map json) { return OrderFund( id: json['id'] as int? ?? 0, orderNo: json['orderNo'] as String? ?? '', userId: json['userId'] as int? ?? 0, orderType: json['orderType'] as int? ?? 1, amount: json['amount']?.toString() ?? '0.00', status: json['status'] as int? ?? 1, remark: json['remark']?.toString() ?? '', auditRemark: json['auditRemark']?.toString(), createTime: json['createTime'] != null ? DateTime.tryParse(json['createTime']) : null, auditTime: json['auditTime'] != null ? DateTime.tryParse(json['auditTime']) : null, ); } /// 订单类型文字 String get orderTypeText => orderType == 1 ? '充值' : '提现'; /// 状态文字 String get statusText { switch (status) { case 1: return '待审核'; case 2: return '已通过'; case 3: return '已拒绝'; case 4: return '已取消'; default: return '未知'; } } /// 是否为充值 bool get isDeposit => orderType == 1; /// 是否可取消 bool get canCancel => status == 1; }