public function afterSave($insert, $changeAttributes) { if ($insert) { $applicationModel = $this->application; $primaryAppApplicant = $applicationModel->primaryAppApplicant; $coAppApplicant = $applicationModel->coAppApplicant; $loanBorrowerModel = new LoanBorrower(); $loanBorrowerModel->id_loan = $this->id_loan; $loanBorrowerModel->id_user = $primaryAppApplicant->id_user; $loanBorrowerModel->type = 1; $loanBorrowerModel->save(); if ($applicationModel->coAppApplicant) { $loanBorrowerModel = new LoanBorrower(); $loanBorrowerModel->id_loan = $this->id_loan; $loanBorrowerModel->id_user = $coAppApplicant->id_user; $loanBorrowerModel->type = 0; $loanBorrowerModel->save(); } $loanPaymentPreferenceModel = new LoanPaymentPreference(); $loanPaymentPreferenceModel->id_loan = $this->id_loan; $loanPaymentPreferenceModel->type = 2; $loanPaymentPreferenceModel->ach_max_debtied_amount = 0; $loanPaymentPreferenceModel->ach_id_loan_bank_acount = 0; $loanPaymentPreferenceModel->save(); $loanCollateralAccountModel = new LoanCollateralAccount(); $loanCollateralAccountModel->id_loan = $this->id_loan; $loanCollateralAccountModel->id_institution = Advisor::findOne(['id_user' => $applicationModel->primaryAdvisor->id_user])->id_institution; $loanCollateralAccountModel->id_group = $applicationModel->id_group; $appFormCollateralAccountModels = AppFormCollateralAccount::find()->andWhere(['id_application' => $this->id_application])->all(); foreach ($appFormCollateralAccountModels as $appFormCollateralAccountModel) { $newLoanCollateralAccountModel = clone $loanCollateralAccountModel; $newLoanCollateralAccountModel->load([$newLoanCollateralAccountModel->formName() => $appFormCollateralAccountModel->getAttributes()]); $newLoanCollateralAccountModel->save(); } } }