Exemplo n.º 1
0
    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
Exemplo n.º 2
0
    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
Exemplo n.º 3
0
 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
Exemplo n.º 4
0
def serialize_receipt(receipt: AttributeDict) -> dict:
    return {k: serialize_hexbytes(v) for k, v in receipt.items()}