import 'package:guru_app/financial/asset/assets_model.dart'; import 'package:guru_app/financial/data/db/order_database.dart'; import 'package:guru_app/financial/manifest/manifest.dart'; import 'package:guru_app/financial/product/product_model.dart'; import 'package:guru_utils/datetime/datetime_utils.dart'; import 'package:guru_utils/id/id_utils.dart'; /// Created by Haoyi on 2023/2/13 class RewardProduct implements Product { @override final ProductId productId; @override final Manifest manifest; String get sku => productId.sku; RewardProduct(this.productId, this.manifest); bool isConsumable() { return productId.isConsumable; } @override String toString() { return 'IapProduct{productId: $productId}'; } @override OrderEntity createOrder() { return OrderEntity( orderId: IdUtils.uuidV4(), sku: productId.sku, state: TransactionState.success, attr: productId.attr, method: TransactionMethod.reward.index, currency: TransactionCurrency.reward, cost: 0, category: manifest.category, timestamp: DateTimeUtils.currentTimeInMillis(), manifest: manifest); } }