def get_user_orders(self, address, datatoken=None, service_id=None): dt = DataToken(datatoken) _orders = [] for log in dt.get_start_order_logs( self._web3, address, from_all_tokens=not bool(datatoken)): a = dict(log.args.items()) a["amount"] = from_base_18(int(log.args.amount)) a["marketFee"] = from_base_18(int(log.args.marketFee)) a = AttributeDict(a.items()) # 'datatoken', 'amount', 'timestamp', 'transactionId', 'did', 'payer', 'consumer', 'serviceId', 'serviceType' order = Order( log.address, a.amount, a.timestamp, log.transactionHash, f"did:op:{remove_0x_prefix(log.address)}", a.payer, a.consumer, a.serviceId, None, ) if service_id is None or order.serviceId == service_id: _orders.append(order) return _orders
def get_user_orders( self, address: str, datatoken: Optional[str] = None, service_id: Optional[int] = None, ) -> List[Order]: """ :return: List of orders `[Order]` """ dt = DataToken(self.web3, datatoken) _orders = [] for log in dt.get_start_order_logs( address, from_all_tokens=not bool(datatoken) ): a = dict(log.args.items()) a["amount"] = int(log.args.amount) a["marketFee"] = int(log.args.marketFee) a = AttributeDict(a.items()) # 'datatoken', 'amount', 'timestamp', 'transactionId', 'did', 'payer', 'consumer', 'serviceId', 'serviceType' order = Order( log.address, a.amount, a.timestamp, log.transactionHash, f"did:op:{remove_0x_prefix(log.address)}", a.payer, a.consumer, a.serviceId, None, ) if service_id is None or order.serviceId == service_id: _orders.append(order) return _orders
def to_dict(cls, attr_dict: AttributeDict) -> JSONLike: """Simplify to dict.""" if not isinstance(attr_dict, AttributeDict): raise ValueError("No AttributeDict provided.") # pragma: nocover result = { cls._valid_key(key): cls._remove_hexbytes(value) for key, value in attr_dict.items() } return result
def serialize_receipt(receipt: AttributeDict) -> dict: return {k: serialize_hexbytes(v) for k, v in receipt.items()}