Fixed limitation: tickets named automatically even if a name is specified (attribute : ref) ; this is stopper when importing tickets from an existing workflow tool

SVN:trunk[890]
This commit is contained in:
Romain Quetiez
2010-10-12 16:04:09 +00:00
parent bc6a3ab485
commit 05dbcb0a8b
4 changed files with 46 additions and 28 deletions

View File

@@ -118,7 +118,7 @@ abstract class Change extends Ticket
'workgroup_id' => OPT_ATT_MANDATORY,
'supervisor_group_id' => OPT_ATT_MANDATORY,
'manager_group_id' => OPT_ATT_MANDATORY,
'description' => OPT_ATT_READONLY,
'description' => OPT_ATT_READONLY,
'requestor_id' => OPT_ATT_READONLY,
'title' => OPT_ATT_MANDATORY,
),
@@ -141,7 +141,7 @@ abstract class Change extends Ticket
'agent_id' => OPT_ATT_MUSTCHANGE,
'supervisor_id' => OPT_ATT_MUSTCHANGE,
'manager_id' => OPT_ATT_MUSTCHANGE,
'description' => OPT_ATT_READONLY,
'description' => OPT_ATT_READONLY,
'requestor_id' => OPT_ATT_READONLY,
),
)
@@ -288,14 +288,18 @@ abstract class Change extends Ticket
public function ComputeValues()
{
$iKey = $this->GetKey();
if ($iKey < 0)
$sCurrRef = $this->Get('ref');
if (strlen($sCurrRef) == 0)
{
// Object not yet in the Database
$iKey = MetaModel::GetNextKey(get_class($this));
$iKey = $this->GetKey();
if ($iKey < 0)
{
// Object not yet in the Database
$iKey = MetaModel::GetNextKey(get_class($this));
}
$sName = sprintf('C-%06d', $iKey);
$this->Set('ref', $sName);
}
$sName = sprintf('C-%06d', $iKey);
$this->Set('ref', $sName);
}
/**

View File

@@ -52,14 +52,19 @@ class Incident extends ResponseTicket
public function ComputeValues()
{
$iKey = $this->GetKey();
if ($iKey < 0)
$sCurrRef = $this->Get('ref');
if (strlen($sCurrRef) == 0)
{
// Object not yet in the Database
$iKey = MetaModel::GetNextKey(get_class($this));
$iKey = $this->GetKey();
if ($iKey < 0)
{
// Object not yet in the Database
$iKey = MetaModel::GetNextKey(get_class($this));
}
$sName = sprintf('I-%06d', $iKey);
$this->Set('ref', $sName);
}
$sName = sprintf('I-%06d', $iKey);
$this->Set('ref', $sName);
return parent::ComputeValues();
}

View File

@@ -209,17 +209,21 @@ class Problem extends Ticket
public function ComputeValues()
{
// Compute the priority of the ticket
$this->Set('priority', $this->ComputePriority());
// Compute the priority of the ticket
$this->Set('priority', $this->ComputePriority());
$iKey = $this->GetKey();
if ($iKey < 0)
$sCurrRef = $this->Get('ref');
if (strlen($sCurrRef) == 0)
{
// Object not yet in the Database
$iKey = MetaModel::GetNextKey(get_class($this));
$iKey = $this->GetKey();
if ($iKey < 0)
{
// Object not yet in the Database
$iKey = MetaModel::GetNextKey(get_class($this));
}
$sName = sprintf('P-%06d', $iKey);
$this->Set('ref', $sName);
}
$sName = sprintf('P-%06d', $iKey);
$this->Set('ref', $sName);
}
}

View File

@@ -75,14 +75,19 @@ class UserRequest extends ResponseTicket
public function ComputeValues()
{
$iKey = $this->GetKey();
if ($iKey < 0)
$sCurrRef = $this->Get('ref');
if (strlen($sCurrRef) == 0)
{
// Object not yet in the Database
$iKey = MetaModel::GetNextKey(get_class($this));
$iKey = $this->GetKey();
if ($iKey < 0)
{
// Object not yet in the Database
$iKey = MetaModel::GetNextKey(get_class($this));
}
$sName = sprintf('R-%06d', $iKey);
$this->Set('ref', $sName);
}
$sName = sprintf('R-%06d', $iKey);
$this->Set('ref', $sName);
return parent::ComputeValues();
}