public function actionCsv($pars = 0) { if ($pars) { $model = Operation::find()->where("pars = :pars", [':pars' => (int) $pars])->orderBy("url asc")->all(); } else { $model = Operation::find()->orderBy("url asc")->all(); } include Yii::getAlias('@vendor/phpoffice/phpexcel/Classes/PHPExcel.php'); include Yii::getAlias('@vendor/phpoffice/phpexcel/Classes/PHPExcel/IOFactory.php'); $objPHPExcel = new \PHPExcel(); $objPHPExcel->getProperties()->setCreator("Php Shaman")->setLastModifiedBy("Php Shaman")->setTitle("Office 2007 XLSX Test Document")->setSubject("Office 2007 XLSX Test Document")->setDescription("Data for yelp parsing")->setKeywords("office 2007 openxml php")->setCategory("Data for yelp parsing"); // Add some data $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', 'name')->setCellValue('B1', 'categories')->setCellValue('C1', 'phone')->setCellValue('D1', 'state')->setCellValue('E1', 'city')->setCellValue('F1', 'address')->setCellValue('G1', 'postal')->setCellValue('H1', 'site')->setCellValue('I1', 'description'); foreach ($model as $k => $o) { $cat = []; foreach ($o->categories as $c) { $cat[] = $c->name; } $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A' . ($k + 2), $o->name)->setCellValue('B' . ($k + 2), join(' | ', $cat))->setCellValue('C' . ($k + 2), $o->phone)->setCellValue('D' . ($k + 2), ParsSettings::getState($o->state))->setCellValue('E' . ($k + 2), $o->city)->setCellValue('F' . ($k + 2), $o->address)->setCellValue('G' . ($k + 2), $o->postal)->setCellValue('H' . ($k + 2), $o->site)->setCellValue('I' . ($k + 2), $o->description); } header('Content-Type: application/vnd.ms-excel'); header('Content-Disposition: attachment;filename="pars.xls"'); header('Cache-Control: max-age=0'); header('Cache-Control: max-age=1'); header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); header('Cache-Control: cache, must-revalidate'); header('Pragma: public'); $objWriter = \PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('php://output'); }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params, $pars = 0) { $query = Operation::find(); if ($pars) { $query->andFilterWhere(['pars' => $pars]); } $query->orderBy("id desc"); $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, 'pars' => $this->pars, 'created' => $this->created]); $query->andFilterWhere(['like', 'name', $this->name])->andFilterWhere(['like', 'state', $this->state])->andFilterWhere(['like', 'city', $this->city])->andFilterWhere(['like', 'address', $this->address])->andFilterWhere(['like', 'phone', $this->phone])->andFilterWhere(['like', 'site', $this->site])->andFilterWhere(['like', 'img', $this->img]); return $dataProvider; }
public function actionCreate() { $model = new OperationForm(); $t = Yii::$app->request->get('t'); switch ($t) { case 'income': $model->operation_type = $t; break; case 'expense': $model->operation_type = $t; break; default: $model->operation_type = 'expense'; } $provider = new ActiveDataProvider(['query' => Operation::find()->with(['category', 'currency'])->orderBy('created_at DESC')->limit(20)]); $provider->setSort(false); if ($model->load(Yii::$app->request->post()) && $model->validate()) { if ($operation = $model->addOperation()) { return $this->refresh(); } } return $this->render('create', ['model' => $model, 'dataProvider' => $provider]); }
/** * @Post("/editoperation") * */ public function posteditoperation(Request $request) { $et = Operation::find($request->get('id')); // $et->nom = "000"; // $et->montant += 100 ; $user = User::find(Auth::user()->id); if ($et->type_dr == "depense" and $et->mode_paiement == "poche") { $user->solde_poche = $user->solde_poche + $request->montant; $user->solde_totale = $user->solde_totale + $request->montant; $user->save(); } if ($et->type_dr == "revenue" and $et->mode_paiement == "bank") { $user->soldebancaire = $user->soldebancaire - $request->montant; $user->solde_totale = $user->solde_totale - $request->montant; $user->save(); } if ($et->type_dr == "depense" and $et->mode_paiement == "bank") { $user->soldebancaire = $user->soldebancaire + $request->montant; $user->solde_totale = $user->solde_totale + $request->montant; $user->save(); } if ($et->type_dr == "revenue" and $et->mode_paiement == "poche") { $user->solde_poche = $user->solde_poche - $request->montant; $user->solde_totale = $user->solde_totale - $request->montant; $user->save(); } $et->nom = $request->nom; $et->type_dr = $request->type_dr; $et->montant = $request->montant; $et->mode_paiement = $request->mode_paiement; $et->description = $request->description; $et->etiquette_id = $request->etiquette; $et->categorie_id = $request->categorie; if ($et->type_dr == "depense" and $et->mode_paiement == "poche") { $user->solde_poche = $user->solde_poche - $request->montant; $user->solde_totale = $user->solde_totale - $request->montant; $user->save(); } if ($et->type_dr == "revenue" and $et->mode_paiement == "bank") { $user->soldebancaire = $user->soldebancaire + $request->montant; $user->solde_totale = $user->solde_totale + $request->montant; $user->save(); } if ($et->type_dr == "depense" and $et->mode_paiement == "bank") { $user->soldebancaire = $user->soldebancaire - $request->montant; $user->solde_totale = $user->solde_totale - $request->montant; $user->save(); } if ($et->type_dr == "revenue" and $et->mode_paiement == "poche") { $user->solde_poche = $user->solde_poche + $request->montant; $user->solde_totale = $user->solde_totale + $request->montant; $user->save(); } $et->save(); return redirect('/operations')->with(['etiquette' => Etiquette::all(), 'categorie' => Categorie::all(), 'operations' => Operation::where('user_id', \Auth::user()->id)->with('etiquette', 'categorie')->get()]); }