Пример #1
0
 /**
  * Displays the index (home) page.
  * Use it in case your home page contains static content.
  *
  * @return string
  */
 public function actionIndex()
 {
     $searchModel = new ServiceSearch();
     $searchModel->promo = true;
     $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
     return $this->render('tempindex', ['cat' => Category::find()->orderBy('name_pt')->all(), 'serv' => Service::find()->orderBy('title_pt')->all(), 'modelImg' => Campaign::find()->one(), 'dataProvider' => $dataProvider]);
 }
Пример #2
0
 /**
  * post Store.
  *
  * @param Request $request Input data of booking form
  *
  * @return Response Redirect to Appointments listing
  */
 public function postStore(Request $request)
 {
     $this->log->info(__METHOD__);
     //////////////////
     // FOR REFACTOR //
     //////////////////
     $issuer = auth()->user();
     $business = Business::findOrFail($request->input('businessId'));
     $contact = $issuer->getContactSubscribedTo($business->id);
     $service = Service::find($request->input('service_id'));
     $strDateTime = $request->input('_date') . ' ' . $business->pref('start_at');
     $datetime = Carbon::parse($strDateTime . ' ' . $business->timezone)->setTimezone('UTC');
     $comments = $request->input('comments');
     $this->concierge->setBusiness($business);
     $appointment = $this->concierge->makeReservation($issuer, $business, $contact, $service, $datetime, $comments);
     if (false === $appointment) {
         $this->log->info('[ADVICE] Unable to book');
         Flash::warning(trans('user.booking.msg.store.error'));
         return redirect()->route('user.agenda');
     }
     if (!$appointment->exists) {
         $this->log->info('[ADVICE] Appointment is duplicated');
         Flash::warning(trans('user.booking.msg.store.sorry_duplicated', ['code' => $appointment->code]));
         return redirect()->route('user.agenda');
     }
     $this->log->info('Appointment saved successfully');
     event(new NewBooking($issuer, $appointment));
     Flash::success(trans('user.booking.msg.store.success', ['code' => $appointment->code]));
     return redirect()->route('user.agenda');
 }
Пример #3
0
 /**
  * Lists all Service models.
  * @return mixed
  */
 public function actionIndex()
 {
     $searchModel = new ServiceSearch();
     $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
     $cat = Category::find()->orderBy('name_pt')->all();
     $serv = Service::find()->orderBy('title_pt')->all();
     return $this->render('index', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider, 'cat' => $cat, 'serv' => $serv]);
 }
Пример #4
0
 public function postDestroy()
 {
     $service = Service::find(Input::get('id'));
     if ($service) {
         $service->delete();
         return Redirect::back()->with('message', 'Элемент удален');
     }
     return Redirect::back()->with('message', "Ошибка");
 }
Пример #5
0
 /**
  * AJAX
  * Добавляет site_update
  * Делает рассылку
  *
  * @param integer $id - идентификатор услуги
  *
  * @return string
  */
 public function actionSubscribe($id)
 {
     $item = Service::find($id);
     if (is_null($item)) {
         return self::jsonError(101, 'Не найдено послание');
     }
     Subscribe::add($item);
     SiteUpdate::add($item);
     $item->update(['is_added_site_update' => 1]);
     return self::jsonSuccess();
 }
Пример #6
0
 public function up()
 {
     $this->execute('ALTER TABLE galaxysss_1.gs_services ADD column_name int NULL;');
     $rows = \app\models\Service::query()->select(['id', 'date_insert'])->all();
     foreach ($rows as $row) {
         $date = new DateTime($row['date_insert']);
         \app\models\Service::find($row['id'])->update(['column_name' => $date->format('U')]);
     }
     // удаляю старую колонку
     $this->execute('ALTER TABLE galaxysss_1.gs_services DROP date_insert;');
     // переименовываю вновь созданную колонку
     $this->execute('ALTER TABLE galaxysss_1.gs_services CHANGE column_name date_insert int NULL;');
 }
