taxtank-core 0.32.108 → 0.32.109
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/collections/report/property/property-report-item-depreciation.collection.mjs +2 -2
- package/esm2022/lib/collections/report/property/property-report-item-transaction.collection.mjs +2 -2
- package/esm2022/lib/collections/report/property/property-report-item.collection.mjs +1 -1
- package/esm2022/lib/models/report/property/property-report-item-transaction.mjs +1 -1
- package/esm2022/lib/services/report/property/property-transaction-report.service.mjs +12 -3
- package/fesm2022/taxtank-core.mjs +117 -108
- package/fesm2022/taxtank-core.mjs.map +1 -1
- package/lib/collections/report/property/property-report-item-depreciation.collection.d.ts +2 -2
- package/lib/collections/report/property/property-report-item-transaction.collection.d.ts +3 -3
- package/lib/collections/report/property/property-report-item.collection.d.ts +1 -1
- package/lib/models/report/property/property-report-item-transaction.d.ts +3 -3
- package/lib/services/report/property/property-transaction-report.service.d.ts +4 -3
- package/package.json +1 -1
package/esm2022/lib/collections/report/property/property-report-item-depreciation.collection.mjs
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import { PropertyReportItemDepreciation } from '../../../models/report
|
1
|
+
import { PropertyReportItemDepreciation } from '../../../models/report';
|
2
2
|
import { PropertyReportItemCollection } from './property-report-item.collection';
|
3
3
|
/**
|
4
4
|
* Collection to work with depreciation-based property report items
|
@@ -18,4 +18,4 @@ export class PropertyReportItemDepreciationCollection extends PropertyReportItem
|
|
18
18
|
});
|
19
19
|
}
|
20
20
|
}
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktcmVwb3J0LWl0ZW0tZGVwcmVjaWF0aW9uLmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvcmVwb3J0L3Byb3BlcnR5L3Byb3BlcnR5LXJlcG9ydC1pdGVtLWRlcHJlY2lhdGlvbi5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBR2pGOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHdDQUF5QyxTQUFRLDRCQUE0QjtJQUN4RixZQUNFLGFBQXFDLEVBQ3JDLFVBQThCLEVBQzlCLGFBQXdDO1FBRXhDLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFBO0lBQ3pELENBQUM7SUFFTyxRQUFRLENBQUMsYUFBcUMsRUFBRSxVQUE4QixFQUFFLGFBQXdDO1FBQzlILElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBRWhCLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBa0IsRUFBRSxFQUFFO1lBQzlDLE1BQU0sbUJBQW1CLEdBQUcsYUFBYSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUUvRixtQkFBbUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBWSxFQUFFLEVBQUU7Z0JBQzVDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksOEJBQThCLENBQ2hELG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFDN0IsUUFBUSxFQUNSLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUNqRixDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cywgUHJvcGVydHkgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2RlcHJlY2lhdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IFByb3BlcnR5UmVwb3J0SXRlbURlcHJlY2lhdGlvbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9yZXBvcnQnO1xuaW1wb3J0IHsgUHJvcGVydHlSZXBvcnRJdGVtQ29sbGVjdGlvbiB9IGZyb20gJy4vcHJvcGVydHktcmVwb3J0LWl0ZW0uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBQcm9wZXJ0eUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9wcm9wZXJ0eSc7XG5cbi8qKlxuICogQ29sbGVjdGlvbiB0byB3b3JrIHdpdGggZGVwcmVjaWF0aW9uLWJhc2VkIHByb3BlcnR5IHJlcG9ydCBpdGVtc1xuICovXG5leHBvcnQgY2xhc3MgUHJvcGVydHlSZXBvcnRJdGVtRGVwcmVjaWF0aW9uQ29sbGVjdGlvbiBleHRlbmRzIFByb3BlcnR5UmVwb3J0SXRlbUNvbGxlY3Rpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBkZXByZWNpYXRpb25zOiBEZXByZWNpYXRpb25Db2xsZWN0aW9uLFxuICAgIHByb3BlcnRpZXM6IFByb3BlcnR5Q29sbGVjdGlvbixcbiAgICBjaGFydEFjY291bnRzOiBDb2xsZWN0aW9uPENoYXJ0QWNjb3VudHM+XG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zZXRJdGVtcyhkZXByZWNpYXRpb25zLCBwcm9wZXJ0aWVzLCBjaGFydEFjY291bnRzKVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRJdGVtcyhkZXByZWNpYXRpb25zOiBEZXByZWNpYXRpb25Db2xsZWN0aW9uLCBwcm9wZXJ0aWVzOiBQcm9wZXJ0eUNvbGxlY3Rpb24sIGNoYXJ0QWNjb3VudHM6IENvbGxlY3Rpb248Q2hhcnRBY2NvdW50cz4pOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zID0gW107XG5cbiAgICBwcm9wZXJ0aWVzLml0ZW1zLmZvckVhY2goKHByb3BlcnR5OiBQcm9wZXJ0eSkgPT4ge1xuICAgICAgY29uc3QgZGVwcmVjaWF0aW9uc0J5VHlwZSA9IGRlcHJlY2lhdGlvbnMuZmlsdGVyQnkoJ3Byb3BlcnR5LmlkJywgcHJvcGVydHkuaWQpLmdyb3VwQnkoJ3R5cGUnKTtcblxuICAgICAgZGVwcmVjaWF0aW9uc0J5VHlwZS5rZXlzLm1hcCgodHlwZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIHRoaXMuaXRlbXMucHVzaChuZXcgUHJvcGVydHlSZXBvcnRJdGVtRGVwcmVjaWF0aW9uKFxuICAgICAgICAgIGRlcHJlY2lhdGlvbnNCeVR5cGUuZ2V0KHR5cGUpLFxuICAgICAgICAgIHByb3BlcnR5LFxuICAgICAgICAgIGNoYXJ0QWNjb3VudHMuZmluZEJ5KCdpZCcsIGRlcHJlY2lhdGlvbnNCeVR5cGUuZ2V0KHR5cGUpLmZpcnN0LmNoYXJ0QWNjb3VudHMuaWQpXG4gICAgICAgICkpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
package/esm2022/lib/collections/report/property/property-report-item-transaction.collection.mjs
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import { PropertyReportItemTransaction } from '../../../models/report
|
1
|
+
import { PropertyReportItemTransaction } from '../../../models/report';
|
2
2
|
import { PropertyReportItemCollection } from './property-report-item.collection';
|
3
3
|
/**
|
4
4
|
* Collection to work with transaction-based property report items
|
@@ -18,4 +18,4 @@ export class PropertyReportItemTransactionCollection extends PropertyReportItemC
|
|
18
18
|
});
|
19
19
|
}
|
20
20
|
}
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktcmVwb3J0LWl0ZW0tdHJhbnNhY3Rpb24uY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9jb2xsZWN0aW9ucy9yZXBvcnQvcHJvcGVydHkvcHJvcGVydHktcmVwb3J0LWl0ZW0tdHJhbnNhY3Rpb24uY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUdqRjs7R0FFRztBQUNILE1BQU0sT0FBTyx1Q0FBd0MsU0FBUSw0QkFBNEI7SUFDdkYsWUFDRSxZQUFtQyxFQUNuQyxVQUE4QixFQUM5QixhQUF3QztRQUV4QyxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLFVBQVUsRUFBRSxhQUFhLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU8sUUFBUSxDQUFDLFlBQW1DLEVBQUUsVUFBOEIsRUFBRSxhQUF3QztRQUM1SCxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNoQixVQUFVLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQWtCLEVBQUUsRUFBRTtZQUM5QyxNQUFNLHNCQUFzQixHQUFHLFlBQVksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBRTFHLHNCQUFzQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxjQUFzQixFQUFFLEVBQUU7Z0JBQ3pELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksNkJBQTZCLENBQy9DLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsRUFDMUMsUUFBUSxFQUNSLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsY0FBYyxDQUFDLENBQzVDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzLCBQcm9wZXJ0eSB9IGZyb20gJy4uLy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBQcm9wZXJ0eVJlcG9ydEl0ZW1UcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9yZXBvcnQnO1xuaW1wb3J0IHsgUHJvcGVydHlSZXBvcnRJdGVtQ29sbGVjdGlvbiB9IGZyb20gJy4vcHJvcGVydHktcmVwb3J0LWl0ZW0uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBQcm9wZXJ0eUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9wcm9wZXJ0eSc7XG5cbi8qKlxuICogQ29sbGVjdGlvbiB0byB3b3JrIHdpdGggdHJhbnNhY3Rpb24tYmFzZWQgcHJvcGVydHkgcmVwb3J0IGl0ZW1zXG4gKi9cbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eVJlcG9ydEl0ZW1UcmFuc2FjdGlvbkNvbGxlY3Rpb24gZXh0ZW5kcyBQcm9wZXJ0eVJlcG9ydEl0ZW1Db2xsZWN0aW9uIHtcbiAgY29uc3RydWN0b3IoXG4gICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24sXG4gICAgcHJvcGVydGllczogUHJvcGVydHlDb2xsZWN0aW9uLFxuICAgIGNoYXJ0QWNjb3VudHM6IENvbGxlY3Rpb248Q2hhcnRBY2NvdW50cz5cbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnNldEl0ZW1zKHRyYW5zYWN0aW9ucywgcHJvcGVydGllcywgY2hhcnRBY2NvdW50cyk7XG4gIH1cblxuICBwcml2YXRlIHNldEl0ZW1zKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uLCBwcm9wZXJ0aWVzOiBQcm9wZXJ0eUNvbGxlY3Rpb24sIGNoYXJ0QWNjb3VudHM6IENvbGxlY3Rpb248Q2hhcnRBY2NvdW50cz4pOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zID0gW107XG4gICAgcHJvcGVydGllcy5pdGVtcy5mb3JFYWNoKChwcm9wZXJ0eTogUHJvcGVydHkpID0+IHtcbiAgICAgIGNvbnN0IHRyYW5zYWN0aW9uc0RpY3Rpb25hcnkgPSB0cmFuc2FjdGlvbnMuZ2V0QnlQcm9wZXJ0aWVzSWRzKFtwcm9wZXJ0eS5pZF0pLmdyb3VwQnkoJ2NoYXJ0QWNjb3VudHMuaWQnKTtcblxuICAgICAgdHJhbnNhY3Rpb25zRGljdGlvbmFyeS5rZXlzLm1hcCgoY2hhcnRBY2NvdW50SWQ6IHN0cmluZykgPT4ge1xuICAgICAgICB0aGlzLml0ZW1zLnB1c2gobmV3IFByb3BlcnR5UmVwb3J0SXRlbVRyYW5zYWN0aW9uKFxuICAgICAgICAgIHRyYW5zYWN0aW9uc0RpY3Rpb25hcnkuZ2V0KGNoYXJ0QWNjb3VudElkKSxcbiAgICAgICAgICBwcm9wZXJ0eSxcbiAgICAgICAgICBjaGFydEFjY291bnRzLmZpbmRCeSgnaWQnLCArY2hhcnRBY2NvdW50SWQpXG4gICAgICAgICkpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
@@ -10,4 +10,4 @@ export class PropertyReportItemCollection extends Collection {
|
|
10
10
|
return this.create(this.items.filter((item) => item.isExpense()));
|
11
11
|
}
|
12
12
|
}
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktcmVwb3J0LWl0ZW0uY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9jb2xsZWN0aW9ucy9yZXBvcnQvcHJvcGVydHkvcHJvcGVydHktcmVwb3J0LWl0ZW0uY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHOUM7O0dBRUc7QUFDSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsVUFBOEI7SUFDOUUsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUF3QixFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FDakUsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUNoQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQXdCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUNsRSxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHsgUHJvcGVydHlSZXBvcnRJdGVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3JlcG9ydCc7XG5cbi8qKlxuICogQmFzZSBjb2xsZWN0aW9uIHRvIHdvcmsgd2l0aCBwcm9wZXJ0eSByZXBvcnQgaXRlbXNcbiAqL1xuZXhwb3J0IGNsYXNzIFByb3BlcnR5UmVwb3J0SXRlbUNvbGxlY3Rpb24gZXh0ZW5kcyBDb2xsZWN0aW9uPFByb3BlcnR5UmVwb3J0SXRlbT4ge1xuICBnZXRJbmNvbWVzKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChpdGVtOiBQcm9wZXJ0eVJlcG9ydEl0ZW0pID0+IGl0ZW0uaXNJbmNvbWUoKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0RXhwZW5zZXMoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGl0ZW06IFByb3BlcnR5UmVwb3J0SXRlbSkgPT4gaXRlbS5pc0V4cGVuc2UoKSlcbiAgICApO1xuICB9XG59XG4iXX0=
|
@@ -9,4 +9,4 @@ export class PropertyReportItemTransaction extends PropertyReportItem {
|
|
9
9
|
this.description = chartAccounts.name;
|
10
10
|
}
|
11
11
|
}
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktcmVwb3J0LWl0ZW0tdHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3JlcG9ydC9wcm9wZXJ0eS9wcm9wZXJ0eS1yZXBvcnQtaXRlbS10cmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUs1RDs7R0FFRztBQUNILE1BQU0sT0FBTyw2QkFBOEIsU0FBUSxrQkFBa0I7SUFDbkUsWUFDRSxZQUFtQyxFQUNuQyxRQUFrQixFQUNsQixhQUE0QjtRQUU1QixLQUFLLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLFdBQVcsR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFBO0lBQ3ZDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3BlcnR5UmVwb3J0SXRlbSB9IGZyb20gJy4vcHJvcGVydHktcmVwb3J0LWl0ZW0nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICcuLi8uLi9wcm9wZXJ0eSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzIH0gZnJvbSAnLi4vLi4vY2hhcnQtYWNjb3VudHMnO1xuXG4vKipcbiAqIENsYXNzIHdpdGggdHJhbnNhY3Rpb24tYmFzZWQgcHJvcGVydHkgdHJhbnNhY3Rpb25zIHJlcG9ydCBlbnRpdGllc1xuICovXG5leHBvcnQgY2xhc3MgUHJvcGVydHlSZXBvcnRJdGVtVHJhbnNhY3Rpb24gZXh0ZW5kcyBQcm9wZXJ0eVJlcG9ydEl0ZW0ge1xuICBjb25zdHJ1Y3RvcihcbiAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbixcbiAgICBwcm9wZXJ0eTogUHJvcGVydHksXG4gICAgY2hhcnRBY2NvdW50czogQ2hhcnRBY2NvdW50c1xuICApIHtcbiAgICBzdXBlcihwcm9wZXJ0eSwgY2hhcnRBY2NvdW50cyk7XG4gICAgdGhpcy5hbW91bnQgPSBNYXRoLmFicyh0cmFuc2FjdGlvbnMuc3VtQnkoJ2dyb3NzQW1vdW50JykpO1xuICAgIHRoaXMuZGVzY3JpcHRpb24gPSBjaGFydEFjY291bnRzLm5hbWVcbiAgfVxufVxuIl19
|
@@ -24,13 +24,22 @@ export class PropertyTransactionReportService {
|
|
24
24
|
this.getTransactions(),
|
25
25
|
this.getDepreciations(),
|
26
26
|
this.chartAccountsService.get()
|
27
|
-
]).pipe(map(([properties, transactions, depreciations, chartAccounts]) =>
|
27
|
+
]).pipe(map(([properties, transactions, depreciations, chartAccounts]) => {
|
28
|
+
this.properties = properties;
|
29
|
+
this.transactions = transactions;
|
30
|
+
this.depreciations = depreciations;
|
31
|
+
this.chartAccounts = chartAccounts;
|
32
|
+
return this.create(transactions, depreciations, properties, chartAccounts);
|
33
|
+
}));
|
34
|
+
}
|
35
|
+
filter(filterForm) {
|
36
|
+
return this.create(filterForm.filter(this.transactions), filterForm.filter(this.depreciations), this.properties, this.chartAccounts);
|
28
37
|
}
|
29
38
|
create(transactions, depreciations, properties, chartAccounts) {
|
30
39
|
return new PropertyReportItemCollection([
|
31
40
|
...new PropertyReportItemTransactionCollection(transactions, properties, chartAccounts).items,
|
32
41
|
...new PropertyReportItemDepreciationCollection(depreciations, properties, chartAccounts).items,
|
33
|
-
]);
|
42
|
+
]).sortBy('subCode', 'asc').groupBy('propertyId');
|
34
43
|
}
|
35
44
|
/**
|
36
45
|
* Get collection of property transactions
|
@@ -58,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
58
67
|
providedIn: 'root'
|
59
68
|
}]
|
60
69
|
}], ctorParameters: function () { return [{ type: i1.PropertyService }, { type: i1.TransactionService }, { type: i1.DepreciationService }, { type: i1.ChartAccountsService }]; } });
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktdHJhbnNhY3Rpb24tcmVwb3J0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvcmVwb3J0L3Byb3BlcnR5L3Byb3BlcnR5LXRyYW5zYWN0aW9uLXJlcG9ydC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFjLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUseUJBQXlCLEVBQWUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RSxPQUFPLEVBS0wsNEJBQTRCLEVBQzVCLHdDQUF3QyxFQUN4Qyx1Q0FBdUMsRUFDdkMscUJBQXFCLEdBQ3RCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFHckM7O0dBRUc7QUFJSCxNQUFNLE9BQU8sZ0NBQWdDO0lBTTNDLFlBQ1UsZUFBZ0MsRUFDaEMsa0JBQXNDLEVBQ3RDLG1CQUF3QyxFQUN4QyxvQkFBMEM7UUFIMUMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO0lBRXBELENBQUM7SUFFRDs7T0FFRztJQUNILEdBQUc7UUFDRCxPQUFPLGFBQWEsQ0FBQztZQUNuQixJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBb0M7WUFDNUQsSUFBSSxDQUFDLGVBQWUsRUFBdUM7WUFDM0QsSUFBSSxDQUFDLGdCQUFnQixFQUF3QztZQUM3RCxJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxFQUF5QztTQUN2RSxDQUFDLENBQUMsSUFBSSxDQUNMLEdBQUcsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFDLEVBQUUsRUFBRTtZQUMvRCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztZQUM3QixJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztZQUNqQyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztZQUNuQyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztZQUNuQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDN0UsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsVUFBcUM7UUFDMUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUNoQixVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFDcEMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQ3JDLElBQUksQ0FBQyxVQUFVLEVBQ2YsSUFBSSxDQUFDLGFBQWEsQ0FDbkIsQ0FBQztJQUNKLENBQUM7SUFFTyxNQUFNLENBQ1osWUFBbUMsRUFDbkMsYUFBcUMsRUFDckMsVUFBOEIsRUFDOUIsYUFBc0M7UUFFdEMsT0FBTyxJQUFJLDRCQUE0QixDQUFDO1lBQ3RDLEdBQUcsSUFBSSx1Q0FBdUMsQ0FBQyxZQUFZLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDLEtBQUs7WUFDN0YsR0FBRyxJQUFJLHdDQUF3QyxDQUFDLGFBQWEsRUFBRSxVQUFVLEVBQUUsYUFBYSxDQUFDLENBQUMsS0FBSztTQUNoRyxDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ssZUFBZTtRQUNyQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQ3ZDLEdBQUcsQ0FBQyxDQUFDLFlBQTJCLEVBQUUsRUFBRSxDQUFDLElBQUkscUJBQXFCLENBQUMsWUFBWSxDQUFDO2FBQ3pFLDRCQUE0QixDQUFDLHlCQUF5QixDQUFDLFFBQVEsQ0FBQzthQUNoRSxNQUFNLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxDQUNyRCxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSyxnQkFBZ0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUN4QyxHQUFHLENBQUMsQ0FBQyxhQUFxQyxFQUFFLEVBQUUsQ0FBQyxhQUFhO2FBQ3pELDRCQUE0QixDQUFDLHlCQUF5QixDQUFDLFFBQVEsQ0FBQztZQUNqRSxtREFBbUQ7YUFDbEQsMkJBQTJCLEVBQUUsQ0FBQyxDQUNsQyxDQUFBO0lBQ0gsQ0FBQzsrR0E3RVUsZ0NBQWdDO21IQUFoQyxnQ0FBZ0MsY0FGL0IsTUFBTTs7NEZBRVAsZ0NBQWdDO2tCQUg1QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNTZXJ2aWNlLCBEZXByZWNpYXRpb25TZXJ2aWNlLCBQcm9wZXJ0eVNlcnZpY2UsIFRyYW5zYWN0aW9uU2VydmljZSwgfSBmcm9tICcuLi8uLi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMsIFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7XG4gIENoYXJ0QWNjb3VudHNDb2xsZWN0aW9uLFxuICBDb2xsZWN0aW9uRGljdGlvbmFyeSxcbiAgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbixcbiAgUHJvcGVydHlDb2xsZWN0aW9uLFxuICBQcm9wZXJ0eVJlcG9ydEl0ZW1Db2xsZWN0aW9uLFxuICBQcm9wZXJ0eVJlcG9ydEl0ZW1EZXByZWNpYXRpb25Db2xsZWN0aW9uLFxuICBQcm9wZXJ0eVJlcG9ydEl0ZW1UcmFuc2FjdGlvbkNvbGxlY3Rpb24sXG4gIFRyYW5zYWN0aW9uQ29sbGVjdGlvbixcbn0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CYXNlRmlsdGVyRm9ybSB9IGZyb20gJy4uLy4uLy4uL2Zvcm1zJztcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIGhhbmRsZSBQcm9wZXJ0eSB0cmFuc2FjdGlvbnMgcmVwb3J0IGl0ZW1zIGRhdGEgKGdldCBpbmNvbWUgLyBleHBlbnNlIHJlcG9ydCBpdGVtcywgZS50LmMuKVxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eVRyYW5zYWN0aW9uUmVwb3J0U2VydmljZSB7XG4gIHByb3BlcnRpZXM6IFByb3BlcnR5Q29sbGVjdGlvbjtcbiAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb247XG4gIGRlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb247XG4gIGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHNDb2xsZWN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcHJvcGVydHlTZXJ2aWNlOiBQcm9wZXJ0eVNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGRlcHJlY2lhdGlvblNlcnZpY2U6IERlcHJlY2lhdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjaGFydEFjY291bnRzU2VydmljZTogQ2hhcnRBY2NvdW50c1NlcnZpY2VcbiAgKSB7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNvbGxlY3Rpb24gb2YgcmVwb3J0IGl0ZW1zIGJhc2VkIG9uIHRyYW5zYWN0aW9ucyAmIGRlcHJlY2lhdGlvbnNcbiAgICovXG4gIGdldCgpOiBPYnNlcnZhYmxlPENvbGxlY3Rpb25EaWN0aW9uYXJ5PFByb3BlcnR5UmVwb3J0SXRlbUNvbGxlY3Rpb24+PiB7XG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5wcm9wZXJ0eVNlcnZpY2UuZ2V0KCkgYXMgT2JzZXJ2YWJsZTxQcm9wZXJ0eUNvbGxlY3Rpb24+LFxuICAgICAgdGhpcy5nZXRUcmFuc2FjdGlvbnMoKSBhcyBPYnNlcnZhYmxlPFRyYW5zYWN0aW9uQ29sbGVjdGlvbj4sXG4gICAgICB0aGlzLmdldERlcHJlY2lhdGlvbnMoKSBhcyBPYnNlcnZhYmxlPERlcHJlY2lhdGlvbkNvbGxlY3Rpb24+LFxuICAgICAgdGhpcy5jaGFydEFjY291bnRzU2VydmljZS5nZXQoKSBhcyBPYnNlcnZhYmxlPENoYXJ0QWNjb3VudHNDb2xsZWN0aW9uPlxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoKFtwcm9wZXJ0aWVzLCB0cmFuc2FjdGlvbnMsIGRlcHJlY2lhdGlvbnMsIGNoYXJ0QWNjb3VudHNdKSA9PiB7XG4gICAgICAgIHRoaXMucHJvcGVydGllcyA9IHByb3BlcnRpZXM7XG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb25zID0gdHJhbnNhY3Rpb25zO1xuICAgICAgICB0aGlzLmRlcHJlY2lhdGlvbnMgPSBkZXByZWNpYXRpb25zO1xuICAgICAgICB0aGlzLmNoYXJ0QWNjb3VudHMgPSBjaGFydEFjY291bnRzO1xuICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGUodHJhbnNhY3Rpb25zLCBkZXByZWNpYXRpb25zLCBwcm9wZXJ0aWVzLCBjaGFydEFjY291bnRzKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGZpbHRlcihmaWx0ZXJGb3JtOiBUcmFuc2FjdGlvbkJhc2VGaWx0ZXJGb3JtKTogQ29sbGVjdGlvbkRpY3Rpb25hcnk8UHJvcGVydHlSZXBvcnRJdGVtQ29sbGVjdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShcbiAgICAgIGZpbHRlckZvcm0uZmlsdGVyKHRoaXMudHJhbnNhY3Rpb25zKSxcbiAgICAgIGZpbHRlckZvcm0uZmlsdGVyKHRoaXMuZGVwcmVjaWF0aW9ucyksXG4gICAgICB0aGlzLnByb3BlcnRpZXMsXG4gICAgICB0aGlzLmNoYXJ0QWNjb3VudHNcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGUoXG4gICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24sXG4gICAgZGVwcmVjaWF0aW9uczogRGVwcmVjaWF0aW9uQ29sbGVjdGlvbixcbiAgICBwcm9wZXJ0aWVzOiBQcm9wZXJ0eUNvbGxlY3Rpb24sXG4gICAgY2hhcnRBY2NvdW50czogQ2hhcnRBY2NvdW50c0NvbGxlY3Rpb25cbiAgKTogQ29sbGVjdGlvbkRpY3Rpb25hcnk8UHJvcGVydHlSZXBvcnRJdGVtQ29sbGVjdGlvbj4ge1xuICAgIHJldHVybiBuZXcgUHJvcGVydHlSZXBvcnRJdGVtQ29sbGVjdGlvbihbXG4gICAgICAuLi5uZXcgUHJvcGVydHlSZXBvcnRJdGVtVHJhbnNhY3Rpb25Db2xsZWN0aW9uKHRyYW5zYWN0aW9ucywgcHJvcGVydGllcywgY2hhcnRBY2NvdW50cykuaXRlbXMsXG4gICAgICAuLi5uZXcgUHJvcGVydHlSZXBvcnRJdGVtRGVwcmVjaWF0aW9uQ29sbGVjdGlvbihkZXByZWNpYXRpb25zLCBwcm9wZXJ0aWVzLCBjaGFydEFjY291bnRzKS5pdGVtcyxcbiAgICBdKS5zb3J0QnkoJ3N1YkNvZGUnLCAnYXNjJykuZ3JvdXBCeSgncHJvcGVydHlJZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBjb2xsZWN0aW9uIG9mIHByb3BlcnR5IHRyYW5zYWN0aW9uc1xuICAgKi9cbiAgcHJpdmF0ZSBnZXRUcmFuc2FjdGlvbnMoKTogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbkNvbGxlY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0KCkucGlwZShcbiAgICAgIG1hcCgodHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdKSA9PiBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKHRyYW5zYWN0aW9ucylcbiAgICAgICAgLmdldEJ5Q2hhcnRBY2NvdW50c0NhdGVnb3JpZXMoQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wcm9wZXJ0eSlcbiAgICAgICAgLmZpbHRlcih0cmFuc2FjdGlvbiA9PiB0cmFuc2FjdGlvbi5jbGFpbVBlcmNlbnQgPiAwKVxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGxpc3Qgb2YgYXNzZXQgJiBjYXBpdGFsIHByb3BlcnR5IGRlcHJlY2lhdGlvbnNcbiAgICovXG4gIHByaXZhdGUgZ2V0RGVwcmVjaWF0aW9ucygpOiBPYnNlcnZhYmxlPERlcHJlY2lhdGlvbkNvbGxlY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5kZXByZWNpYXRpb25TZXJ2aWNlLmdldCgpLnBpcGUoXG4gICAgICBtYXAoKGRlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24pID0+IGRlcHJlY2lhdGlvbnNcbiAgICAgICAgLmdldEJ5Q2hhcnRBY2NvdW50c0NhdGVnb3JpZXMoQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wcm9wZXJ0eSlcbiAgICAgICAgLy8gd2UgZG9uJ3QgbmVlZCBib3Jyb3dpbmcgZXhwZW5zZXMgZm9yIHRoaXMgcmVwb3J0XG4gICAgICAgIC5nZXRXaXRob3V0Qm9ycm93aW5nRXhwZW5zZXMoKSlcbiAgICApXG4gIH1cbn1cbiJdfQ==
|
@@ -7342,112 +7342,6 @@ class DepreciationReportItemCollection extends DepreciationCollection {
|
|
7342
7342
|
}
|
7343
7343
|
}
|
7344
7344
|
|
7345
|
-
/**
|
7346
|
-
* Class with property transactions report entities
|
7347
|
-
*/
|
7348
|
-
class PropertyReportItem extends AbstractModel {
|
7349
|
-
constructor(property, chartAccounts) {
|
7350
|
-
super();
|
7351
|
-
this.chartAccounts = chartAccounts;
|
7352
|
-
this.propertyId = property.id;
|
7353
|
-
this.claimPercent = property.claimPercent;
|
7354
|
-
this.sharePercent = property.sharePercent;
|
7355
|
-
this.subCode = chartAccounts.taxReturnItem?.subCode;
|
7356
|
-
this.description = chartAccounts.name;
|
7357
|
-
}
|
7358
|
-
get claimAmount() {
|
7359
|
-
return round(this.amount * (this.claimPercent / 100), 2);
|
7360
|
-
}
|
7361
|
-
get shareClaimAmount() {
|
7362
|
-
return this.claimAmount * (this.sharePercent / 100);
|
7363
|
-
}
|
7364
|
-
isIncome() {
|
7365
|
-
return CHART_ACCOUNTS_CATEGORIES.income.includes(this.chartAccounts.category);
|
7366
|
-
}
|
7367
|
-
isExpense() {
|
7368
|
-
return CHART_ACCOUNTS_CATEGORIES.expense.includes(this.chartAccounts.category);
|
7369
|
-
}
|
7370
|
-
}
|
7371
|
-
|
7372
|
-
/**
|
7373
|
-
* Const with labels based on depreciation type
|
7374
|
-
*/
|
7375
|
-
const DEPRECIATION_TYPE_LABELS = {
|
7376
|
-
1: 'Plant & Equipment',
|
7377
|
-
2: 'Building & Improvements'
|
7378
|
-
};
|
7379
|
-
/**
|
7380
|
-
* Class with depreciation-based property transactions report entities
|
7381
|
-
*/
|
7382
|
-
class PropertyReportItemDepreciation extends PropertyReportItem {
|
7383
|
-
constructor(depreciations, property, chartAccounts) {
|
7384
|
-
super(property, chartAccounts);
|
7385
|
-
this.amount = Math.abs(depreciations.getCurrentYearForecastAmount());
|
7386
|
-
this.description = DEPRECIATION_TYPE_LABELS[depreciations.first.type];
|
7387
|
-
}
|
7388
|
-
}
|
7389
|
-
|
7390
|
-
/**
|
7391
|
-
* Base collection to work with property report items
|
7392
|
-
*/
|
7393
|
-
class PropertyReportItemCollection extends Collection {
|
7394
|
-
getIncomes() {
|
7395
|
-
return this.create(this.items.filter((item) => item.isIncome()));
|
7396
|
-
}
|
7397
|
-
getExpenses() {
|
7398
|
-
return this.create(this.items.filter((item) => item.isExpense()));
|
7399
|
-
}
|
7400
|
-
}
|
7401
|
-
|
7402
|
-
/**
|
7403
|
-
* Collection to work with depreciation-based property report items
|
7404
|
-
*/
|
7405
|
-
class PropertyReportItemDepreciationCollection extends PropertyReportItemCollection {
|
7406
|
-
constructor(depreciations, properties, chartAccounts) {
|
7407
|
-
super();
|
7408
|
-
this.setItems(depreciations, properties, chartAccounts);
|
7409
|
-
}
|
7410
|
-
setItems(depreciations, properties, chartAccounts) {
|
7411
|
-
this.items = [];
|
7412
|
-
properties.items.forEach((property) => {
|
7413
|
-
const depreciationsByType = depreciations.filterBy('property.id', property.id).groupBy('type');
|
7414
|
-
depreciationsByType.keys.map((type) => {
|
7415
|
-
this.items.push(new PropertyReportItemDepreciation(depreciationsByType.get(type), property, chartAccounts.findBy('id', depreciationsByType.get(type).first.chartAccounts.id)));
|
7416
|
-
});
|
7417
|
-
});
|
7418
|
-
}
|
7419
|
-
}
|
7420
|
-
|
7421
|
-
/**
|
7422
|
-
* Class with transaction-based property transactions report entities
|
7423
|
-
*/
|
7424
|
-
class PropertyReportItemTransaction extends PropertyReportItem {
|
7425
|
-
constructor(transactions, property, chartAccounts) {
|
7426
|
-
super(property, chartAccounts);
|
7427
|
-
this.amount = Math.abs(transactions.sumBy('grossAmount'));
|
7428
|
-
this.description = chartAccounts.name;
|
7429
|
-
}
|
7430
|
-
}
|
7431
|
-
|
7432
|
-
/**
|
7433
|
-
* Collection to work with transaction-based property report items
|
7434
|
-
*/
|
7435
|
-
class PropertyReportItemTransactionCollection extends PropertyReportItemCollection {
|
7436
|
-
constructor(transactions, properties, chartAccounts) {
|
7437
|
-
super();
|
7438
|
-
this.setItems(transactions, properties, chartAccounts);
|
7439
|
-
}
|
7440
|
-
setItems(transactions, properties, chartAccounts) {
|
7441
|
-
this.items = [];
|
7442
|
-
properties.items.forEach((property) => {
|
7443
|
-
const transactionsDictionary = transactions.getByPropertiesIds([property.id]).groupBy('chartAccounts.id');
|
7444
|
-
transactionsDictionary.keys.map((chartAccountId) => {
|
7445
|
-
this.items.push(new PropertyReportItemTransaction(transactionsDictionary.get(chartAccountId), property, chartAccounts.findBy('id', +chartAccountId)));
|
7446
|
-
});
|
7447
|
-
});
|
7448
|
-
}
|
7449
|
-
}
|
7450
|
-
|
7451
7345
|
/**
|
7452
7346
|
* Enum with type of business for My Tax report
|
7453
7347
|
* https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/4644110466/Tax+Return+MyTax+-+Online+Form
|
@@ -8169,6 +8063,62 @@ const atoLinks = {
|
|
8169
8063
|
* 'My Tax' report related data (classes, enums, const, e.t.c)
|
8170
8064
|
*/
|
8171
8065
|
|
8066
|
+
/**
|
8067
|
+
* Class with property transactions report entities
|
8068
|
+
*/
|
8069
|
+
class PropertyReportItem extends AbstractModel {
|
8070
|
+
constructor(property, chartAccounts) {
|
8071
|
+
super();
|
8072
|
+
this.chartAccounts = chartAccounts;
|
8073
|
+
this.propertyId = property.id;
|
8074
|
+
this.claimPercent = property.claimPercent;
|
8075
|
+
this.sharePercent = property.sharePercent;
|
8076
|
+
this.subCode = chartAccounts.taxReturnItem?.subCode;
|
8077
|
+
this.description = chartAccounts.name;
|
8078
|
+
}
|
8079
|
+
get claimAmount() {
|
8080
|
+
return round(this.amount * (this.claimPercent / 100), 2);
|
8081
|
+
}
|
8082
|
+
get shareClaimAmount() {
|
8083
|
+
return this.claimAmount * (this.sharePercent / 100);
|
8084
|
+
}
|
8085
|
+
isIncome() {
|
8086
|
+
return CHART_ACCOUNTS_CATEGORIES.income.includes(this.chartAccounts.category);
|
8087
|
+
}
|
8088
|
+
isExpense() {
|
8089
|
+
return CHART_ACCOUNTS_CATEGORIES.expense.includes(this.chartAccounts.category);
|
8090
|
+
}
|
8091
|
+
}
|
8092
|
+
|
8093
|
+
/**
|
8094
|
+
* Const with labels based on depreciation type
|
8095
|
+
*/
|
8096
|
+
const DEPRECIATION_TYPE_LABELS = {
|
8097
|
+
1: 'Plant & Equipment',
|
8098
|
+
2: 'Building & Improvements'
|
8099
|
+
};
|
8100
|
+
/**
|
8101
|
+
* Class with depreciation-based property transactions report entities
|
8102
|
+
*/
|
8103
|
+
class PropertyReportItemDepreciation extends PropertyReportItem {
|
8104
|
+
constructor(depreciations, property, chartAccounts) {
|
8105
|
+
super(property, chartAccounts);
|
8106
|
+
this.amount = Math.abs(depreciations.getCurrentYearForecastAmount());
|
8107
|
+
this.description = DEPRECIATION_TYPE_LABELS[depreciations.first.type];
|
8108
|
+
}
|
8109
|
+
}
|
8110
|
+
|
8111
|
+
/**
|
8112
|
+
* Class with transaction-based property transactions report entities
|
8113
|
+
*/
|
8114
|
+
class PropertyReportItemTransaction extends PropertyReportItem {
|
8115
|
+
constructor(transactions, property, chartAccounts) {
|
8116
|
+
super(property, chartAccounts);
|
8117
|
+
this.amount = Math.abs(transactions.sumBy('grossAmount'));
|
8118
|
+
this.description = chartAccounts.name;
|
8119
|
+
}
|
8120
|
+
}
|
8121
|
+
|
8172
8122
|
/**
|
8173
8123
|
* Class with business loss details
|
8174
8124
|
* https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/4641357930/Rules+when+a+business+makes+a+loss+Tax+Summary
|
@@ -8199,6 +8149,56 @@ class VehicleExpense extends AbstractModel {
|
|
8199
8149
|
}
|
8200
8150
|
}
|
8201
8151
|
|
8152
|
+
/**
|
8153
|
+
* Base collection to work with property report items
|
8154
|
+
*/
|
8155
|
+
class PropertyReportItemCollection extends Collection {
|
8156
|
+
getIncomes() {
|
8157
|
+
return this.create(this.items.filter((item) => item.isIncome()));
|
8158
|
+
}
|
8159
|
+
getExpenses() {
|
8160
|
+
return this.create(this.items.filter((item) => item.isExpense()));
|
8161
|
+
}
|
8162
|
+
}
|
8163
|
+
|
8164
|
+
/**
|
8165
|
+
* Collection to work with depreciation-based property report items
|
8166
|
+
*/
|
8167
|
+
class PropertyReportItemDepreciationCollection extends PropertyReportItemCollection {
|
8168
|
+
constructor(depreciations, properties, chartAccounts) {
|
8169
|
+
super();
|
8170
|
+
this.setItems(depreciations, properties, chartAccounts);
|
8171
|
+
}
|
8172
|
+
setItems(depreciations, properties, chartAccounts) {
|
8173
|
+
this.items = [];
|
8174
|
+
properties.items.forEach((property) => {
|
8175
|
+
const depreciationsByType = depreciations.filterBy('property.id', property.id).groupBy('type');
|
8176
|
+
depreciationsByType.keys.map((type) => {
|
8177
|
+
this.items.push(new PropertyReportItemDepreciation(depreciationsByType.get(type), property, chartAccounts.findBy('id', depreciationsByType.get(type).first.chartAccounts.id)));
|
8178
|
+
});
|
8179
|
+
});
|
8180
|
+
}
|
8181
|
+
}
|
8182
|
+
|
8183
|
+
/**
|
8184
|
+
* Collection to work with transaction-based property report items
|
8185
|
+
*/
|
8186
|
+
class PropertyReportItemTransactionCollection extends PropertyReportItemCollection {
|
8187
|
+
constructor(transactions, properties, chartAccounts) {
|
8188
|
+
super();
|
8189
|
+
this.setItems(transactions, properties, chartAccounts);
|
8190
|
+
}
|
8191
|
+
setItems(transactions, properties, chartAccounts) {
|
8192
|
+
this.items = [];
|
8193
|
+
properties.items.forEach((property) => {
|
8194
|
+
const transactionsDictionary = transactions.getByPropertiesIds([property.id]).groupBy('chartAccounts.id');
|
8195
|
+
transactionsDictionary.keys.map((chartAccountId) => {
|
8196
|
+
this.items.push(new PropertyReportItemTransaction(transactionsDictionary.get(chartAccountId), property, chartAccounts.findBy('id', +chartAccountId)));
|
8197
|
+
});
|
8198
|
+
});
|
8199
|
+
}
|
8200
|
+
}
|
8201
|
+
|
8202
8202
|
class VehicleExpenseCollection extends Collection {
|
8203
8203
|
constructor(transactions, depreciations) {
|
8204
8204
|
super();
|
@@ -19273,13 +19273,22 @@ class PropertyTransactionReportService {
|
|
19273
19273
|
this.getTransactions(),
|
19274
19274
|
this.getDepreciations(),
|
19275
19275
|
this.chartAccountsService.get()
|
19276
|
-
]).pipe(map(([properties, transactions, depreciations, chartAccounts]) =>
|
19276
|
+
]).pipe(map(([properties, transactions, depreciations, chartAccounts]) => {
|
19277
|
+
this.properties = properties;
|
19278
|
+
this.transactions = transactions;
|
19279
|
+
this.depreciations = depreciations;
|
19280
|
+
this.chartAccounts = chartAccounts;
|
19281
|
+
return this.create(transactions, depreciations, properties, chartAccounts);
|
19282
|
+
}));
|
19283
|
+
}
|
19284
|
+
filter(filterForm) {
|
19285
|
+
return this.create(filterForm.filter(this.transactions), filterForm.filter(this.depreciations), this.properties, this.chartAccounts);
|
19277
19286
|
}
|
19278
19287
|
create(transactions, depreciations, properties, chartAccounts) {
|
19279
19288
|
return new PropertyReportItemCollection([
|
19280
19289
|
...new PropertyReportItemTransactionCollection(transactions, properties, chartAccounts).items,
|
19281
19290
|
...new PropertyReportItemDepreciationCollection(depreciations, properties, chartAccounts).items,
|
19282
|
-
]);
|
19291
|
+
]).sortBy('subCode', 'asc').groupBy('propertyId');
|
19283
19292
|
}
|
19284
19293
|
/**
|
19285
19294
|
* Get collection of property transactions
|