Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 16779 | Rev 16788 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 16779 Rev 16787
Línea 143... Línea 143...
143
                
143
                
Línea 144... Línea -...
144
                
-
 
145
                
144
                
146
                $items = [];
145
                
Línea 147... Línea 146...
147
                
146
                $items = [];
Línea 148... Línea 147...
148
                $level = 0;
147
                
Línea 174... Línea 173...
174
                $this->layout()->setTemplate('layout/layout-backend');
173
                $this->layout()->setTemplate('layout/layout-backend');
175
                $viewModel = new ViewModel();
174
                $viewModel = new ViewModel();
176
                $viewModel->setTemplate('leaders-linked/jobs-description/index.phtml');
175
                $viewModel->setTemplate('leaders-linked/jobs-description/index.phtml');
177
                $viewModel->setVariables([
176
                $viewModel->setVariables([
178
                    'form' => $form,
177
                    'form' => $form,
-
 
178
                    'company_name' => $currentCompany->name,
Línea 179... Línea 179...
179
 
179
 
180
                    
180
                    
181
                ]);
181
                ]);
Línea 187... Línea 187...
187
                'data' => 'ERROR_METHOD_NOT_ALLOWED'
187
                'data' => 'ERROR_METHOD_NOT_ALLOWED'
188
            ]);
188
            ]);
189
        }
189
        }
190
    }
190
    }
Línea -... Línea 191...
-
 
191
    
191
    
192
    
192
    /**
193
    /**
193
     * 
194
     * 
194
     * @param Company $currentCompany
195
     * @param Company $currentCompany
195
     * @param JobDescriptionMapper $jobDescriptionMapper
196
     * @param JobDescriptionMapper $jobDescriptionMapper
Línea 238... Línea 239...
238
     * 
239
     * 
239
     * @param User $currentUser
240
     * @param User $currentUser
240
     * @param Company $currentCompany
241
     * @param Company $currentCompany
241
     * @param JobDescriptionMapper $jobDescriptionMapper
242
     * @param JobDescriptionMapper $jobDescriptionMapper
242
     * @param int $jobDescriptionIdBoss
243
     * @param int $jobDescriptionIdBoss
243
     * @param int $level
-
 
244
     * @return array
244
     * @return array
245
     */
245
     */
246
    private function recursiveLoad($currentUser, $currentCompany, $jobDescriptionMapper, $jobDescriptionIdBoss, $level)
246
    private function recursiveLoad($currentUser, $currentCompany, $jobDescriptionMapper, $jobDescriptionIdBoss)
