NEW : calcul percentage ok

This commit is contained in:
gauthier 2017-09-25 17:13:50 +02:00
parent 6fa1929d5c
commit 3db52aed78
2 changed files with 122 additions and 53 deletions

View File

@ -350,6 +350,36 @@ if($action == 'edit') {
print '</div>'; print '</div>';
?>
<script type="text/javascript">
$(document).ready(function() {
$("#change_mode").click(function() {
var use_percent = $("#MAIN_USE_METEO_WITH_PERCENTAGE");
var str_mode_std = "<?php print $str_mode_std; ?>";
var str_mode_percentage = "<?php print $str_mode_percentage; ?>";
if(use_percent.val() == 1) {
use_percent.val(0);
$("#standard").show();
$("#percentage").hide();
$(this).html(str_mode_std);
} else {
use_percent.val(1);
$("#standard").hide();
$("#percentage").show();
$(this).html(str_mode_percentage);
}
});
});
</script>
<?php
} else { } else {
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) { if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
@ -416,6 +446,7 @@ if($action == 'edit') {
} }
} }
print '</div>'; print '</div>';
if($action == 'edit') { if($action == 'edit') {
@ -431,35 +462,5 @@ if($action == 'edit') {
} }
?>
<script type="text/javascript">
$(document).ready(function() {
$("#change_mode").click(function() {
var use_percent = $("#MAIN_USE_METEO_WITH_PERCENTAGE");
var str_mode_std = "<?php print $str_mode_std; ?>";
var str_mode_percentage = "<?php print $str_mode_percentage; ?>";
if(use_percent.val() == 1) {
use_percent.val(0);
$("#standard").show();
$("#percentage").hide();
$(this).html(str_mode_std);
} else {
use_percent.val(1);
$("#standard").hide();
$("#percentage").show();
$(this).html(str_mode_percentage);
}
});
});
</script>
<?php
llxFooter(); llxFooter();
$db->close(); $db->close();

View File

@ -384,7 +384,12 @@ if (! empty($conf->projet->enabled) && $user->rights->projet->lire)
{ {
include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php'; include_once DOL_DOCUMENT_ROOT.'/projet/class/project.class.php';
$board=new Project($db); $board=new Project($db);
$dashboardlines[] = $board->load_board($user); $wb_res = $board->load_board($user);
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
$board->load_state_board();
$wb_res->nbtotal = (int)$board->nb['projects'];
}
$dashboardlines[] = $wb_res;
} }
// Number of tasks to do (late) // Number of tasks to do (late)
@ -400,9 +405,17 @@ if (! empty($conf->propal->enabled) && $user->rights->propale->lire)
{ {
include_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php'; include_once DOL_DOCUMENT_ROOT.'/comm/propal/class/propal.class.php';
$board=new Propal($db); $board=new Propal($db);
$dashboardlines[] = $board->load_board($user,"opened"); $wb_res = $board->load_board($user,"opened");
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
$board->load_state_board();
$nbtotal = (int)$board->nb['proposals'];
$wb_res->nbtotal = $nbtotal;
}
$dashboardlines[] = $wb_res;
// Number of commercial proposals CLOSED signed (billed) // Number of commercial proposals CLOSED signed (billed)
$dashboardlines[] = $board->load_board($user,"signed"); $wb_res = $board->load_board($user,"signed");
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) $wb_res->nbtotal = $nbtotal;
$dashboardlines[] = $wb_res;
} }
// Number of commercial proposals opened (expired) // Number of commercial proposals opened (expired)
@ -410,9 +423,17 @@ if (! empty($conf->supplier_proposal->enabled) && $user->rights->supplier_propos
{ {
include_once DOL_DOCUMENT_ROOT.'/supplier_proposal/class/supplier_proposal.class.php'; include_once DOL_DOCUMENT_ROOT.'/supplier_proposal/class/supplier_proposal.class.php';
$board=new SupplierProposal($db); $board=new SupplierProposal($db);
$dashboardlines[] = $board->load_board($user,"opened"); $wb_res = $board->load_board($user,"opened");
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
$board->load_state_board();
$nbtotal = (int)$board->nb['askprice'];
$wb_res->nbtotal = $nbtotal;
}
$dashboardlines[] = $wb_res;
// Number of commercial proposals CLOSED signed (billed) // Number of commercial proposals CLOSED signed (billed)
$dashboardlines[] = $board->load_board($user,"signed"); $wb_res = $board->load_board($user,"signed");
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) $wb_res->nbtotal = $nbtotal;
$dashboardlines[] = $wb_res;
} }
// Number of customer orders a deal // Number of customer orders a deal
@ -420,7 +441,12 @@ if (! empty($conf->commande->enabled) && $user->rights->commande->lire)
{ {
include_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php'; include_once DOL_DOCUMENT_ROOT.'/commande/class/commande.class.php';
$board=new Commande($db); $board=new Commande($db);
$dashboardlines[] = $board->load_board($user); $wb_res = $board->load_board($user);
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
$board->load_state_board();
$wb_res->nbtotal = (int)$board->nb['orders'];
}
$dashboardlines[] = $wb_res;
} }
// Number of suppliers orders a deal // Number of suppliers orders a deal
@ -428,7 +454,12 @@ if (! empty($conf->supplier_order->enabled) && $user->rights->fournisseur->comma
{ {
include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php'; include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.commande.class.php';
$board=new CommandeFournisseur($db); $board=new CommandeFournisseur($db);
$dashboardlines[] = $board->load_board($user); $wb_res = $board->load_board($user);
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
$board->load_state_board();
$wb_res->nbtotal = (int)$board->nb['supplier_orders'];
}
$dashboardlines[] = $wb_res;
} }
// Number of services enabled (delayed) // Number of services enabled (delayed)
@ -436,16 +467,29 @@ if (! empty($conf->contrat->enabled) && $user->rights->contrat->lire)
{ {
include_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php'; include_once DOL_DOCUMENT_ROOT.'/contrat/class/contrat.class.php';
$board=new Contrat($db); $board=new Contrat($db);
$dashboardlines[] = $board->load_board($user,"inactives"); $wb_res = $board->load_board($user,"inactives");
// Number of active services (expired) if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
$dashboardlines[] = $board->load_board($user,"expired"); $board->load_state_board();
$nbtotal = (int)$board->nb['Contracts'];
$wb_res->nbtotal = $nbtotal;
}
$dashboardlines[] = $wb_res;
// Number of active services (expired)
$wb_res = $board->load_board($user,"expired");
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) $wb_res->nbtotal = $nbtotal;
$dashboardlines[] = $wb_res;
} }
// Number of invoices customers (has paid) // Number of invoices customers (has paid)
if (! empty($conf->facture->enabled) && $user->rights->facture->lire) if (! empty($conf->facture->enabled) && $user->rights->facture->lire)
{ {
include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php'; include_once DOL_DOCUMENT_ROOT.'/compta/facture/class/facture.class.php';
$board=new Facture($db); $board=new Facture($db);
$dashboardlines[] = $board->load_board($user); $wb_res = $board->load_board($user);
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
$board->load_state_board();
$wb_res->nbtotal = (int)$board->nb['invoices'];
}
$dashboardlines[] = $wb_res;
} }
// Number of supplier invoices (has paid) // Number of supplier invoices (has paid)
@ -453,7 +497,12 @@ if (! empty($conf->supplier_invoice->enabled) && ! empty($user->rights->fourniss
{ {
include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php'; include_once DOL_DOCUMENT_ROOT.'/fourn/class/fournisseur.facture.class.php';
$board=new FactureFournisseur($db); $board=new FactureFournisseur($db);
$dashboardlines[] = $board->load_board($user); $wb_res = $board->load_board($user);
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
$board->load_state_board();
$wb_res->nbtotal = (int)$board->nb['supplier_invoices'];
}
$dashboardlines[] = $wb_res;
} }
// Number of transactions to conciliate // Number of transactions to conciliate
@ -481,7 +530,12 @@ if (! empty($conf->adherent->enabled) && $user->rights->adherent->lire && ! $use
{ {
include_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent.class.php'; include_once DOL_DOCUMENT_ROOT.'/adherents/class/adherent.class.php';
$board=new Adherent($db); $board=new Adherent($db);
$dashboardlines[] = $board->load_board($user); $wb_res = $board->load_board($user);
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
$board->load_state_board();
$wb_res->nbtotal = (int)$board->nb['members'];
}
$dashboardlines[] = $wb_res;
} }
// Number of expense reports to approve // Number of expense reports to approve
@ -489,7 +543,12 @@ if (! empty($conf->expensereport->enabled) && $user->rights->expensereport->appr
{ {
include_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php'; include_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php';
$board=new ExpenseReport($db); $board=new ExpenseReport($db);
$dashboardlines[] = $board->load_board($user,'toapprove'); $wb_res = $board->load_board($user,'toapprove');
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
$board->load_state_board();
$wb_res->nbtotal = (int)$board->nb['expensereports'];
}
$dashboardlines[] = $wb_res;
} }
// Number of expense reports to pay // Number of expense reports to pay
@ -497,11 +556,16 @@ if (! empty($conf->expensereport->enabled) && $user->rights->expensereport->to_p
{ {
include_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php'; include_once DOL_DOCUMENT_ROOT.'/expensereport/class/expensereport.class.php';
$board=new ExpenseReport($db); $board=new ExpenseReport($db);
$dashboardlines[] = $board->load_board($user,'topay'); $wb_res = $board->load_board($user,'topay');
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) {
$board->load_state_board();
$wb_res->nbtotal = (int)$board->nb['expensereports'];
}
$dashboardlines[] = $wb_res;
} }
// Calculate total nb of late // Calculate total nb of late
$totallate=0; $totallate=$totalglobal=0;
$var=true; $var=true;
//Remove any invalid response //Remove any invalid response
@ -516,11 +580,13 @@ foreach($dashboardlines as $tmp)
foreach($valid_dashboardlines as $board) foreach($valid_dashboardlines as $board)
{ {
if ($board->nbtodolate > 0) { if ($board->nbtodolate > 0) {
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) $totalglobal += $board->nbtotal;
$totallate += $board->nbtodolate; $totallate += $board->nbtodolate;
} }
} }
//var_dump($totallate, $totalglobal);
if(!empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE)) $totallate = $totallate / $totalglobal * 100;
//var_dump($totallate);
$boxwork=''; $boxwork='';
$boxwork.='<div class="box">'; $boxwork.='<div class="box">';
$boxwork.='<table summary="'.dol_escape_htmltag($langs->trans("WorkingBoard")).'" class="noborder boxtable" width="100%">'."\n"; $boxwork.='<table summary="'.dol_escape_htmltag($langs->trans("WorkingBoard")).'" class="noborder boxtable" width="100%">'."\n";
@ -691,10 +757,12 @@ function showWeather($totallate,$text,$options)
$offset=0; $offset=0;
$factor=10; // By default $factor=10; // By default
$level0=$offset; if (! empty($conf->global->MAIN_METEO_LEVEL0)) $level0=$conf->global->MAIN_METEO_LEVEL0; $used_conf = !empty($conf->global->MAIN_USE_METEO_WITH_PERCENTAGE) ? 'MAIN_METEO_PERCENTAGE_LEVEL' : 'MAIN_METEO_LEVEL';
$level1=$offset+1*$factor; if (! empty($conf->global->MAIN_METEO_LEVEL1)) $level1=$conf->global->MAIN_METEO_LEVEL1;
$level2=$offset+2*$factor; if (! empty($conf->global->MAIN_METEO_LEVEL2)) $level2=$conf->global->MAIN_METEO_LEVEL2; $level0=$offset; if (! empty($conf->global->{$used_conf.'0'})) $level0=$conf->global->{$used_conf.'0'};
$level3=$offset+3*$factor; if (! empty($conf->global->MAIN_METEO_LEVEL3)) $level3=$conf->global->MAIN_METEO_LEVEL3; $level1=$offset+1*$factor; if (! empty($conf->global->{$used_conf.'1'})) $level1=$conf->global->{$used_conf.'1'};
$level2=$offset+2*$factor; if (! empty($conf->global->{$used_conf.'2'})) $level2=$conf->global->{$used_conf.'2'};
$level3=$offset+3*$factor; if (! empty($conf->global->{$used_conf.'3'})) $level3=$conf->global->{$used_conf.'3'};
if ($totallate <= $level0) $out.=img_weather($text,'weather-clear.png',$options); if ($totallate <= $level0) $out.=img_weather($text,'weather-clear.png',$options);
if ($totallate > $level0 && $totallate <= $level1) $out.=img_weather($text,'weather-few-clouds.png',$options); if ($totallate > $level0 && $totallate <= $level1) $out.=img_weather($text,'weather-few-clouds.png',$options);