290 lines
6.7 KiB
PHP
290 lines
6.7 KiB
PHP
<?php
|
|
|
|
|
|
|
|
require_once 'MonitoringVMHeader.php';
|
|
|
|
require_once 'MonitoringDBRequest.php';
|
|
|
|
|
|
|
|
$sql="";
|
|
|
|
|
|
|
|
$region="All";
|
|
|
|
if(isOuestVMVP($roleid))
|
|
|
|
$region="OUEST";
|
|
|
|
else if(isEstVMVP($roleid))
|
|
|
|
$region="EST";
|
|
|
|
else if(isCentreVMVP($roleid))
|
|
|
|
$region="CENTRE";
|
|
|
|
|
|
|
|
if(isset($_POST['region'])){
|
|
|
|
|
|
|
|
$region = $_POST['region'];
|
|
|
|
switch ($region) {
|
|
|
|
|
|
|
|
case "All":
|
|
|
|
$sql="";
|
|
|
|
break;
|
|
|
|
|
|
|
|
case "OUEST":
|
|
|
|
$sql="and (ro.rolename='DIRECTEUR REGIONAL OUEST' or ro.rolename='SUPERVISEUR OUEST1' or ro.rolename='DELEGUE MEDICAL OUEST1' or ro.rolename='SUPERVISEUR OUEST2' or ro.rolename='DELEGUE MEDICAL OUEST2' or ro.rolename='DELEGUE MEDICAL OUEST')";
|
|
|
|
break;
|
|
|
|
|
|
|
|
case "CENTRE":
|
|
|
|
$sql="and (ro.rolename='DIRECTEUR REGIONAL CENTRE' or ro.rolename='SUPERVISEUR CENTRE1' or ro.rolename='DELEGUE MEDICAL CENTRE1' or ro.rolename='SUPERVISEUR CENTRE2' or ro.rolename='DELEGUE MEDICAL CENTRE2' or ro.rolename='DELEGUE MEDICAL CENTRE')";
|
|
|
|
break;
|
|
|
|
|
|
|
|
case "EST":
|
|
|
|
$sql="and (ro.rolename='DIRECTEUR REGIONAL EST' or ro.rolename='SUPERVISEUR EST1' or ro.rolename='DELEGUE MEDICAL EST1' or ro.rolename='SUPERVISEUR EST2' or ro.rolename='DELEGUE MEDICAL EST2' or ro.rolename='SUPERVISEUR EST3' or ro.rolename='DELEGUE MEDICAL EST3')";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
$year = $_POST['year'];
|
|
|
|
}
|
|
|
|
|
|
|
|
$datedeb = date("Y-m-d",strtotime("-1 month"));
|
|
|
|
$datefin = date('Y-m-d');
|
|
|
|
if(isset($_POST['datedeb'])) {
|
|
|
|
$datedeb = $_POST['datedeb'];
|
|
|
|
$datefin = $_POST['datefin'];
|
|
|
|
}
|
|
|
|
|
|
|
|
$result = getResultatVMSpecialiteW($datedeb,$datefin,$roleid,$sql, $current_user->get('id'));
|
|
|
|
$wilayas = getAccountsTypeSpecialite();
|
|
|
|
|
|
|
|
//<div class="grid-container"><div class="convention">
|
|
|
|
echo getMonitoringMainBar(2,$roleid).getMonitoringVisiteSubBar(5,$roleid).getDateSelect($datedeb,$datefin).
|
|
|
|
'<div class="main-container main-container-Accounts">
|
|
|
|
<div id="scrollbar" style="margin:15px 15px 15px 15px; border:1px solid #ecf0f1; overflow-y: scroll; overflow-x: scroll; height:462.709px ;border:1px solid #bdc3c7;">'.
|
|
|
|
'<div style="text-align: center"><h3>Nombre de visites par spécialité</h3></div>'.
|
|
|
|
'<hr>
|
|
|
|
<div class="form-row">
|
|
|
|
<div class="form-group col-md-6">
|
|
|
|
<label for="Specialite">Spécialité</label>
|
|
|
|
<input class="form-control mb-4 w-20" type="text" name="Specialite" placeholder="Rechercher" onKeyUp="SpecialiteFiltre(this)">
|
|
|
|
</div>
|
|
|
|
'.getRegionSelectSubmit($roleid, true).'
|
|
|
|
</div>';
|
|
|
|
|
|
|
|
echo '<table id="tabcenter" class="table table-bordered table-striped" >
|
|
|
|
</table></div>';
|
|
|
|
echo '<div id="chartContainer" style="height: 370px; max-width: 920px; margin: 0px auto;"></div>';
|
|
|
|
|
|
|
|
$viewer->view('CustomDashboardFooter.tpl');
|
|
|
|
|
|
|
|
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<script>
|
|
|
|
|
|
|
|
var region =<?php echo json_encode($region); ?>;
|
|
|
|
|
|
|
|
document.getElementById("region").selected = true;
|
|
|
|
|
|
|
|
function convertArray(data) {
|
|
|
|
|
|
|
|
var c=[];
|
|
|
|
var a=[];
|
|
|
|
|
|
|
|
for(var i = 0; i < data.length; i++) {
|
|
|
|
|
|
|
|
var isexiste = false;
|
|
|
|
var row = data[i];
|
|
|
|
|
|
|
|
for(var j = 0; j < a.length; j++) {
|
|
|
|
|
|
|
|
if(a[j] == row['fullname'])
|
|
|
|
isexiste = true;
|
|
|
|
}
|
|
|
|
|
|
|
|
if(!isexiste)
|
|
|
|
a.push(row['fullname']);
|
|
|
|
}
|
|
|
|
|
|
|
|
c.push(a);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for(var i = 0; i < wilayas.length; i++) {
|
|
|
|
|
|
|
|
var b=[];
|
|
|
|
|
|
|
|
var wilaya = wilayas[i]['accounttype'];
|
|
|
|
|
|
|
|
b[0] = wilaya;
|
|
|
|
|
|
|
|
for(var j = 0; j < a.length; j++) {
|
|
|
|
|
|
|
|
b[j+1] = 0;
|
|
|
|
|
|
|
|
for(var k = 0; k < data.length; k++) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(data[k]['accounttype'] == wilaya & data[k]['fullname'] == a[j])
|
|
|
|
|
|
|
|
b[j+1] = parseFloat(data[k]['nbr']);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
c.push(b);
|
|
|
|
|
|
|
|
}
|
|
|
|
return c;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function fullNameChange(e) {
|
|
|
|
|
|
|
|
loadTable(convertArray(result));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//filtre
|
|
|
|
function SpecialiteFiltre(e) {
|
|
|
|
|
|
|
|
wilayas = wilayas.filter(a => (a.accounttype != null && a.accounttype.toUpperCase().includes(e.value.toUpperCase())) );
|
|
|
|
loadTable(convertArray(result));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function loadTable(data) {
|
|
|
|
|
|
|
|
$('#tabcenter tr').slice(0).remove();
|
|
|
|
|
|
|
|
if(data.length > 0) {
|
|
|
|
|
|
|
|
var trString = "<tr class='center borderline'>"
|
|
|
|
|
|
|
|
+"<th>Spécialité</th>";
|
|
|
|
|
|
|
|
var users = data[0];
|
|
|
|
|
|
|
|
for(var i = 0; i < users.length; i++) {
|
|
|
|
|
|
|
|
var row = users[i];
|
|
|
|
|
|
|
|
trString = trString+"<th>"+row+"</th>";
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
$('#tabcenter').append(trString+"<th>Total</th></tr>");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for(var i = 1; i < data.length; i++) {
|
|
|
|
|
|
|
|
var row = data[i];
|
|
|
|
|
|
|
|
var click = "";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var subtotal = 0;
|
|
|
|
|
|
|
|
var trString = "<tr class='center borderline'"+click+">";
|
|
|
|
|
|
|
|
trString = trString+"<td>"+row[0]+"</td>";
|
|
|
|
|
|
|
|
for(var j = 1; j < row.length; j++) {
|
|
|
|
|
|
|
|
trString = trString+"<td>"+myFormatNumber(row[j])+"</td>";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
subtotal += parseInt(row[j]);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if(subtotal < 1) continue;
|
|
|
|
|
|
|
|
|
|
|
|
$('#tabcenter').append(trString
|
|
|
|
|
|
|
|
+"<td style=' background:#7f8fa6; color: #ffffff; font-weight: bold;'>"+myFormatNumber(subtotal)+"</td>"
|
|
|
|
|
|
|
|
+"</tr>"
|
|
|
|
|
|
|
|
);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var totals = [];
|
|
|
|
|
|
|
|
var allTotals = 0;
|
|
|
|
|
|
|
|
for (var i = 1; i < users.length+1; i++) {
|
|
|
|
|
|
|
|
var sum = 0;
|
|
|
|
|
|
|
|
for(var j = 1; j < data.length; j++) {
|
|
|
|
|
|
|
|
var row = data[j];
|
|
|
|
|
|
|
|
sum += row[i];
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
totals.push(parseInt(sum));
|
|
|
|
|
|
|
|
allTotals += sum;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
allTotals = parseInt(allTotals);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var trString = "<tr class='center borderline'"+click+">";
|
|
|
|
|
|
|
|
trString = trString+"<td>TOTAL</td>";
|
|
|
|
|
|
|
|
for(var j = 0; j < users.length; j++) {
|
|
|
|
|
|
|
|
trString = trString+"<td>"+myFormatNumber(totals[j])+"</td>";
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
$('#tabcenter').append(trString
|
|
|
|
|
|
|
|
+"<td style=' background:#7f8fa6; color: #ffffff; font-weight: bold;'>"+myFormatNumber(allTotals)+"</td>"
|
|
|
|
|
|
|
|
+"</tr>"
|
|
|
|
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
var result = <?php echo json_encode($result); ?>;
|
|
|
|
//alert(JSON.stringify(result));
|
|
|
|
var wilayas = <?php echo json_encode($wilayas); ?>;
|
|
|
|
|
|
|
|
function loadByFullName() {
|
|
|
|
|
|
|
|
// Converting objects to arrays using Array.prototype.slice.call
|
|
|
|
|
|
|
|
var fullnames = Array.prototype.slice.call(result).sort(function(a, b){
|
|
|
|
|
|
|
|
if(a.fullname < b.fullname) { return -1; }
|
|
|
|
if(a.fullname > b.fullname) { return 1; }
|
|
|
|
return 0;
|
|
|
|
});
|
|
|
|
loadTable(convertArray(fullnames));
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
loadByFullName();
|
|
|
|
|
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</body>
|
|
|
|
|
|
|
|
</html>
|