'1698994736-a87141f6-a81c-42f8-b434-92ae921922ba', '1702455019-ac0e6e08-5289-4839-b88a-7752b829a382'=>'1698994736-a87141f6-a81c-42f8-b434-92ae921922ba', '1702455537-8f07f1a3-92c2-44c6-984d-7ef1d5d47f2a'=>'1698994736-a87141f6-a81c-42f8-b434-92ae921922ba', '1702714981-fa484239-33a0-4778-b576-b00e07df9c8b'=>'1698994736-a87141f6-a81c-42f8-b434-92ae921922ba', '1702716426-98338267-5eae-4962-85f2-81f98bd0f64a'=>'1698994736-a87141f6-a81c-42f8-b434-92ae921922ba', '1702719366-9288f4c5-5787-4f6c-a141-d2757d2b38db'=>'1698994736-a87141f6-a81c-42f8-b434-92ae921922ba', '1702989777-2d42501a-562c-419e-a297-0aeafe639c11'=>'1698994736-a87141f6-a81c-42f8-b434-92ae921922ba', '1703129045-bdc895aa-e80f-44d2-b1c0-43ce250dca5c'=>'1698994736-a87141f6-a81c-42f8-b434-92ae921922ba', '1703129585-6c86cb8a-f81c-493c-ac90-6a0043666ac7'=>'1698994736-a87141f6-a81c-42f8-b434-92ae921922ba', '1703303143-bf3e3c97-fc8b-41d4-b962-a75c0f993a2a'=>'1698994736-a87141f6-a81c-42f8-b434-92ae921922ba', '1702022681-b38d5aa9-8b91-441d-aea8-f0955b98404a'=>'1694702267-90acc1d9-78ea-400d-b0ee-4c4cdb454fbd', '1701415380-ef335bf9-d647-4252-8da4-ae7f18c0d148'=>'1694702267-90acc1d9-78ea-400d-b0ee-4c4cdb454fbd', '1700137053-4f53cfa9-95d2-48ac-bf01-94e9515585a0'=>'1694702267-90acc1d9-78ea-400d-b0ee-4c4cdb454fbd', '1700123153-b87591f8-69df-421d-ae6a-37017ce317a6'=>'1694702267-90acc1d9-78ea-400d-b0ee-4c4cdb454fbd', '1700043821-36f95d8a-077c-4bc3-b18a-cfcb12012584'=>'1694702267-90acc1d9-78ea-400d-b0ee-4c4cdb454fbd', '1700035409-a57198b7-676a-452c-bf9e-dd19b90d52a9'=>'1694702267-90acc1d9-78ea-400d-b0ee-4c4cdb454fbd', '1702456854-949a0259-a019-40df-b6ed-38f02db5e5a5'=>'1694702267-90acc1d9-78ea-400d-b0ee-4c4cdb454fbd', '1701928907-14a42829-e9fa-430a-a1f9-2ce481c8f772'=>'1694702267-90acc1d9-78ea-400d-b0ee-4c4cdb454fbd',]; $positions = ['1702035093-40410d84-2e3e-403a-bf47-9978e9cdc160'=>'3053', '1702455019-ac0e6e08-5289-4839-b88a-7752b829a382'=>'3053', '1702455537-8f07f1a3-92c2-44c6-984d-7ef1d5d47f2a'=>'3053', '1702714981-fa484239-33a0-4778-b576-b00e07df9c8b'=>'3053', '1702716426-98338267-5eae-4962-85f2-81f98bd0f64a'=>'3053', '1702719366-9288f4c5-5787-4f6c-a141-d2757d2b38db'=>'3053', '1702989777-2d42501a-562c-419e-a297-0aeafe639c11'=>'3053', '1703129045-bdc895aa-e80f-44d2-b1c0-43ce250dca5c'=>'3053', '1703129585-6c86cb8a-f81c-493c-ac90-6a0043666ac7'=>'3053', '1703303143-bf3e3c97-fc8b-41d4-b962-a75c0f993a2a'=>'3053', '1702022681-b38d5aa9-8b91-441d-aea8-f0955b98404a'=>'11711', '1701415380-ef335bf9-d647-4252-8da4-ae7f18c0d148'=>'11711', '1700137053-4f53cfa9-95d2-48ac-bf01-94e9515585a0'=>'11711', '1700123153-b87591f8-69df-421d-ae6a-37017ce317a6'=>'11711', '1700043821-36f95d8a-077c-4bc3-b18a-cfcb12012584'=>'11711', '1700035409-a57198b7-676a-452c-bf9e-dd19b90d52a9'=>'11711', '1702456854-949a0259-a019-40df-b6ed-38f02db5e5a5'=>'11711', '1701928907-14a42829-e9fa-430a-a1f9-2ce481c8f772'=>'11711', ]; $updatedContacts = []; foreach($contacts as $cid => $uid) { print_r($uid); $access_token = User::where('user_id', $uid)->first()->access_token; print_r($access_token); print_r(['id' => $cid, 'position'=> $positions[$cid], 'is_verified' => true ]); $response = LambdaRequest::postrequest('contact', 'contact/update', ['id' => $cid, 'position'=> $positions[$cid], 'is_verified' => true ], $access_token ); print_r($response); $updatedContacts[] = $response->data->item; } $allcourses = []; $courses = LambdaRequest::getrequest('lms', 'courses/get_all', ['status' => 'active'], env('LAMBDA_ACCESS_TOKEN', 'default_value')); foreach($courses->data->items as $course) { unset($course->subscribed_users); $lessons = LambdaRequest::getrequest('lms', 'lessons/list', ['id'=>$course->id, 'partition' => 'rapport-crestroad'], env('LAMBDA_ACCESS_TOKEN', 'default_value')); $articles = []; $quizs = []; foreach($lessons->data->lessons as $lesson){ foreach($lesson->articles as $article){ if($article->type == 'article') { $articles[] = $article->entity_id; } if($article->type == 'quiz') { $quizs[] = $article->entity_id; } } } $course->articles = $articles; $course->quizs = $quizs; $allcourses[$course->id] = $course; } foreach($updatedContacts as $item){ if(!isset($parents[$item->hierarchy])) { $hierarchy = LambdaRequest::getrequest('ums', 'hierarchy/get_one', ['id' => $item->hierarchy ], env('LAMBDA_ACCESS_TOKEN', 'default_value')); $hierarchy = $hierarchy->data->item; $parents[$item->hierarchy] = $hierarchy->parents . '#' . $item->hierarchy; } $item = (array)$item; $counts = []; if(isset($item['completed_articles']) && count($item['completed_articles']) > 0 ) { foreach($allcourses as $course) { $completed_articles = array_intersect($course->articles, $item['completed_articles']); $counts[$course->id]['articles'] = count($completed_articles); foreach($completed_articles as $completed_article) { DB::table("lms_courses_completion")->updateOrInsert(['contact_id'=>$item['id'],'course_id'=>$course->id,'article_id'=>$completed_article], ['type'=>'articles', 'total_articles' => 3]); } $completed_articles = array_intersect($course->quizs, $item['completed_articles']); $counts[$course->id]['quiz'] = count($completed_articles); foreach($completed_articles as $completed_article) { DB::table("lms_courses_completion")->updateOrInsert(['contact_id'=>$item['id'],'course_id'=>$course->id,'article_id'=>$completed_article], ['type'=>'quiz', 'total_articles' => 3]); } } } $data = ['user_id' => $item['user_id'], 'hierarchy_id' => $item['hierarchy'], 'name' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['name']), 'phone' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['phone']), 'alternate_phone' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['alternate_phone']), 'email' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['email']), 'city' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['city']), 'state' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['state']), 'language' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['language']), 'highlight_qualification' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['highlight_qualification']), 'type_of_setup' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['type_of_setup']), 'designation' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['designation']), 'clinic_institute_name' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['clinic_institute_name']), 'date_of_birth' => $item['date_of_birth'], 'parents' => $parents[ $item['hierarchy'] ], 'rep_name' => $item['user_info']->name, 'employee_code' => $item['user_info']->employee_code, 'english_article_count' => isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']) && isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['articles']) ? $counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['articles'] : 0, 'english_quiz_count' => isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']) && isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['quiz']) ? $counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['quiz'] : 0, 'hindi_article_count' => isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']) && isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['articles']) ? $counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['articles'] : 0, 'hindi_quiz_count' => isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']) && isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['quiz']) ? $counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['quiz'] : 0, ]; DB::table("lms_users")->updateOrInsert(['contact_id' => $item['id'] ], $data); print_r($data); } // $search = ['type' => 'lmsuser']; // $response = LambdaRequest::getrequest('contact', 'contact/get_all', ['start' => 0, 'length' => 9999, 'belowme' => true, 'search' => json_encode($search), 'keyword' => '', 'source' => 'dynamodb', 'fields' => json_encode(['completed_articles','user_id','alternate_phone','city','state','language','highlight_qualification','type_of_setup','designation','clinic_institute_name','date_of_birth','hierarchy', 'user_info']) ], env('LAMBDA_ACCESS_TOKEN', 'default_value') ); // $allcourses = []; // $courses = LambdaRequest::getrequest('lms', 'courses/get_all', ['status' => 'active'], env('LAMBDA_ACCESS_TOKEN', 'default_value')); // foreach($courses->data->items as $course) { // unset($course->subscribed_users); // $lessons = LambdaRequest::getrequest('lms', 'lessons/list', ['id'=>$course->id, 'partition' => 'rapport-crestroad'], env('LAMBDA_ACCESS_TOKEN', 'default_value')); // $articles = []; // $quizs = []; // foreach($lessons->data->lessons as $lesson){ // foreach($lesson->articles as $article){ // if($article->type == 'article') { // $articles[] = $article->entity_id; // } // if($article->type == 'quiz') { // $quizs[] = $article->entity_id; // } // } // } // $course->articles = $articles; // $course->quizs = $quizs; // $allcourses[$course->id] = $course; // } // $parents = []; // foreach($response->data->items as $item){ // //if($item->id != '1693925017-bd6b2848-e0cf-4ed1-9d17-b9e6b960f02e') { // if(!isset($parents[$item->hierarchy])) { // $hierarchy = LambdaRequest::getrequest('ums', 'hierarchy/get_one', ['id' => $item->hierarchy ], env('LAMBDA_ACCESS_TOKEN', 'default_value')); // $hierarchy = $hierarchy->data->item; // $parents[$item->hierarchy] = $hierarchy->parents . '#' . $item->hierarchy; // } // $item = (array)$item; // $counts = []; // if(isset($item['completed_articles']) && count($item['completed_articles']) > 0 ) { // foreach($allcourses as $course) { // $completed_articles = array_intersect($course->articles, $item['completed_articles']); // $counts[$course->id]['articles'] = count($completed_articles); // foreach($completed_articles as $completed_article) { // DB::table("lms_courses_completion")->updateOrInsert(['contact_id'=>$item['id'],'course_id'=>$course->id,'article_id'=>$completed_article], ['type'=>'articles', 'total_articles' => 3]); // } // $completed_articles = array_intersect($course->quizs, $item['completed_articles']); // $counts[$course->id]['quiz'] = count($completed_articles); // foreach($completed_articles as $completed_article) { // DB::table("lms_courses_completion")->updateOrInsert(['contact_id'=>$item['id'],'course_id'=>$course->id,'article_id'=>$completed_article], ['type'=>'quiz', 'total_articles' => 3]); // } // } // } // $data = ['user_id' => $item['user_id'], // 'hierarchy_id' => $item['hierarchy'], // 'name' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['name']), // 'phone' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['phone']), // 'alternate_phone' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['alternate_phone']), // 'email' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['email']), // 'city' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['city']), // 'state' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['state']), // 'language' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['language']), // 'highlight_qualification' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['highlight_qualification']), // 'type_of_setup' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['type_of_setup']), // 'designation' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['designation']), // 'clinic_institute_name' => preg_replace("/[^a-zA-Z0-9. ]+/", '',$item['clinic_institute_name']), // 'date_of_birth' => $item['date_of_birth'], // 'parents' => $parents[ $item['hierarchy'] ], // 'rep_name' => $item['user_info']->name, // 'employee_code' => $item['user_info']->employee_code, // 'english_article_count' => isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']) && isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['articles']) ? $counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['articles'] : 0, // 'english_quiz_count' => isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']) && isset($counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['quiz']) ? $counts['1692237077-7be9a215-dae1-4af0-9350-d336ea54176f']['quiz'] : 0, // 'hindi_article_count' => isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']) && isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['articles']) ? $counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['articles'] : 0, // 'hindi_quiz_count' => isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']) && isset($counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['quiz']) ? $counts['1692263655-25749640-2bfb-476c-9116-cbc9aa958335']['quiz'] : 0, // ]; // DB::table("lms_users")->updateOrInsert(['contact_id' => $item['id'] ], $data); // print_r($data); // //} // } // // print_r($allcourses); // // print_r(count($response->data->items)); // return 0; // } } } /* "authkey":"6bf9faa1-408e-4905-9da4-660b45a2331c", "user_email":"Sooraj.N@Cipla.com", "source_identifier":"test_metric_data", "source_record_identifier":"10000", "record_date":"2022-02-10", "duova_rx":0, "glycohale_fb_rx":5, "maxiflo_rx":5, "maxiflo_sb_rx":5, "nistami_rx":0, "tiova_rx":5, "tiova_sb_rx":0, "triohale_rx":3 */