diff --git a/application/Contract/ContractController.php b/application/Contract/ContractController.php index 6626b9c6c..d8d409e08 100644 --- a/application/Contract/ContractController.php +++ b/application/Contract/ContractController.php @@ -805,6 +805,19 @@ class ContractController extends mfBaseController $finish_date->setTimezone(new DateTimeZone("Europe/Vienna")); $finish_date->setTime(0, 0, 0); $contract_data['finish_date'] = $finish_date->getTimestamp(); + if($mode == "add") { + $contract_data['finish_date_by'] = $this->me->id; + } else { + if($contract->finish_date) { + $contract_finish_date = new DateTime("@".$contract->finish_date); + $contract_finish_date->setTimezone(new DateTimeZone("Europe/Vienna")); + if($contract_finish_date->format("Y-m-d") != $finish_date->format("Y-m-d")) { + $contract_data['finish_date_by'] = $this->me->id; + } + } else { + $contract_data['finish_date_by'] = $this->me->id; + } + } } else { $contract_data['finish_date'] = null; } @@ -814,6 +827,19 @@ class ContractController extends mfBaseController $cancel_date->setTimezone(new DateTimeZone("Europe/Vienna")); $cancel_date->setTime(0, 0, 0); $contract_data['cancel_date'] = $cancel_date->getTimestamp(); + if($mode == "add") { + $contract_data['cancel_date_by'] = $this->me->id; + } else { + if($contract->cancel_date) { + $contract_cancel_date = new DateTime("@".$contract->cancel_date); + $contract_cancel_date->setTimezone(new DateTimeZone("Europe/Vienna")); + if($contract_cancel_date->format("Y-m-d") != $cancel_date->format("Y-m-d")) { + $contract_data['cancel_date_by'] = $this->me->id; + } + } else { + $contract_data['cancel_date_by'] = $this->me->id; + } + } } else { $contract_data['cancel_date'] = null; } diff --git a/scripts/adb-rimo-import/rimo-import.php b/scripts/adb-rimo-import/rimo-import.php index aaec04227..6ec90cb93 100755 --- a/scripts/adb-rimo-import/rimo-import.php +++ b/scripts/adb-rimo-import/rimo-import.php @@ -483,12 +483,14 @@ foreach ($clusters as $cluster_data) { if(property_exists($service, "customerState") && is_object($service->customerState) && property_exists($service->customerState, "userLabel") && strtolower($service->customerState->userLabel) == "active") { // active => order 500 $preorder = \PreorderModel::getFirst(["adb_wohneinheit_id" => $unit->id]); + $preorder->resetSaveNesting(); if($preorder) { $new_status = \PreorderstatusModel::getFirst(["code" => 500]); if($new_status) { if($preorder->status->code < $new_status->code) { $preorder->status_id = $new_status->id; $preorder->save(); + $preorder->resetSaveNesting(); } } }