diff --git a/htdocs/contrat/enservice.php b/htdocs/contrat/enservice.php index f5a9a74771b..8101e45e6df 100644 --- a/htdocs/contrat/enservice.php +++ b/htdocs/contrat/enservice.php @@ -49,14 +49,14 @@ if ($sortorder == "") } $sql = "SELECT s.nom, c.rowid as cid, c.enservice, p.label, p.rowid, s.idp as sidp"; -$sql .= " ,".$db->pdate("c.fin_validite")." as date_fin_validite"; +$sql .= " ,".$db->pdate("c.fin_validite")." as date_fin_validite, c.fin_validite-sysdate() as delairestant "; $sql .= " FROM ".MAIN_DB_PREFIX."contrat as c, ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."product as p"; $sql .= " WHERE c.fk_soc = s.idp AND c.fk_product = p.rowid AND c.enservice = 1"; if ($socid > 0) { $sql .= " AND s.idp = $socid"; } -$sql .= " ORDER BY $sortfield $sortorder "; +$sql .= " ORDER BY $sortfield $sortorder, delairestant "; $sql .= $db->plimit($limit + 1 ,$offset); if ( $db->query($sql) ) @@ -65,40 +65,60 @@ if ( $db->query($sql) ) $i = 0; - print_barre_liste("Liste des contrats", $page, $PHP_SELF, "&sref=$sref&snom=$snom", $sortfield, $sortorder,'',$num); + print_barre_liste("Liste des contrats en service", $page, $PHP_SELF, "&sref=$sref&snom=$snom", $sortfield, $sortorder,'',$num); - print ''; + print '
'; - print ''; - print "\n"; - + print ""; + print ""; + print "'; + print "\n"; + + $now=mktime(); $var=True; while ($i < min($num,$limit)) { $obj = $db->fetch_object( $i); $var=!$var; - print ""; - print "\n"; - print "\n"; - print ''; - print '"; + print "\n"; + print "\n"; + + // Affiche statut contrat if ($obj->enservice == 1) { - print "En service"; + if (! $obj->date_fin_validite || $obj->date_fin_validite >= $now) { + $class = "normal"; + $statut="En service"; + } + else { + $class = "error"; + $statut="En service, expiré"; + } } elseif($obj->enservice == 2) { - print "Cloturé"; + $class = "normal"; + $statut= "Cloturé"; } else { - print "A mettre en service"; + $class = "warning"; + $statut= "A mettre en service"; } - print "\n"; + print ""; + + print ''; + + print "\n"; $i++; } $db->free(); diff --git a/htdocs/contrat/index.php b/htdocs/contrat/index.php index b45c42bcc4f..11af840854f 100644 --- a/htdocs/contrat/index.php +++ b/htdocs/contrat/index.php @@ -49,14 +49,14 @@ if ($sortorder == "") $sortorder="DESC"; } -$sql = "SELECT c.rowid as cid, c.enservice, ".$db->pdate("c.fin_validite")." as fin_validite, p.label, p.rowid as pid, s.nom, s.idp as sidp"; +$sql = "SELECT c.rowid as cid, c.enservice, ".$db->pdate("c.fin_validite")." as fin_validite, c.fin_validite-sysdate() as delairestant, p.label, p.rowid as pid, s.nom, s.idp as sidp"; $sql .= " FROM ".MAIN_DB_PREFIX."contrat as c, ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."product as p"; $sql .= " WHERE c.fk_soc = s.idp AND c.fk_product = p.rowid"; if ($socid > 0) { $sql .= " AND s.idp = $socid"; } -$sql .= " ORDER BY $sortfield $sortorder "; +$sql .= " ORDER BY $sortfield $sortorder, delairestant"; $sql .= $db->plimit($limit + 1 ,$offset); if ( $db->query($sql) ) @@ -84,8 +84,8 @@ if ( $db->query($sql) ) print ''; print "\n"; - $var=True; $now=mktime(); + $var=True; while ($i < min($num,$limit)) { $obj = $db->fetch_object( $i); @@ -119,8 +119,9 @@ if ( $db->query($sql) ) } print ""; + + print "
'; + print '
'; print_liste_field_titre("Libellé",$PHP_SELF, "p.label"); print ""; print_liste_field_titre("Société",$PHP_SELF, "s.nom"); - print 'Date FinEtat
Statut"; + print_liste_field_titre("Date fin",$PHP_SELF, "date_fin_validite"); + print '
cid\">$obj->labelsidp\">$obj->nom'.strftime("%d %b %Y", $obj->date_fin_validite).''; + print "
cid\">$obj->labelsidp\">$obj->nom
"; + print "$statut"; + print "'.dolibarr_print_date($obj->date_fin_validite).'
"; print "$statut"; - print ""; - + print ""; if ($obj->enservice > 0) { print dolibarr_print_date($obj->fin_validite); }