public function cherchercomptebien($code) { $res = 00; $model = new BienSearch(); $searchModel = new BienSearch(); //searchConsultationBienSelonCode $dataProvider = $searchModel->searchConsultationBienSelonCode(Yii::$app->request->queryParams, $code); $modelss = $dataProvider->getModels(); foreach ($modelss as $rowsF) { $searchModelsf = new SousFamilleSearch(); $dataProvidersf = $searchModelsf->searchSF(Yii::$app->request->queryParams, $rowsF->codesousfamille); $modelss = $dataProvidersf->getModels(); foreach ($modelss as $rowsF) { $searchModelsf = new SousFamilleSearch(); $dataProvidersf = $searchModelsf->searchSF(Yii::$app->request->queryParams, $rowsF->codesousfamille); $modelss = $dataProvidersf->getModels(); foreach ($modelss as $rowsF) { $searchModelF = new FamilleSearch(); $dataProviderF = $searchModelF->searchFC(Yii::$app->request->queryParams, $rowsF->codefamille); $modelF = $dataProviderF->getModels(); foreach ($modelF as $rowF) { $res = $rowF->codecomptecomptable; return $res; } } } } }
public function actionEtatimmobien() { $model = new Bien(); $data = array(); $i = 0; $searchModel = new BienSearch(); $dataProvider = $searchModel->searchConsultationBien(Yii::$app->request->queryParams, '0'); $now = time(); $comptecomp = 00; $totalActif = 0.0; $totalDotation = 0.0; $totalAmort = 0.0; $totalvalNet = 0.0; if ($model->load(Yii::$app->request->post())) { $comptecomp = $model->comptecomptable; $anneeExercice = $model->anneexercice; $compte = $comptecomp; $cpt = substr('' . $compte, 0, 3); if ($cpt == "211" || $cpt == "212" || $cpt == "213") { \Yii::$app->getSession()->setFlash('danger', "SVP insérer un compte comptable amortissable."); return $this->render('etatImmoParBien', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'model' => $model]); } } /*-----------------------------rechercher la famille --------------------------------------------*/ $modelRes = new Bien(); $searchModelF = new FamilleSearch(); $dataProviderF = $searchModelF->searchF(Yii::$app->request->queryParams, $comptecomp); $modelF = $dataProviderF->getModels(); foreach ($modelF as $rowF) { /*----------------------Rechercher la sous famille ------------------------------------------*/ $searchModelsf = new SousFamilleSearch(); $dataProvidersf = $searchModelsf->search(Yii::$app->request->queryParams, $rowF->codefamille); $modelssf = $dataProvidersf->getModels(); foreach ($modelssf as $rowsF) { /*--------------------------Rechercher liste des biens------------------------------*/ $dataProvider = $searchModel->searchConsultationBien(Yii::$app->request->queryParams, $rowsF->codesousfamille); $models = $dataProvider->getModels(); foreach ($models as $row) { $resultat = $this->CalculeAmortissements($row->dateacquisition, $anneeExercice, $row->dureevie, $row->prixachat); $long = count($resultat) - 1; /*---------------------------------------- tableau de resultat -----------------------------------*/ $formatter = \Yii::$app->formatter; $resultat[$long][1] = number_format($resultat[$long][1], 2, ',', ' '); $resultat[$long][2] = number_format($resultat[$long][2], 2, ',', ' '); $resultat[$long][3] = number_format($resultat[$long][3], 2, ',', ' '); $resultat[$long][4] = number_format($resultat[$long][4], 2, ',', ' '); $data[$i] = ['comptecomptable' => $comptecomp, 'codebien' => $row->codebien, 'designationbien' => $row->designationbien, 'dateacquisition' => $row->dateacquisition, 'actifbrut' => $resultat[$long][1], 'dureevie' => $row->dureevie, 'dotation' => $resultat[$long][2], 'amortpratiquee' => $resultat[$long][3], 'valeurnet' => $resultat[$long][4]]; $i++; } } } $dataProviderRes = new ArrayDataProvider(['allModels' => $data, 'sort' => ['attributes' => ['comptecomptable', 'codebien', 'designationbien', 'dateacquisition', 'actifbrut', 'dureevie', 'dotation', 'amortpratiquee', 'valeurnet']]]); $dataProvider = $dataProviderRes; return $this->render('etatImmoParBien', ['searchModel' => $searchModel, 'dataProvider' => $dataProviderRes, 'model' => $model]); }