fix date filtering

This commit is contained in:
ThomasV 2018-02-28 09:50:28 +01:00
parent 98f99a34a3
commit 4236adc552
2 changed files with 9 additions and 9 deletions

View file

@ -195,10 +195,10 @@ class HistoryList(MyTreeWidget, AcceptFileDragDrop):
r = self.wallet.get_full_history(domain=self.get_domain(), from_timestamp=self.start_timestamp, to_timestamp=self.end_timestamp, fx=fx) r = self.wallet.get_full_history(domain=self.get_domain(), from_timestamp=self.start_timestamp, to_timestamp=self.end_timestamp, fx=fx)
self.transactions = r['transactions'] self.transactions = r['transactions']
self.summary = r['summary'] self.summary = r['summary']
if not self.years and self.start_timestamp is None and self.end_timestamp is None: if not self.years and self.transactions:
start_date = self.summary.get('start_date') from datetime import date
end_date = self.summary.get('end_date') start_date = self.transactions[0].get('date') or date.today()
if start_date and end_date: end_date = self.transactions[-1].get('date') or date.today()
self.years = [str(i) for i in range(start_date.year, end_date.year + 1)] self.years = [str(i) for i in range(start_date.year, end_date.year + 1)]
self.period_combo.insertItems(1, self.years) self.period_combo.insertItems(1, self.years)
item = self.currentItem() item = self.currentItem()

View file

@ -990,9 +990,9 @@ class Abstract_Wallet(PrintError):
fiat_expenditures = 0 fiat_expenditures = 0
h = self.get_history(domain) h = self.get_history(domain)
for tx_hash, height, conf, timestamp, value, balance in h: for tx_hash, height, conf, timestamp, value, balance in h:
if from_timestamp and timestamp < from_timestamp: if from_timestamp and (timestamp or time.time()) < from_timestamp:
continue continue
if to_timestamp and timestamp >= to_timestamp: if to_timestamp and (timestamp or time.time()) >= to_timestamp:
continue continue
item = { item = {
'txid':tx_hash, 'txid':tx_hash,
@ -1029,7 +1029,7 @@ class Abstract_Wallet(PrintError):
income += value income += value
# fiat computations # fiat computations
if fx is not None: if fx is not None:
date = timestamp_to_datetime(time.time() if conf <= 0 else timestamp) date = timestamp_to_datetime(timestamp)
fiat_value = self.get_fiat_value(tx_hash, fx.ccy) fiat_value = self.get_fiat_value(tx_hash, fx.ccy)
fiat_default = fiat_value is None fiat_default = fiat_value is None
fiat_value = - fiat_value if fiat_value is not None else value / Decimal(COIN) * self.price_at_timestamp(tx_hash, fx.timestamp_rate) fiat_value = - fiat_value if fiat_value is not None else value / Decimal(COIN) * self.price_at_timestamp(tx_hash, fx.timestamp_rate)