Exemple #1
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Noitru::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, 'maBN' => $this->maBN, 'soPhong' => $this->soPhong, 'soGiuong' => $this->soGiuong, 'ngayXuatVien' => $this->ngayXuatVien]);
     return $dataProvider;
 }
 public function actionStatistics($bieudo)
 {
     if ($bieudo == 'tonghop') {
         $tonghop = array();
         $tonghop['Số lượng hồ sơ bệnh nhân lưu trong hệ thống'] = count(Benhnhan::find()->all());
         $tonghop['Số lượng bệnh nhân nội trú'] = count(Noitru::find()->all());
         $tonghop['Số lượng nhân viên'] = count(Nhanvien::find()->all());
         $tonghop['Số lượng phòng khám'] = count(Phongkham::find()->all());
         $tonghop['Số lượng khoa'] = count(Khoa::find()->all());
         return $this->render('statistics', ['tonghop' => $tonghop]);
     }
     if ($bieudo == 'benhnhan') {
         $count = array();
         $count['0'] = 0;
         $count['1'] = 0;
         $count['2'] = 0;
         $count['3'] = 0;
         $array = $this->actionThang();
         $benhan = Benhan::find()->all();
         foreach ($benhan as $ba) {
             if (date('m', $ba->created_at) == $array['0']) {
                 $count['0'] = $count[0] + 1;
             }
             if (date('m', $ba->created_at) == $array['1']) {
                 $count['1']++;
             }
             if (date('m', $ba->created_at) == $array['2']) {
                 $count['2']++;
             }
             if (date('m', $ba->created_at) == $array['3']) {
                 $count['3']++;
             }
         }
         return $this->render('statisticsBN', ['thang' => $array, 'value' => $count]);
     }
     $khoa = Khoa::find()->all();
     $dskhoa = array();
     $dsmakhoa = array();
     $count = array();
     $j = 0;
     foreach ($khoa as $k) {
         $dskhoa["{$j}"] = $k->tenKhoa;
         $dsmakhoa["{$j}"] = $k->id;
         $count["{$j}"] = 0;
         $j++;
     }
     $thang = 0;
     $now = getdate();
     if ($now['mon'] == 1) {
         $thang = 12;
     } else {
         $thang = $now['mon'];
     }
     $benhan = Benhan::find()->all();
     foreach (Bnpk::find()->all() as $lk) {
         if (date('m', $lk->ngayKham == $thang)) {
             for ($i = 0; $i < count($khoa); $i++) {
                 if (Phongkham::findOne(['id' => $lk->maPK])->maKhoa == $dsmakhoa["{$i}"]) {
                     $count["{$i}"]++;
                 }
             }
         }
     }
     return $this->render('statisticsLK', ['thang' => $thang, 'dskhoa' => $dskhoa, 'value' => $count, 'count' => $j]);
 }