public function actionSortirbienautre() { $modelbien = new Bien(); $model = new Reformer(); $ref = new Reformer(); $data = null; $selection = (array) Yii::$app->request->post('selection'); foreach ($selection as $id) { $x = 0; $modelss = $this->findModel($id); $modelReformerSearch = new ReformerSearch(); $dataProviderRS = $modelReformerSearch->searchRef(Yii::$app->request->queryParams, $modelss->codebien); $modelb = $dataProviderRS->getModels(); foreach ($modelb as $rowb) { $modelss->titre = $model->titre; $modelss->save(); $query = Bien::find()->where(['codebien' => $rowb->codebien]); $dataProviderBien = new ActiveDataProvider(['query' => $query, 'pagination' => ['pageSize' => 10]]); $modelsortir = $dataProviderBien->getModels(); foreach ($modelsortir as $rowbs) { $modelbien->codebien = $rowbs->codebien; $rowbs->statutbien = "sortirf"; $rowbs->save(); } } } $searchModel = new BienSearch(); $i = 0; $dataProvider = $searchModel->searchListeReformeNonSortiePatrimoine(Yii::$app->request->queryParams); $models = $dataProvider->getModels(); foreach ($models as $row) { /*--------------------------------- recherche type de reforme et la date de reforme ------------------------*/ $comptecomp = $this->cherchercomptebien($row->codebien); $modelReformerSearch = new ReformerSearch(); $dataProviderRS = $modelReformerSearch->searchRef(Yii::$app->request->queryParams, $row->codebien); $modelb = $dataProviderRS->getModels(); $typ = null; $ann = null; foreach ($modelb as $rowb) { $typ = $rowb->typereforme; $ann = $rowb->datereforme; echo "type=" . $typ; } /*-----------------------------------------------tableau de resultat------------------------------------------------*/ if ($typ != "Don" && $typ != "Cession") { $data[$i] = ['comptecomptable' => $comptecomp, 'codebien' => $row->codebien, 'designationbien' => $row->designationbien, 'typereforme' => $typ, 'dateRef' => $ann]; $i++; } } $dataProviderRes = new ArrayDataProvider(['key' => 'codebien', 'allModels' => $data, 'sort' => ['attributes' => ['comptecomptable', 'codebien', 'designationbien', 'typereforme', 'dateRef']]]); $dataProvider = $dataProviderRes; return $this->render('sortirbienpatrimoineAutre', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'model' => $model]); }
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 actionAfficherecartcomptage() { $i = 0; $cpt1 = 0; $cpt2 = 0; $cpttotal = 0; $cptstr = 0; $data = null; $model = new Inventorier(); $searchModel = new InventorierSearch(); $dataProvider = $searchModel->search(Yii::$app->request->queryParams); $cpttotal = $dataProvider->getTotalCount(); $models = $dataProvider->getModels(); /**************************traiter ecart entre les deux comptages **************************************/ $selection = (array) Yii::$app->request->post('selection'); //typecasting foreach ($selection as $id) { $modeltr = $this->findModel($id); $modeltr->comptage1 = '1'; $modeltr->comptage2 = '1'; $modeltr->save(); } if ($model->load(Yii::$app->request->post())) { $querystr = Structure::find(); $dataProviderstr = new ActiveDataProvider(['query' => $querystr]); $modelsstr = $dataProviderstr->getModels(); foreach ($modelsstr as $rowstr) { if (intval($model->codestructure) == $rowstr->codestructure) { $model->designationstructure = $rowstr->designation; } } $searchModelbur = new BureauSearch(); $dataProviderbur = $searchModelbur->search(Yii::$app->request->queryParams); $modelsbur = $dataProviderbur->getModels(); foreach ($modelsbur as $rowbur) { if ($rowbur->codestructure == intval($model->codestructure)) { $searchModelaff = new AffecterSearch(); $dataProvideraff = $searchModelaff->searchCodbur(Yii::$app->request->queryParams, $rowbur->codebureau); $modelsaff = $dataProvideraff->getModels(); foreach ($modelsaff as $rowaff) { $searchModelbien = new BienSearch(); $dataProviderbien = $searchModelbien->searchConsultationBienSelonCodestatut(Yii::$app->request->queryParams, $rowaff->codebien); $modelbien = $dataProviderbien->getModels(); foreach ($modelbien as $rowbien) { if ($rowbien->statutbien == "affecte") { $modeltrouv = Inventorier::findOne($rowbien->codebien); if (($modeltrouv = Inventorier::findOne($rowbien->codebien)) !== null) { $cptstr++; if ($modeltrouv->comptage1 !== '1' && $modeltrouv->comptage2 == '1' || $modeltrouv->comptage1 == '1' && $modeltrouv->comptage2 !== '1') { if ($modeltrouv->comptage1 == '1' && $modeltrouv->comptage2 == '1') { } else { $data[$i] = ['codebien' => $rowbien->codebien, 'designation' => $rowbien->designationbien, 'bureau' => $rowbur->codebureau, 'etat' => $rowbien->etatbien]; $i++; $cpt1++; } } } } else { if ($rowbien->statutbien == "transfere") { $bur = $this->dernierTransfert($rowbien->codebien); $modeltrouv = Inventorier::findOne($rowbien->codebien); if (($modeltrouv = Inventorier::findOne($rowbien->codebien)) !== null) { $cptstr++; if ($modeltrouv->comptage1 == '1' && $modeltrouv->comptage2 !== '1' || $modeltrouv->comptage1 !== '1' && $modeltrouv->comptage2 == '1') { if ($modeltrouv->comptage1 == '1' && $modeltrouv->comptage2 == '1') { } else { $data[$i] = ['codebien' => $rowbien->codebien, 'designation' => $rowbien->designationbien, 'bureau' => $bur, 'etat' => $rowbien->etatbien]; $i++; $cpt1++; } } } } } } } } } $prc = 0; if ($cptstr != 0) { $prc = $cpt1 / $cptstr; $prc = $prc * 100; } $prc = number_format($prc, 2, ',', ' '); $model->pourcentageecart = $prc . " %"; $dataProviderRes = new ArrayDataProvider(['allModels' => $data, 'key' => 'codebien', 'sort' => ['attributes' => ['codebien', 'designation', 'bureau', 'etat']]]); // $modeltest=$dataProviderRes->getModels(); $dataProvider = $dataProviderRes; } else { foreach ($models as $row) { if ($row->comptage1 == '1' && $row->comptage2 != '1') { $rowbien = Bien::findOne($row->codebien); $data[$i] = ['codebien' => $row->codebien, 'designation' => $rowbien->designationbien, 'bureau' => $row->bureau, 'etat' => $rowbien->etatbien]; $i++; $cpt1++; } else { if ($row->comptage1 != '1' && $row->comptage2 == '1') { $rowbien = Bien::findOne($row->codebien); $data[$i] = ['codebien' => $row->codebien, 'designation' => $rowbien->designationbien, 'bureau' => $row->bureau, 'etat' => $rowbien->etatbien]; $i++; $cpt1++; } } } $prc = 0; if ($cpttotal != 0) { $prc = $cpt1 / $cpttotal; } $prc = $prc * 100; $seuil = 0; $modelin = new Exerciceinventaire(); $searchModelexerc = new ExerciceinventaireSearch(); $dataProviderexerc = $searchModelexerc->search(Yii::$app->request->queryParams); $modelsexerc = $dataProviderexerc->getModels(); foreach ($modelsexerc as $rowex) { if ($rowex->anneeinv == date('Y')) { $seuil = $rowex->seuil_compte; if ($seuil <= $prc) { \Yii::$app->getSession()->setFlash('info', "L'écart entre les deux comptage est arrivé au seil, Vous devez passer au troisième comptage."); } } } $prc = number_format($prc, 2, ',', ' '); $prc = $prc . " %"; $model->pourcentageecart = $prc; $dataProviderRes = new ArrayDataProvider(['allModels' => $data, 'key' => 'codebien', 'sort' => ['attributes' => ['codebien', 'designation', 'bureau', 'etat']]]); // $modeltest=$dataProviderRes->getModels(); $dataProvider = $dataProviderRes; } return $this->render('extraireEcartComptage', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'model' => $model]); }
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]); }