mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
add methods to end dv
This commit is contained in:
@@ -111,4 +111,19 @@ class GehaltsbestandteilLib
|
||||
throw new Exception('error deleting gehaltsbestandteil');
|
||||
}
|
||||
}
|
||||
|
||||
public function endGehaltsbestandteil(Gehaltsbestandteil $gehaltsbestandteil, $enddate)
|
||||
{
|
||||
$ret = $this->GehaltsbestandteilModel->update($gehaltsbestandteil->getGehaltsbestandteil_id(),
|
||||
(object) array(
|
||||
'bis' => $enddate,
|
||||
'updatevon' => getAuthUID(),
|
||||
'updateamum' => strftime('%Y-%m-%d %H:%M')
|
||||
));
|
||||
|
||||
if (isError($ret))
|
||||
{
|
||||
throw new Exception('error ending gehaltsbestandteil');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -359,4 +359,68 @@ class VertragsbestandteilLib
|
||||
$dv->getDienstverhaeltnis_id()
|
||||
);
|
||||
}
|
||||
|
||||
public function endDienstverhaeltnis(Dienstverhaeltnis $dv, $enddate)
|
||||
{
|
||||
$this->CI->db->trans_begin();
|
||||
try
|
||||
{
|
||||
if( intval($dv->getDienstverhaeltnis_id()) > 0 )
|
||||
{
|
||||
$gbs = $this->GehaltsbestandteilLib->fetchGehaltsbestandteile($dv->getDienstverhaeltnis_id());
|
||||
foreach ($gbs as $gb)
|
||||
{
|
||||
$this->GehaltsbestandteilLib->endGehaltsbestandteil($gb, $enddate);
|
||||
}
|
||||
|
||||
$vbs = $this->fetchVertragsbestandteile($dv->getDienstverhaeltnis_id());
|
||||
foreach ($vbs as $vb)
|
||||
{
|
||||
$this->endVertragsbestandteil($vb, $enddate);
|
||||
}
|
||||
|
||||
$ret = $this->DienstverhaeltnisModel->update($dv->getDienstverhaeltnis_id(),
|
||||
(object) array(
|
||||
'bis' => $enddate,
|
||||
'updatevon' => getAuthUID(),
|
||||
'updateamum' => strftime('%Y-%m-%d %H:%M')
|
||||
));
|
||||
if(isError($ret) )
|
||||
{
|
||||
log_message('debug', "end DV failed");
|
||||
throw new Exception('error ending dienstverhaeltnis '
|
||||
. $dv->getDienstverhaeltnis_id());
|
||||
}
|
||||
|
||||
if( $this->CI->db->trans_status() === false )
|
||||
{
|
||||
log_message('debug', "Transaction failed");
|
||||
throw new Exception("Transaction failed");
|
||||
}
|
||||
$this->CI->db->trans_commit();
|
||||
}
|
||||
}
|
||||
catch (Exception $ex)
|
||||
{
|
||||
log_message('debug', "Transaction rolled back. " . $ex->getMessage());
|
||||
$this->CI->db->trans_rollback();
|
||||
return $ex->getMessage();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public function endVertragsbestandteil(Vertragsbestandteil $vertragsbestandteil, $enddate)
|
||||
{
|
||||
$ret = $this->VertragsbestandteilModel->update($vertragsbestandteil->getVertragsbestandteil_id(),
|
||||
(object) array(
|
||||
'bis' => $enddate,
|
||||
'updatevon' => getAuthUID(),
|
||||
'updateamum' => strftime('%Y-%m-%d %H:%M')
|
||||
));
|
||||
|
||||
if (isError($ret))
|
||||
{
|
||||
throw new Exception('error ending vertragsbestandteil');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user