Example #1
0
 private function getZanyatie($tema, $chast)
 {
     $q = ZanyatieChastiTemy::findOne(['tema' => $tema, 'chast_temy' => $chast]);
     return Zanyatie::findOne(['id' => $q]);
 }
Example #2
0
 public function actionPrepodavatelPeresechenie($kurs, $data, $nomer)
 {
     $zanyatie = Zanyatie::findOne(compact('kurs', 'data', 'nomer'));
     if (!$zanyatie) {
         throw new NotFoundHttpException();
     }
     $zanyatieSubQuery = \app\records\Zanyatie::find()->select(['zanyatie_kurs' => 'kurs'])->where(['and', ['<>', 'id', $zanyatie->id], ['data' => $data, 'nomer' => $nomer, 'prepodavatel' => $zanyatie->prepodavatel]]);
     $dataProvider = new ActiveDataProvider(['query' => Kurs::find()->innerJoin(['z' => $zanyatieSubQuery], 'kurs.id = z.zanyatie_kurs'), 'pagination' => false]);
     return PrepodavatelPeresechenieContent::widget(['zanyatie' => $zanyatie, 'dataProvider' => $dataProvider]);
 }
Example #3
0
 /**
  * Find zanyatiya with peresechenie on prepodavatel
  * @return ActiveQuery
  */
 public static function customFind()
 {
     $subQuery = parent::find()->select(['zanyatie_peresechenie_id' => 'id', 'zanyatie_peresechenie_prepodavatel' => 'prepodavatel', 'zanyatie_peresechenie_data' => 'data', 'zanyatie_peresechenie_nomer' => 'nomer']);
     return parent::find()->select(['zanyatie.*', 'prepodavatel_peresechenie' => 'count(zanyatie_peresechenie_id)>0'])->leftJoin(['zp' => $subQuery], ['and', 'zp.zanyatie_peresechenie_id <> zanyatie.id', 'zp.zanyatie_peresechenie_prepodavatel = zanyatie.prepodavatel', 'zp.zanyatie_peresechenie_data = zanyatie.data', 'zp.zanyatie_peresechenie_nomer = zanyatie.nomer'])->groupBy('zanyatie.id');
 }
Example #4
0
 public function getZanyatie_rel()
 {
     return $this->hasOne(Zanyatie::className(), ['id' => 'zanyatie']);
 }
Example #5
0
 public function init()
 {
     parent::init();
     $this->activeRelationMap = [\app\records\PodrazdelKursa::className() => PodrazdelKursa::className(), \app\records\Zanyatie::className() => Zanyatie::className()];
 }
Example #6
0
 /**
  * @return ActiveQuery
  */
 public function getZanyatiya_rel()
 {
     return $this->hasMany(Zanyatie::className(), ['id' => 'zanyatie'])->via('zanyatiya_chastej_tem_rel');
 }
Example #7
0
 private function internalDelete()
 {
     ZanyatieChastiTemy::deleteAll(['zanyatie' => $this->id]);
     return parent::delete();
 }