diff --git a/packages/server/src/database/migrations/20240620111308_add_excluded_column_to_uncategorized_cashflow_transactions_table.js b/packages/server/src/database/migrations/20240620111308_add_excluded_column_to_uncategorized_cashflow_transactions_table.js index 735b817ed..f27351438 100644 --- a/packages/server/src/database/migrations/20240620111308_add_excluded_column_to_uncategorized_cashflow_transactions_table.js +++ b/packages/server/src/database/migrations/20240620111308_add_excluded_column_to_uncategorized_cashflow_transactions_table.js @@ -1,11 +1,11 @@ exports.up = function (knex) { return knex.schema.table('uncategorized_cashflow_transactions', (table) => { - table.boolean('excluded'); + table.datetime('excluded_at'); }); }; exports.down = function (knex) { return knex.schema.table('uncategorized_cashflow_transactions', (table) => { - table.dropColumn('excluded'); + table.dropColumn('excluded_at'); }); }; diff --git a/packages/server/src/models/UncategorizedCashflowTransaction.ts b/packages/server/src/models/UncategorizedCashflowTransaction.ts index f9902e347..3b6b8723b 100644 --- a/packages/server/src/models/UncategorizedCashflowTransaction.ts +++ b/packages/server/src/models/UncategorizedCashflowTransaction.ts @@ -98,14 +98,14 @@ export default class UncategorizedCashflowTransaction extends mixin( * Filters the not excluded transactions. */ notExcluded(query) { - query.whereNull('excluded'); + query.whereNull('excluded_at'); }, /** * Filters the excluded transactions. */ excluded(query) { - query.where('excluded', true) + query.whereNotNull('excluded_at') } }; }, diff --git a/packages/server/src/services/Banking/Exclude/ExcludeBankTransaction.ts b/packages/server/src/services/Banking/Exclude/ExcludeBankTransaction.ts index 39d53d6cd..7a1938199 100644 --- a/packages/server/src/services/Banking/Exclude/ExcludeBankTransaction.ts +++ b/packages/server/src/services/Banking/Exclude/ExcludeBankTransaction.ts @@ -34,7 +34,7 @@ export class ExcludeBankTransaction { await UncategorizedCashflowTransaction.query(trx) .findById(uncategorizedTransactionId) .patch({ - excluded: true, + excludedAt: new Date(), }); }); } diff --git a/packages/server/src/services/Banking/Exclude/GetExcludedBankTransactions.ts b/packages/server/src/services/Banking/Exclude/GetExcludedBankTransactions.ts index 4964a0fe8..41435f1b8 100644 --- a/packages/server/src/services/Banking/Exclude/GetExcludedBankTransactions.ts +++ b/packages/server/src/services/Banking/Exclude/GetExcludedBankTransactions.ts @@ -33,7 +33,7 @@ export class GetExcludedBankTransactionsService { const { results, pagination } = await UncategorizedCashflowTransaction.query() .onBuild((q) => { - q.where('excluded', true); + q.modify('excluded'); q.orderBy('date', 'DESC'); if (_query.accountId) { diff --git a/packages/server/src/services/Banking/Exclude/UnexcludeBankTransaction.ts b/packages/server/src/services/Banking/Exclude/UnexcludeBankTransaction.ts index e92de6c94..46148b81b 100644 --- a/packages/server/src/services/Banking/Exclude/UnexcludeBankTransaction.ts +++ b/packages/server/src/services/Banking/Exclude/UnexcludeBankTransaction.ts @@ -34,7 +34,7 @@ export class UnexcludeBankTransaction { await UncategorizedCashflowTransaction.query(trx) .findById(uncategorizedTransactionId) .patch({ - excluded: null, + excludedAt: null, }); }); } diff --git a/packages/webapp/src/containers/Banking/Rules/RuleFormDialog/RuleFormContentForm.tsx b/packages/webapp/src/containers/Banking/Rules/RuleFormDialog/RuleFormContentForm.tsx index 71412afc4..1fc94f6d1 100644 --- a/packages/webapp/src/containers/Banking/Rules/RuleFormDialog/RuleFormContentForm.tsx +++ b/packages/webapp/src/containers/Banking/Rules/RuleFormDialog/RuleFormContentForm.tsx @@ -1,6 +1,6 @@ // @ts-nocheck import { Form, Formik, FormikHelpers, useFormikContext } from 'formik'; -import { Button, Classes, Intent, Radio } from '@blueprintjs/core'; +import { Button, Classes, Intent, Radio, Tag } from '@blueprintjs/core'; import * as R from 'ramda'; import { CreateRuleFormSchema } from './RuleFormContentForm.schema'; import { @@ -73,7 +73,7 @@ function RuleFormContentFormRoot({ }); }; if (isEditMode) { - editBankRule([bankRuleId, _values]) + editBankRule({ id: bankRuleId, value: _values }) .then(handleSuccess) .catch(handleError); } else { @@ -88,16 +88,26 @@ function RuleFormContentFormRoot({ onSubmit={handleSubmit} >