public function afterSave($insert, $changedAttributes)
 {
     if ($insert) {
         $tuition = Tuition::find()->where(['grade_level_id' => $this->grade_level_id])->orderBy(['id' => SORT_DESC])->all()[0];
         $assessment = new AssessmentForm();
         //CHECK IF STUDENT HAS SIBLINGS ENROLLED
         if ((int) $this->student->student_has_sibling_enrolled === 0) {
             $assessment->has_sibling_discount = 0;
             $sibling_discount = (double) $tuition->tuition_fee * 0.05;
             $assessment->percentage_value = 5;
             $assessment->sibling_discount = $sibling_discount;
             $assessment->honor_discount = 0;
             $assessment->book_discount = 0;
             $assessment->total_assessed = (double) $tuition->yearly + (double) $tuition->books - $sibling_discount;
             $assessment->balance = (double) $assessment->total_assessed;
         } else {
             $assessment->has_sibling_discount = 1;
             $assessment->sibling_discount = 0;
             $assessment->percentage_value = 0;
             $assessment->honor_discount = 0;
             $assessment->book_discount = 0;
             $assessment->total_assessed = (double) $tuition->yearly + (double) $tuition->books;
             $assessment->balance = (double) $assessment->total_assessed;
         }
         //die($changedAttributes);
         $assessment->has_honor_discount = 1;
         $assessment->has_book_discount = 1;
         $assessment->enrolled_id = (int) $this->id;
         $assessment->tuition_id = $tuition->id;
         $assessment->save();
         Yii::$app->session->setFlash('success2', 'New assessment successfully generated!');
     }
 }
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Tuition::find();
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     $this->load($params);
     if (!$this->validate()) {
         // uncomment the following line if you do not want to return any records when validation fails
         // $query->where('0=1');
         return $dataProvider;
     }
     $query->andFilterWhere(['id' => $this->id, 'grade_level_id' => $this->grade_level_id, 'enrollment' => $this->enrollment, 'admission' => $this->admission, 'tuition_fee' => $this->tuition_fee, 'misc_fee' => $this->misc_fee, 'ancillary' => $this->ancillary, 'monthly' => $this->monthly, 'books' => $this->books, 'created_at' => $this->created_at, 'updated_at' => $this->updated_at]);
     return $dataProvider;
 }
 /**
  * Finds the Tuition model based on its primary key value.
  * If the model is not found, a 404 HTTP exception will be thrown.
  * @param integer $id
  * @return Tuition the loaded model
  * @throws NotFoundHttpException if the model cannot be found
  */
 protected function findModel($id)
 {
     if (($model = Tuition::findOne($id)) !== null) {
         return $model;
     } else {
         throw new NotFoundHttpException('The requested page does not exist.');
     }
 }
<?php

use app\models\DataHelper;
use yii\helpers\ArrayHelpers;
use yii\helpers\Html;
use app\models\UiTable;
use app\models\Tuition;
use yii\widgets\Pjax;
$tuition = Tuition::findOne($model->tuition_id);
$avatar = Yii::$app->request->baseUrl . Yii::$app->params['avatar'];
!empty($model->enrolled->student->students_profile_image) ? $img = Yii::$app->request->baseUrl . '/uploads/students/' . $model->enrolled->student->students_profile_image : ($img = $avatar);
Pjax::begin(['id' => 'assessment-detail', 'timeout' => 60000]);
?>
<div class="ui tab segment active" data-tab="first">
	<div class="ui inverted dimmer">
	    <div class="ui massive text loader"></div>
	</div>
	<?php 
echo UiTable::widget(['model' => $model, 'options' => ['class' => 'ui fixed very basic table'], 'attributes' => ['enrolled_id', ['attribute' => 'has_sibling_discount', 'value' => DataHelper::direct($model->has_sibling_discount)], ['attribute' => 'has_honor_discount', 'value' => DataHelper::direct($model->has_honor_discount)], ['attribute' => 'has_book_discount', 'value' => DataHelper::direct($model->has_book_discount)], ['attribute' => 'percentage_value', 'value' => $model->percentage_value . '%'], 'sibling_discount:currency', 'book_discount:currency', 'honor_discount:currency', 'total_assessed:currency', 'balance:currency', 'created_at:date', 'updated_at:date']]);
?>
</div>
<div class="ui tab segment" data-tab="second">
	<div class="ui inverted dimmer">
	    <div class="ui massive text loader"></div>
	</div>
	<?php 
echo UiTable::widget(['model' => $tuition, 'options' => ['class' => 'ui fixed very basic table'], 'attributes' => ['enrollment:currency', 'admission:currency', 'tuition_fee:currency', 'misc_fee:currency', 'ancillary:currency', 'yearly:currency', 'monthly:currency', 'books:currency']]);
?>
</div>
<div class="ui tab segment" data-tab="third" style="min-height: 80px;">
	<div class="ui inverted dimmer">
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getTuition()
 {
     return $this->hasOne(Tuition::className(), ['id' => 'tuition_id']);
 }