Browse Source

Feature/refactor query to filter activities of excluded accounts (#3016)

* Refactor query to filter activities of excluded accounts

* Update changelog
pull/3019/head
Thomas Kaul 12 months ago
committed by GitHub
parent
commit
a3cdb23776
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 1
      CHANGELOG.md
  2. 16
      apps/api/src/app/order/order.service.ts

1
CHANGELOG.md

@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed ### Changed
- Improved the usability of the holdings table - Improved the usability of the holdings table
- Refactored the query to filter activities of excluded accounts
- Improved the language localization for German (`de`) - Improved the language localization for German (`de`)
- Upgraded `ng-extract-i18n-merge` from version `2.9.1` to `2.10.0` - Upgraded `ng-extract-i18n-merge` from version `2.9.1` to `2.10.0`

16
apps/api/src/app/order/order.service.ts

@ -301,6 +301,12 @@ export class OrderService {
}); });
} }
if (withExcludedAccounts === false) {
where.Account = {
NOT: { isExcluded: true }
};
}
const [orders, count] = await Promise.all([ const [orders, count] = await Promise.all([
this.orders({ this.orders({
orderBy, orderBy,
@ -322,15 +328,7 @@ export class OrderService {
this.prismaService.order.count({ where }) this.prismaService.order.count({ where })
]); ]);
const activities = orders const activities = orders.map((order) => {
.filter((order) => {
return (
withExcludedAccounts ||
!order.Account ||
order.Account?.isExcluded === false
);
})
.map((order) => {
const value = new Big(order.quantity).mul(order.unitPrice).toNumber(); const value = new Big(order.quantity).mul(order.unitPrice).toNumber();
return { return {

Loading…
Cancel
Save