Proyectos de Subversion LeadersLinked - Backend

Rev

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

Rev 17007 Rev 17008
Línea 12... Línea 12...
12
use Laminas\View\Model\JsonModel;
12
use Laminas\View\Model\JsonModel;
13
use LeadersLinked\Library\Functions;
13
use LeadersLinked\Library\Functions;
14
use LeadersLinked\Mapper\HabitUserMapper;
14
use LeadersLinked\Mapper\HabitUserMapper;
15
use LeadersLinked\Model\HabitUser;
15
use LeadersLinked\Model\HabitUser;
16
use LeadersLinked\Mapper\UserMapper;
16
use LeadersLinked\Mapper\UserMapper;
17
use LeadersLinked\Form\KnowledgeArea\HabitUserForm;
-
 
-
 
17
 
18
use LeadersLinked\Mapper\QueryMapper;
18
use LeadersLinked\Mapper\QueryMapper;
19
use Laminas\Paginator\Adapter\DbSelect;
19
use Laminas\Paginator\Adapter\DbSelect;
20
use Laminas\Paginator\Paginator;
20
use Laminas\Paginator\Paginator;
21
use LeadersLinked\Model\User;
21
use LeadersLinked\Form\Habit\HabitUserForm;
22
use LeadersLinked\Model\Company;
-
 
23
use LeadersLinked\Mapper\JobDescriptionMapper;
22
use LeadersLinked\Form\Habit\HabitUserUploadForm;
24
 
-
 
Línea 25... Línea 23...
25
 
23
 
