public function actionShow($id) { $id_control = Yii::app()->user->id; // $update_user = User::model()->findByPk($id_user); $role_control = User::model()->findByPk($id_control)->id_usergroups; // $id_guide = SegGuidesdata::model()->findByPk($update_user->id_guide)->idseg_guidesdata; if ($role_control == 1) { $this->layout = "root"; } if ($role_control == 2) { $this->layout = "admin"; } if ($role_control == 3) { $this->layout = "office"; } if ($role_control == 5) { $this->layout = "guide"; } $model = $this->loadModel($id); //city //$citie->seg_cityname = ''; $j = 0; $criteria_city = new CDbCriteria(); $criteria_city->condition = 'users_id=:users_id'; $criteria_city->params = array(':users_id' => $model->guide1_id); $city = SegGuidesCities::model()->find($criteria_city); if (isset($city)) { $criteria_c = new CDbCriteria(); $criteria_c->condition = 'idseg_cities=:idseg_cities'; $criteria_c->params = array(':idseg_cities' => $city->cities_id); $citie = SegCities::model()->find($criteria_c); $model->city_id_all = $citie->seg_cityname; $j = $citie->idseg_cities; } else { $model->city_id_all = 'no element'; } //language if ($model->language_id == NULL) { $i = 0; $criteria_language = new CDbCriteria(); $criteria_language->condition = 'users_id=:users_id'; $criteria_language->params = array(':users_id' => $model->guide1_id); $language = SegLanguagesGuides::model()->findAll($criteria_language); if (isset($language)) { foreach ($language as $item) { $criteria_i = new CDbCriteria(); $criteria_i->condition = 'id_languages=:id_languages'; $criteria_i->params = array(':id_languages' => $item->languages_id); $languages = Languages::model()->findAll($criteria_i); $model->language_id_all[$i] = $languages; $i++; } } else { $model->language_id_all[0] = 'no element'; } } else { $criteria_i = new CDbCriteria(); $criteria_i->condition = 'id_languages=:id_languages'; $criteria_i->params = array(':id_languages' => $model->language_id); $language = Languages::model()->find($criteria_i); $model->language_id_all[0] = $language; } //tour canegories + tourroute //$tourroute_id_all; $z = 0; $criteria_tour = new CDbCriteria(); $criteria_tour->condition = 'usersid=:usersid'; $criteria_tour->params = array(':usersid' => $model->guide1_id); $tourcats = SegGuidesTourroutes::model()->findAll($criteria_tour); if (isset($tourcats)) { foreach ($tourcats as $tourroute) { $criteria_t = new CDbCriteria(); $criteria_t->condition = 'id_tour_categories=:id_tour_categories AND cityid=:cityid'; $criteria_t->params = array(':id_tour_categories' => $tourroute->tourroutes_id, ':cityid' => $j); $tourroutes = SegTourroutes::model()->find($criteria_t); $model->tourroute_id_all[$z] = $tourroutes->name; $z++; } } else { $model->tourroute_id_all[0] = 'no element'; } $this->render('show', array('model' => $model)); }
public function createpdf($sched) { $id_control = Yii::app()->user->id; $guide = User::model()->with('contact_ob')->findByPk($id_control); $date_format = strtotime($sched->date); $date_bd = date('Y-m-d',$date_format); $dt =$date_bd.' '.$sched->starttime; $tour = SegTourroutes::model()->findByPk($sched->tourroute_id); $mails=array(); $fn='.'; $ln='.'; if((!is_null($guide->contact_ob['firstname'])) && $guide->contact_ob['firstname']!=''){$fn = $guide->contact_ob['firstname']{0};}else{$fn='0';} if((!is_null($guide->contact_ob['surname'])) && $guide->contact_ob['surname']!=''){$ln = $guide->contact_ob['surname']{0};}else{$ln='0';} $c = $tour->city['seg_cityname']{0}; $year = date('y',time()); $b = $tour->city['seg_cityname']{0}; $num=0; $criteria_i = new CDbCriteria; $criteria_i->condition = 'guide1_id=:guide1_id AND openTour=:openTour'; $criteria_i->params = array(':guide1_id'=>$id_control,'openTour'=>1); $schedall = SegScheduledTours::model()->findAll($criteria_i); foreach($schedall as $item){ $year_item = date('y',$item->date_now); if($year_item == $year){ $num++; } } $num = $num+1; // $sched->GN_string = $fn.$ln.$c.'/'.$id_control.'/'.$year.'/'.$num; $sched->GN_string = $fn.$ln.$c.'/'.$year.'/'.$num; $sched->openTour = 1;//create pdf //tourroutes $criteria_tourroutes = new CDbCriteria; $criteria_tourroutes->condition = 'usersid=:usersid AND tourroutes_id=:tourroutes_id'; $criteria_tourroutes->params = array(':usersid'=>$sched->user_ob->id,'tourroutes_id'=>$tour->id_tour_categories); $tourroutes = SegGuidesTourroutes::model()->find($criteria_tourroutes); $vat= Yii::app()->db->createCommand("SELECT value from mainoptions where name='Vat'")->queryScalar(); $firma= Yii::app()->db->createCommand("SELECT value from mainoptions where name='Firma'")->queryScalar(); $sum_itog=0; $sum_bar=0; $count_cust=0; $max= Yii::app()->db->createCommand("SELECT max(InvoiceNumber) from seg_guidestourinvoices where cityid=".$tour->cityid)->queryScalar(); $max_i = $max+1; foreach ($sched->guidestourinvoices as $invoice) { $model=$invoice->guidestourinvoicescustomers; $overAllIncome=0; $cashIncome=0; $count_inv=0; $invoice_id = $invoice->idseg_guidesTourInvoices; for($k=0;$k<count($model);$k++){ $kk=$model[$k]->idseg_guidesTourInvoicesCustomers; if($model[$k]->isPaid == 1) $count_cust++; $count_inv++; } $invoice->status = 1; $sum_itog += $invoice->overAllIncome; $sum_bar += $invoice->cashIncome; $invoice->TA_string = 'TA'.$b.$year.'/'.$max_i; $invoice->InvoiceNumber =$max_i; $invoice->save(); $tmpname=$this->doPDF($sched, $invoice); $mails[]=array($invoice->contact['email'],$tmpname); } $sum_vat = round($sum_itog*(1-1/($vat/100+1)),2); $sum_b_vat = $sum_itog - $sum_vat; $cifra = $count_cust - $tourroutes->guest_variable; if($cifra<=0){$cifra=0;}//turists > $gonorar = $tourroutes->base_provision+$cifra*$tourroutes->guestsMinforVariable;//summa gonorar $gonorar_vat = $gonorar*(1-1/($vat/100+1)); $gonorar_vat = number_format($gonorar_vat, 2, '.', ' '); $cashnew=new CashboxChangeRequests; $cashnew->id_users=$id_control; $cashnew->approvedBy=$id_control; $cashnew->delta_cash = $sum_bar; $datetime = date('Y-m-d H:i:s', time()); $cashnew->approval_date=$datetime; $cashnew->id_type = 1; $cashnew->sched_user_id = $sched->idseg_scheduled_tours; $cashnew->save(); $cashnew1 = new CashboxChangeRequests; $cashnew1->id_users=$id_control; $cashnew1->approvedBy=$id_control; $cashnew1->approval_date=$datetime; $cashnew1->sched_user_id = $sched->idseg_scheduled_tours; $cashnew1->delta_cash = -$gonorar; $cashnew1->id_type = 2; $cashnew1->save(); $cashnow=$this->cashsum; //************************************PDF CREATE***************************************************// //$pdf->SetFont('freeserif', '', 14); $printOrders = null; $forpdf=array(); $forpdf['gonorar_vat']=$gonorar_vat; $forpdf['firma']=$firma; $forpdf['cifra']=$cifra; $forpdf['base_provision'] = number_format($tourroutes->base_provision, 2, '.', ' '); $forpdf['guestsMinforVariable'] = number_format($tourroutes->guestsMinforVariable, 2, '.', ' '); $forpdf['gonorar_zero'] = number_format($gonorar, 2, '.', ' '); $forpdf['cashBefore'] = number_format($cashnow, 2, '.', ' '); $forpdf['sum_bar_zero'] = number_format($sum_bar, 2, '.', ' '); $forpdf['cashnow_zero'] = number_format($cashnow-$gonorar+$sum_bar, 2, '.', ' '); $forpdf['delta_cash_zero'] = number_format($sum_bar-$gonorar, 2, '.', ' '); $forpdf['cashnow_enter'] = number_format($cashnow+$gonorar-$sum_bar, 2, '.', ' '); $name_pdf2=$this->doPDF($sched, $forpdf); // var_dump($mails);return false; $sched->additional_info2=$name_pdf2; $sched->save(); $message="Dear sirs, \n The invoice from Cherry tours."; $subject = "The invoice from Cherry tours"; foreach ($mails as $value) { $this->sendMail($value[0],$subject,$message, __DIR__.'/../../../../filespdf/'.$value[1].'.pdf'); unlink(__DIR__.'/../../../../filespdf/'.$value[1].'.pdf'); } $this->redirect( Yii::app()->createUrl('/filespdf/'.$name_pdf2.'.pdf') ); }