예제 #1
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Fournisseur::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(['like', 'regcomm', $this->regcomm])->andFilterWhere(['like', 'designation', $this->designation])->andFilterWhere(['like', 'adressfourn', $this->adressfourn])->andFilterWhere(['like', 'telfourn', $this->telfourn])->andFilterWhere(['like', 'fax', $this->fax]);
     return $dataProvider;
 }
예제 #2
0
 public function actionAcquisition()
 {
     $fourn = new Fournisseur();
     $cmd = new Commande();
     $fact = new Facture();
     $model = new Bien();
     $dat = new Dat();
     $soufamille = new Sousfamille();
     $quantite = Yii::$app->request->post('quantite');
     if ($model->load(Yii::$app->request->post()) && $cmd->load(Yii::$app->request->post()) && $fact->load(Yii::$app->request->post()) && $dat->load(Yii::$app->request->post()) && $soufamille->load(Yii::$app->request->post()) && $fourn->load(Yii::$app->request->post()) && $quantite) {
         //controler si le code bien nesxite pas ds la table bien
         /*	$control = Bien::find()->where(['codebien' => $model->codebien])->one();
           	if ($control) {
           		Yii::$app->getSession()->setFlash('danger', 'Erreur!!! le code que vous avez entré existe déja.');
           		return $this->redirect(['acquisition']);
           	}*/
         $countt = Bien::find()->count();
         //print ("count= $countt");
         $cdbienX = Bien::find()->where(['seq' => $countt])->one();
         if ($quantite < 100) {
             for ($i = 1; $i < $quantite + 1; $i++) {
                 $model2 = new Bien();
                 $cdsf = Sousfamille::find()->where(['designationsousfamille' => $soufamille->designationsousfamille])->one();
                 //$cdbien = $model->codebien;
                 $cdbien = $cdbienX->seq;
                 $sf = $cdsf->codesousfamille;
                 $som = $cdbien + $i;
                 $model2->codebien = "" . $sf . "" . $som;
                 $model2->seq = $som;
                 //print ("code=  $model2->codebien");
                 $dte = $dat->dt;
                 $fournisseurCod = $fourn->regcomm;
                 $fact->regcomm = $fournisseurCod;
                 //controle de date
                 $dateSysteme = date('d/m/Y');
                 //récupérer date systeme
                 $tabSys = explode('/', $dateSysteme);
                 //convertir en tableau dont le séparateur est /
                 $secSys = mktime(0, 0, 0, $tabSys[1], $tabSys[0], $tabSys[2]);
                 //convertir la date en seconde
                 $tabPicker = explode('/', $dte);
                 $secPicker = mktime(0, 0, 0, $tabPicker[1], $tabPicker[0], $tabPicker[2]);
                 if ($secSys >= $secPicker) {
                     $model->dateacquisition = $dte;
                     $dat->save();
                     $model2->dateacquisition = $dte;
                     $datcmd = $cmd->datecmd;
                     $datfact = $fact->datefact;
                     $cmd->save();
                     $fact->save();
                     // faire le control des date cmd et date fact
                     if ($datcmd != null) {
                         $tabDatCmd = explode('/', $datcmd);
                         $secDatCmd = mktime(0, 0, 0, $tabDatCmd[1], $tabDatCmd[0], $tabDatCmd[2]);
                         if ($secSys < $secDatCmd) {
                             Yii::$app->getSession()->setFlash('danger', 'La date de commande que vous avez entrée est superieure à la date d aujourdhui. Veuillez entrer une date valide s il vous plait');
                             return $this->redirect(['acquisition']);
                         }
                     }
                     if ($datfact != null) {
                         $tabDatFact = explode('/', $datfact);
                         $secDatFact = mktime(0, 0, 0, $tabDatFact[1], $tabDatFact[0], $tabDatFact[2]);
                         if ($secSys < $secDatFact) {
                             Yii::$app->getSession()->setFlash('danger', 'La date de facture que vous avez entrée est superieure à la date d aujourdhui. Veuillez entrer une date valide s il vous plait');
                             return $this->redirect(['acquisition']);
                         }
                     }
                     $cmde = $cmd->numcmd;
                     $model->numcmd = $cmde;
                     $model2->numcmd = $cmde;
                     $facte = $fact->numfacture;
                     $model->numfacture = $facte;
                     $model2->numfacture = $facte;
                     $desSfam = $soufamille->designationsousfamille;
                     $soufam = Sousfamille::find()->where(['designationsousfamille' => $desSfam])->one();
                     $sfamille = $soufam->codesousfamille;
                     $model->codesousfamille = $sfamille;
                     $des = $model->designationbien;
                     $model2->designationbien = $des;
                     $model2->codesousfamille = $sfamille;
                     $model2->statutbien = 'acquis';
                     $etat = $model->etatbien;
                     $model2->etatbien = $etat;
                     $comm = $model->commentaire;
                     $model2->commentaire = $comm;
                     $poids = $model->poids;
                     $model2->poids = $poids;
                     $datedebugarantie = $model->datedebugarantie;
                     $datefingarantie = $model->datefingarantie;
                     if ($datedebugarantie != null && $datefingarantie != null) {
                         //convertir datedebugarantie en seconde pr faire le control
                         $tabDatDebu = explode('/', $datedebugarantie);
                         $secDatDebu = mktime(0, 0, 0, $tabDatDebu[1], $tabDatDebu[0], $tabDatDebu[2]);
                         $model2->datedebugarantie = $datedebugarantie;
                         //convertir datefingarantie en seconde pr faire le control
                         $tabDatFin = explode('/', $datefingarantie);
                         $secDatFin = mktime(0, 0, 0, $tabDatFin[1], $tabDatFin[0], $tabDatFin[2]);
                         $model2->datefingarantie = $datefingarantie;
                         if ($secDatDebu >= $secDatFin) {
                             Yii::$app->getSession()->setFlash('danger', 'La date début de garantie ne doit pas être supérieure à la date de fin de garantie. Veuillez vérifier vos dates s il vous plait');
                             return $this->redirect(['acquisition']);
                         }
                         //if ($secDatDebu > $secSys || $secDatFin > $secSys) {
                         if ($secDatDebu > $secSys) {
                             Yii::$app->getSession()->setFlash('danger', 'La date de garantie est supérieure à la date d aujourdhui. Veuillez entrer une date valide s il vous plait');
                             return $this->redirect(['acquisition']);
                         }
                     }
                     $modele = $model->modele;
                     $model2->modele = $modele;
                     $model2->save();
                 } else {
                     Yii::$app->getSession()->setFlash('danger', 'La date d acquisition que vous avez entrée est superieure à la date d aujourdhui. Veuillez entrer une date valide s il vous plait');
                     return $this->redirect(['acquisition']);
                 }
             }
         } else {
             Yii::$app->getSession()->setFlash('danger', 'La quantité que vous avez saisie est très grande. Veuillez vérifier cette quantité s il vous plait');
             return $this->redirect(['acquisition']);
         }
         $imm = strcmp($soufamille->designationsousfamille, "Terrains de construction");
         if ($model2->save()) {
             if ($imm == 0) {
                 return $this->redirect(['immobilier', 'id' => $cdbienX->seq, 'quantite' => $quantite, 'sf' => $sf]);
             } else {
                 return $this->redirect(['amort', 'id' => $cdbienX->seq, 'quantite' => $quantite, 'sf' => $sf]);
             }
         }
     } else {
         return $this->render('vueAcquisition', ['model' => $model, 'soufamille' => $soufamille, 'dat' => $dat, 'cmd' => $cmd, 'fact' => $fact, 'fourn' => $fourn]);
     }
 }
 /**
  * Finds the Fournisseur model based on its primary key value.
  * If the model is not found, a 404 HTTP exception will be thrown.
  * @param string $id
  * @return Fournisseur the loaded model
  * @throws NotFoundHttpException if the model cannot be found
  */
 protected function findModel($id)
 {
     if (($model = Fournisseur::findOne($id)) !== null) {
         return $model;
     } else {
         throw new NotFoundHttpException('The requested page does not exist.');
     }
 }
예제 #4
0
                      <label  class="col-lg-3 control-label">Commentaire:</label>
                   
                       <?php 
echo $form->field($model, 'commentaire')->textInput()->label(false);
?>
                      </div>
                 
                   </div> 
                   
          
     <div class="col-lg-12">
      <div class="col-lg-6">
                      <label  class="col-lg-3 control-label">Fournisseur:</label>
                    
                      <?php 
echo $form->field($fourn, 'regcomm', ['horizontalCssClasses' => ['wrapper' => 'col-sm-3']])->dropDownList(ArrayHelper::map(Fournisseur::find()->asArray()->all(), 'regcomm', 'regcomm'), ['prompt' => '----------Choisir code fournisseur ----------'])->label(false);
?>
                
                       
                    </div>
                     
                     
      
      <div class="col-lg-6">
                      <label  class="col-lg-3 control-label">Quantité:</label>
                    <?php 
echo Html::input('text', 'quantite', Yii::$app->request->post('quantite'), ['class' => 'form-control ']);
?>
                      </div>