コード例 #1
0
 /**
  * @param $hours
  * @return array
  */
 protected function groupHoursByDate($hours)
 {
     $arrayHours = [];
     foreach ($hours as $hour) {
         $key = Date::conversion($hour->day);
         $arrayHours[$key]['data'][] = ['day' => $hour->day, 'time' => $hour->time];
     }
     return $arrayHours;
 }
コード例 #2
0
ファイル: Reports.php プロジェクト: bruno2c/task-control
 /**
  * @param $object
  * @return array
  */
 public function transformDataToGraph($object)
 {
     $return = [];
     foreach ($object as $date) {
         $return['hours'][] = $date->hours;
         $return['hoursPending'][] = $date->hoursPending;
         $return['date'][] = substr(Date::conversion($date->date), 0, 5);
     }
     return $return;
 }
コード例 #3
0
 private function process($password)
 {
     $processor = new TaskProcessor($password);
     $result = $processor->process($this->bar);
     if ($result) {
         $tasksProcesseds = $processor->getTasksProcessed();
         foreach ($tasksProcesseds as $task) {
             $this->tasksProcesseds[] = [$task->task, Date::conversion($task->date), $task->time, $task->description, $task->status];
         }
     }
 }
コード例 #4
0
 public function saveAction(Request $request)
 {
     $params = $request->all();
     $params['date'] = Date::conversion($params['date']);
     $request->replace($params);
     unset($params['_token'], $params['q']);
     $routeBack = $request->get('redirect', false);
     if (!$routeBack) {
         $routeBack = 'tasks.new';
         if (isset($params['id']) && (int) $params['id'] > 0) {
             $routeBack = 'tasks.edit';
         }
     }
     if ($request->getMethod() == 'POST') {
         // saving data!
         $isValid = $this->repository->validateRequest($request);
         if (!is_bool($isValid)) {
             $request->session()->flash('message', "Invalid data, please check the following errors: ");
             $request->session()->flash('validationErrros', $isValid);
             $formattedDate = \Datetime::createFromFormat('Y-m-d', $request->get('date'));
             $request->replace(['date' => $formattedDate->format('d/m/Y')]);
             return redirect()->route($routeBack, [$routeBack == 'tasks.edit' ? $params['id'] : null])->withInput()->with('validationErros', $isValid);
         }
         //update
         if ($routeBack == 'tasks.edit') {
             $task = $this->repository->findById($params['id']);
             if (!$task) {
                 $request->session()->flash('message', "Task [{$params['id']}] not found");
                 return redirect('tasks');
             }
             $task = Tasks::findOrNew($params['id']);
             $task->fill($params);
             $task->update();
             $request->session()->flash('message', "Task [{$task->task}] updated successfully!");
             $request->session()->flash('success', true);
             return redirect('tasks');
         }
         //insert
         $tasks = new Tasks();
         $tasks->create($params);
         $request->session()->flash('message', "Successfully created task");
         $request->session()->flash('success', true);
         $redirect = $request->get('redirect', false) != false ? $request->get('redirect') : 'tasks';
         return redirect()->route($redirect);
     }
     $request->session()->flash('message', "Method not allowed");
     return redirect('tasks');
 }
コード例 #5
0
 public function reportAction(Request $request)
 {
     $hours = [];
     $startDate = Carbon::now()->firstOfMonth()->format('Y-m-d');
     $endDate = Carbon::now()->endOfMonth()->format('Y-m-d');
     if ($request->input('startDate') && $request->input('endDate')) {
         $startDate = Date::conversion($request->input('startDate'));
         $endDate = Date::conversion($request->input('endDate'));
         $service = new HoursControlService();
         $reports = new Reports();
         $hours = $service->getHoursByDate($startDate, $endDate);
         $hours['workingHours'] = $reports->getTotalWorkingHoursByDate($startDate, $endDate);
     }
     return view('hours-control.report', ['hours' => $hours, 'startDate' => Date::conversion($startDate), 'endDate' => Date::conversion($endDate)]);
 }