/** * Updates an existing Person model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id * @return mixed */ public function actionUpdate($id) { $modelDatenblatt = $this->findModel($id); $data = Yii::$app->request->post(); if ($modelDatenblatt->load($data) && $modelDatenblatt->save()) { // Käufer $modelKaeufer = $modelDatenblatt->kaeufer; if (!$modelKaeufer) { $modelKaeufer = new Kaeufer(); } if ($modelKaeufer->load(Yii::$app->request->post())) { // $datumFelder = ['beurkundung_am', 'verbindliche_fertigstellung', 'uebergang_bnl', 'abnahme_se', 'abnahme_ge']; // foreach($datumFelder as $feld) { // $datum = \DateTime::createFromFormat('d.m.Y', $modelKaeufer->{$feld}); // if ($datum) { // $datum->setTime(0, 0, 0); // $modelKaeufer->{$feld} = $datum->format('Y-m-d H:i:s'); // } else { // $modelKaeufer->{$feld} = ''; // } // } // save $modelKaeufer->save(); // assign käufer $modelDatenblatt->kaeufer_id = $modelKaeufer->id; $modelDatenblatt->save(); } // Sonderwünsche if (Sonderwunsch::loadMultiple($modelDatenblatt->sonderwunsches, $data)) { foreach ($modelDatenblatt->sonderwunsches as $item) { // $datumFelder = ['angebot_datum', 'beauftragt_datum', 'rechnungsstellung_datum']; // foreach($datumFelder as $feld) { // $datum = \DateTime::createFromFormat('d.m.Y', $item->{$feld}); // if ($datum) { // $datum->setTime(0, 0, 0); // $item->{$feld} = $datum->format('Y-m-d H:i:s'); // } else { // $item->{$feld} = ''; // } // } $item->save(); } } // Abschläge if ($modelsAbschlag = Abschlag::loadMultiple($modelDatenblatt->abschlags, $data)) { foreach ($modelDatenblatt->abschlags as $item) { // $datumFelder = ['kaufvertrag_angefordert', 'sonderwunsch_angefordert']; // foreach($datumFelder as $feld) { // $datum = \DateTime::createFromFormat('d.m.Y', $item->{$feld}); // if ($datum) { // $datum->setTime(0, 0, 0); // $item->{$feld} = $datum->format('Y-m-d H:i:s'); // } else { // $item->{$feld} = ''; // } // } $item->save(); } } // Nachlass if (Nachlass::loadMultiple($modelDatenblatt->nachlasses, $data)) { foreach ($modelDatenblatt->nachlasses as $item) { // $datumFelder = ['schreiben_vom']; // foreach($datumFelder as $feld) { // $datum = \DateTime::createFromFormat('d.m.Y', $item->{$feld}); // if ($datum) { // $datum->setTime(0, 0, 0); // $item->{$feld} = $datum->format('Y-m-d H:i:s'); // } else { // $item->{$feld} = ''; // } // } $item->save(); } } // Zahlung if (Zahlung::loadMultiple($modelDatenblatt->zahlungs, $data)) { foreach ($modelDatenblatt->zahlungs as $item) { // $datumFelder = ['datum']; // foreach($datumFelder as $feld) { // $datum = \DateTime::createFromFormat('d.m.Y', $item->{$feld}); // if ($datum) { // $datum->setTime(0, 0, 0); // $item->{$feld} = $datum->format('Y-m-d H:i:s'); // } else { // $item->{$feld} = ''; // } // } $item->save(); } } $this->redirect(['update', 'id' => $id]); } // kaufpreis $kaufpreisTotal = 0; /* @var $teileh app\models\Teileigentumseinheit */ if ($modelDatenblatt->haus) { foreach ($modelDatenblatt->haus->teileigentumseinheits as $item) { $kaufpreisTotal += (double) $item->kaufpreis; } } // sonderwünche $sonderwuenscheTotal = 0; /* @var $item app\models\Sonderwunsch */ foreach ($modelDatenblatt->sonderwunsches as $item) { $sonderwuenscheTotal += (double) $item->rechnungsstellung_betrag; } /* @var $item app\models\Abschlag */ foreach ($modelDatenblatt->abschlags as $item) { $item->kaufvertrag_betrag = (string) ((double) $item->kaufvertrag_prozent * $kaufpreisTotal / 100); $item->sonderwunsch_betrag = (string) ((double) $item->sonderwunsch_prozent * $sonderwuenscheTotal / 100); $item->summe = $item->kaufvertrag_betrag + $item->sonderwunsch_betrag; } return $this->render('update', ['modelDatenblatt' => $modelDatenblatt, 'modelsZahlungs' => $modelDatenblatt->zahlungs, 'modelKaeufer' => $modelDatenblatt->kaeufer ? $modelDatenblatt->kaeufer : new Kaeufer()]); }
/** * @return \yii\db\ActiveQuery */ public function getKaeufer() { return $this->hasOne(Kaeufer::className(), ['id' => 'kaeufer_id']); }