Content
View differences
Updated by Jens Ulferts about 6 years ago
**Situation**
* Feature duplication in view “Time sheet” and “Cost reporting”.
**Objectives**
* Reduce maintenance effort for documentation and translation
* Reduce the amount of code we need to maintain (e.g. for accessibility problems we have in both views)
**Open**
* Do we automatically activate the cost reporting module (possibly renamed) whenever the "time tracking" module is activated? This would ensure a valid target to see logged time e.g. when following a link on the work package page.
**Acceptance criteria (to be discussed)**
* Remove [ReportsController](https://github.com/opf/openproject/blob/dev/app/controllers/time_entries/reports_controller.rb)
* Probably remove [TimelogHelper](https://github.com/opf/openproject/blob/dev/app/helpers/timelog_helper.rb). There might be methods in there that we need to salvage.
* Create aspects folder aspect (similar to modules). Aspects are chunks of code that handle concerns appearing repeatedly within the application (e.g. scheduling, assignable). modules)
* Add a time\_logging aspect (Aggregate existing, time logging focused code in here)
* Add a cost\_logging aspect (Aggregate existing code, cost logging focused code in here)
* TBD: add budgets aspect (might not be necessary but without the code is more intertwined on the module level) here)
* Move code extending members (mostly rates) to members TBD
* Move [logged time/costs eager loading patch](https://github.com/opf/openproject/blob/dev/modules/costs/lib/open_project/costs/patches/work_package_eager_loading_patch.rb) from costs to work package proper. Avoid removing time\_entries join in the patch which is added in other eager loading.
* Feature duplication in view “Time sheet” and “Cost reporting”.
**Objectives**
* Reduce maintenance effort for documentation and translation
* Reduce the amount of code we need to maintain (e.g. for accessibility problems we have in both views)
**Open**
* Do we automatically activate the cost reporting module (possibly renamed) whenever the "time tracking" module is activated? This would ensure a valid target to see logged time e.g. when following a link on the work package page.
**Acceptance criteria (to be discussed)**
* Remove [ReportsController](https://github.com/opf/openproject/blob/dev/app/controllers/time_entries/reports_controller.rb)
* Probably remove [TimelogHelper](https://github.com/opf/openproject/blob/dev/app/helpers/timelog_helper.rb). There might be methods in there that we need to salvage.
* Create aspects folder
* Add a time\_logging aspect (Aggregate existing, time logging focused code in here)
* Add a cost\_logging aspect (Aggregate existing code, cost logging focused code in here)
* TBD: add budgets aspect (might not be necessary but without the code is more intertwined on the module level)
* Move code extending members (mostly rates) to members
* Move [logged time/costs eager loading patch](https://github.com/opf/openproject/blob/dev/modules/costs/lib/open_project/costs/patches/work_package_eager_loading_patch.rb) from costs to work package proper. Avoid removing time\_entries join in the patch which is added in other eager loading.