diff --git a/Layout/default/Preorder/Form.php b/Layout/default/Preorder/Form.php
index 66ef4c02e..54dfa1553 100644
--- a/Layout/default/Preorder/Form.php
+++ b/Layout/default/Preorder/Form.php
@@ -153,7 +153,7 @@
adb_wohneinheit_id && is_array($preorder->adb_wohneinheit->rimo_workorders) && count($preorder->adb_wohneinheit->rimo_workorders)): ?>
@@ -597,6 +597,8 @@
opt += " " + unit.extra;
}
if(unit.extref) opt += " (" + unit.extref + ")";
+ if(unit.oaid) opt += " - " + unit.oaid;
+ if(unit.preorder_count) opt += " - " + unit.preorder_count + " Bestellung";
/*let extras = new Array();
if(unit.block) extras.push("Block " + unit.block);
@@ -626,7 +628,9 @@
.data("stiege", unit.stiege)
.data("stock", unit.stock)
.data("tuer", unit.tuer)
- .data("zusatz", unit.zusatz);
+ .data("zusatz", unit.zusatz)
+ .data("oaid", unit.oaid)
+ .data["preorder_count"];
afterHausnummerChange();
diff --git a/application/ADBWohneinheit/ADBWohneinheit.php b/application/ADBWohneinheit/ADBWohneinheit.php
index ea2e3df16..7a1581a8b 100644
--- a/application/ADBWohneinheit/ADBWohneinheit.php
+++ b/application/ADBWohneinheit/ADBWohneinheit.php
@@ -7,6 +7,7 @@ class ADBWohneinheit extends mfBaseModel {
private $ftu_data;
private $status;
private $statusflags; // TODO
+ private $preorders;
protected function init() {
$this->db = FronkDB::singleton(ADDRESSDB_DBHOST, ADDRESSDB_DBUSER, ADDRESSDB_DBPASS, ADDRESSDB_DBNAME);
@@ -283,6 +284,15 @@ class ADBWohneinheit extends mfBaseModel {
return $this->rimo_workorders;
}
+ if($name == "preorders") {
+ $preorders = PreorderModel::search(["adb_wohneinheit_id" => $this->id]);
+ if(!count($preorders)) {
+ return [];
+ }
+ $this->preorders = $preorders;
+ return $this->preorders;
+ }
+
if($name == "ftu_data") {
$rimo_data = $this->getExternalRimoData();
diff --git a/application/AddressDB/AddressDBController.php b/application/AddressDB/AddressDBController.php
index 775afff86..abb0e9048 100644
--- a/application/AddressDB/AddressDBController.php
+++ b/application/AddressDB/AddressDBController.php
@@ -1065,6 +1065,8 @@ class AddressDBController extends mfBaseController {
$u['extra'] = (string)$unit;
$u['zusatz'] = $unit->zusatz;
$u['usage'] = $unit->nutzung;
+ $u['oaid'] = $unit->oaid;
+ $u['preorder_count'] = count($unit->preorders);
$results[] = $u;
}
diff --git a/application/Preorder/PreorderController.php b/application/Preorder/PreorderController.php
index f60b80b4d..6637745aa 100644
--- a/application/Preorder/PreorderController.php
+++ b/application/Preorder/PreorderController.php
@@ -496,6 +496,14 @@ class PreorderController extends mfBaseController {
$data['create_by'] = $this->me->id;
$preorder = PreorderModel::create($data);
} else {
+ // if new wohneinheit -> remove oaid from Preorder
+ if($r->adb_wohneinheit_id && $preorder->adb_wohneinheit_id != $r->adb_wohneinheit_id) {
+ $preorder->oaid = null;
+ }
+ if(!$r->adb_wohneinheit_id && $preorder->oaid) {
+ $preorder->oaid = null;
+ }
+
$preorder->update($data);
}
@@ -655,6 +663,9 @@ class PreorderController extends mfBaseController {
}
}
+ } else {
+ // if $preorder->adb_wohneinheit_id
+ //if($preorder->_old)
}
/*