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;
                 }
             }
         }
     }
 }
Example #2
0
 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]);
 }