diff --git a/include/wawi_bestellstatus.class.php b/include/wawi_bestellstatus.class.php
index fa52b51e5..48ce73754 100644
--- a/include/wawi_bestellstatus.class.php
+++ b/include/wawi_bestellstatus.class.php
@@ -151,7 +151,7 @@ class wawi_bestellstatus extends basis_db
}
$qry = "select bestellstatus.* from wawi.tbl_bestellung_bestellstatus as bestellstatus
- where
+ WHERE
bestellung_id = ".$this->addslashes($bestellung_id)." and bestellstatus_kurzbz = ".$this->addslashes($status_kurzbz).";";
if($this->db_query($qry))
{
@@ -200,7 +200,7 @@ class wawi_bestellstatus extends basis_db
* Gibt das Bestelldetail einer Bestellung zur übergebenen BestellungID zurück
* @param $bestellung_id
*/
- public function getStatiFromBestellung($status, $bestellung_id)
+ public function getStatiFromBestellung($status, $bestellung_id, $oe_kurzbz ='')
{
if(!is_numeric($bestellung_id) || $bestellung_id == '')
{
@@ -208,7 +208,9 @@ class wawi_bestellstatus extends basis_db
return false;
}
- $qry ="select * from wawi.tbl_bestellung_bestellstatus where bestellstatus_kurzbz = ".$this->addslashes($status)." and bestellung_id = ".$this->addslashes($bestellung_id).";";
+ $qry ="select * from wawi.tbl_bestellung_bestellstatus
+ WHERE
+ bestellstatus_kurzbz = ".$this->addslashes($status)." and bestellung_id = ".$this->addslashes($bestellung_id).";";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
@@ -231,4 +233,48 @@ class wawi_bestellstatus extends basis_db
else
return false;
}
+
+ /**
+ *
+ * liefert die Freigaben zu Kostenstellen oder Organisationseinheiten zurück, true wenn es einen Eintrag gibt, false wenn nicht
+ * wenn oe_kurzbz nicht mitangegeben wird, wird auf Kostenstelle Freigabe geprüft
+ * @param $bestellung_id
+ * @param $kostenstelle
+ */
+ public function getFreigabeFromBestellung($bestellung_id, $oe_kurzbz='')
+ {
+ if($oe_kurzbz == '')
+ $oe = 'is '.$this->addslashes($oe_kurzbz);
+ else
+ $oe = '= '.$this->addslashes($oe_kurzbz);
+
+ $qry = "Select * FROM wawi.tbl_bestellung_bestellstatus
+ WHERE
+ bestellung_id = ".$this->addslashes($bestellung_id)." and oe_kurzbz ".$oe." and bestellstatus_kurzbz = 'Freigabe';";
+
+ if($this->db_query($qry))
+ {
+ if($row = $this->db_fetch_object())
+ {
+ $this->bestellung_bestellstatus_id = $row->bestellung_bestellstatus_id;
+ $this->bestellung_id = $row->bestellung_id;
+ $this->bestellstatus_kurzbz = $row->bestellstatus_kurzbz;
+ $this->uid = $row->uid;
+ $this->oe_kurzbz = $row->oe_kurzbz;
+ $this->datum = $row->datum;
+ $this->insertvon = $row->insertvon;
+ $this->insertamum = $row->insertamum;
+ $this->updatevon = $row->updatevon;
+ $this->updateamum = $row->updateamum;
+
+ return true;
+ }
+ else
+ return false;
+ }
+ else
+ return false;
+
+ }
+
}
\ No newline at end of file
diff --git a/include/wawi_bestellung.class.php b/include/wawi_bestellung.class.php
index ac2cd9bb9..d0b5099e2 100644
--- a/include/wawi_bestellung.class.php
+++ b/include/wawi_bestellung.class.php
@@ -460,15 +460,15 @@ class wawi_bestellung extends basis_db
* Kopiert eine bestehende Bestellung
* @param $bestellung_id
*/
- function copyBestellung($bestellung_id)
+ function copyBestellung($bestellung_id, $user)
{
$error = false;
$this->db_query('BEGIN;');
// Bestellung kopieren
$qry_bestellung = "INSERT INTO wawi.tbl_bestellung (bestellung_id, besteller_uid, kostenstelle_id, konto_id, firma_id, lieferadresse, rechnungsadresse, freigegeben, bestell_nr,
- titel, bemerkung, liefertermin, updateamum, updatevon, insertamum, insertvon, ext_id) SELECT nextval('wawi.seq_bestellung_bestellung_id'), besteller_uid, kostenstelle_id, konto_id, firma_id, lieferadresse,
- rechnungsadresse, freigegeben, currval('wawi.seq_bestellung_bestellung_id'), titel, bemerkung, liefertermin, now(), updatevon, now(), insertvon, ext_id FROM wawi.tbl_bestellung WHERE
+ titel, bemerkung, liefertermin, updateamum, updatevon, insertamum, insertvon, ext_id) SELECT nextval('wawi.seq_bestellung_bestellung_id'), ".$this->addslashes($user).", kostenstelle_id, konto_id, firma_id, lieferadresse,
+ rechnungsadresse, 'false', currval('wawi.seq_bestellung_bestellung_id'), titel, bemerkung, liefertermin, now(), ".$this->addslashes($user).", now(), ".$this->addslashes($user).", ext_id FROM wawi.tbl_bestellung WHERE
bestellung_id = ".$bestellung_id.";";
//echo $qry_bestellung;
if(!$this->db_query($qry_bestellung))
@@ -494,7 +494,7 @@ class wawi_bestellung extends basis_db
{
$qry_detail ="INSERT INTO wawi.tbl_bestelldetail (bestellung_id, position, menge, verpackungseinheit, beschreibung, artikelnummer, preisprove, mwst, erhalten, sort,
text, insertamum, insertvon, updateamum, updatevon) SELECT $newBestellung_id, position, menge, verpackungseinheit, beschreibung, artikelnummer, preisprove, mwst, erhalten, sort,
- text, now(), insertvon, now(), updatevon FROM wawi.tbl_bestelldetail
+ text, now(), ".$this->addslashes($user).", now(), ".$this->addslashes($user)." FROM wawi.tbl_bestelldetail
WHERE bestelldetail_id = ".$detail->bestelldetail_id.";";
if (!$this->db_query($qry_detail))
$error = true;
@@ -515,7 +515,7 @@ class wawi_bestellung extends basis_db
// zugehörigen TAG kopieren
$qry_detailtag = "INSERT INTO wawi.tbl_bestelldetailtag (tag, bestelldetail_id, insertamum, insertvon)
- SELECT tag, ".$this->addslashes($newBestellDetail_id).", insertamum, insertvon FROM wawi.tbl_bestelldetailtag
+ SELECT tag, ".$this->addslashes($newBestellDetail_id).", now(), ".$this->addslashes($user)." FROM wawi.tbl_bestelldetailtag
WHERE bestelldetail_id = ".$this->addslashes($detail->bestelldetail_id).";";
if (!$this->db_query($qry_detailtag))
@@ -525,7 +525,7 @@ class wawi_bestellung extends basis_db
// aufteilung kopieren
$qry_aufteilung = "INSERT INTO wawi.tbl_aufteilung (bestellung_id, oe_kurzbz, anteil, updateamum, updatevon, insertamum, insertvon)
- SELECT ".$this->addslashes($newBestellung_id)." , oe_kurzbz, anteil, updateamum, updatevon, insertamum, insertvon FROM wawi.tbl_aufteilung WHERE bestellung_id = ".$bestellung_id.";";
+ SELECT ".$this->addslashes($newBestellung_id)." , oe_kurzbz, anteil, updateamum, updatevon, now(), ".$this->addslashes($user)." FROM wawi.tbl_aufteilung WHERE bestellung_id = ".$bestellung_id.";";
if (!$this->db_query($qry_aufteilung))
$error = true;
@@ -536,7 +536,7 @@ class wawi_bestellung extends basis_db
$error = true;
// bestelltag kopieren
- $qry_bestelltag ="INSERT INTO wawi.tbl_bestellungtag (tag, bestellung_id, insertamum, insertvon) SELECT tag, ".$this->addslashes($newBestellung_id).", insertamum, insertvon
+ $qry_bestelltag ="INSERT INTO wawi.tbl_bestellungtag (tag, bestellung_id, insertamum, insertvon) SELECT tag, ".$this->addslashes($newBestellung_id).", now(), ".$this->addslashes($user)."
from wawi.tbl_bestellungtag WHERE bestellung_id = ".$bestellung_id.";";
if (!$this->db_query($qry_bestelltag))
$error = true;
@@ -578,4 +578,13 @@ class wawi_bestellung extends basis_db
return false;
}
+ /**
+ *
+ * Liefert true zurück wenn es schon eine Freigabe auf die KST gegeben hat
+ */
+ public function freigabeKstErfolgt()
+ {
+
+ }
+
}
\ No newline at end of file
diff --git a/wawi/bestellung.php b/wawi/bestellung.php
index e0fcb630f..d6a76f00b 100644
--- a/wawi/bestellung.php
+++ b/wawi/bestellung.php
@@ -980,6 +980,7 @@ if($aktion == 'suche')
function(data){
$("#btn_storniert").html("Storniert am: " +data);
document.editForm.btn_submit.disabled=true;
+ document.editForm.btn_abschicken.disabled=true;
});
}
@@ -1213,219 +1214,250 @@ if($aktion == 'suche')
$bestellung_new = new wawi_bestellung();
$bestellung_new->load($bestellung_id);
$bestellung_new_brutto = $bestellung_new->getBrutto($bestellung_id);
+ $status = new wawi_bestellstatus();
- if(isset($_POST['btn_abschicken']) || isset($_POST['btn_submit']) || isset($_POST['btn_freigabe_kst']))
+ // speichern
+ if(isset($_POST['btn_abschicken']) || isset($_POST['btn_submit']))
{
- $aufteilung_anzahl = $_POST['anz_aufteilung'];
- $bestellung_detail_anz = $_POST['detail_anz'];
-
- $bestellung_new->new = false;
- $bestellung_new->besteller_uid=$user;
- if(is_numeric($_POST['filter_konto']))
- $bestellung_new->konto_id = $_POST['filter_konto'];
- else
- $bestellung_new->konto_id = '';
- $bestellung_new->firma_id = $_POST['firma_id'];
- $bestellung_new->lieferadresse = $_POST['filter_lieferadresse'];
- $bestellung_new->rechnungsadresse = $_POST['filter_rechnungsadresse'];
- $bestellung_new->titel = $_POST['titel'];
- $bestellung_new->bemerkung = $_POST['bemerkung'];
- $bestellung_new->liefertermin = $date->formatDatum($_POST['liefertermin'], 'Y-m-d');
- $bestellung_new->updateamum = date('Y-m-d H:i:s');
- $bestellung_new->updatevon = $user;
- $tags = explode(";", $_POST['tags']);
- $help_tags = new tags();
- $help_tags->bestellung_id = $bestellung_id;
- $help_tags->deleteBestellungTag($tags);
-
- foreach ($tags as $bestelltags)
+ // wenn es status Storno oder Abgeschickt schon gibt, darf nicht gespeichert werden
+ if($status->isStatiVorhanden($bestellung_new->bestellung_id, 'Storno') || $status->isStatiVorhanden($bestellung_new->bestellung_id, 'Abgeschickt'))
{
- $tag_bestellung = new tags();
- $tag_bestellung->tag = trim($bestelltags);
- $tag_bestellung->bestellung_id = $bestellung_id;
- $tag_bestellung->insertvon = $user;
- $tag_besetllung->insertamum = date('Y-m-d H:i:s');
-
- if(!$tag_bestellung->TagExists())
- {
- $tag_bestellung->saveTag();
- $tag_bestellung->saveBestellungTag();
- }
- else
- {
- if(!$tag_bestellung->BestellungTagExists())
- $tag_bestellung->saveBestellungTag();
- }
- }
- // letzte leere zeile nicht speichern
- for($i = 1; $i < $bestellung_detail_anz; $i++)
+ echo "Kein Speichern mehr möglich.
";
+ echo " Zurück zur Bestellung ";
+ }
+ else
{
- $detail_id = $_POST["bestelldetailid_$i"];
- $bestell_detail = new wawi_bestelldetail();
-
- // gibt es ein bestelldetail schon
- if($detail_id != '')
- {
- // Update
- $bestell_detail->load($detail_id);
-
- $tags_detail = explode(";", $_POST["detail_tag_$i"]);
+ $aufteilung_anzahl = $_POST['anz_aufteilung'];
+ $bestellung_detail_anz = $_POST['detail_anz'];
- $help_detailtags = new tags();
- $help_detailtags->bestelldetail_id = $detail_id;
- $help_detailtags->deleteBestelldetailTag($tags_detail);
-
- foreach ($tags_detail as $det)
- {
- $detail_tag = new tags();
- $detail_tag->tag = trim($det);
- $detail_tag->bestelldetail_id = $detail_id;
- $detail_tag->insertvon = $user;
- $detail_tag->insertamum = date('Y-m-d H:i:s');
-
- if(!$detail_tag->TagExists())
- {
- $detail_tag->saveTag();
- $detail_tag->saveBestelldetailTag();
- }
- else
- {
- if(!$detail_tag->BestelldetailTagExists())
- $detail_tag->saveBestelldetailTag();
- }
- }
-
- $bestell_detail->position = $_POST["pos_$i"];
- $bestell_detail->menge = $_POST["menge_$i"];
- $bestell_detail->verpackungseinheit = $_POST["ve_$i"];
- $bestell_detail->beschreibung = $_POST["beschreibung_$i"];
- $bestell_detail->artikelnummer = $_POST["artikelnr_$i"];
- $bestell_detail->preisprove = $_POST["preisprove_$i"];
- $bestell_detail->mwst = $_POST["mwst_$i"];
- $bestell_detail->updateamum = date('Y-m-d H:i:s');
- $bestell_detail->updatevon = $user;
- $bestell_detail->new = false;
- }
+ $bestellung_new->new = false;
+ $bestellung_new->besteller_uid=$user;
+ if(is_numeric($_POST['filter_konto']))
+ $bestellung_new->konto_id = $_POST['filter_konto'];
else
- {
- // Insert
- $bestell_detail->bestellung_id = $_GET['bestellung'];
- $bestell_detail->position = $_POST["pos_$i"];
- $bestell_detail->menge = $_POST["menge_$i"];
- $bestell_detail->verpackungseinheit = $_POST["ve_$i"];
- $bestell_detail->beschreibung = $_POST["beschreibung_$i"];
- $bestell_detail->artikelnummer = $_POST["artikelnr_$i"];
- $bestell_detail->preisprove = $_POST["preisprove_$i"];
- $bestell_detail->mwst = $_POST["mwst_$i"];
- $bestell_detail->sort = $_POST["pos_$i"];
- $bestell_detail->insertamum = date('Y-m-d H:i:s');
- $bestell_detail->insertvon = $user;
- $bestell_detail->updateamum = date('Y-m-d H:i:s');
- $bestell_detail->updatevon = $user;
- $bestell_detail->new = true;
- }
+ $bestellung_new->konto_id = '';
+ $bestellung_new->firma_id = $_POST['firma_id'];
+ $bestellung_new->lieferadresse = $_POST['filter_lieferadresse'];
+ $bestellung_new->rechnungsadresse = $_POST['filter_rechnungsadresse'];
+ $bestellung_new->titel = $_POST['titel'];
+ $bestellung_new->bemerkung = $_POST['bemerkung'];
+ $bestellung_new->liefertermin = $date->formatDatum($_POST['liefertermin'], 'Y-m-d');
+ $bestellung_new->updateamum = date('Y-m-d H:i:s');
+ $bestellung_new->updatevon = $user;
+ $tags = explode(";", $_POST['tags']);
+ $help_tags = new tags();
+ $help_tags->bestellung_id = $bestellung_id;
+ $help_tags->deleteBestellungTag($tags);
- if(!$bestell_detail->save())
+ foreach ($tags as $bestelltags)
{
- echo $bestell_detail->errormsg;
- }
- }
-
- for($i=0; $i<$aufteilung_anzahl; $i++)
- {
- $aufteilung = new wawi_aufteilung();
- $aufteilung->bestellung_id = $bestellung_id;
- $aufteilung->oe_kurzbz = $_POST['oe_kurzbz_'.$i];
- $aufteilung->anteil = $_POST['aufteilung_'.$i];
-
- if($aufteilung->AufteilungExists())
- {
- // Update
- $aufteilung->updateamum = date('Y-m-d H:i:s');
- $aufteilung->updatevon = $user;
- $aufteilung->new = false;
- }
- else
- {
- // Insert
- $aufteilung->updateamum = date('Y-m-d H:i:s');
- $aufteilung->updatevon = $user;
- $aufteilung->insertamum = date('Y-m-d H:i:s');
- $aufteilung->insertvon = $user;
- $aufteilung->new = true;
- }
- $aufteilung->saveAufteilung();
- }
-
- if($bestellung_new->save())
- {
- echo "erfolgreich gespeichert.
";
- $save = true;
- $_GET['method']= 'update';
- $_GET['id']= $bestellung_id;
- }
- echo " Zurück zur Bestellung ";
- }
- // Bestellung freigeben
- if(isset($_POST['btn_abschicken']) )
- {
- $status_abgeschickt = new wawi_bestellstatus();
- if(!$status_abgeschickt->isStatiVorhanden($bestellung_id, 'Abgeschickt'))
- {
- $bestellung_new->load($bestellung_id);
-
- $status_abgeschickt->bestellung_id = $bestellung_id; ;
- $status_abgeschickt->bestellstatus_kurzbz ='Abgeschickt';
- $status_abgeschickt->uid = $user;
- $status_abgeschickt->oe_kurzbz = '';
- $status_abgeschickt->datum = date('Y-m-d H:i:s');
- $status_abgeschickt->insertvon = $user;
- $status_abgeschickt->insertamum = date('Y-m-d H:i:s');
- $status_abgeschickt->updatevon = $user;
- $status_abgeschickt->updateamum = date('Y-m-d H:i:s');
-
- if(!$status_abgeschickt->save())
- {
- echo "Fehler beim Setzen auf Status Abgeschickt.";
- }
- // wer ist freigabeberechtigt auf kostenstelle
- $rechte = new benutzerberechtigung();
- $uids = $rechte->getFreigabeBenutzer($bestellung_new->kostenstelle_id, null);
- foreach($uids as $uid)
- {
- // E-Mail an Kostenstellenverantwortliche senden
- $msg ="$bestellung_new->bestellung_id freigeben. bestellung_id> drücken ";
- $mail = new mail($uid.'@'.DOMAIN, 'no-reply', 'Freigabe Bestellung', $msg);
- $mail->setHTMLContent($msg);
- if(!$mail->send())
- echo 'Fehler beim Senden des Mails';
+ $tag_bestellung = new tags();
+ $tag_bestellung->tag = trim($bestelltags);
+ $tag_bestellung->bestellung_id = $bestellung_id;
+ $tag_bestellung->insertvon = $user;
+ $tag_besetllung->insertamum = date('Y-m-d H:i:s');
+
+ if(!$tag_bestellung->TagExists())
+ {
+ $tag_bestellung->saveTag();
+ $tag_bestellung->saveBestellungTag();
+ }
else
- echo '
Mail verschickt!';
+ {
+ if(!$tag_bestellung->BestellungTagExists())
+ $tag_bestellung->saveBestellungTag();
+ }
+ }
+ // letzte leere zeile nicht speichern
+ for($i = 1; $i < $bestellung_detail_anz; $i++)
+ {
+ $detail_id = $_POST["bestelldetailid_$i"];
+ $bestell_detail = new wawi_bestelldetail();
+
+ // gibt es ein bestelldetail schon
+ if($detail_id != '')
+ {
+ // Update
+ $bestell_detail->load($detail_id);
+
+ $tags_detail = explode(";", $_POST["detail_tag_$i"]);
+
+ $help_detailtags = new tags();
+ $help_detailtags->bestelldetail_id = $detail_id;
+ $help_detailtags->deleteBestelldetailTag($tags_detail);
+
+ foreach ($tags_detail as $det)
+ {
+ $detail_tag = new tags();
+ $detail_tag->tag = trim($det);
+ $detail_tag->bestelldetail_id = $detail_id;
+ $detail_tag->insertvon = $user;
+ $detail_tag->insertamum = date('Y-m-d H:i:s');
+
+ if(!$detail_tag->TagExists())
+ {
+ $detail_tag->saveTag();
+ $detail_tag->saveBestelldetailTag();
+ }
+ else
+ {
+ if(!$detail_tag->BestelldetailTagExists())
+ $detail_tag->saveBestelldetailTag();
+ }
+ }
+
+ $bestell_detail->position = $_POST["pos_$i"];
+ $bestell_detail->menge = $_POST["menge_$i"];
+ $bestell_detail->verpackungseinheit = $_POST["ve_$i"];
+ $bestell_detail->beschreibung = $_POST["beschreibung_$i"];
+ $bestell_detail->artikelnummer = $_POST["artikelnr_$i"];
+ $bestell_detail->preisprove = $_POST["preisprove_$i"];
+ $bestell_detail->mwst = $_POST["mwst_$i"];
+ $bestell_detail->updateamum = date('Y-m-d H:i:s');
+ $bestell_detail->updatevon = $user;
+ $bestell_detail->new = false;
+ }
+ else
+ {
+ // Insert
+ $bestell_detail->bestellung_id = $_GET['bestellung'];
+ $bestell_detail->position = $_POST["pos_$i"];
+ $bestell_detail->menge = $_POST["menge_$i"];
+ $bestell_detail->verpackungseinheit = $_POST["ve_$i"];
+ $bestell_detail->beschreibung = $_POST["beschreibung_$i"];
+ $bestell_detail->artikelnummer = $_POST["artikelnr_$i"];
+ $bestell_detail->preisprove = $_POST["preisprove_$i"];
+ $bestell_detail->mwst = $_POST["mwst_$i"];
+ $bestell_detail->sort = $_POST["pos_$i"];
+ $bestell_detail->insertamum = date('Y-m-d H:i:s');
+ $bestell_detail->insertvon = $user;
+ $bestell_detail->updateamum = date('Y-m-d H:i:s');
+ $bestell_detail->updatevon = $user;
+ $bestell_detail->new = true;
+ }
+
+ if(!$bestell_detail->save())
+ {
+ echo $bestell_detail->errormsg;
+ }
+ }
+
+ for($i=0; $i<$aufteilung_anzahl; $i++)
+ {
+ $aufteilung = new wawi_aufteilung();
+ $aufteilung->bestellung_id = $bestellung_id;
+ $aufteilung->oe_kurzbz = $_POST['oe_kurzbz_'.$i];
+ $aufteilung->anteil = $_POST['aufteilung_'.$i];
+
+ if($aufteilung->AufteilungExists())
+ {
+ // Update
+ $aufteilung->updateamum = date('Y-m-d H:i:s');
+ $aufteilung->updatevon = $user;
+ $aufteilung->new = false;
+ }
+ else
+ {
+ // Insert
+ $aufteilung->updateamum = date('Y-m-d H:i:s');
+ $aufteilung->updatevon = $user;
+ $aufteilung->insertamum = date('Y-m-d H:i:s');
+ $aufteilung->insertvon = $user;
+ $aufteilung->new = true;
+ }
+ $aufteilung->saveAufteilung();
+ }
+
+ if($bestellung_new->save())
+ {
+ echo "erfolgreich gespeichert.
";
+ $save = true;
+ $_GET['method']= 'update';
+ $_GET['id']= $bestellung_id;
+ }
+ echo " Zurück zur Bestellung ";
+ }
+
+ }
+ // Bestellung freigeben wird in gang gesetzt
+ if(isset($_POST['btn_abschicken']) )
+ {
+ // wenn status Storno vorhanden ist kann nicht mehr freigegeben werden
+ if($status->isStatiVorhanden($bestellung_new->bestellung_id, 'Storno'))
+ {
+ echo "Keine Freigabe mehr möglich, da Storniert wurde.
";
+ echo " Zurück zur Bestellung ";
+ }
+ else
+ {
+ $status_abgeschickt = new wawi_bestellstatus();
+ if(!$status_abgeschickt->isStatiVorhanden($bestellung_id, 'Abgeschickt'))
+ {
+ $bestellung_new->load($bestellung_id);
+
+ $status_abgeschickt->bestellung_id = $bestellung_id; ;
+ $status_abgeschickt->bestellstatus_kurzbz ='Abgeschickt';
+ $status_abgeschickt->uid = $user;
+ $status_abgeschickt->oe_kurzbz = '';
+ $status_abgeschickt->datum = date('Y-m-d H:i:s');
+ $status_abgeschickt->insertvon = $user;
+ $status_abgeschickt->insertamum = date('Y-m-d H:i:s');
+ $status_abgeschickt->updatevon = $user;
+ $status_abgeschickt->updateamum = date('Y-m-d H:i:s');
+
+ if(!$status_abgeschickt->save())
+ {
+ echo "Fehler beim Setzen auf Status Abgeschickt.";
+ }
+ // wer ist freigabeberechtigt auf kostenstelle
+ $rechte = new benutzerberechtigung();
+ $uids = $rechte->getFreigabeBenutzer($bestellung_new->kostenstelle_id, null);
+ foreach($uids as $uid)
+ {
+ // E-Mail an Kostenstellenverantwortliche senden
+ $msg ="$bestellung_new->bestellung_id freigeben. bestellung_id> drücken ";
+ $mail = new mail($uid.'@'.DOMAIN, 'no-reply', 'Freigabe Bestellung', $msg);
+ $mail->setHTMLContent($msg);
+ if(!$mail->send())
+ echo 'Fehler beim Senden des Mails';
+ else
+ echo '
Mail verschickt!';
+ }
}
}
}
+ // kostenstelle gibt frei
if(isset($_POST['btn_freigabe_kst']) )
{
- // Freigabestatus für Kostenstelle
- $bestellung_new->load($bestellung_id);
- $status = new wawi_bestellstatus();
- $status->bestellung_id = $bestellung_new->bestellung_id;
- $status->bestellstatus_kurzbz = 'Freigabe';
- $status->uid = $user;
- $status->oe_kurzbz = '';
- $status->datum = date('Y-m-d H:i:s');
- $status->insertvon = $user;
- $status->insertamum = date('Y-m-d H:i:s');
- $status->updateamum = date('Y-m-d H:i:s');
- $status->updatevon = $user;
-
- if(!$status->save())
+ // wenn status Storno vorhanden, soll nicht mehr freigegeben werden.
+ if($status->isStatiVorhanden($bestellung_new->bestellung_id, 'Storno'))
{
- echo "Fehler beim Setzen auf Status Freigabe.";
+ echo "Keine Freigabe mehr möglich, da Storniert wurde.
";
+ echo " Zurück zur Bestellung ";
+ }
+ else
+ {
+ // Freigabestatus für Kostenstelle
+ $bestellung_new->load($bestellung_id);
+ $status = new wawi_bestellstatus();
+ $status->bestellung_id = $bestellung_new->bestellung_id;
+ $status->bestellstatus_kurzbz = 'Freigabe';
+ $status->uid = $user;
+ $status->oe_kurzbz = '';
+ $status->datum = date('Y-m-d H:i:s');
+ $status->insertvon = $user;
+ $status->insertamum = date('Y-m-d H:i:s');
+ $status->updateamum = date('Y-m-d H:i:s');
+ $status->updatevon = $user;
+
+ if(!$status->save())
+ {
+ echo "Fehler beim Setzen auf Status Freigabe.";
+ }
+
+ $bestellung_brutto = $bestellung_new->getBrutto($bestellung_new->bestellung_id);
+ echo $bestellung_brutto;
}
-
- $bestellung_brutto = $bestellung_new->getBrutto($bestellung_new->bestellung_id);
- echo $bestellung_brutto;
}
}
}