Пример #7
0
 public function actionList()
 {
     $params = Yii::$app->request->queryParams;
     $limit = $params["iDisplayLength"];
     $offset = $params["iDisplayStart"];
     $sEcho = $params["sEcho"];
     $query = Service::find();
     $count = $query->count();
     $aaData = $query->with(["user" => function ($query) {
         $query->addSelect(["user_id", "name"]);
     }])->asArray()->orderBy(['service_id' => SORT_DESC])->limit($limit)->offset($offset)->all();
     \Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
     return ['success' => true, 'aaData' => $aaData, "iTotalRecords" => $count, "iTotalDisplayRecords" => $count, "sEcho" => $sEcho];
 }
Пример #8
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Service::find();
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     $dataProvider->sort->attributes['catName'] = ['asc' => ['category.name_' . Yii::$app->language => SORT_ASC], 'desc' => ['category.name_' . Yii::$app->language => SORT_DESC]];
     $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');
         $query->joinWith(['category']);
         return $dataProvider;
     }
     $query->andFilterWhere(['id' => $this->id, 'category_id' => $this->category_id, 'price' => $this->price, 'promo' => $this->promo, 'created_at' => $this->created_at, 'updated_at' => $this->updated_at]);
     $query->andFilterWhere(['like', 'sku', $this->sku])->andFilterWhere(['like', 'title_en', $this->title_en])->andFilterWhere(['like', 'title_pt', $this->title_pt])->andFilterWhere(['like', 'summary_en', $this->summary_en])->andFilterWhere(['like', 'summary_pt', $this->summary_pt])->andFilterWhere(['like', 'description_en', $this->description_en])->andFilterWhere(['like', 'description_pt', $this->description_pt])->andFilterWhere(['like', 'availability_en', $this->availability_en])->andFilterWhere(['like', 'availability_pt', $this->availability_pt])->andFilterWhere(['like', 'promo_txt_en', $this->promo_txt_en])->andFilterWhere(['like', 'promo_txt_pt', $this->promo_txt_pt]);
     $query->joinWith(['category' => function ($q) {
         $q->where('category.name_' . Yii::$app->language . ' LIKE "%' . $this->catName . '%"');
     }]);
     return $dataProvider;
 }
Пример #9
0
 public function import($services, $deviceIndex)
 {
     $subscriptionCount = 0;
     foreach ($services as $service) {
         if (isset($service['serviceUuid']) && is_array($service['serviceUuid'])) {
             $service['serviceUuid'] = $service['serviceUuid'][0];
         }
         if (!($serviceModel = Service::find()->where(array('device' => $deviceIndex, 'serviceUuid' => $service['serviceUuid']))->one())) {
             $serviceModel = new Service();
         }
         $service = array_merge($service, array('device' => $deviceIndex));
         $serviceModel->setAttributes($service);
         if ($serviceModel->save()) {
             $serviceIndex = $serviceModel->getPrimaryKey();
             if (isset($service['charasteristics'])) {
                 $subscriptionCount += \app\models\Charasteristic::import($service['charasteristics'], $serviceIndex);
             }
         }
         //else {
         //die(print_r( $serviceModel->getErrors(),true));
         //}
     }
     return $subscriptionCount;
 }
Пример #10
0
 public static function branchId($service_id)
 {
     return Service::find($service_id)->branch_id;
 }
Пример #11
0
 public function actionServices_item($id)
 {
     return $this->render(['item' => Service::find($id)]);
 }
