Trad: Traduction de la fiche contrat et page index contrat
New: Ajout de la référence facture dans le lien facture au lieu du simple texte "Facture". New: Ajout du statut de la facture si contrat lié à une facture. Doc: Documentation doxygen
This commit is contained in:
parent
a528336bff
commit
cb7e19dfbe
@ -21,16 +21,27 @@
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\file htdocs/contrat/contrat.class.php
|
||||||
|
\ingroup contrat
|
||||||
|
\brief Fichier de la classe des contrats
|
||||||
|
\version $Revision$
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/*! \class Contrat
|
||||||
|
\brief Classe permettant la gestion des contrats
|
||||||
|
*/
|
||||||
|
|
||||||
class Contrat
|
class Contrat
|
||||||
{
|
{
|
||||||
var $id;
|
var $id;
|
||||||
var $db;
|
var $db;
|
||||||
|
|
||||||
/*
|
/**
|
||||||
* Initialisation
|
* \brief Constructeur de la classe
|
||||||
*
|
* \param DB handler accès base de données
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function Contrat($DB)
|
function Contrat($DB)
|
||||||
{
|
{
|
||||||
$this->db = $DB ;
|
$this->db = $DB ;
|
||||||
@ -82,9 +93,10 @@ class Contrat
|
|||||||
$result = $this->db->query($sql) ;
|
$result = $this->db->query($sql) ;
|
||||||
if (!$result)
|
if (!$result)
|
||||||
{
|
{
|
||||||
print $this->db->error() . "<br>" . $sql;
|
dolibarr_print_error($this->db);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
@ -97,6 +109,7 @@ class Contrat
|
|||||||
|
|
||||||
$result = $this->db->query($sql) ;
|
$result = $this->db->query($sql) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
@ -109,6 +122,7 @@ class Contrat
|
|||||||
|
|
||||||
$result = $this->db->query($sql) ;
|
$result = $this->db->query($sql) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
@ -146,11 +160,12 @@ class Contrat
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
print $this->db->error();
|
dolibarr_print_error($this->db);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Crée autant de contrats que de lignes de facture, pour une facture donnée
|
* Crée autant de contrats que de lignes de facture, pour une facture donnée
|
||||||
*
|
*
|
||||||
@ -185,7 +200,7 @@ class Contrat
|
|||||||
if (! $this->db->query($sql))
|
if (! $this->db->query($sql))
|
||||||
{
|
{
|
||||||
dolibarr_syslog("Contrat::create_from_facture - 10");
|
dolibarr_syslog("Contrat::create_from_facture - 10");
|
||||||
print "Erreur : ".$this->db->error()."<br>".$sql;
|
dolibarr_print_error($this->db,"Contrat::create_from_facture - 10");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -197,15 +212,12 @@ class Contrat
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
dolibarr_syslog("Contrat::create_from_facture - 20");
|
dolibarr_syslog("Contrat::create_from_facture - 20");
|
||||||
print $this->db->error();
|
dolibarr_print_error($this->db,"Contrat::create_from_facture - 20");
|
||||||
}
|
}
|
||||||
|
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
*
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|||||||
@ -21,10 +21,21 @@
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\file htdocs/contrat/fiche.php
|
||||||
|
\ingroup contrat
|
||||||
|
\brief Fiche d'un contrat
|
||||||
|
\version $Revision$
|
||||||
|
*/
|
||||||
|
|
||||||
require("./pre.inc.php");
|
require("./pre.inc.php");
|
||||||
require("./contrat.class.php");
|
require("./contrat.class.php");
|
||||||
require("../facture.class.php");
|
require("../facture.class.php");
|
||||||
|
|
||||||
|
$langs->load("products");
|
||||||
|
$langs->load("companies");
|
||||||
|
$langs->load("bills");
|
||||||
|
|
||||||
llxHeader();
|
llxHeader();
|
||||||
|
|
||||||
$id = $_GET["id"];
|
$id = $_GET["id"];
|
||||||
@ -81,7 +92,7 @@ $html = new Form($db);
|
|||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Fiche visu/édition
|
* Fiche contract en mode visu/édition
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
if ($id)
|
if ($id)
|
||||||
@ -103,24 +114,28 @@ if ($id)
|
|||||||
|
|
||||||
$hselected=$h;
|
$hselected=$h;
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/contrat/fiche.php?id='.$id;
|
$head[$h][0] = DOL_URL_ROOT.'/contrat/fiche.php?id='.$id;
|
||||||
$head[$h][1] = 'Fiche contrat : '.$contrat->id;
|
$head[$h][1] = $langs->trans("CardContract").' : '.$contrat->id;
|
||||||
$h++;
|
$h++;
|
||||||
|
|
||||||
dolibarr_fiche_head($head, $hselected);
|
dolibarr_fiche_head($head, $hselected);
|
||||||
|
|
||||||
|
|
||||||
print '<table class="border" width="100%" cellspacing="0" cellpadding="3">';
|
print '<table class="border" width="100%">';
|
||||||
print "<tr>";
|
print "<tr>";
|
||||||
print '<td width="20%">Service</td><td colspan="3">'.($contrat->product->ref).' - '.($contrat->product->label_url).'</td>';
|
print '<td width="20%">'.$langs->trans("Service").'</td><td colspan="3">'.($contrat->product->ref).' - '.($contrat->product->label_url).'</td>';
|
||||||
print '</tr><tr>';
|
print '</tr>';
|
||||||
if ($contrat->factureid)
|
if ($contrat->factureid)
|
||||||
{
|
{
|
||||||
print '<td>Société</td><td>'.$contrat->societe->nom_url.'</td>';
|
print '<tr><td>'.$langs->trans("Company").'</td><td colspan="3">'.$contrat->societe->nom_url.'</td></tr>';
|
||||||
print '<td>Facture</td><td><a href="../compta/facture.php?facid='.$contrat->factureid.'">Facture</td>';
|
|
||||||
|
$facture=new Facture($db);
|
||||||
|
$facture->fetch($contrat->factureid);
|
||||||
|
print '<tr><td>'.$langs->trans("Bill").'</td><td><a href="../compta/facture.php?facid='.$contrat->factureid.'">'.$facture->ref.'</td>';
|
||||||
|
print '<td>'.$langs->trans("BillStatus").'</td><td>'.$facture->get_libStatut().'</td></tr>';
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
print '<td>Société</td><td colspan="3">'.$contrat->societe->nom_url.'</td></tr>';
|
print '<tr><td>'.$langs->trans("Company").'</td><td colspan="3">'.$contrat->societe->nom_url.'</td></tr>';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Affiche statut contrat
|
// Affiche statut contrat
|
||||||
@ -128,25 +143,25 @@ if ($id)
|
|||||||
if ($contrat->enservice == 1)
|
if ($contrat->enservice == 1)
|
||||||
{
|
{
|
||||||
if (! $contrat->date_fin_validite || $contrat->date_fin_validite >= $now) {
|
if (! $contrat->date_fin_validite || $contrat->date_fin_validite >= $now) {
|
||||||
$class = "normal";
|
$class = 'normal';
|
||||||
$statut="En service";
|
$statut=$langs->trans("ContractStatusRunning");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$class = "error";
|
$class = 'error';
|
||||||
$statut="<b>En service, expiré</b>";
|
$statut= $langs->trans("ContractStatusRunning").', '.img_warning().' '.$langs->trans("ContractStatusExpired");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif($contrat->enservice == 2)
|
elseif($contrat->enservice == 2)
|
||||||
{
|
{
|
||||||
$class = "normal";
|
$class = 'normal';
|
||||||
$statut= "Cloturé";
|
$statut= $langs->trans("ContractStatusClosed");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$class = "warning";
|
$class = 'warning';
|
||||||
$statut= "<b>Ce contrat n'est pas en service</b>";
|
$statut= '<b>'.$langs->trans("ContractNotRunning").'</b>';
|
||||||
}
|
}
|
||||||
print "<tr><td>".$langs->trans("Status")."</td><td colspan=\"3\" class=\"$class\">$statut</td></tr>\n";
|
print "<tr><td>".$langs->trans("ContractStatus")."</td><td colspan=\"3\" class=\"$class\">$statut</td></tr>\n";
|
||||||
|
|
||||||
if ($_GET["request"] == 'miseenservice')
|
if ($_GET["request"] == 'miseenservice')
|
||||||
{
|
{
|
||||||
@ -223,16 +238,16 @@ if ($id)
|
|||||||
print "<tr><td valign=\"top\">Mis en service</td><td>".dolibarr_print_date($contrat->mise_en_service,"%d %B %Y à %H:%M");
|
print "<tr><td valign=\"top\">Mis en service</td><td>".dolibarr_print_date($contrat->mise_en_service,"%d %B %Y à %H:%M");
|
||||||
print "</td>";
|
print "</td>";
|
||||||
$contrat->user_service->fetch();
|
$contrat->user_service->fetch();
|
||||||
print '<td>par</td><td>'.$contrat->user_service->fullname.'</td></tr>';
|
print '<td>'.$langs->trans("By").'</td><td>'.$contrat->user_service->fullname.'</td></tr>';
|
||||||
|
|
||||||
print '<tr><td valign="top">Fin de validité</td><td colspan="3">'.dolibarr_print_date($contrat->date_fin_validite,"%d %B %Y à %H:%M");
|
print '<tr><td valign="top">Fin de validité</td><td colspan="3">'.dolibarr_print_date($contrat->date_fin_validite,"%d %B %Y à %H:%M");
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($contrat->enservice == 2)
|
if ($contrat->enservice == 2)
|
||||||
{
|
{
|
||||||
print "<tr><td valign=\"top\">Cloturé</td><td>".dolibarr_print_date($contrat->date_cloture,"%d %B %Y à %H:%M")."</td>";
|
print '<tr><td valign="top">'.$langs->trans("Closed").'</td><td>'.dolibarr_print_date($contrat->date_cloture,"%d %B %Y à %H:%M").'</td>';
|
||||||
$contrat->user_cloture->fetch();
|
$contrat->user_cloture->fetch();
|
||||||
print '<td>par</td><td>'.$contrat->user_cloture->fullname.'</td></tr>';
|
print '<td>'.$langs->trans("By").'</td><td>'.$contrat->user_cloture->fullname.'</td></tr>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -244,7 +259,8 @@ if ($id)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
print "Error";
|
dolibarr_print_error(0,"Contract id not provided");
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -268,7 +284,7 @@ if (! $contrat->enservice)
|
|||||||
elseif ($contrat->enservice == 1)
|
elseif ($contrat->enservice == 1)
|
||||||
{
|
{
|
||||||
print '<a class="tabAction" href="fiche.php?action=annule&id='.$id.'">Mettre hors service</a>';
|
print '<a class="tabAction" href="fiche.php?action=annule&id='.$id.'">Mettre hors service</a>';
|
||||||
print '<a class="tabAction" href="fiche.php?action=cloture&id='.$id.'">Clôturer</a>';
|
print '<a class="tabAction" href="fiche.php?action=cloture&id='.$id.'">'.$langs->trans("Close").'</a>';
|
||||||
}
|
}
|
||||||
print '</div>';
|
print '</div>';
|
||||||
|
|
||||||
|
|||||||
@ -20,8 +20,19 @@
|
|||||||
* $Source$
|
* $Source$
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\file htdocs/contrat/contrat.class.php
|
||||||
|
\ingroup contrat
|
||||||
|
\brief Fichier de la classe des contrats
|
||||||
|
\version $Revision$
|
||||||
|
*/
|
||||||
|
|
||||||
require("./pre.inc.php");
|
require("./pre.inc.php");
|
||||||
|
|
||||||
|
$langs->load("products");
|
||||||
|
|
||||||
|
|
||||||
llxHeader();
|
llxHeader();
|
||||||
|
|
||||||
$sortorder=$_GET["sortorder"];
|
$sortorder=$_GET["sortorder"];
|
||||||
@ -75,20 +86,22 @@ if ( $db->query($sql) )
|
|||||||
|
|
||||||
print_barre_liste("Liste des contrats", $page, "index.php", "&sref=$sref&snom=$snom", $sortfield, $sortorder,'',$num);
|
print_barre_liste("Liste des contrats", $page, "index.php", "&sref=$sref&snom=$snom", $sortfield, $sortorder,'',$num);
|
||||||
|
|
||||||
print '<table class="noborder" width="100%" cellspacing="0" cellpadding="3">';
|
print '<table class="noborder" width="100%">';
|
||||||
|
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print '<td>';
|
print '<td>';
|
||||||
print_liste_field_titre("Numéro","index.php", "c.rowid");
|
print_liste_field_titre($langs->trans("Ref"),"index.php", "c.rowid");
|
||||||
print "</td><td>";
|
print "</td><td>";
|
||||||
print_liste_field_titre($langs->trans("Label"),"index.php", "p.label");
|
print_liste_field_titre($langs->trans("Label"),"index.php", "p.label");
|
||||||
print "</td><td>";
|
print "</td><td>";
|
||||||
print_liste_field_titre("Société","index.php", "s.nom");
|
print_liste_field_titre($langs->trans("Company"),"index.php", "s.nom");
|
||||||
print '</td><td align="center">';
|
print '</td><td align="center">';
|
||||||
print_liste_field_titre($langs->trans("Status"),"index.php", "c.enservice");
|
print_liste_field_titre($langs->trans("Status"),"index.php", "c.enservice");
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print '</td><td align="center">';
|
print '</td><td align="center">';
|
||||||
print_liste_field_titre("Date Fin","index.php", "c.fin_validite");
|
print_liste_field_titre("Date Fin","index.php", "c.fin_validite");
|
||||||
|
print '</td><td align="center">';
|
||||||
|
print_liste_field_titre($langs->trans("Action"),"index.php", "c.next");
|
||||||
print '</td>';
|
print '</td>';
|
||||||
print "</tr>\n";
|
print "</tr>\n";
|
||||||
|
|
||||||
@ -109,23 +122,23 @@ if ( $db->query($sql) )
|
|||||||
if ($obj->enservice == 1)
|
if ($obj->enservice == 1)
|
||||||
{
|
{
|
||||||
if (! $obj->fin_validite || $obj->fin_validite >= $now) {
|
if (! $obj->fin_validite || $obj->fin_validite >= $now) {
|
||||||
$class = "normal";
|
$class = 'normal';
|
||||||
$statut="En service";
|
$statut= $langs->trans("ContractStatusRunning");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$class = "error";
|
$class = 'error';
|
||||||
$statut="<b>En service</b>, ".img_warning()." expiré";
|
$statut= $langs->trans("ContractStatusRunning").', '.img_warning().' '.$langs->trans("ContractStatusExpired");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
elseif($obj->enservice == 2)
|
elseif($obj->enservice == 2)
|
||||||
{
|
{
|
||||||
$class = "normal";
|
$class = "normal";
|
||||||
$statut= "Cloturé";
|
$statut= $langs->trans("Closed");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$class = "warning";
|
$class = "warning";
|
||||||
$statut= "A mettre en service";
|
$statut= $langs->trans("ContractStatusToRun");
|
||||||
}
|
}
|
||||||
print "<td align=\"center\" class=\"$class\">";
|
print "<td align=\"center\" class=\"$class\">";
|
||||||
print "$statut";
|
print "$statut";
|
||||||
@ -140,6 +153,10 @@ if ( $db->query($sql) )
|
|||||||
}
|
}
|
||||||
print "</td>\n";
|
print "</td>\n";
|
||||||
|
|
||||||
|
print '<td>';
|
||||||
|
// \todo Créer action "Renouveler"
|
||||||
|
print '</td>';
|
||||||
|
|
||||||
print "</tr>\n";
|
print "</tr>\n";
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
@ -150,7 +167,7 @@ if ( $db->query($sql) )
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
print $db->error() . "<br>" .$sql;
|
dolibarr_print_error($db);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user