Línea 26... Línea 24...
26
class HabitUserController extends AbstractActionController {
24
class HabitUserController extends AbstractActionController {
27
 
25
 
Línea 127... Línea 125...
127
                
125
                
128
               
126
               
129
 
127
 
130
                $acl = $this->getEvent()->getViewModel()->getVariable('acl');
128
                $acl = $this->getEvent()->getViewModel()->getVariable('acl');
131
                $allowAdd = $acl->isAllowed($currentUser->usertype_id, 'habits/users/add');
129
                $allowAdd = $acl->isAllowed($currentUser->usertype_id, 'habits/users/add');
Línea 132... Línea 130...
132
                $allowEdit = $acl->isAllowed($currentUser->usertype_id, 'habits/users/edit');
130
               // $allowEdit = $acl->isAllowed($currentUser->usertype_id, 'habits/users/edit');
Línea 133... Línea 131...
133
                $allowDelete = $acl->isAllowed($currentUser->usertype_id, 'habits/users/delete');
131
                $allowDelete = $acl->isAllowed($currentUser->usertype_id, 'habits/users/delete');
134
                $allowUpload = $acl->isAllowed($currentUser->usertype_id, 'habits/users/upload');
132
                //$allowUpload = $acl->isAllowed($currentUser->usertype_id, 'habits/users/upload');
135
      
133
      
136
              
134
              
137
                $items = [];
135
                $items = [];
-
 
136
                
138
                
137
                $queryMapper = QueryMapper::getInstance($this->adapter);
139
                $queryMapper = QueryMapper::getInstance($this->adapter);
138
                $select = $queryMapper->getSql()->select();
140
                $select = $queryMapper->getSql()->select();
139
                $select->columns(['role']);
141
                $select->columns(['role']);
140
                $select->from(['cu' => HabitUserMapper::_TABLE]);
142
                $select->from(['cu' => HabitUserMapper::_TABLE]);
141
                $select->join(['u' => UserMapper::_TABLE], 'cu.user_id = u.id',  ['uuid', 'first_name', 'last_name', 'email']);
143
                $select->join(['u' => UserMapper::_TABLE], 'cu.user_id = u.id',  ['uuid', 'first_name', 'last_name', 'email']);
142
            
Línea 165... Línea 164...
165
                    $item = [
164
                    $item = [
166
                        'first_name' => $record['first_name'],
165
                        'first_name' => $record['first_name'],
167
                        'last_name' => $record['last_name'],
166
                        'last_name' => $record['last_name'],
168
                        'email' => $record['email'],
167
                        'email' => $record['email'],
169
                        'actions' => [
168
                        'actions' => [
170
                            'link_edit' => $allowEdit ? $this->url()->fromRoute('habits/users/edit', ['id' => $record['uuid'] ]) : '',
169
                            //'link_edit' => $allowEdit ? $this->url()->fromRoute('habits/users/edit', ['id' => $record['uuid'] ]) : '',
171
                            'link_delete' => $allowDelete ? $this->url()->fromRoute('habits/users/delete', ['id' => $record['uuid'] ]) : '',
170
                            'link_delete' => $allowDelete ? $this->url()->fromRoute('habits/users/delete', ['id' => $record['uuid'] ]) : '',
172
                        ]
171
                        ]
173
                    ];
172
                    ];
Línea 174... Línea 173...
174
 
173
 
Línea 181... Línea 180...
181
                return new JsonModel([
180
                return new JsonModel([
182
                    'success' => true,
181
                    'success' => true,
183
                    'data' => [
182
                    'data' => [
184
                        'total' => $paginator->getTotalItemCount(),
183
                        'total' => $paginator->getTotalItemCount(),
185
                        'items' => $items,
184
                        'items' => $items,
186
                        'link_add' => $allowAdd ? $this->url()->fromRoute('habits/users/add', [] ) : '',
-
 
187
                        'link_upload' => $allowUpload ? $this->url()->fromRoute('habits/users/upload', [ ] ) : '',
-
 
188
                    ]
185
                    ]
189
                ]);
186
                ]);
190
            } else {
187
            } else {
Línea 191... Línea 188...
191
                
188
                
192
                
189
                
Línea 193... Línea 190...
193
                $form = new  HabitUserForm($this->adapter, $currentCompany->id);
190
                $form       = new HabitUserForm($this->adapter, $currentCompany->id);
194
                
191
 
195
 
192
 
196
                $this->layout()->setTemplate('layout/layout-backend');
193
                $this->layout()->setTemplate('layout/layout-backend');
197
                $viewModel = new ViewModel();
194
                $viewModel = new ViewModel();
-
 
195
                $viewModel->setTemplate('leaders-linked/habits/users.phtml');
198
                $viewModel->setTemplate('leaders-linked/knowledge-area-category-users/index.phtml');
196
                $viewModel->setVariables([
199
                $viewModel->setVariables([
197
                    'form'          =>  $form,
200
                    'form' =>  $form,
198
 
201
                ]);
199
                ]);
202
                return $viewModel;
200
                return $viewModel;
Línea 234... Línea 232...
234
                
232
                
235
                $userMapper = UserMapper::getInstance($this->adapter);
233
                $userMapper = UserMapper::getInstance($this->adapter);
Línea 236... Línea 234...
236
                $user = $userMapper->fetchOneByUuid($dataPost['user_id']);
234
                $user = $userMapper->fetchOneByUuid($dataPost['user_id']);
237
                
235
                
Línea 238... Línea 236...
238
                $habitUserMapper = HabitUserMapper::getInstance($this->adapter);
236
                $habitUserMapper = HabitUserMapper::getInstance($this->adapter);
239
                $habitUser = $habitUserMapper->fetchOneByCategoryIdAndUserId($knowledgeAreaCategory->id, $user->id);
237
                $habitUser = $habitUserMapper->fetchOneByCompanyIdAndUserId($currentCompany->id, $user->id);
240
                
238
                
241
                if($habitUser) {
239
                if($habitUser) {
242
                    return new JsonModel([
240
                    return new JsonModel([
243
                        'success' => false,
241
                        'success' => false,
Línea -... Línea 242...
-
 
242
                        'data' => 'ERROR_HABITS_USER_NOT_FOUND'
-
 
243
                    ]);
Línea 244... Línea 244...
244
                        'data' => 'ERROR_KNOWLEDGE_AREA_CATEGORY_USER_ALREADY_FOUND'
244
                }
-
 
245
                
245
                    ]);
246
   
246
                }
247
                
247
                
248
                
248
                
249
                $habitUser =  new HabitUser();
Línea 249... Línea 250...
249
                $habitUser =  new HabitUser();
250
                $habitUser->network_id  = $currentCompany->network_id;
Línea 250... Línea 251...
250
                $habitUser->category_id = $knowledgeAreaCategory->id;
251
                $habitUser->company_id  = $currentCompany->id;
Línea 251... Línea 252...
251
                $habitUser->user_id = $user->id;
252
                $habitUser->user_id     = $user->id;
252
                $habitUser->role = $dataPost['role'];
253
                $habitUser->access      = HabitUser::ACCESS_UNLIMITED;
253
                $habitUserMapper = HabitUserMapper::getInstance($this->adapter);
254
                $habitUserMapper        = HabitUserMapper::getInstance($this->adapter);
254
                
255
                
Línea 327... Línea 328...
327
        $habitUser = $habitUserMapper->fetchOneByCompanyIdAndUserId($currentCompany->id, $user->id);
328
        $habitUser = $habitUserMapper->fetchOneByCompanyIdAndUserId($currentCompany->id, $user->id);
Línea 328... Línea 329...
328
        
329
        
329
        if(!$habitUser) {
330
        if(!$habitUser) {
330
            return new JsonModel([
331
            return new JsonModel([
331
                'success' => false,
332
                'success' => false,
332
                'data' => 'ERROR_KNOWLEDGE_AREA_CATEGORY_USER_NOT_FOUND'
333
                'data' => 'ERROR_HABITS_USER_NOT_FOUND'
333
            ]);
334
            ]);
Línea 344... Línea 345...
344
 
345
 
345
 
346
 
Línea 346... Línea -...
346
            if ($form->isValid()) {
-
 
347
                $dataPost = (array) $form->getData();
347
            if ($form->isValid()) {
Línea 348... Línea 348...
348
                
348
                $dataPost = (array) $form->getData();
Línea 349... Línea 349...
349
                $habitUser->role = $dataPost['role'];
349
                
Línea 350... Línea 350...
350
 
350
         
351
 
351
 
352
                if($habitUserMapper->update($habitUser)) {
352
                if($habitUserMapper->update($habitUser)) {
353
                    
353
                    
Línea 412... Línea 412...
412
        $request = $this->getRequest();
412
        $request = $this->getRequest();
413
        $uuid = $this->params()->fromRoute('id');
413
        $uuid = $this->params()->fromRoute('id');
414
        $user_id = $this->params()->fromRoute('user_id');
414
        $user_id = $this->params()->fromRoute('user_id');
Línea 415... Línea -...
415
        
-
 
416
        
-
 
417
        $knowledgeAreaCategoryMapper = HabitMapper::getInstance($this->adapter);
-
 
418
        $knowledgeAreaCategory = $knowledgeAreaCategoryMapper->fetchOneByUuid($uuid);
-
 
419
        
-
 
420
        if(!$knowledgeAreaCategory) {
-
 
421
            return new JsonModel([
-
 
422
                'success' => false,
-
 
423
                'data' => 'ERROR_KNOWLEDGE_AREA_CATEGORY_NOT_FOUND'
-
 
424
            ]);
-
 
425
        }
-
 
426
        
-
 
427
        if($knowledgeAreaCategory->company_id != $currentCompany->id) {
-
 
428
            return new JsonModel([
-
 
429
                'success' => false,
-
 
430
                'data' => 'ERROR_KNOWLEDGE_AREA_CATEGORY_IS_OTHER_COMPANY'
-
 
431
            ]);
-
 
432
        }
415
        
433
        
416
        
Línea 434... Línea 417...
434
        $userMapper = UserMapper::getInstance($this->adapter);
417
        $userMapper = UserMapper::getInstance($this->adapter);
435
        $user = $userMapper->fetchOneByUuid($user_id);
418
        $user = $userMapper->fetchOneByUuid($uuid);
436
        
419
        
437
        if(!$user) {
420
        if(!$user) {
438
            return new JsonModel([
421
            return new JsonModel([
Línea 439... Línea 422...
439
                'success' => false,
422
                'success' => false,
Línea 440... Línea 423...
440
                'data' => 'ERROR_USER_NOT_FOUND'
423
                'data' => 'ERROR_USER_NOT_FOUND'
441
            ]);
424
            ]);
Línea 442... Línea 425...
442
            
425
            
443
        }
426
        }
444
        
427
        
445
        $habitUserMapper = HabitUserMapper::getInstance($this->adapter);
428
        $habitUserMapper = HabitUserMapper::getInstance($this->adapter);
446
        $habitUser = $habitUserMapper->fetchOneByCategoryIdAndUserId($knowledgeAreaCategory->id, $user->id);
429
        $habitUser = $habitUserMapper->fetchOneByCompanyIdAndUserId($currentCompany->id, $user->id);
447
        
430
        
Línea -... Línea 431...
-
 
431
        if(!$habitUser) {
Línea -... Línea 432...
-
 
432
            return new JsonModel([
Línea 448... Línea 433...
448
        if(!$habitUser) {
433
                'success' => false,
Línea 449... Línea 434...
449
            return new JsonModel([
434
                'data' => 'ERROR_HABITS_USER_NOT_FOUND'
450
                'success' => false,
435
            ]);
Línea 451... Línea 436...
451
                'data' => 'ERROR_KNOWLEDGE_AREA_CATEGORY_USER_NOT_FOUND'
436
        }
452
            ]);
437
        
453
        }
438
  
454
        
439