Пример #12
0
 /**
  * Display the specified resource.
  *
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function show($yy, $qq, $aa)
 {
     $fin = array();
     $fm = Helpers::getSetting('first_month');
     $m1 = $qq * 3 - 3 + $fm;
     $y1 = $yy;
     $m2 = $qq * 3 - 2 + $fm;
     $y2 = $yy;
     $m3 = $qq * 3 - 1 + $fm;
     $y3 = $yy;
     if ($m2 > 12) {
         $m2 = $m2 - 12;
         $y2 = $y2 + 1;
     }
     if ($m3 > 12) {
         $m3 = $m3 - 12;
         $y3 = $y3 + 1;
     }
     if ($aa == "edit") {
         $perms = Permission::where('user_id', '=', Auth::user()->id)->get();
         foreach ($perms as $perm) {
             if ($perm->preaching or $perm->admin) {
                 $data['authsoc'][] = $perm['society_id'];
             }
         }
         if (!isset($data['authsoc'])) {
             $aa = "view";
         }
     }
     $firstDateTime = mktime(0, 0, 0, $m1, 1, $y1);
     $firstDay = date("N", $firstDateTime);
     $firstSunday = date("d M Y", mktime(0, 0, 0, $m1, 8 - $firstDay, $y1));
     $lastSunday = strtotime($firstSunday);
     $lastDay = mktime(23, 59, 59, $m3, cal_days_in_month(CAL_GREGORIAN, $m3, $y3), $y3);
     $extras = Weekday::where('servicedate', '>=', $firstDateTime)->where('servicedate', '<=', $lastDay)->orderBy('servicedate')->get()->toArray();
     $data['meetings'] = Meeting::where('meetingdatetime', '<', $lastDay)->where('meetingdatetime', '>', $firstDateTime)->orderBy('meetingdatetime')->get();
     $dum['dt'] = $lastSunday;
     $dum['yy'] = intval(date("Y", $lastSunday));
     $dum['mm'] = intval(date("n", $lastSunday));
     $dum['dd'] = intval(date("j", $lastSunday));
     $sundays[] = $dum;
     $data['societies'] = Society::orderBy('society')->with('service')->get();
     $data['ministers'] = Minister::has('individual')->get();
     $data['preachers'] = Preacher::has('individual')->get();
     $data['guests'] = Guest::where('active', '=', 1)->get();
     while (date($lastSunday + 604800 <= $lastDay)) {
         $lastSunday = $lastSunday + 604800;
         $dum['dt'] = $lastSunday;
         $dum['yy'] = intval(date("Y", $lastSunday));
         $dum['mm'] = intval(date("n", $lastSunday));
         $dum['dd'] = intval(date("j", $lastSunday));
         $sundays[] = $dum;
     }
     if (count($extras)) {
         $xco = 0;
         for ($q = 0; $q < count($sundays); $q++) {
             if ($xco < count($extras) and $extras[$xco]['servicedate'] < $sundays[$q]['dt']) {
                 $dum['dt'] = $extras[$xco]['servicedate'];
                 $dum['yy'] = intval(date("Y", $extras[$xco]['servicedate']));
                 $dum['mm'] = intval(date("n", $extras[$xco]['servicedate']));
                 $dum['dd'] = intval(date("j", $extras[$xco]['servicedate']));
                 $data['sundays'][] = $dum;
                 $xco++;
                 $q = $q - 1;
             } else {
                 $data['sundays'][] = $sundays[$q];
             }
         }
     } else {
         $data['sundays'] = $sundays;
     }
     $pm1 = Plan::where('planyear', '=', $y1)->where('planmonth', '=', $m1)->get();
     foreach ($pm1 as $p1) {
         $soc = Society::find($p1->society_id)->society;
         $ser = Service::find($p1->service_id)->servicetime;
         if ($p1->preachable) {
             @($data['fin'][$soc][$p1->planyear][$p1->planmonth][$p1->planday][$ser]['preacher'] = substr($p1->preachable_type, 11, 1) . "_" . $p1->preachable->id);
             if ($p1->preachable_type == "App\\Models\\Guest") {
                 @($data['fin'][$soc][$p1->planyear][$p1->planmonth][$p1->planday][$ser]['pname'] = substr($p1->preachable->firstname, 0, 1) . " " . $p1->preachable->surname);
             } else {
                 @($data['fin'][$soc][$p1->planyear][$p1->planmonth][$p1->planday][$ser]['pname'] = substr($p1->preachable->individual->firstname, 0, 1) . " " . $p1->preachable->individual->surname);
             }
         } else {
             @($data['fin'][$soc][$p1->planyear][$p1->planmonth][$p1->planday][$ser]['preacher'] = "");
         }
         if ($p1->tag_id) {
             @($data['fin'][$soc][$p1->planyear][$p1->planmonth][$p1->planday][$ser]['tag'] = $p1->tag_id);
             @($data['fin'][$soc][$p1->planyear][$p1->planmonth][$p1->planday][$ser]['tname'] = Tag::find($p1->tag_id)->abbr);
         } else {
             @($data['fin'][$soc][$p1->planyear][$p1->planmonth][$p1->planday][$ser]['tag'] = "");
         }
     }
     $pm2 = Plan::where('planyear', '=', $y2)->where('planmonth', '=', $m2)->get();
     foreach ($pm2 as $p2) {
         $soc = Society::find($p2->society_id)->society;
         $ser = Service::find($p2->service_id)->servicetime;
         if ($p2->preachable) {
             @($data['fin'][$soc][$p2->planyear][$p2->planmonth][$p2->planday][$ser]['preacher'] = substr($p2->preachable_type, 11, 1) . "_" . $p2->preachable->id);
             if ($p2->preachable_type == "App\\Models\\Guest") {
                 @($data['fin'][$soc][$p2->planyear][$p2->planmonth][$p2->planday][$ser]['pname'] = substr($p2->preachable->firstname, 0, 1) . " " . $p2->preachable->surname);
             } else {
                 @($data['fin'][$soc][$p2->planyear][$p2->planmonth][$p2->planday][$ser]['pname'] = substr($p2->preachable->individual->firstname, 0, 1) . " " . $p2->preachable->individual->surname);
             }
         } else {
             @($data['fin'][$soc][$p2->planyear][$p2->planmonth][$p2->planday][$ser]['preacher'] = "");
         }
         if ($p2->tag_id) {
             @($data['fin'][$soc][$p2->planyear][$p2->planmonth][$p2->planday][$ser]['tag'] = $p2->tag_id);
             @($data['fin'][$soc][$p2->planyear][$p2->planmonth][$p2->planday][$ser]['tname'] = Tag::find($p2->tag_id)->abbr);
         } else {
             @($data['fin'][$soc][$p2->planyear][$p2->planmonth][$p2->planday][$ser]['tag'] = "");
         }
     }
     $pm3 = Plan::where('planyear', '=', $y3)->where('planmonth', '=', $m3)->get();
     foreach ($pm3 as $p3) {
         $soc = Society::find($p3->society_id)->society;
         $ser = Service::find($p3->service_id)->servicetime;
         if ($p3->preachable) {
             @($data['fin'][$soc][$p3->planyear][$p3->planmonth][$p3->planday][$ser]['preacher'] = substr($p3->preachable_type, 11, 1) . "_" . $p3->preachable->id);
             if ($p3->preachable_type == "App\\Models\\Guest") {
                 @($data['fin'][$soc][$p3->planyear][$p3->planmonth][$p3->planday][$ser]['pname'] = substr($p3->preachable->firstname, 0, 1) . " " . $p3->preachable->surname);
             } else {
                 @($data['fin'][$soc][$p3->planyear][$p3->planmonth][$p3->planday][$ser]['pname'] = substr($p3->preachable->individual->firstname, 0, 1) . " " . $p3->preachable->individual->surname);
             }
         } else {
             @($data['fin'][$soc][$p3->planyear][$p3->planmonth][$p3->planday][$ser]['preacher'] = "");
         }
         if ($p3->tag_id) {
             @($data['fin'][$soc][$p3->planyear][$p3->planmonth][$p3->planday][$ser]['tag'] = $p3->tag_id);
             @($data['fin'][$soc][$p3->planyear][$p3->planmonth][$p3->planday][$ser]['tname'] = Tag::find($p3->tag_id)->abbr);
         } else {
             @($data['fin'][$soc][$p3->planyear][$p3->planmonth][$p3->planday][$ser]['tag'] = "");
         }
     }
     $data['tags'] = Tag::orderBy('abbr')->get();
     if ($qq == 1) {
         $data['prev'] = "plan/" . strval($yy - 1) . "/4";
     } else {
         $data['prev'] = "plan/{$yy}/" . strval($qq - 1);
     }
     if ($qq == 4) {
         $data['next'] = "plan/" . strval($yy + 1) . "/1";
     } else {
         $data['next'] = "plan/{$yy}/" . strval($qq + 1);
     }
     if ($aa == "edit") {
         return View::make('plans.edit', $data);
     } else {
         $data['pb'] = Helpers::getSetting('presiding_bishop');
         if (!$data['pb']) {
             return view('errors.errors')->with('errormessage', 'Before you can view the plan, please enter the name of the Presiding Bishop');
         }
         $data['gs'] = Helpers::getSetting('general_secretary');
         if (!$data['gs']) {
             return view('errors.errors')->with('errormessage', 'Before you can view the plan, please enter the name of the General Secretary');
         }
         $data['db'] = Helpers::getSetting('district_bishop');
         if (!$data['db']) {
             return view('errors.errors')->with('errormessage', 'Before you can view the plan, please enter the name of the District Bishop');
         }
         $data['super'] = Individual::find(Helpers::getSetting('superintendent'));
         if (!$data['super']) {
             return view('errors.errors')->with('errormessage', 'Before you can view the plan, please specify who the Circuit Superintendent is');
         }
         $this->report($data);
     }
 }
Пример #13
0
 public function storeServiceOrder(ServiceOrder $serviceOrder, StoreServiceOrder $request)
 {
     $status = ServiceStatus::where('is_first', Order::IS_FIRST)->first();
     $user = Auth::user();
     $service = Service::find($request->service_id);
     $serviceOrder->service_status_id = $status->id;
     $serviceOrder->user_id = $user->id;
     $serviceOrder->firm_id = $user->firm->id;
     $serviceOrder->service_name = $service->short_name;
     $serviceOrder->service_price = $service->price;
     $serviceOrder->more_info = $request->more_info;
     if ($request->need_station) {
         $serviceOrder->station_names = $request->station_names;
     }
     $serviceOrder->save();
     $messageParams['service'] = $serviceOrder;
     Bus::dispatch(new SendWithTanksForServiceOrder($messageParams));
     return view('orders.serviceSuccess', ['p' => 'purchases', 'serviceName' => $service->short_name]);
 }
Пример #14
0
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function destroy($id)
 {
     $service = Service::find($id);
     $service->delete();
     //Region::destroy($id);
     return back()->with('alert-success', 'Услуга ' . $service->short_name . ' удалена');
 }
 /**
  * Get service by ID
  *
  * @return json
  */
 public function getServiceById($id)
 {
     return Service::find($id);
 }
Пример #16
0
 /**
  * Рисует услугу
  *
  * @param integer|array $row
  *
  * @return string
  */
 public static function serviceItem($row)
 {
     if (!is_array($row)) {
         $id = $row;
         $item = Service::find($id);
         if (is_null($item)) {
             return '';
         }
         $row = $item->getFields();
     }
     $header = isset($row['header']) ? $row['header'] : $row['name'];
     // Заголовок
     $html[] = Html::tag('div', Html::tag('h2', $header), ['class' => 'header']);
     // Ссылка
     $l = ['page/services_item', 'id' => $row['id']];
     $html[] = Html::tag('p', Html::a(Html::img($row['image'], ['width' => '100%', 'class' => 'thumbnail']), $l));
     // Описание
     $html[] = $row['description'];
     return Html::tag('div', join('', $html), ['class' => 'col-lg-4 serviceItem']);
 }
Пример #17
0
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function destroy($soc_id, $id)
 {
     $service = Service::find($id);
     $service->delete();
     return Redirect::back()->with('okmessage', 'Preacher has been deleted');
 }
Пример #18
0
 public function generatePdf($id)
 {
     $data['service'] = Service::find($id);
     $pdf = PDF::loadView('services/pdf', $data);
     return $pdf->stream();
 }