public function getLookDetail($ls) { $file = \App\MeterFile::where('active', 1)->first(); if (!$file) { return back()->withErrors('Необходимо активировать базу.'); } $apartment = \App\Apartment::where('ls', $ls)->first(); if (!$apartment) { abort(404); } $building = $apartment->building; $street = $building->street; $full_address = $street->prefix . '. ' . $street->name . ', д. ' . $building->number . ($building->housing ? '/' . $building->housing : '') . ' кв. ' . $apartment->number . ($apartment->part ? '/' . $apartment->part : ''); $meters = \App\Meter::where('apartment_id', $apartment->id)->orderBy('service_id')->get(); $meter_ids = []; foreach ($meters as $m) { array_push($meter_ids, $m->id); } $old_values = \App\MeterValue::where('file_id', $file->id)->whereIn('meter_id', $meter_ids)->get(); $meter_values = []; foreach ($old_values as $ov) { $meter_values[$ov->meter_id] = $ov; } return view('admin.detail', ['address' => $full_address, 'apartment' => $apartment, 'meters' => $meters, 'meter_values' => $meter_values, 'file' => $file->id]); }
public static function removePhotoFromApartments($photos, $id) { $apartment = Apartment::where('id', $id)->get(['photos'])->first(); if ($apartment->photos) { if (!$photos) { $photos = []; } $removed = array_diff(json_decode($apartment->photos), $photos); foreach ($removed as $photo) { @unlink(self::$apartment_folder . '/' . $id . '/' . $photo); @unlink(self::$apartment_folder . '/' . $id . '/ico_' . $photo); } } }
public function apartament($apartament_id) { $apartament = \App\Apartment::where('active', '1')->where('id', $apartament_id)->firstOrFail(); return view('apartment', ['apartament' => $apartament, 'page' => 'apartment']); }
public function saveFeedback(Request $request) { if (!session()->has('can-save')) { return json_encode(['success' => false, 'errors' => ['Ошибка прав доступа на сохранение отзыва.']]); } session()->flash('can-save', '1'); $validator = Validator::make($request->all(), ['owner' => 'required|exists:apartments,ls', 'feedtext' => 'required'], ['feedtext.required' => 'Заполните текст отзыва.']); if ($validator->fails()) { return json_encode(['success' => false, 'errors' => $validator->errors()->all()]); } $ls = $request->input('owner'); $text = $request->input('feedtext'); $apartment = \App\Apartment::where('ls', $ls)->first(); $building = $apartment->building; $street = $building->street; $full_address = $street->prefix . '. ' . $street->name . ', д. ' . $building->number . ($building->housing ? '/' . $building->housing : '') . ' кв. ' . $apartment->number . ($apartment->part ? '/' . $apartment->part : ''); $feed = new \App\Feedback(); $feed->address = $full_address; $feed->ls = $ls; $feed->text = $text; $feed->save(); return json_encode(['success' => true]); }