diff options
author | Frédéric Guillot <fred@kanboard.net> | 2014-11-29 14:01:03 -0500 |
---|---|---|
committer | Frédéric Guillot <fred@kanboard.net> | 2014-11-29 14:01:03 -0500 |
commit | d6bde1e3ec1d0b0fae7bb85e274e1bebb65d78db (patch) | |
tree | 12f26fb81b61a32926cecfd80917a8eb928a4e07 /app/Console/ProjectDailySummaryExport.php | |
parent | e8fa25f9ca246fea085da46ea705a74b6de30d10 (diff) |
Add command line export/calculation for daily project summaries
Diffstat (limited to 'app/Console/ProjectDailySummaryExport.php')
-rw-r--r-- | app/Console/ProjectDailySummaryExport.php | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/app/Console/ProjectDailySummaryExport.php b/app/Console/ProjectDailySummaryExport.php new file mode 100644 index 00000000..6b96fddd --- /dev/null +++ b/app/Console/ProjectDailySummaryExport.php @@ -0,0 +1,35 @@ +<?php + +namespace Console; + +use Core\Tool; +use Symfony\Component\Console\Input\InputArgument; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Input\InputOption; +use Symfony\Component\Console\Output\OutputInterface; + +class ProjectDailySummaryExport extends Base +{ + protected function configure() + { + $this + ->setName('export:daily-project-summary') + ->setDescription('Daily project summary CSV export (number of tasks per column and per day)') + ->addArgument('project_id', InputArgument::REQUIRED, 'Project id') + ->addArgument('start_date', InputArgument::REQUIRED, 'Start date (YYYY-MM-DD)') + ->addArgument('end_date', InputArgument::REQUIRED, 'End date (YYYY-MM-DD)'); + } + + protected function execute(InputInterface $input, OutputInterface $output) + { + $data = $this->projectDailySummary->getAggregatedMetrics( + $input->getArgument('project_id'), + $input->getArgument('start_date'), + $input->getArgument('end_date') + ); + + if (is_array($data)) { + Tool::csv($data); + } + } +} |