{"id":1617,"date":"2024-08-18T22:59:14","date_gmt":"2024-08-18T15:59:14","guid":{"rendered":"https:\/\/congchung2tphcm.com.vn\/ekios\/?page_id=1617"},"modified":"2024-08-19T03:23:44","modified_gmt":"2024-08-18T20:23:44","slug":"bao-cao-khao-sat","status":"publish","type":"page","link":"https:\/\/congchung2tphcm.com.vn\/ekios\/bao-cao-khao-sat\/","title":{"rendered":"bao-cao-khao-sat"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1617\" class=\"elementor elementor-1617\">\n\t\t\t\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-09245a8 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"09245a8\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-58aefca\" data-id=\"58aefca\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-element elementor-element-21c1d4f elementor-widget elementor-widget-heading\" data-id=\"21c1d4f\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Kh\u1ea3o S\u00e1t<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ff60759 elementor-widget elementor-widget-html\" data-id=\"ff60759\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js\"><\/script>\n        <label for=\"start-date\">Ch\u1ecdn ng\u00e0y b\u1eaft \u0111\u1ea7u:<\/label>\n        <input type=\"date\" id=\"start-date\" name=\"start-date\" required><br><br>\n\n        <label for=\"end-date\">Ch\u1ecdn ng\u00e0y k\u1ebft th\u00fac:<\/label>\n        <input type=\"date\" id=\"end-date\" name=\"end-date\" required><br><br>\n\n        <input type=\"submit\" id=\"reportRateSubmit\"  value=\"Xem b\u00e1o c\u00e1o\">\n        \n        <div class=\"error\" id=\"nodata_report\"><\/div>\n\n        \n        <script>\n        let myChart;\n\n        var button = document.getElementById('reportRateSubmit');\n        \n        button.addEventListener('click', function() {\n            \/\/ L\u1ea5y gi\u00e1 tr\u1ecb c\u1ee7a ng\u00e0y b\u1eaft \u0111\u1ea7u v\u00e0 ng\u00e0y k\u1ebft th\u00fac\n            const startDate = formatDate(document.getElementById('start-date').value);\n            const endDate = formatDate(document.getElementById('end-date').value);\n            const ctx = document.getElementById('myChart');\n            const myChartText = document.getElementById('myChartText');\n            const errorMess = document.getElementById('nodata_report');\n            let htmlText = '';\n            errorMess.textContent = '';\n            myChartText.textContent = htmlText;\n\n            \/\/ Hi\u1ec3n th\u1ecb gi\u00e1 tr\u1ecb ra console ho\u1eb7c x\u1eed l\u00fd theo nhu c\u1ea7u\n            if (startDate === '-undefined-undefined' || endDate === '-undefined-undefined') {\n                alert('Vui l\u00f2ng nh\u1eadp d\u1eef li\u1ec7u.');\n                return; \/\/ Ng\u1eebng th\u1ef1c hi\u1ec7n n\u1ebfu tr\u01b0\u1eddng nh\u1eadp tr\u1ed1ng\n            }\n            if(startDate > endDate) {\n                alert(\"H\u00e3y ch\u1ecdn l\u1ea1i ng\u00e0y! Ng\u00e0y b\u1eaft \u0111\u1ea7u kh\u00f4ng th\u1ec3 l\u1edbn h\u01a1n ng\u00e0y k\u1ebft th\u00fac\");\n                return;\n            }\n            \n            \/\/ H\u1ee7y b\u1ecf bi\u1ec3u \u0111\u1ed3 c\u0169 n\u1ebfu \u0111\u00e3 t\u1ed3n t\u1ea1i\n            if (myChart) {\n                myChart.destroy();\n            }\n            \n            \/\/ V\u00ed d\u1ee5 g\u1eedi y\u00eau c\u1ea7u AJAX s\u1eed d\u1ee5ng d\u1eef li\u1ec7u n\u00e0y\n            jQuery.ajax({\n                url: 'https:\/\/congchung2tphcm.com.vn\/ekios\/wp-admin\/admin-ajax.php',\n                type: 'POST',\n                data: {\n                    action: 'report_rate_ajax',\n                    startDate : startDate,\n                    endDate : endDate\n                },\n                success: function(response) {\n                    response = JSON.parse(response)\n                    let labelsList = ['1.H\u00e0i L\u00f2ng','2.B\u00ecnh Th\u01b0\u1eddng','3.Kh\u00f4ng H\u00e0i L\u00f2ng'];\n                    let dataValues = [];\n                    labelsList.forEach(function(labelName, index) {\n                       const found = response.find((element) => element.value === labelName)\n                       if(found) {\n                        dataValues.push(found.COUNT);   \n                        htmlText += `<p>${labelName} : ${found.COUNT} phi\u1ebfu<\/p>`;\n                       } else {\n                           dataValues.push(0);\n                       }\n                        \n                    });\n                    if(response.length) {\n                        console.log(htmlText);\n                        myChartText.innerHTML += htmlText;\n                        \n                        myChart = new Chart(ctx, {\n                            type: 'pie',\n                            data: {\n                              labels: labelsList,\n                              datasets: [{\n                                label: 'S\u1ed1 Phi\u1ebfu',\n                                data: dataValues,\n                                backgroundColor: [\n                                  'rgb(54, 162, 235)',\n                                  'rgb(255, 205, 86)',\n                                  'rgb(255, 99, 132)'\n                                ],\n                                hoverOffset: 4\n                              }]\n                            },\n                            options: {\n                                responsive: true,\n                                plugins: {\n                                    legend: {\n                                        position: 'top',\n                                    },\n                                    tooltip: {\n                                        callbacks: {\n                                            label: function(tooltipItem) {\n                                                const dataset = tooltipItem.dataset;\n                                                const total = dataValues.reduce((acc, val) => parseInt(acc) + parseInt(val), 0);\n                                                const currentValue = dataset.data[tooltipItem.dataIndex];\n                                                const percentage = ((currentValue \/ total) * 100).toFixed(2);\n                                                return `${currentValue} phi\u1ebfu: ${percentage}%`;\n                                            }\n                                        }\n                                    },\n                                    scales: {\n                                      y: {\n                                        beginAtZero: true\n                                      }\n                                    }\n                                }\n                            }\n                          });   \n                    } else {\n                        errorMess.textContent = 'Kh\u00f4ng c\u00f3 d\u1eef li\u1ec7u';\n                    }\n                },\n                error: function(error) {\n                    console.log('AJAX Error:', error);\n                }\n            });\n        });\n        \n        function formatDate(dateString) {\n            const [year, month, day] = dateString.split('-');\n            return `${year}-${month}-${day}`;\n        }\n    <\/script>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-09c1f20 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"09c1f20\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2044729\" data-id=\"2044729\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-element elementor-element-2031836 elementor-widget elementor-widget-html\" data-id=\"2031836\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<div>\r\n  <div id=\"myChartText\"><\/div>\r\n  <canvas id=\"myChart\"><\/canvas>\r\n<\/div>\r\n<style>\r\n#myChart {\r\n    height: 350px !important;\r\n    width: : 350px !important;\r\n}\r\n<\/style>\r\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Kh\u1ea3o S\u00e1t Ch\u1ecdn ng\u00e0y b\u1eaft \u0111\u1ea7u: Ch\u1ecdn ng\u00e0y k\u1ebft th\u00fac:<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"boxed-container","ast-global-header-display":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","footnotes":""},"class_list":["post-1617","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/congchung2tphcm.com.vn\/ekios\/wp-json\/wp\/v2\/pages\/1617","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/congchung2tphcm.com.vn\/ekios\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/congchung2tphcm.com.vn\/ekios\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/congchung2tphcm.com.vn\/ekios\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/congchung2tphcm.com.vn\/ekios\/wp-json\/wp\/v2\/comments?post=1617"}],"version-history":[{"count":316,"href":"https:\/\/congchung2tphcm.com.vn\/ekios\/wp-json\/wp\/v2\/pages\/1617\/revisions"}],"predecessor-version":[{"id":1945,"href":"https:\/\/congchung2tphcm.com.vn\/ekios\/wp-json\/wp\/v2\/pages\/1617\/revisions\/1945"}],"wp:attachment":[{"href":"https:\/\/congchung2tphcm.com.vn\/ekios\/wp-json\/wp\/v2\/media?parent=1617"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}