From 66f79481a295157bb232548a3063e08ac03e6b36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Salgado?= Date: Sun, 21 Nov 2021 22:06:00 +0000 Subject: [PATCH 1/3] fix: add operator cancel error as cancelled tx state --- lib/cash-in/cash-in-tx.js | 2 +- lib/cash-out/cash-out-helper.js | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/cash-in/cash-in-tx.js b/lib/cash-in/cash-in-tx.js index 19363b04..f76c6fab 100644 --- a/lib/cash-in/cash-in-tx.js +++ b/lib/cash-in/cash-in-tx.js @@ -19,7 +19,7 @@ const WALLET_SCORE_THRESHOLD = 10 const TRANSACTION_STATES = ` case - when operator_completed then 'Cancelled' + when operator_completed and error = 'Operator cancel' then 'Cancelled' when error is not null then 'Error' when send_confirmed then 'Sent' when ((not send_confirmed) and (created <= now() - interval '${PENDING_INTERVAL}')) then 'Expired' diff --git a/lib/cash-out/cash-out-helper.js b/lib/cash-out/cash-out-helper.js index 2620c23c..f43bf62c 100644 --- a/lib/cash-out/cash-out-helper.js +++ b/lib/cash-out/cash-out-helper.js @@ -7,7 +7,8 @@ const BN = require('../bn') const REDEEMABLE_AGE = T.day const CASH_OUT_TRANSACTION_STATES = ` -case +case + when error = 'Operator cancel' then 'Cancelled' when error is not null then 'Error' when dispense then 'Success' when (extract(epoch from (now() - greatest(created, confirmed_at))) * 1000) >= ${REDEEMABLE_AGE} then 'Expired' From 6b9c18b9c64b01b019e2343b75811271e31ccc65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Salgado?= Date: Sun, 21 Nov 2021 22:41:38 +0000 Subject: [PATCH 2/3] fix: transaction filter deletion --- .../src/components/SearchFilter.js | 9 ++- .../src/pages/Transactions/Transactions.js | 61 +++++++++++++++---- 2 files changed, 57 insertions(+), 13 deletions(-) diff --git a/new-lamassu-admin/src/components/SearchFilter.js b/new-lamassu-admin/src/components/SearchFilter.js index fb1a9b2b..0f5abba1 100644 --- a/new-lamassu-admin/src/components/SearchFilter.js +++ b/new-lamassu-admin/src/components/SearchFilter.js @@ -14,7 +14,12 @@ import { chipStyles, styles } from './SearchFilter.styles' const useChipStyles = makeStyles(chipStyles) const useStyles = makeStyles(styles) -const SearchFilter = ({ filters, onFilterDelete, setFilters, entries }) => { +const SearchFilter = ({ + filters, + onFilterDelete, + deleteAllFilters, + entries +}) => { const chipClasses = useChipStyles() const classes = useStyles() @@ -43,7 +48,7 @@ const SearchFilter = ({ filters, onFilterDelete, setFilters, entries }) => { Icon={ReverseFilterIcon} InverseIcon={FilterIcon} className={classes.deleteButton} - onClick={() => setFilters([])}> + onClick={deleteAllFilters}> Delete filters diff --git a/new-lamassu-admin/src/pages/Transactions/Transactions.js b/new-lamassu-admin/src/pages/Transactions/Transactions.js index 460030b0..d038207e 100644 --- a/new-lamassu-admin/src/pages/Transactions/Transactions.js +++ b/new-lamassu-admin/src/pages/Transactions/Transactions.js @@ -114,6 +114,14 @@ const GET_TRANSACTIONS = gql` } ` +const getFiltersObj = filters => + R.compose( + R.mergeAll, + R.map(f => ({ + [f.type]: f.value + })) + )(filters) + const Transactions = () => { const classes = useStyles() const history = useHistory() @@ -227,12 +235,7 @@ const Transactions = () => { ] const onFilterChange = filters => { - const filtersObject = R.compose( - R.mergeAll, - R.map(f => ({ - [f.type]: f.value - })) - )(filters) + const filtersObject = getFiltersObj(filters) setFilters(filters) @@ -250,10 +253,46 @@ const Transactions = () => { refetch && refetch() } - const onFilterDelete = filter => - setFilters( - R.filter(f => !R.whereEq(R.pick(['type', 'value'], f), filter))(filters) - ) + const onFilterDelete = filter => { + const newFilters = R.filter( + f => !R.whereEq(R.pick(['type', 'value'], f), filter) + )(filters) + + setFilters(newFilters) + + const filtersObject = getFiltersObj(newFilters) + + setVariables({ + limit: NUM_LOG_RESULTS, + txClass: filtersObject.type, + machineName: filtersObject.machine, + customerName: filtersObject.customer, + fiatCode: filtersObject.fiat, + cryptoCode: filtersObject.crypto, + toAddress: filtersObject.address, + status: filtersObject.status + }) + + refetch && refetch() + } + + const deleteAllFilters = () => { + setFilters([]) + const filtersObject = getFiltersObj([]) + + setVariables({ + limit: NUM_LOG_RESULTS, + txClass: filtersObject.type, + machineName: filtersObject.machine, + customerName: filtersObject.customer, + fiatCode: filtersObject.fiat, + cryptoCode: filtersObject.crypto, + toAddress: filtersObject.address, + status: filtersObject.status + }) + + refetch && refetch() + } const filterOptions = R.path(['transactionFilters'])(filtersResponse) @@ -301,7 +340,7 @@ const Transactions = () => { entries={txList.length} filters={filters} onFilterDelete={onFilterDelete} - setFilters={setFilters} + deleteAllFilters={deleteAllFilters} /> )} Date: Tue, 23 Nov 2021 19:50:35 +0000 Subject: [PATCH 3/3] fix: simplify filter obj function --- new-lamassu-admin/src/pages/Transactions/Transactions.js | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/new-lamassu-admin/src/pages/Transactions/Transactions.js b/new-lamassu-admin/src/pages/Transactions/Transactions.js index d038207e..d69ea835 100644 --- a/new-lamassu-admin/src/pages/Transactions/Transactions.js +++ b/new-lamassu-admin/src/pages/Transactions/Transactions.js @@ -115,12 +115,7 @@ const GET_TRANSACTIONS = gql` ` const getFiltersObj = filters => - R.compose( - R.mergeAll, - R.map(f => ({ - [f.type]: f.value - })) - )(filters) + R.reduce((s, f) => ({ ...s, [f.type]: f.value }), {}, filters) const Transactions = () => { const classes = useStyles()