81 |
|
|
82 |
$contrat->soc_id = $_POST["soc_id"]; |
$contrat->soc_id = $_POST["soc_id"]; |
83 |
$contrat->date_contrat = $datecontrat; |
$contrat->date_contrat = $datecontrat; |
84 |
$contrat->commercial_suivi_id = $_POST["commercial_suivi_id"]; |
// Remplacé par la fonction des contacts non limités d'un contrat |
85 |
$contrat->commercial_signature_id = $_POST["commercial_signature_id"]; |
// $contrat->commercial_suivi_id = $_POST["commercial_suivi_id"]; |
86 |
|
// $contrat->commercial_signature_id = $_POST["commercial_signature_id"]; |
87 |
$contrat->note = $_POST["note"]; |
$contrat->note = $_POST["note"]; |
88 |
$contrat->projetid = $_POST["projetid"]; |
$contrat->projetid = $_POST["projetid"]; |
89 |
$contrat->remise_percent = $_POST["remise_percent"]; |
$contrat->remise_percent = $_POST["remise_percent"]; |
90 |
|
|
|
/* |
|
|
$contrat->add_product($_POST["idprod1"],$_POST["qty1"],$_POST["remise_percent1"]); |
|
|
$contrat->add_product($_POST["idprod2"],$_POST["qty2"],$_POST["remise_percent2"]); |
|
|
$contrat->add_product($_POST["idprod3"],$_POST["qty3"],$_POST["remise_percent3"]); |
|
|
$contrat->add_product($_POST["idprod4"],$_POST["qty4"],$_POST["remise_percent4"]); |
|
|
*/ |
|
91 |
$result = $contrat->create($user,$langs,$conf); |
$result = $contrat->create($user,$langs,$conf); |
92 |
if ($result > 0) |
if ($result > 0) |
93 |
{ |
{ |
265 |
print '<tr><td>'.$langs->trans("Customer").':</td><td><a href="'.DOL_URL_ROOT.'/comm/fiche.php?socid='.$soc->id.'">'.$obj->nom.'</a></td></tr>'; |
print '<tr><td>'.$langs->trans("Customer").':</td><td><a href="'.DOL_URL_ROOT.'/comm/fiche.php?socid='.$soc->id.'">'.$obj->nom.'</a></td></tr>'; |
266 |
|
|
267 |
// Commercial suivi |
// Commercial suivi |
268 |
|
/* Remplacé par fonction des contacts d'un contrat |
269 |
print '<tr><td width="20%" nowrap>'.$langs->trans("SalesRepresentativeFollowUp").'</td><td>'; |
print '<tr><td width="20%" nowrap>'.$langs->trans("SalesRepresentativeFollowUp").'</td><td>'; |
270 |
print '<select name="commercial_suivi_id">'; |
print '<select name="commercial_suivi_id">'; |
271 |
print '<option value="-1"> </option>'; |
print '<option value="-1"> </option>'; |
315 |
|
|
316 |
} |
} |
317 |
print '</select></td></tr>'; |
print '</select></td></tr>'; |
318 |
|
*/ |
319 |
print '<tr><td>'.$langs->trans("Date").' :</td><td>'; |
print '<tr><td>'.$langs->trans("Date").' :</td><td>'; |
320 |
$html->select_date(); |
$html->select_date(); |
321 |
print "</td></tr>"; |
print "</td></tr>"; |
327 |
$html->select_array("projetid",$proj->liste_array($soc->id),0,1); |
$html->select_array("projetid",$proj->liste_array($soc->id),0,1); |
328 |
print "</td></tr>"; |
print "</td></tr>"; |
329 |
} |
} |
330 |
|
|
|
/* |
|
|
* |
|
|
* Liste des elements |
|
|
* |
|
|
* |
|
|
print '<tr><td colspan="3">'.$langs->trans("Services").'/'.$langs->trans("Products").'</td></tr>'; |
|
|
print '<tr><td colspan="3">'; |
|
|
|
|
|
$sql = "SELECT p.rowid,p.label,p.ref,p.price FROM ".MAIN_DB_PREFIX."product as p "; |
|
|
$sql .= " WHERE envente = 1"; |
|
|
$sql .= " ORDER BY p.nbvente DESC LIMIT 20"; |
|
|
if ( $db->query($sql) ) |
|
|
{ |
|
|
$opt = "<option value=\"0\" selected=\"true\"></option>"; |
|
|
if ($result) |
|
|
{ |
|
|
$num = $db->num_rows(); $i = 0; |
|
|
while ($i < $num) |
|
|
{ |
|
|
$objp = $db->fetch_object(); |
|
|
$opt .= "<option value=\"$objp->rowid\">[$objp->ref] $objp->label : $objp->price</option>\n"; |
|
|
$i++; |
|
|
} |
|
|
} |
|
|
$db->free(); |
|
|
} |
|
|
else |
|
|
{ |
|
|
print $db->error(); |
|
|
} |
|
|
|
|
|
print '<table class="noborder" cellspacing="0">'; |
|
|
print '<tr><td>20 Produits les plus vendus</td><td>Quan.</td><td>Remise</td></tr>'; |
|
|
for ($i = 1 ; $i < 5 ; $i++) |
|
|
{ |
|
|
print '<tr><td><select name="idprod'.$i.'">'.$opt.'</select></td>'; |
|
|
print '<td><input type="text" size="3" name="qty'.$i.'" value="1"></td>'; |
|
|
print '<td><input type="text" size="4" name="remise_percent'.$i.'" value="0">%</td></tr>'; |
|
|
} |
|
|
|
|
|
print '</table>'; |
|
|
print '</td></tr>'; |
|
|
*/ |
|
331 |
print '<tr><td>'.$langs->trans("Comment").'</td><td valign="top">'; |
print '<tr><td>'.$langs->trans("Comment").'</td><td valign="top">'; |
332 |
print '<textarea name="note" wrap="soft" cols="60" rows="3"></textarea></td></tr>'; |
print '<textarea name="note" wrap="soft" cols="60" rows="3"></textarea></td></tr>'; |
333 |
|
|
539 |
print "</td></tr>"; |
print "</td></tr>"; |
540 |
} |
} |
541 |
|
|
542 |
|
/* Remplacer par fonction des contacts de contrat |
543 |
|
// Commerciaux |
544 |
print '<tr><td width="25%">'.$langs->trans("SalesRepresentativeFollowUp").'</td><td>'.$commercial_suivi->fullname.'</td>'; |
print '<tr><td width="25%">'.$langs->trans("SalesRepresentativeFollowUp").'</td><td>'.$commercial_suivi->fullname.'</td>'; |
545 |
print '<td width="25%">'.$langs->trans("SalesRepresentativeSignature").'</td><td>'.$commercial_signature->fullname.'</td></tr>'; |
print '<td width="25%">'.$langs->trans("SalesRepresentativeSignature").'</td><td>'.$commercial_signature->fullname.'</td></tr>'; |
546 |
|
*/ |
547 |
print "</table>"; |
print "</table>"; |
548 |
|
|
549 |
if ($contrat->brouillon == 1 && $user->rights->contrat->creer) |
if ($contrat->brouillon == 1 && $user->rights->contrat->creer) |
594 |
{ |
{ |
595 |
|
|
596 |
print '<tr '.$bc[$var].' valign="top">'; |
print '<tr '.$bc[$var].' valign="top">'; |
597 |
|
// Libelle |
598 |
if ($objp->fk_product > 0) |
if ($objp->fk_product > 0) |
599 |
{ |
{ |
600 |
print '<td>'; |
print '<td>'; |
652 |
|
|
653 |
print "</tr>\n"; |
print "</tr>\n"; |
654 |
|
|
655 |
// Dates mise en service |
// Dates de en service prévues et effectives |
656 |
|
|
657 |
print '<tr '.$bc[$var].'>'; |
print '<tr '.$bc[$var].'>'; |
658 |
print '<td colspan="7">'; |
print '<td colspan="7">'; |
659 |
// Si pas encore activé |
|
660 |
if (! $objp->date_debut_reelle) { |
// Date prévues |
661 |
print $langs->trans("DateStartPlanned").': '; |
print $langs->trans("DateStartPlanned").': '; |
662 |
if ($objp->date_debut) print dolibarr_print_date($objp->date_debut); |
if ($objp->date_debut) { |
663 |
else print $langs->trans("Unknown"); |
print dolibarr_print_date($objp->date_debut); |
664 |
|
// Warning si date prevu passée et pas en service |
665 |
|
if ($objp->statut == 0 && $objp->date_debut < time() - $conf->contrat->warning_delay) { print " ".img_warning($langs->trans("Late")); } |
666 |
} |
} |
667 |
// Si activé |
else print $langs->trans("Unknown"); |
668 |
if ($objp->date_debut_reelle) { |
print ' - '; |
669 |
print $langs->trans("DateStartReal").': '; |
print $langs->trans("DateEndPlanned").': '; |
670 |
if ($objp->date_debut_reelle) print dolibarr_print_date($objp->date_debut_reelle); |
if ($objp->date_fin) { |
671 |
else print $langs->trans("ContractStatusNotRunning"); |
print dolibarr_print_date($objp->date_fin); |
672 |
|
if ($objp->statut == 4 && $objp->date_fin < time() - $conf->contrat->warning_delay) { print " ".img_warning($langs->trans("Late")); } |
673 |
} |
} |
674 |
|
else print $langs->trans("Unknown"); |
675 |
|
|
676 |
print ' - '; |
print '<br>'; |
677 |
|
|
678 |
// Si pas encore activé |
// Si pas encore activé |
679 |
if (! $objp->date_debut_reelle) { |
if (! $objp->date_debut_reelle) { |
680 |
print $langs->trans("DateEndPlanned").': '; |
print $langs->trans("DateStartReal").': '; |
681 |
if ($objp->date_fin) { |
if ($objp->date_debut_reelle) print dolibarr_print_date($objp->date_debut_reelle); |
682 |
print dolibarr_print_date($objp->date_fin); |
else print $langs->trans("ContractStatusNotRunning"); |
|
} |
|
|
else print $langs->trans("Unknown"); |
|
683 |
} |
} |
684 |
// Si activé |
// Si activé et en cours |
685 |
if ($objp->date_debut_reelle && ! $objp->date_fin_reelle) { |
if ($objp->date_debut_reelle && ! $objp->date_fin_reelle) { |
686 |
print $langs->trans("DateEndPlanned").': '; |
print $langs->trans("DateStartReal").': '; |
687 |
if ($objp->date_fin) { |
print dolibarr_print_date($objp->date_debut_reelle); |
|
print dolibarr_print_date($objp->date_fin); |
|
|
if ($objp->date_fin < time()) { print " ".img_warning($langs->trans("Late")); } |
|
|
} |
|
|
else print $langs->trans("Unknown"); |
|
688 |
} |
} |
689 |
// Si désactivé |
// Si désactivé |
690 |
if ($objp->date_debut_reelle && $objp->date_fin_reelle) { |
if ($objp->date_debut_reelle && $objp->date_fin_reelle) { |
691 |
|
print $langs->trans("DateStartReal").': '; |
692 |
|
print dolibarr_print_date($objp->date_debut_reelle); |
693 |
|
print ' - '; |
694 |
print $langs->trans("DateEndReal").': '; |
print $langs->trans("DateEndReal").': '; |
695 |
print dolibarr_print_date($objp->date_fin_reelle); |
print dolibarr_print_date($objp->date_fin_reelle); |
696 |
} |
} |
735 |
$html->select_date($objp->date_debut,"date_start_update",0,0,($objp->date_debut>0?0:1)); |
$html->select_date($objp->date_debut,"date_start_update",0,0,($objp->date_debut>0?0:1)); |
736 |
print ' '.$langs->trans("DateEndPlanned").' '; |
print ' '.$langs->trans("DateEndPlanned").' '; |
737 |
$html->select_date($objp->date_fin,"date_end_update",0,0,($objp->date_fin>0?0:1)); |
$html->select_date($objp->date_fin,"date_end_update",0,0,($objp->date_fin>0?0:1)); |
738 |
|
if ($objp->statut >= 4) |
739 |
|
{ |
740 |
|
print '<br>'; |
741 |
|
print $langs->trans("DateStartReal").' '; |
742 |
|
$html->select_date($objp->date_debut_reelle,"date_start_real_update",0,0,($objp->date_debut_reelle>0?0:1)); |
743 |
|
print ' '; |
744 |
|
if ($objp->statut == 5) |
745 |
|
{ |
746 |
|
print $langs->trans("DateEndReal").' '; |
747 |
|
$html->select_date($objp->date_fin_reelle,"date_end_real_update",0,0,($objp->date_fin_reelle>0?0:1)); |
748 |
|
} |
749 |
|
} |
750 |
print '</td>'; |
print '</td>'; |
751 |
print '</tr>'; |
print '</tr>'; |
752 |
|
|