Ajout de la possibilit d'affecter un commercial la cration d'un tier (slection non obligatoire), cette liste droulante n'est pas visible si l'utilisateur n'a pas le droit de voir tous les clients, dans ce cas se sera l'id du user en question qui sera affect la socit.

This commit is contained in:
Regis Houssin 2007-03-21 18:22:32 +00:00
parent c39bb227ee
commit f25f8b1909
5 changed files with 29 additions and 5 deletions

View File

@ -657,7 +657,7 @@ class Form
* \param selected Id contact pré-sélectionn
* \param htmlname Nom champ formulaire
*/
function select_users($selected='',$htmlname='userid')
function select_users($selected='',$htmlname='userid',$show_empty=0)
{
// On recherche les utilisateurs
$sql = "SELECT u.rowid, u.name, u.firstname FROM ";
@ -667,6 +667,7 @@ class Form
if ($this->db->query($sql))
{
print '<select class="flat" name="'.$htmlname.'">';
if ($show_empty) print '<option value="-1"'.($id==-1?' selected="true"':'').'>&nbsp;</option>'."\n";
$num = $this->db->num_rows();
$i = 0;
if ($num)
@ -674,7 +675,7 @@ class Form
while ($i < $num)
{
$obj = $this->db->fetch_object();
if ($selected && $selected == $obj->rowid)
{
print '<option value="'.$obj->rowid.'" selected="true">'.$obj->name.' '.$obj->firstname.'</option>';

View File

@ -206,4 +206,5 @@ AddAddress=Add address
NoOtherDeliveryAddress=No alternative delivery address defined
JuridicalStatus200=Independant
DeleteFile=Delete file
ConfirmDeleteFile=Are you sure you want to delete this file?
ConfirmDeleteFile=Are you sure you want to delete this file?
AllocateCommercial=Allocate a commercial

View File

@ -207,4 +207,5 @@ AddAddress=Ajouter adresse
NoOtherDeliveryAddress=Pas d'adresses alternatives définies
SupplierCategory=Catégorie du fournisseur
DeleteFile=Suppression d'un fichier
ConfirmDeleteFile=Êtes-vous sûr de vouloir supprimer ce fichier ?
ConfirmDeleteFile=Êtes-vous sûr de vouloir supprimer ce fichier ?
AllocateCommercial=Affecter un commercial

View File

@ -122,6 +122,8 @@ if ((! $_POST["getcustomercode"] && ! $_POST["getsuppliercode"])
$soc->client = $_POST["client"];
$soc->fournisseur = $_POST["fournisseur"];
$soc->fournisseur_categorie = $_POST["fournisseur_categorie"];
$soc->commercial_id = $_POST["commercial_id"];
if ($_POST["action"] == 'add')
{
@ -271,9 +273,11 @@ if ($_POST["getcustomercode"] || $_POST["getsuppliercode"] ||
$soc->typent_id=$_POST["typent_id"];
$soc->effectif_id=$_POST["effectif_id"];
$soc->tva_assuj = $_POST["assujtva_value"];
$soc->tva_assuj = $_POST["assujtva_value"];
$soc->tva_intra_code=$_POST["tva_intra_code"];
$soc->tva_intra_num=$_POST["tva_intra_num"];
$soc->commercial_id=$_POST["commercial_id"];
}
// On positionne pays_id, pays_code et libelle du pays choisi
@ -512,6 +516,16 @@ if ($_POST["getcustomercode"] || $_POST["getsuppliercode"] ||
}
print '</td>';
print '</tr>';
if ($user->rights->commercial->client->voir)
{
//Affecter un commercial
print '<tr>';
print '<td>'.$langs->trans("AllocateCommercial").'</td>';
print '<td colspan="3">';
$form->select_users($soc->commercial_id,'commercial_id',1);
print '</td></tr>';
}

View File

@ -89,6 +89,8 @@ class Societe
var $statut_commercial;
var $price_level;
var $commercial_id; //Id du commercial affecté
/**
@ -161,6 +163,11 @@ class Societe
{
$this->add_commercial($user, $user->id);
}
// Ajout du commercial affecté
else if ($this->commercial_id != '' && $this->commercial_id != -1)
{
$this->add_commercial($user, $this->commercial_id);
}
// si le fournisseur est classe on l'ajoute
$this->AddFournisseurInCategory($this->fournisseur_categorie);