Proyectos de Subversion LeadersLinked - Backend

Rev

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

Rev 15387 Rev 15389
Línea 1788... Línea 1788...
1788
                $select->columns(['total' => new Expression('COUNT(*)'), 'user_id']);
1788
                $select->columns(['total' => new Expression('COUNT(*)'), 'user_id']);
1789
                $select->from(CompanyMicrolearningCapsuleUserMapper::_TABLE);
1789
                $select->from(CompanyMicrolearningCapsuleUserMapper::_TABLE);
1790
                $select->where->equalTo('company_id', $topic->company_id);
1790
                $select->where->equalTo('company_id', $topic->company_id);
1791
                $select->where->equalTo('topic_id', $topic->id);
1791
                $select->where->equalTo('topic_id', $topic->id);
1792
                $select->group('user_id');
1792
                $select->group('user_id');
-
 
1793
                //echo $select->getSqlString($this->adapter->platform); 
Línea 1793... Línea 1794...
1793
                
1794
                
1794
                $records = $queryMapper->fetchAll($select);
1795
                $records = $queryMapper->fetchAll($select);
1795
                foreach($records as $record)
1796
                foreach($records as $record)
1796
                {
1797
                {
Línea 1808... Línea 1809...
1808
                $select->where->equalTo('topic_id', $topic->id);
1809
                $select->where->equalTo('topic_id', $topic->id);
1809
                $select->where->equalTo('type', CompanyMicrolearningUserProgress::TYPE_CAPSULE);
1810
                $select->where->equalTo('type', CompanyMicrolearningUserProgress::TYPE_CAPSULE);
1810
                $select->where->greaterThanOrEqualTo('progress', 100);
1811
                $select->where->greaterThanOrEqualTo('progress', 100);
1811
                $select->where->equalTo('completed', 1);
1812
                $select->where->equalTo('completed', 1);
1812
                $select->group('user_id');
1813
                $select->group('user_id');
-
 
1814
                $select->where->equalTo('user_id', 1789);
Línea 1813... Línea 1815...
1813
                
1815
                
Línea 1814... Línea 1816...
1814
                //echo $select->getSqlString($this->adapter->platform); exit;
1816
                //echo $select->getSqlString($this->adapter->platform); 
1815
 
1817
 
1816
                
1818
                
Línea 1831... Línea 1833...
1831
                $select->where->equalTo('topic_id', $topic->id);
1833
                $select->where->equalTo('topic_id', $topic->id);
1832
                $select->where->equalTo('type', CompanyMicrolearningUserProgress::TYPE_CAPSULE);
1834
                $select->where->equalTo('type', CompanyMicrolearningUserProgress::TYPE_CAPSULE);
1833
                $select->where->lessThan('progress', 100);
1835
                $select->where->lessThan('progress', 100);
1834
                $select->where->equalTo('completed', 0);
1836
                $select->where->equalTo('completed', 0);
1835
                $select->group('user_id');
1837
                $select->group('user_id');
-
 
1838
                $select->where->equalTo('user_id', 1789);
-
 
1839
                
-
 
1840
                //echo $select->getSqlString($this->adapter->platform); 
Línea 1836... Línea 1841...
1836
                
1841
                
1837
                
1842
                
1838
                $records = $queryMapper->fetchAll($select);
1843
                $records = $queryMapper->fetchAll($select);
Línea 1852... Línea 1857...
1852
                $select->where->equalTo('type', CompanyMicrolearningUserProgress::TYPE_CAPSULE);
1857
                $select->where->equalTo('type', CompanyMicrolearningUserProgress::TYPE_CAPSULE);
1853
                $select->group('user_id');
1858
                $select->group('user_id');
Línea 1854... Línea 1859...
1854
                
1859
                
-
 
1860
                
-
 
1861
                $records = $queryMapper->fetchAll($select);
-
 
1862
                $select->where->equalTo('user_id', 1789);
-
 
1863
                
-
 
1864
                //echo $select->getSqlString($this->adapter->platform); 
-
 
1865
                
-
 
1866
               // exit;
1855
                
1867
                
1856
                $records = $queryMapper->fetchAll($select);
1868
                
1857
                foreach($records as $record)
1869
                foreach($records as $record)
Línea 2225... Línea 2237...
2225
                $data = [
2237
                $data = [
2226
                    'items' => [],
2238
                    'items' => [],
2227
                ];
2239
                ];
Línea 2228... Línea -...
2228
                
-
 
2229
                
-
 
2230
                
-
 
2231
 
-
 
2232
                
-
 
2233
                
2240
                
2234
                
2241
                
2235
                $queryMapper = QueryMapper::getInstance($this->adapter);
2242
                $queryMapper = QueryMapper::getInstance($this->adapter);
2236
                $sql = $queryMapper->getSql();
2243
                $sql = $queryMapper->getSql();
2237
                $select = $sql->select();
2244
                $select = $sql->select();
2238
                $select->columns(['access', 'paid_from', 'paid_to' ]);
2245
                $select->columns(['capsule_id', 'access', 'paid_from', 'paid_to' ]);
2239
                $select->from(['tb1' => CompanyMicrolearningCapsuleUserMapper::_TABLE] );
2246
                $select->from(['tb1' => CompanyMicrolearningCapsuleUserMapper::_TABLE] );
2240
                $select->join(['tb2' => CompanyMicrolearningTopicMapper::_TABLE], 'tb1.company_id = tb2.company_id AND tb1.topic_id = tb2.id', ['topic' => 'name']);
-
 
2241
                $select->join(['tb3' => CompanyMicrolearningCapsuleMapper::_TABLE], 'tb1.company_id = tb3.company_id AND tb1.topic_id = tb3.topic_id AND tb1.capsule_id = tb3.id', ['capsule' => 'name']);
-
 
2242
                $select->join(['tb4' => CompanyMicrolearningUserProgressMapper::_TABLE], 
-
 
2243
                    'tb1.company_id = tb2.company_id AND tb1.topic_id = tb4.topic_id AND tb1.capsule_id = tb4.capsule_id AND tb1.user_id = tb4.user_id', 
2247
                $select->join(['tb2' => CompanyMicrolearningTopicMapper::_TABLE], 'tb1.company_id = tb2.company_id AND tb1.topic_id = tb2.id', ['topic' => 'name']);
2244
                    ['progress', 'total_slides' , 'view_slides', 'completed', 'added_on','updated_on'], Select::JOIN_RIGHT_OUTER);
2248
                $select->join(['tb3' => CompanyMicrolearningCapsuleMapper::_TABLE], 'tb1.company_id = tb3.company_id AND tb1.topic_id = tb3.topic_id AND tb1.capsule_id = tb3.id', ['capsule' => 'name']);
2245
                $select->where->equalTo('tb1.company_id', $currentCompany->id);
-
 
2246
                $select->where->equalTo('tb1.user_id', $user->id);
2249
                $select->where->equalTo('tb1.company_id', $currentCompany->id);
2247
                $select->where->equalTo('tb4.type', CompanyMicrolearningUserProgress::TYPE_CAPSULE);
2250
                $select->where->equalTo('tb1.user_id', $user->id);
Línea 2248... Línea 2251...
2248
                $select->order('tb2.name ASC, tb3.name ASC');
2251
                $select->order('tb2.name ASC, tb3.name ASC');
2249
                
2252
 
2250
 
2253
 
2251
                $items = [];
2254
                $items = [];
-
 
2255
                $records = $queryMapper->fetchAll($select);
2252
                $records = $queryMapper->fetchAll($select);
2256
                foreach($records as $record)
2253
                foreach($records as $record)
-
 
Línea 2254... Línea 2257...
2254
                {
2257
                {
2255
                    
2258
                    $capsule_id = $record['capsule_id'];
2256
    
2259
 
2257
                    
2260
                    
2258
                    $item = [
2261
                    $item = [
2259
                        'topic' => ucwords(strtolower($record['topic'])),
2262
                        'topic' => ucwords(strtolower($record['topic'])),
2260
                        'capsule' => ucwords(strtolower($record['capsule'])),
2263
                        'capsule' => ucwords(strtolower($record['capsule'])),
2261
                        'progress' => $record['progress'],
2264
                        'progress' => 0,
2262
                        'total_slides' => $record['total_slides'],
2265
                        'total_slides' => 0,
Línea 2263... Línea 2266...
2263
                        'view_slides' => $record['view_slides'],
2266
                        'view_slides' => 0,
Línea 2264... Línea 2267...
2264
                        'completed' => $record['completed'],
2267
                        'completed' => 'No',
-
 
2268
                        'added_on' => '',
-
 
2269
                        'updated_on' => '',
-
 
2270
                        
-
 
2271
                    ];
-
 
2272
                    
-
 
2273
                    $items[ $record['capsule_id'] ] =  $item;
-
 
2274
                }
-
 
2275
 
-
 
2276
                
-
 
2277
                
-
 
2278
                $queryMapper = QueryMapper::getInstance($this->adapter);
-
 
2279
                $sql = $queryMapper->getSql();
-
 
2280
                $select = $sql->select(CompanyMicrolearningUserProgressMapper::_TABLE);
-
 
2281
                $select->columns(['capsule_id', 'progress', 'total_slides' , 'view_slides', 'completed', 'added_on','updated_on']);
-
 
2282
                $select->where->equalTo('company_id', $currentCompany->id);
-
 
2283
                $select->where->equalTo('user_id', $user->id);
-
 
2284
                $select->where->equalTo('type', CompanyMicrolearningUserProgress::TYPE_CAPSULE);
-
 
2285
 
-
 
2286
                
-
 
2287
                
-
 
2288
                
-
 
2289
                $records = $queryMapper->fetchAll($select);
-
 
2290
                
-
 
2291
                
-
 
2292
         
-
 
2293
                foreach($records as $record)
-
 
2294
                {
-
 
2295
                    $capsule_id = $record['capsule_id'];
-
 
2296
                    $dt_added_on = \DateTime::createFromFormat('Y-m-d H:i:s', $record['added_on']);
-
 
2297
                    $added_on = $dt_added_on->format('d/m/Y h:i a');
-
 
2298
                    
-
 
2299
                    $dt_updated_on = \DateTime::createFromFormat('Y-m-d H:i:s', $record['updated_on']);
-
 
2300
                    $updated_on = $dt_updated_on->format('d/m/Y h:i a');
-
 
2301
                    
-
 
2302
                    
2265
                        'added_on' => $record['added_on'],
2303
                    $items[ $capsule_id ]['progress'] = $record['progress'];
Línea 2266... Línea 2304...
2266
                        'updated_on' => $record['updated_on'],
2304
                    $items[ $capsule_id ]['total_slides'] = $record['total_slides'];
2267
                        
2305
                    $items[ $capsule_id ]['view_slides'] = $record['view_slides'];
Línea 2268... Línea 2306...
2268
                    ];
2306
                    $items[ $capsule_id ]['completed'] = $record['completed'];
2269
                    
2307
                    $items[ $capsule_id ]['added_on'] = $added_on;
2270
                    array_push($items, $item);
2308
                    $items[ $capsule_id ]['updated_on'] = $updated_on;
Línea 2347... Línea 2385...
2347
            
2385
            
2348
            
2386
            
2349
            $queryMapper = QueryMapper::getInstance($this->adapter);
2387
            $queryMapper = QueryMapper::getInstance($this->adapter);
2350
            $sql = $queryMapper->getSql();
2388
            $sql = $queryMapper->getSql();
2351
            $select = $sql->select();
2389
            $select = $sql->select();
2352
            $select->columns(['access', 'paid_from', 'paid_to' ]);
2390
            $select->columns(['capsule_id', 'access', 'paid_from', 'paid_to' ]);
2353
            $select->from(['tb1' => CompanyMicrolearningCapsuleUserMapper::_TABLE] );
2391
            $select->from(['tb1' => CompanyMicrolearningCapsuleUserMapper::_TABLE] );
2354
            $select->join(['tb2' => CompanyMicrolearningTopicMapper::_TABLE], 'tb1.company_id = tb2.company_id AND tb1.topic_id = tb2.id', ['topic' => 'name']);
-
 
2355
            $select->join(['tb3' => CompanyMicrolearningCapsuleMapper::_TABLE], 'tb1.company_id = tb3.company_id AND tb1.topic_id = tb3.topic_id AND tb1.capsule_id = tb3.id', ['capsule' => 'name']);
-
 
2356
            $select->join(['tb4' => CompanyMicrolearningUserProgressMapper::_TABLE],
-
 
2357
                'tb1.company_id = tb2.company_id AND tb1.topic_id = tb4.topic_id AND tb1.capsule_id = tb4.capsule_id AND tb1.user_id = tb4.user_id',
2392
            $select->join(['tb2' => CompanyMicrolearningTopicMapper::_TABLE], 'tb1.company_id = tb2.company_id AND tb1.topic_id = tb2.id', ['topic' => 'name']);
2358
                ['progress', 'total_slides' , 'view_slides', 'completed', 'added_on','updated_on'], Select::JOIN_RIGHT_OUTER);
2393
            $select->join(['tb3' => CompanyMicrolearningCapsuleMapper::_TABLE], 'tb1.company_id = tb3.company_id AND tb1.topic_id = tb3.topic_id AND tb1.capsule_id = tb3.id', ['capsule' => 'name']);
2359
            $select->where->equalTo('tb1.company_id', $currentCompany->id);
-
 
2360
            $select->where->equalTo('tb1.user_id', $user->id);
2394
            $select->where->equalTo('tb1.company_id', $currentCompany->id);
Línea 2361... Línea 2395...
2361
            $select->where->equalTo('tb4.type', CompanyMicrolearningUserProgress::TYPE_CAPSULE);
2395
            $select->where->equalTo('tb1.user_id', $user->id);
2362
            $select->order('tb2.name ASC, tb3.name ASC');
2396
            $select->order('tb2.name ASC, tb3.name ASC');
2363
            
2397
            
2364
            
2398
            
-
 
2399
            $items = [];
Línea 2365... Línea 2400...
2365
            $items = [];
2400
            $records = $queryMapper->fetchAll($select);
2366
            $records = $queryMapper->fetchAll($select);
2401
            foreach($records as $record)
2367
            foreach($records as $record)
2402
            {
2368
            {
2403
                $capsule_id = $record['capsule_id'];
2369
                
2404
                
2370
                
2405
                
2371
                $item = [
2406
                $item = [
2372
                    'topic' => $record['topic'],
2407
                    'topic' => ucwords(strtolower($record['topic'])),
2373
                    'capsule' => $record['capsule'],
2408
                    'capsule' => ucwords(strtolower($record['capsule'])),
Línea 2374... Línea 2409...
2374
                    'progress' => $record['progress'],
2409
                    'progress' => 0,
Línea 2375... Línea 2410...
2375
                    'total_slides' => $record['total_slides'],
2410
                    'total_slides' => 0,
-
 
2411
                    'view_slides' => 0,
-
 
2412
                    'completed' => 'No',
-
 
2413
                    'added_on' => '',
-
 
2414
                    'updated_on' => '',
-
 
2415
                    
-
 
2416
                ];
-
 
2417
                
-
 
2418
                $items[ $record['capsule_id'] ] =  $item;
-
 
2419
            }
-
 
2420
            
-
 
2421
            
-
 
2422
            
-
 
2423
            $queryMapper = QueryMapper::getInstance($this->adapter);
-
 
2424
            $sql = $queryMapper->getSql();
-
 
2425
            $select = $sql->select(CompanyMicrolearningUserProgressMapper::_TABLE);
-
 
2426
            $select->columns(['capsule_id', 'progress', 'total_slides' , 'view_slides', 'completed', 'added_on','updated_on']);
-
 
2427
            $select->where->equalTo('company_id', $currentCompany->id);
-
 
2428
            $select->where->equalTo('user_id', $user->id);
-
 
2429
            $select->where->equalTo('type', CompanyMicrolearningUserProgress::TYPE_CAPSULE);
-
 
2430
            
-
 
2431
            
-
 
2432
            
-
 
2433
            
-
 
2434
            $records = $queryMapper->fetchAll($select);
-
 
2435
            
-
 
2436
            
-
 
2437
            
-
 
2438
            foreach($records as $record)
-
 
2439
            {
-
 
2440
                $capsule_id = $record['capsule_id'];
-
 
2441
                $dt_added_on = \DateTime::createFromFormat('Y-m-d H:i:s', $record['added_on']);
-
 
2442
                $added_on = $dt_added_on->format('d/m/Y h:i a');
-
 
2443
                
-
 
2444
                $dt_updated_on = \DateTime::createFromFormat('Y-m-d H:i:s', $record['updated_on']);
-
 
2445
                $updated_on = $dt_updated_on->format('d/m/Y h:i a');
2376
                    'view_slides' => $record['view_slides'],
2446
                
Línea -... Línea 2447...
-
 
2447
                
-
 
2448
                $items[ $capsule_id ]['progress'] = $record['progress'];
-
 
2449
                $items[ $capsule_id ]['total_slides'] = $record['total_slides'];
2377
                    'completed' => $record['completed'],
2450
                $items[ $capsule_id ]['view_slides'] = $record['view_slides'];
Línea 2378... Línea 2451...
2378
                    'added_on' => $record['added_on'],
2451
                $items[ $capsule_id ]['completed'] = $record['completed'];
2379
                    'updated_on' => $record['updated_on'],
2452
                $items[ $capsule_id ]['added_on'] = $added_on;