247
    {
247
    {
248
        $acl            = $this->getEvent()->getViewModel()->getVariable('acl');
248
        $acl            = $this->getEvent()->getViewModel()->getVariable('acl');
249
        $allowAdd       = $acl->isAllowed($currentUser->usertype_id, 'jobs-description/add') ? 1 : 0;
249
        $allowAdd       = $acl->isAllowed($currentUser->usertype_id, 'jobs-description/add') ? 1 : 0;
250
        $allowEdit      = $acl->isAllowed($currentUser->usertype_id, 'jobs-description/edit') ? 1 : 0;
250
        $allowEdit      = $acl->isAllowed($currentUser->usertype_id, 'jobs-description/edit') ? 1 : 0;
251
        $allowDelete    = $acl->isAllowed($currentUser->usertype_id, 'jobs-description/delete') ? 1 : 0;
251
        $allowDelete    = $acl->isAllowed($currentUser->usertype_id, 'jobs-description/delete') ? 1 : 0;
Línea 258... Línea 258...
258
        if ($currentCompany) {
258
        if ($currentCompany) {
259
            $records = $jobDescriptionMapper->fetchAllByCompanyIdAndJobDescriptionIdBoss($currentCompany->id, $jobDescriptionIdBoss);
259
            $records = $jobDescriptionMapper->fetchAllByCompanyIdAndJobDescriptionIdBoss($currentCompany->id, $jobDescriptionIdBoss);
260
        } else {
260
        } else {
261
            $records = $jobDescriptionMapper->fetchAllDefaultAndJobDescriptionIdBoss($jobDescriptionIdBoss);
261
            $records = $jobDescriptionMapper->fetchAllDefaultAndJobDescriptionIdBoss($jobDescriptionIdBoss);
262
        }
262
        }
263
        
-
 
264
        
263
 
265
        $nextLevel = $level + 1;
-
 
Línea 266... Línea 264...
266
        
264
        
267
        foreach($records as $record)
265
        foreach($records as $record)
Línea 268... Línea 266...
268
        {
266
        {
269
            
267
            
270
            
268
            
271
            
269
            
272
            array_push($items, [
270
            array_push($items, [
273
                'uuid' => $record->uuid,
-
 
274
                'name' => $record->name,
271
                'uuid' => $record->uuid,
275
                'children' => $this->recursiveLoad($currentUser, $currentCompany, $jobDescriptionMapper, $record->id, $nextLevel),
272
                'name' => $record->name,
276
                'status' => $record->status,
273
                'children' => $this->recursiveLoad($currentUser, $currentCompany, $jobDescriptionMapper, $record->id),
277
                'level' => $level,
274
                'status' => $record->status,
278
                'link_report' => $allowReport ? $this->url()->fromRoute('jobs-description/report', ['id' => $record->uuid]) : '',
275
                'link_report' => $allowReport ? $this->url()->fromRoute('jobs-description/report', ['id' => $record->uuid]) : '',
Línea 388... Línea 385...
388
                
385
                
Línea 389... Línea -...
389
            }
-
 
390
            
-
 
391
            
386
            }
392
            
-
 
393
 
387
            
394
 
-
 
395
            $jobDescriptionMapper = JobDescriptionMapper::getInstance($this->adapter);
-
 
396
            if($currentCompany) {
-
 
Línea 397... Línea 388...
397
                $records = $jobDescriptionMapper->fetchAllActiveByCompanyId($currentCompany->id);
388
            
Línea 398... Línea 389...
398
            } else {
389
            
399
                $jobDescriptionMapper->fetchAllActiveByDefault();
390
            $jobDescriptionMapper = JobDescriptionMapper::getInstance($this->adapter);
400
            }
391
            $records = $jobDescriptionMapper->fetchAllByCompanyId($currentCompany->id);
401
            
392
            
Línea 402... Línea 393...
402
            $jobsDescription = [];
393
            $jobsDescription = [];
Línea 427... Línea 418...
427
            $form->setData($dataPost);
418
            $form->setData($dataPost);
Línea 428... Línea 419...
428
 
419
 
429
            if ($form->isValid()) {
420
            if ($form->isValid()) {
Línea 430... Línea -...
430
                $jobDescriptionMapper = JobDescriptionMapper::getInstance($this->adapter);
-
 
431
                
421
                $jobDescriptionMapper = JobDescriptionMapper::getInstance($this->adapter);
432
                $position =  0;
422
                
433
                $job_description_boss_id = 0;
423
                $dataPost = (array) $form->getData();
434
                
-
 
Línea 435... Línea 424...
435
                $id = $this->params()->fromRoute('id');
424
 
436
                if($id) {
425
                if(!empty($dataPost['job_description_id_boss'])) {
437
                    
426
                    
438
                    $jobDescriptionBoos = $jobDescriptionMapper->fetchOneByUuid($id);
-
 
-
 
427
                    $jobDescriptionBoos = $jobDescriptionMapper->fetchOneByUuid(Functions::sanitizeFilterString($dataPost['job_description_id_boss']));
439
                    if($jobDescriptionBoos && $jobDescriptionBoos->company_id == $currentCompany->id) {
428
                    if($jobDescriptionBoos && $jobDescriptionBoos->company_id == $currentCompany->id) {
440
                        $job_description_boss_id = $jobDescriptionBoos->id;
429
                        $dataPost['job_description_id_boss'] = $jobDescriptionBoos->id;
Línea 441... Línea 430...
441
                        
430
                    } else {
Línea 442... Línea -...
442
                        $position = $jobDescriptionMapper->fetchMaxPositionByJobDescriptionIdBoss($jobDescriptionBoos->id);
-
 
-
 
431
                        $dataPost['job_description_id_boss'] = 0;
443
                   }
432
                    }
Línea 444... Línea 433...
444
                    
433
                    
445
                    
434
                    
446
                }
-
 
447
                
-
 
-
 
435
                }
Línea 448... Línea 436...
448
                
436
                
449
                $dataPost = (array) $form->getData();
437
                
450
                $dataPost['status'] = empty($dataPost['status']) ? JobDescription::STATUS_INACTIVE : $dataPost['status'];
438
               
Línea 630... Línea 618...
630
            if ($form->isValid()) {
618
            if ($form->isValid()) {
Línea 631... Línea 619...
631
            
619
            
-
 
620
                
-
 
621
                
-
 
622
                $dataPost = (array) $form->getData();
-
 
623
                if(!empty($dataPost['job_description_id_boss'])) {
-
 
624
                    
-
 
625
                    $jobDescriptionBoos = $jobDescriptionMapper->fetchOneByUuid(Functions::sanitizeFilterString($dataPost['job_description_id_boss']));
-
 
626
                    if($jobDescriptionBoos && $jobDescriptionBoos->company_id == $currentCompany->id) {
-
 
627
                        $dataPost['job_description_id_boss'] = $jobDescriptionBoos->id;
-
 
628
                    } else {
-
 
629
                        $dataPost['job_description_id_boss'] = 0;
-
 
630
                    }
Línea 632... Línea 631...
632
                
631
                    
633
                
632
                    
Línea 634... Línea 633...
634
                $dataPost = (array) $form->getData();
633
                }
Línea 840... Línea 839...
840
                    ]);
839
                    ]);
841
                }
840
                }
Línea 842... Línea 841...
842
                
841
                
-
 
842
                
-
 
843
            }
-
 
844
            
-
 
845
            
-
 
846
            $jobDescriptionMapper = JobDescriptionMapper::getInstance($this->adapter);
-
 
847
            $records = $jobDescriptionMapper->fetchAllByCompanyId($currentCompany->id);
-
 
848
            
-
 
849
            $jobsDescription = [];
-
 
850
            
-
 
851
            foreach ($records as $record)
-
 
852
            {
-
 
853
                if($jobDescription->id == $record->id) {
-
 
854
                    continue;
-
 
855
                }
-
 
856
                
-
 
857
                $jobsDescription[ $record->uuid ] = $record->name;
-
 
858
            }
-
 
859
            
-
 
860
            $job_description_id_boss = '';
-
 
861
            if($jobDescription->job_description_id_boss) {
-
 
862
                $jobDescriptionBoss = $jobDescriptionMapper->fetchOne($jobDescription->job_description_id_boss);
-
 
863
                if($jobDescriptionBoss) {
-
 
864
                    $job_description_id_boss = $jobDescriptionBoss->uuid;
Línea 843... Línea 865...
843
                
865
                }
-
 
866
            }
844
            }
867
 
845
 
868
            $data = [
846
            $data = [
869
                'id' => $jobDescription->uuid,
847
                'name' => $jobDescription->name, 
870
                'name' => $jobDescription->name, 
848
                'functions' => $jobDescription->functions,
871
                'functions' => $jobDescription->functions,
849
                'objectives' => $jobDescription->objectives,
872
                'objectives' => $jobDescription->objectives,
850
                'status' => $jobDescription->status,
873
                'status' => $jobDescription->status,
851
                'competencies_selected' => [],
874
                'competencies_selected' => [],
-
 
875
                'behaviors' => $behaviors,
-
 
876
                'competency_types' => $competencyTypes,
852
                'behaviors' => $behaviors,
877
                'competencies' => $competencies,
Línea 853... Línea 878...
853
                'competency_types' => $competencyTypes,
878
                'jobs_description' => $jobsDescription,
854
                'competencies' => $competencies,
879
                'job_description_id_boss' => $job_description_id_boss,
855
            ]; 
880
            ]; 
Línea 1406... Línea 1431...
1406
 
1431
 
1407
        
1432
        
Línea 1408... Línea -...
1408
        return $pdf->Output('S');
-
 
1409
    }
1433
        return $pdf->Output('S');
1410
    
-
 
1411
    
1434
    }