mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-18 12:39:29 +00:00
Merge branch 'feature-39212/PV21-Grund_beim_Beenden_eines_DV' into merge_37107_37133_39212
This commit is contained in:
@@ -29,6 +29,9 @@ class Dienstverhaeltnis extends AbstractBestandteil {
|
||||
protected $updateamum;
|
||||
protected $updatevon;
|
||||
|
||||
protected $dvendegrund_kurzbz;
|
||||
protected $dvendegrund_anmerkung;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
@@ -49,6 +52,8 @@ class Dienstverhaeltnis extends AbstractBestandteil {
|
||||
isset($data->insertvon) && $this->setInsertvon($data->insertvon);
|
||||
isset($data->updateamum) && $this->setUpdateamum($data->updateamum);
|
||||
isset($data->updatevon) && $this->setUpdatevon($data->updatevon);
|
||||
isset($data->dvendegrund_kurzbz) && $this->setDvendegrund_kurzbz($data->dvendegrund_kurzbz);
|
||||
isset($data->dvendegrund_anmerkung) && $this->setDvendegrund_anmerkung($data->dvendegrund_anmerkung);
|
||||
$this->fromdb = false;
|
||||
}
|
||||
|
||||
@@ -64,7 +69,9 @@ class Dienstverhaeltnis extends AbstractBestandteil {
|
||||
'insertamum' => $this->getInsertamum(),
|
||||
'insertvon' => $this->getInsertvon(),
|
||||
'updateamum' => $this->getUpdateamum(),
|
||||
'updatevon' => $this->getUpdatevon()
|
||||
'updatevon' => $this->getUpdatevon(),
|
||||
'dvendegrund_kurzbz' => $this->getDvendegrund_kurzbz(),
|
||||
'dvendegrund_anmerkung' => $this->getDvendegrund_anmerkung()
|
||||
);
|
||||
|
||||
$tmp = array_filter($tmp, function($k) {
|
||||
@@ -139,6 +146,16 @@ EOTXT;
|
||||
return $this->updatevon;
|
||||
}
|
||||
|
||||
public function getDvendegrund_kurzbz()
|
||||
{
|
||||
return $this->dvendegrund_kurzbz;
|
||||
}
|
||||
|
||||
public function getDvendegrund_anmerkung()
|
||||
{
|
||||
return $this->dvendegrund_anmerkung;
|
||||
}
|
||||
|
||||
public function setDienstverhaeltnis_id($dienstverhaeltnis_id)
|
||||
{
|
||||
$this->markDirty('dienstverhaeltnis_id', $this->dienstverhaeltnis_id, $dienstverhaeltnis_id);
|
||||
@@ -214,6 +231,20 @@ EOTXT;
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function setDvendegrund_kurzbz($dvendegrund_kurzbz)
|
||||
{
|
||||
$this->markDirty('dvendegrund_kurzbz', $this->dvendegrund_kurzbz, $dvendegrund_kurzbz);
|
||||
$this->dvendegrund_kurzbz = $dvendegrund_kurzbz;
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function setDvendegrund_anmerkung($dvendegrund_anmerkung)
|
||||
{
|
||||
$this->markDirty('dvendegrund_anmerkung', $this->dvendegrund_anmerkung, $dvendegrund_anmerkung);
|
||||
$this->dvendegrund_anmerkung = $dvendegrund_anmerkung;
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function validate() {
|
||||
//do Validation here
|
||||
$ci = get_instance();
|
||||
|
||||
@@ -435,7 +435,7 @@ class VertragsbestandteilLib
|
||||
return $result;
|
||||
}
|
||||
|
||||
public function endDienstverhaeltnis(Dienstverhaeltnis $dv, $enddate)
|
||||
public function endDienstverhaeltnis(Dienstverhaeltnis $dv, $enddate, $dvendegrund_kurzbz=null, $dvendegrund_anmerkung=null)
|
||||
{
|
||||
if( $dv->getBis() !== null && $dv->getBis() < $enddate )
|
||||
{
|
||||
@@ -460,6 +460,14 @@ class VertragsbestandteilLib
|
||||
$this->endVertragsbestandteil($vb, $enddate);
|
||||
}
|
||||
|
||||
if( $dvendegrund_kurzbz !== null )
|
||||
{
|
||||
$dv->setDvendegrund_kurzbz($dvendegrund_kurzbz);
|
||||
}
|
||||
if( $dvendegrund_anmerkung !== null )
|
||||
{
|
||||
$dv->setDvendegrund_anmerkung($dvendegrund_anmerkung);
|
||||
}
|
||||
$dv->setBis($enddate);
|
||||
$this->updateDienstverhaeltnis($dv);
|
||||
|
||||
|
||||
@@ -31,9 +31,13 @@ class Dienstverhaeltnis_model extends DB_Model
|
||||
org.bezeichnung oe_bezeichnung,
|
||||
dv.von,
|
||||
dv.bis,
|
||||
dv.dvendegrund_kurzbz,
|
||||
dv.dvendegrund_anmerkung,
|
||||
dv.vertragsart_kurzbz,
|
||||
dv.updateamum,
|
||||
dv.updatevon
|
||||
dv.updatevon,
|
||||
dv.dvendegrund_kurzbz,
|
||||
dv.dvendegrund_anmerkung
|
||||
FROM tbl_mitarbeiter
|
||||
JOIN tbl_benutzer ON tbl_mitarbeiter.mitarbeiter_uid::text = tbl_benutzer.uid::text
|
||||
JOIN tbl_person USING (person_id)
|
||||
|
||||
@@ -437,7 +437,83 @@ if ($result = $db->db_query("SELECT * FROM information_schema.tables WHERE table
|
||||
if (! $db->db_query($qry))
|
||||
echo '<strong>Vertraege: ' . $db->db_last_error() . '</strong><br>';
|
||||
else
|
||||
echo 'HR Schema und Vertagstabellen wurden neu erstellt<br />';
|
||||
echo 'HR Schema und Vertagstabellen wurden neu erstellt<br>';
|
||||
}
|
||||
}
|
||||
|
||||
if ($result = $db->db_query("SELECT * FROM information_schema.tables WHERE table_name='tbl_dvendegrund' AND table_schema='hr'"))
|
||||
{
|
||||
if ($db->db_num_rows($result) == 0)
|
||||
{
|
||||
$qry = "
|
||||
CREATE TABLE hr.tbl_dvendegrund (
|
||||
dvendegrund_kurzbz character varying(32) NOT NULL ,
|
||||
bezeichnung character varying(255) NOT NULL,
|
||||
bezeichnung_mehrsprachig character varying(255)[] NOT NULL,
|
||||
aktiv boolean DEFAULT true NOT NULL,
|
||||
sort integer DEFAULT 1 NOT NULL,
|
||||
PRIMARY KEY (dvendegrund_kurzbz),
|
||||
CONSTRAINT tbl_dvendegrund_bezeichnung_key UNIQUE (bezeichnung)
|
||||
);
|
||||
|
||||
GRANT SELECT, UPDATE, INSERT, DELETE ON hr.tbl_dvendegrund TO vilesci;
|
||||
|
||||
INSERT INTO
|
||||
hr.tbl_dvendegrund (dvendegrund_kurzbz, bezeichnung, bezeichnung_mehrsprachig)
|
||||
VALUES
|
||||
('kuendigung_arbeitnehmer', 'Kündigung durch Arbeitnehmer', ARRAY['Kündigung durch Arbeitnehmer', 'Cancellation by Employee']),
|
||||
('kuendigung_arbeitgeber', 'Kündigung durch Arbeitgeber', ARRAY['Kündigung durch Arbeitgeber', 'Cancellation by Employer']),
|
||||
('entlassung', 'Entlassung', ARRAY['Entlassung', 'Dismissal']),
|
||||
('sonstige', 'Sonstige', ARRAY['Sonstige', 'Miscellaneous']),
|
||||
('einvernehmlich', 'Einvernehmliche Auflösung', ARRAY['Einvernehmliche Auflösung', 'Rescission']),
|
||||
('ablaufzeit', 'Ablauf durch Zeit', ARRAY['Ablauf durch Zeit', 'Expired by lapse of time']);
|
||||
";
|
||||
if (! $db->db_query($qry))
|
||||
echo '<strong>Vertraege: ' . $db->db_last_error() . '</strong><br>';
|
||||
else
|
||||
echo 'Tabelle tbl_dvendegrund wurde im HR Schema neu erstellt<br>';
|
||||
}
|
||||
}
|
||||
|
||||
if ($result = $db->db_query("SELECT * FROM information_schema.columns WHERE column_name='dvendegrund_kurzbz' AND table_name='tbl_dienstverhaeltnis' AND table_schema='hr'"))
|
||||
{
|
||||
if ($db->db_num_rows($result) == 0)
|
||||
{
|
||||
$qry = "
|
||||
ALTER TABLE
|
||||
hr.tbl_dienstverhaeltnis
|
||||
ADD COLUMN
|
||||
dvendegrund_kurzbz character varying(255)
|
||||
CONSTRAINT
|
||||
tbl_dvendegrund_fk
|
||||
REFERENCES
|
||||
hr.tbl_dvendegrund(dvendegrund_kurzbz)
|
||||
ON UPDATE
|
||||
cascade
|
||||
ON DELETE
|
||||
restrict
|
||||
";
|
||||
if (! $db->db_query($qry))
|
||||
echo '<strong>Vertraege: ' . $db->db_last_error() . '</strong><br>';
|
||||
else
|
||||
echo 'Spalte dvendegrund_kurzbz wurde in hr.tbl_dienstverhaeltnis neu erstellt<br>';
|
||||
}
|
||||
}
|
||||
|
||||
if ($result = $db->db_query("SELECT * FROM information_schema.columns WHERE column_name='dvendegrund_anmerkung' AND table_name='tbl_dienstverhaeltnis' AND table_schema='hr'"))
|
||||
{
|
||||
if ($db->db_num_rows($result) == 0)
|
||||
{
|
||||
$qry = "
|
||||
ALTER TABLE
|
||||
hr.tbl_dienstverhaeltnis
|
||||
ADD COLUMN
|
||||
dvendegrund_anmerkung character varying(255)
|
||||
";
|
||||
if (! $db->db_query($qry))
|
||||
echo '<strong>Vertraege: ' . $db->db_last_error() . '</strong><br>';
|
||||
else
|
||||
echo 'Spalte dvendegrund_anmerkung wurde in hr.tbl_dienstverhaeltnis neu erstellt<br>';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -493,4 +569,4 @@ if ($result = $db->db_query("SELECT * FROM hr.tbl_vertragsart WHERE vertragsart_
|
||||
else
|
||||
echo 'Vertragsart "Dienstverhältnis zu einer anderen Bildungseinrichtung oder einem anderen Träger" erstellt.<br />';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user