(self, item: dict, currency: Currency = None)
| 7151 | return self.parse_ledger(data, currency, since, limit) |
| 7152 | |
| 7153 | def parse_ledger_entry(self, item: dict, currency: Currency = None) -> LedgerEntry: |
| 7154 | # |
| 7155 | # spot |
| 7156 | # |
| 7157 | # { |
| 7158 | # "billId": "1111506298997215233", |
| 7159 | # "coin": "USDT", |
| 7160 | # "groupType": "transfer", |
| 7161 | # "businessType": "transfer_out", |
| 7162 | # "size": "-11.64958799", |
| 7163 | # "balance": "0.00000000", |
| 7164 | # "fees": "0.00000000", |
| 7165 | # "cTime": "1700729673028" |
| 7166 | # } |
| 7167 | # |
| 7168 | # swap and future |
| 7169 | # |
| 7170 | # { |
| 7171 | # "billId": "1111499428100472833", |
| 7172 | # "symbol": "", |
| 7173 | # "amount": "-11.64958799", |
| 7174 | # "fee": "0", |
| 7175 | # "feeByCoupon": "", |
| 7176 | # "businessType": "trans_to_exchange", |
| 7177 | # "coin": "USDT", |
| 7178 | # "cTime": "1700728034996" |
| 7179 | # } |
| 7180 | # |
| 7181 | currencyId = self.safe_string(item, 'coin') |
| 7182 | code = self.safe_currency_code(currencyId, currency) |
| 7183 | currency = self.safe_currency(currencyId, currency) |
| 7184 | timestamp = self.safe_integer(item, 'cTime') |
| 7185 | after = self.safe_number(item, 'balance') |
| 7186 | fee = self.safe_number_2(item, 'fees', 'fee') |
| 7187 | amountRaw = self.safe_string_2(item, 'size', 'amount') |
| 7188 | amount = self.parse_number(Precise.string_abs(amountRaw)) |
| 7189 | direction = 'in' |
| 7190 | if amountRaw.find('-') >= 0: |
| 7191 | direction = 'out' |
| 7192 | return self.safe_ledger_entry({ |
| 7193 | 'info': item, |
| 7194 | 'id': self.safe_string(item, 'billId'), |
| 7195 | 'timestamp': timestamp, |
| 7196 | 'datetime': self.iso8601(timestamp), |
| 7197 | 'direction': direction, |
| 7198 | 'account': None, |
| 7199 | 'referenceId': None, |
| 7200 | 'referenceAccount': None, |
| 7201 | 'type': self.parse_ledger_type(self.safe_string(item, 'businessType')), |
| 7202 | 'currency': code, |
| 7203 | 'amount': amount, |
| 7204 | 'before': None, |
| 7205 | 'after': after, |
| 7206 | 'status': None, |
| 7207 | 'fee': { |
| 7208 | 'currency': code, |
| 7209 | 'cost': fee, |
| 7210 | }, |
nothing calls this directly
no test coverage detected