Пример #1
0
 /**
  * Show the application dashboard.
  *
  * @return \Illuminate\Http\Response
  */
 public function index()
 {
     // get user id
     // connect to farmbook and get default database
     $database = Auth::user()->getDatabase();
     //change database dynamically to user set database
     $street = new Street();
     $street->changeConnection($database);
     $streets = Street::on($database)->orderBy('strStreetName', 'ASC')->lists('strStreetName', 'id');
     $complexes = Complex::on($database)->orderBy('strComplexName', 'ASC')->lists('strComplexName', 'id');
     // $owners = Owner::on($database )->orderBy('NAME','DESC')->lists('NAME', 'id');
     $owners = Property::on($database)->orderBy('strOwners', 'DESC')->groupBy('strOwners')->lists('strOwners', 'id');
     $properties = Property::on($database)->orderBy('strKey', 'ASC')->lists('strkey', 'id');
     $erfs = Note::on($database)->orderBy('numErf', 'ASC')->lists('numErf', 'id');
     return view('search', compact('streets', 'complexes', 'owners', 'properties', 'erfs'));
 }
Пример #2
0
 public function index(Request $request)
 {
     $c = $request->cookie('kvowner');
     if ($c) {
         $tmp = explode(':', $c);
         if (count($tmp) != 3) {
             return redirect('/')->withCookie(\Cookie::forget('kvowner'));
         }
         $ls = intval($tmp[0]);
         $space = floatval($tmp[1]);
         $file_id = intval($tmp[2]);
         $apartment = \App\Apartment::where('ls', $ls)->where('space', $space)->first();
         if (!$apartment) {
             \Log::info('1');
             return redirect('/')->withCookie(\Cookie::forget('kvowner'));
         }
         \Log::info('2');
         $file = \App\MeterFile::where('active', 1)->first();
         if (!$file) {
             \Log::info('3');
             return redirect('/')->withCookie(\Cookie::forget('kvowner'));
         } else {
             \Log::info('4');
             if ($file->id != $file_id) {
                 \Log::info('5');
                 return redirect('/')->withCookie(\Cookie::forget('kvowner'));
             }
         }
         return view('main', ['saved' => true, 'apartment' => $apartment]);
     }
     $streets = \App\Street::orderBy('name')->orderBy('prefix')->get();
     return view('main', ['saved' => false, 'streets' => $streets]);
 }
 /** @test */
 public function it_should_update_the_maintenance_data_from_external_service()
 {
     $streets = Street::addStreetsFromFile();
     $updatedStreets = Street::addMaintenanceDataFromFile('http://puhdistussuunnitelmat.fi/helsinki/api/export.csv');
     $count = count($updatedStreets);
     if ($count === 0) {
         $this->assertEquals(0, $count);
     } else {
         $this->seeInDatabase('streets', ['name' => $updatedStreets[$count - 1]->name, 'next_maintenance' => $updatedStreets[$count - 1]->next_maintenance]);
     }
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     //read file
     $file = fopen(base_path('kadut'), 'r') or die('unable to open file');
     //
     if ($file) {
         while (($line = fgets($file)) !== false) {
             //add each street to table
             $line = preg_replace("/\r|\n/", "", $line);
             Street::create(['name' => $line]);
         }
         fclose($file);
     }
 }
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     // $streets_quan2 = ['1', '10', '10F', '11', '12', '13', '14', '15', '16', '17', '18', '19', '2', '20', '21', '21A', '22', '23', '24', '25', '26', '27', '28', '29', '3', '30', '30B', '31', '31A', '31B', '31C', '31D', '31E', '31F', '32', '33', '34', '35', '36', '37A', '38', '39', '4', '40', '41', '41B', '42', '43', '44', '45', '46', '47', '49', '5', '50', '51', '52', '53', '54', '55', '56', '58', '59', '6', '60', '61', '62', '63', '64', '65', '66', '68', '7', '7A', '7C', '8', '80', '83', '8A', '8G', '8K', '9', '95', 'A2', 'An Phú', 'An Phú Đông 27', 'An Trang', 'B', 'Bát Nàn', 'Bình An', 'Bình Trưng', 'Bùi Tá Hán', 'Cao Đức Lân', 'Đại Lộ Đông Tây', 'Đàm Văn Lễ', 'Đặng Hữu Phổ', 'Đặng Như Mai', 'Đặng Tiến Đông', 'Đỗ Pháp Thuận', 'Đỗ Quang', 'Đỗ Xuân Hợp', 'Đoàn Hữu Trưng', 'Đông Hưng Thuận 6', 'Đồng Quốc Bình', 'Đồng Văn Cống', 'Dư Hàng Kênh', 'Đường A', 'Đường C', 'Dương Văn An', 'G1', 'Giang Văn Minh', 'H', 'Hà Quang', 'Hàn Giang', 'Hậu Lân', 'Hiệp Thành 13', 'Hương lộ 62', 'K', 'KP3', 'Lâm Quang Ký', 'Lê Đình Quản', 'Lê Đức Thọ', 'Lê Hiến Mai', 'Lê Hồng Phong', 'Lê Hữu Kiều', 'Lê Phụng Hiểu', 'Lê Thước', 'Lê Văn Miến', 'Lê Văn Thịnh', 'Lộc Hòa', 'Lương Định Của', 'Lý Ông Trọng', 'Mai Chí Thọ', 'Mương Khai', 'Ngô Quang Huy', 'Nguyễn Án', 'Nguyễn Bá Huân', 'Nguyễn Bá Lân', 'Nguyễn Cừ', 'Nguyễn Đăng Đạo', 'Nguyễn Đăng Giai', 'Nguyễn Địa Lô', 'Nguyễn Đôn Tiết', 'Nguyễn Duy Hiệu', 'Nguyễn Duy Trinh', 'Nguyễn Hoàng', 'Nguyễn Hương', 'Nguyễn Huy Chương', 'Nguyễn Khanh', 'Nguyễn Khoa Đăng', 'Nguyễn Lương Dĩ', 'Nguyễn Quang Bật', 'Nguyễn Quý Cảnh', 'Nguyễn Quý Đức', 'Nguyễn Thanh Sơn', 'Nguyễn Thị Định', 'Nguyễn Trọng Quân', 'Nguyễn Trung Nguyệt', 'Nguyễn Tư Nghiêm', 'Nguyễn Tuyển', 'Nguyễn Ư Dĩ', 'Nguyễn Văn Giáp', 'Nguyễn Văn Hưởng', 'Nguyễn Văn Kỉnh', 'Phạm Công Trứ', 'Phạm Đôn Lễ', 'Phạm Hy Lượng', 'Phạm Thận Duật', 'Phan Bá Vành', 'Phan Văn Đáng', 'Quách Giai', 'Quốc Hương', 'Quốc lộ 1A', 'Song Hành', 'Sử Hy Nhan', 'Tạ Hiện', 'Tân Chánh Hiệp 16', 'Tân Lập 2', 'Tân Thới Hiệp 10', 'Thái Thuận', 'Thân Văn Nhiếp', 'Thạnh Lộc 27', 'Thạnh Mỹ Bắc', 'Thạnh Mỹ Lợi', 'Thạnh Mỹ Nam', 'Thạnh Xuân 13', 'Thạnh Xuân 21', 'Thảo Điền', 'Thích Mật Thể', 'Tỉnh Lộ 10', 'Tỉnh lộ 25B', 'Tống Hữu Định', 'Trại Gà', 'Trần Lưu', 'Trần Lựu', 'Trần Não', 'Trần Ngọc Diện', 'Trần Quang Đạo', 'Trích Sài', 'Trịnh Khắc Lập', 'Trúc Đường', 'Trương Gia Mô', 'Trương Văn Bang', 'Trương Văn Đa', 'Vạn Kiếp', 'Vành Đai 2', 'Vành Đai Đông', 'Võ Trường Toản', 'Võ Văn Kiệt', 'Vũ Phương Đế', 'Vũ Tông Phan', 'Xa Lộ Hà Nội', 'Xuân Thủy'];
     $streets_quan2 = ['An Phú', 'An Phú Đông 27', 'An Trang', 'B', 'Bát Nàn', 'Bình An', 'Bình Trưng', 'Bùi Tá Hán', 'Cao Đức Lân', 'Đại Lộ Đông Tây', 'Đàm Văn Lễ', 'Đặng Hữu Phổ', 'Đặng Như Mai', 'Đặng Tiến Đông', 'Đỗ Pháp Thuận', 'Đỗ Quang', 'Đỗ Xuân Hợp', 'Đoàn Hữu Trưng', 'Đông Hưng Thuận 6', 'Đồng Quốc Bình', 'Đồng Văn Cống', 'Dư Hàng Kênh', 'Đường A', 'Đường C', 'Dương Văn An', 'G1', 'Giang Văn Minh', 'H', 'Hà Quang', 'Hàn Giang', 'Hậu Lân', 'Hiệp Thành 13', 'Hương lộ 62', 'K', 'KP3', 'Lâm Quang Ký', 'Lê Đình Quản', 'Lê Đức Thọ', 'Lê Hiến Mai', 'Lê Hồng Phong', 'Lê Hữu Kiều', 'Lê Phụng Hiểu', 'Lê Thước', 'Lê Văn Miến', 'Lê Văn Thịnh', 'Lộc Hòa', 'Lương Định Của', 'Lý Ông Trọng', 'Mai Chí Thọ', 'Mương Khai', 'Ngô Quang Huy', 'Nguyễn Án', 'Nguyễn Bá Huân', 'Nguyễn Bá Lân', 'Nguyễn Cừ', 'Nguyễn Đăng Đạo', 'Nguyễn Đăng Giai', 'Nguyễn Địa Lô', 'Nguyễn Đôn Tiết', 'Nguyễn Duy Hiệu', 'Nguyễn Duy Trinh', 'Nguyễn Hoàng', 'Nguyễn Hương', 'Nguyễn Huy Chương', 'Nguyễn Khanh', 'Nguyễn Khoa Đăng', 'Nguyễn Lương Dĩ', 'Nguyễn Quang Bật', 'Nguyễn Quý Cảnh', 'Nguyễn Quý Đức', 'Nguyễn Thanh Sơn', 'Nguyễn Thị Định', 'Nguyễn Trọng Quân', 'Nguyễn Trung Nguyệt', 'Nguyễn Tư Nghiêm', 'Nguyễn Tuyển', 'Nguyễn Ư Dĩ', 'Nguyễn Văn Giáp', 'Nguyễn Văn Hưởng', 'Nguyễn Văn Kỉnh', 'Phạm Công Trứ', 'Phạm Đôn Lễ', 'Phạm Hy Lượng', 'Phạm Thận Duật', 'Phan Bá Vành', 'Phan Văn Đáng', 'Quách Giai', 'Quốc Hương', 'Quốc lộ 1A', 'Song Hành', 'Sử Hy Nhan', 'Tạ Hiện', 'Tân Chánh Hiệp 16', 'Tân Lập 2', 'Tân Thới Hiệp 10', 'Thái Thuận', 'Thân Văn Nhiếp', 'Thạnh Lộc 27', 'Thạnh Mỹ Bắc', 'Thạnh Mỹ Lợi', 'Thạnh Mỹ Nam', 'Thạnh Xuân 13', 'Thạnh Xuân 21', 'Thảo Điền', 'Thích Mật Thể', 'Tỉnh Lộ 10', 'Tỉnh lộ 25B', 'Tống Hữu Định', 'Trại Gà', 'Trần Lưu', 'Trần Lựu', 'Trần Não', 'Trần Ngọc Diện', 'Trần Quang Đạo', 'Trích Sài', 'Trịnh Khắc Lập', 'Trúc Đường', 'Trương Gia Mô', 'Trương Văn Bang', 'Trương Văn Đa', 'Vạn Kiếp', 'Vành Đai 2', 'Vành Đai Đông', 'Võ Trường Toản', 'Võ Văn Kiệt', 'Vũ Phương Đế', 'Vũ Tông Phan', 'Xa Lộ Hà Nội', 'Xuân Thủy'];
     $quan2 = District::where('key', 'quan-2')->get();
     $quan2_id = 2;
     $quan2_name = 'Quận 2';
     if (is_null($quan2) || $quan2->count() == 0) {
         $quan2_id = $quan2_id[0]->id;
         $quan2_name = $quan2_id[0]->name;
     }
     foreach ($streets_quan2 as $key => $value) {
         $street = Street::create(['key' => Common::createKeyURL($value . ' ' . $quan2_name), 'name' => $value, 'district_id' => $quan2_id, 'meta_description' => 'Bán căn hộ đường phố ' . $value . ' ' . $quan2_name . ', sang nhượng căn hộ đường phố ' . $value . ' ' . $quan2_name . ', cho thuê căn hộ đường phố ' . $value . ' ' . $quan2_name, 'meta_keywords' => 'Bán căn hộ đường phố ' . $value . ' ' . $quan2_name . ', sang nhượng căn hộ đường phố ' . $value . ' ' . $quan2_name . ', cho thuê căn hộ đường phố ' . $value . ' ' . $quan2_name, 'priority' => $key, 'is_publish' => 1, 'created_by' => 'vankhoe', 'updated_by' => 'vankhoe']);
     }
 }
Пример #6
0
 public function edit($id)
 {
     try {
         // set database
         $database = Auth::user()->getDatabase();
         //change database
         $property = new Property();
         $property->changeConnection($database);
         $properties = Property::on($database)->where('id', $id)->paginate(1);
         $properties->load('owner', 'note');
         // get all streets
         $streets = Street::on($database)->orderBy('strStreetName', 'ASC')->lists('strStreetName', 'strStreetName');
         // pass searched string
         $search = $id;
         $count = 1;
     } catch (exception $e) {
         dd($e->getMessage());
     }
     return view('property', compact('properties', 'count', 'search', 'streets'));
 }
Пример #7
0
 /**
  * Generate an address for a location
  * @param $location
  * @return string
  */
 private function generateAddress($location)
 {
     $locationName = $location->locationKeyCode;
     $locationId = $location->id;
     $location = $this->location->findOrFail($locationId);
     $levelId = $location->level_id;
     $level = $this->level_building->findOrFail($levelId);
     $levelName = $level->levelName;
     $building_id = $level->building_id;
     $building = $this->building->findOrFail($building_id);
     $buildingName = $building->buildingKeyCode;
     $street_id = $building->street_id;
     $street = $this->street->findOrFail($street_id);
     $streetName = $street->streetKeyCode;
     $agent_id = $street->agent_id;
     $this->agent_id = $agent_id;
     //$agent = $this->agent->findOrFail($agent_id);
     $agentName = \App\Agent::where('user_id', '=', $agent_id)->first()->agentName;
     return $buildingName . $levelName . $locationName . "-" . $streetName . " ( " . $agentName . " ) ";
 }
Пример #8
0
 public function rolledit($id)
 {
     try {
         // set database
         $database = Auth::user()->getDatabase();
         //change database
         $property = new Property();
         $property->changeConnection($database);
         // search on street name
         $query = Property::on($database)->where('strOwners', $id)->orderby('strOwners', 'ASC')->get();
         $properties = Property::on($database)->where('strOwners', $id)->orderby('strOwners', 'ASC')->simplePaginate(1);
         // get relationship data
         $properties->load('owner', 'note');
         // get total records as simplepagination does not do this
         $count = $query->count();
         $search = $id;
         $streets = Street::on($database)->orderBy('strStreetName', 'ASC')->lists('strStreetName', 'strStreetName');
     } catch (exception $e) {
         dd($e->getMessage());
     }
     return view('property', compact('properties', 'count', 'search', 'streets'));
 }
Пример #9
0
 public function index(Request $request)
 {
     // set database
     $database = Auth::user()->getDatabase();
     //change database for Street
     $street = new Street();
     $street->changeConnection($database);
     //change database for Street
     $property = new Property();
     $property->changeConnection($database);
     // get inputs
     $Input = $request->input('input');
     $Select = $request->input('selected');
     //dd(   $streetInput,$streetSelect);
     // check if input or select
     // if input ignore select
     if (strlen($Input) > 0) {
         // search
         $search = $Input;
         $properties = Property::on($database)->like('strStreetName', $search)->orderby('strStreetName', 'ASC')->orderby('numStreetNo', 'ASC')->get();
     } else {
         // search
         $street = Street::on($database)->where('id', $Select)->first();
         $search = $street->strStreetName;
         $properties = Property::on($database)->where('strStreetName', $search)->orderby('strStreetName', 'ASC')->orderby('numStreetNo', 'ASC')->get();
     }
     Session::put('search', $Select);
     Session::put('controllerroute', '/street');
     // view properties
     // return with error if no result
     if ($properties->count()) {
         return view('streets', compact('properties', 'search'));
     } else {
         Session::flash('flash_message', '' . "No properties matching search criteria.");
         Session::flash('flash_type', 'alert-danger');
         return Redirect::back();
     }
 }
 /**
  * List Ward by District id ajax.
  */
 public function getStreetsByDistrict($district_id)
 {
     $streets = Street::where('district_id', $district_id)->orderBy('priority')->get();
     return $streets->toArray();
 }
 public function product_search(Request $request)
 {
     $this->setMetadata('Tìm kiếm tin đăng');
     $product_type_id = $request->input('product_type');
     $province_id = $request->input('province');
     $district_id = $request->input('district');
     $ward_id = $request->input('ward');
     $street_id = $request->input('street');
     $price_range_id = $request->input('price');
     $area_range_id = $request->input('area');
     $incense_type_id = $request->input('incense');
     $limit = Config::findByKey('rows_per_page_product')->first()->value;
     $searchDescription = "";
     $product_type = null;
     $province = null;
     $district = null;
     $ward = null;
     $street = null;
     $query = Product::query();
     try {
         if (isset($product_type_id) && $product_type_id != "") {
             $query->where('product_type_id', $product_type_id);
             $product_type = product_type::findOrFail($product_type_id);
             $searchDescription .= $product_type->name;
         }
         if (isset($province_id) && $province_id != "") {
             $query->where('province_id', $province_id);
             $province = Province::findOrFail($province_id);
             $searchDescription .= ", " . $province->name;
         }
         if (isset($district_id) && $district_id != "") {
             $query->where('district_id', $district_id);
             $district = District::findOrFail($district_id);
             $searchDescription .= ", " . $district->name;
         }
         if (isset($ward_id) && $ward_id != "") {
             $query->where('ward_id', $ward_id);
             $ward = Ward::findOrFail($ward_id);
             $searchDescription .= ", " . $ward->name;
         }
         if (isset($street_id) && $street_id != "") {
             $query->where('street_id', $street_id);
             $street = Street::findOrFail($street_id);
             $searchDescription .= ", " . $street->name;
         }
     } catch (Exception $e) {
     }
     $products = $query->paginate($limit);
     $product_types = Product_type::where('active', 1)->orderBy('priority')->orderBy('created_at', 'desc')->get();
     $hcmProvince = Province::findByKey('ho-chi-minh')->first();
     // dd($hcmProvince->id);
     $districtProduct = District::where('province_id', '=', $hcmProvince->id)->where('is_publish', 1)->orderBy('priority')->orderBy('created_at', 'desc')->get();
     return view('frontend.sites1.product_search', ['products' => $products, 'product_types' => $product_types, 'districtProduct' => $districtProduct, 'searchDescription' => $searchDescription]);
 }
 /**
  * Add maintenance data from file which is on external url
  * @param Array
  */
 public static function addMaintenanceDataFromFile($url = null)
 {
     $updatedStreets = [];
     if (is_null($url)) {
         return $updatedStreets;
     }
     //read file
     $file = static::readExternalApiData($url);
     if ($file) {
         while (!feof($file)) {
             //read lines
             $row = fgetcsv($file, 0, ",");
             // example line: 2016-01-22,"Mikael Lybeckin katu","20-2 ja 20 vp-2 vp",00250,60.1858333,24.9124984
             // a bit of cleaning up
             foreach ($row as $key => $value) {
                 $row[$key] = utf8_encode($value);
             }
             //update street
             // needs to be like, otherwise some characters might end up mess it
             // maybe another solution as well "Tarkk'ampujakatu" was the problematic
             $street = Street::where('name', 'like', $row[1])->first();
             if (!is_null($street)) {
                 $street->update(['next_maintenance' => $row[0], 'info' => $row[2], 'lat' => $row[4], 'lng' => $row[5]]);
                 $updatedStreets[] = $street;
             }
         }
         fclose($file);
     }
     return $updatedStreets;
 }
 /**
  * Execute the console command.
  *
  * @return mixed
  */
 public function handle()
 {
     $streets = Street::addMaintenanceDataFromFile('http://puhdistussuunnitelmat.fi/helsinki/api/export.csv');
 }
 public function saveAddress(Request $request, $territoryId = null, $addressId = null)
 {
     if (!$this->hasAccess($request)) {
         return Response()->json(['error' => 'Access denied.'], 500);
     }
     if (empty($territoryId)) {
         return ['error' => 'Territory not found', 'message' => 'Territory not found'];
     }
     if (Gate::denies('update-addresses')) {
         return Response()->json(['error' => 'Method not allowed'], 403);
     }
     if (!empty($addressId)) {
         try {
             $newAddress = $this->unTransform($request->all(), 'address');
             $address = Address::findOrFail($addressId);
             $street = Street::findOrFail($address->street_id)->first();
             // if(!$street->is_apt_building)
             // $newAddress['lat'] = 0;
             $data = $address->update($newAddress);
         } catch (Exception $e) {
             $data = ['error' => 'Address not updated', 'message' => $e->getMessage()];
         }
     } else {
         // dd($request->all());
         // dd($this->unTransform($request->all(), 'address'));
         try {
             // return ['data' => ['street_street' => empty($request->input('street_street')), 'all' => $request->all()]];
             $transformedData = $this->unTransform($request->all(), 'address');
             if (!empty($request->input('street_street'))) {
                 $transformedData['street'] = [['street' => $request->input('street_street'), 'isAptBuilding' => $request->input('street_isAptBuilding')]];
             }
             // return ['data' => $transformedData];
             $territory = Territory::findOrFail($territoryId);
             if (!empty($transformedData['street'])) {
                 $street = Street::where('street', $transformedData['street'][0]['street'])->first();
                 if (empty($street)) {
                     $street = Street::create($transformedData['street'][0]);
                 }
                 // $addressWithStreet = ($address && $street) ? $address->street()->associate($street) : $address;
                 $transformedData['street_id'] = $street ? $street->id : null;
             }
             $address = Address::where(['address' => $transformedData['address'], 'street_id' => $transformedData['street_id'], 'apt' => !empty($transformedData['apt']) ? $transformedData['apt'] : ''])->first();
             // Address alredy exist?
             if (!empty($address)) {
                 // If inactive, make it active
                 // dd($address);
                 if ($address['inactive']) {
                     $address['inactive'] = 0;
                     $data = $address->update(['inactive', $address['inactive']]);
                 }
                 // If in another territory?
                 if ($territoryId != $address->territory_id) {
                     $territoryBelongs = Territory::findOrFail($address->territory_id);
                     // Error: "This address belongs to territory number []"
                     return Response()->json(['error' => 'This address belongs to territory ' . $territoryBelongs->number . '. Please contact Admin about moving this address.', 'data' => ''], 202);
                 } else {
                     return Response()->json(['error' => 'This address already exists in this territory.', 'data' => ''], 202);
                 }
             } else {
                 $address = !empty($territory) ? $territory->addresses()->create($transformedData) : null;
             }
             $data = $address && !empty($transformedData['notes']) ? $address->notes()->create($transformedData['notes'][0]) : $address;
         } catch (Exception $e) {
             $data = ['error' => 'Address not added', 'message' => $e->getMessage()];
             // {"error":"SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '200-23' for key 'addresses_address_street_id_unique' (SQL: insert into `addresses` (`name`, `address`, `street_id`, `territory_id`, `updated_at`, `created_at`) values (Jean Marc, 200, 23, 34, 2016-01-14 18:36:49, 2016-01-14 18:36:49))"}
         }
     }
     return ['data' => $data];
 }
Пример #15
0
 /**
  * Show the application dashboard.
  *
  * @return \Illuminate\Http\Response
  */
 public function index()
 {
     // set database
     $database = Auth::user()->getDatabase();
     //change database
     $property = new Property();
     $property->changeConnection($database);
     $query1 = Property::on($database)->select([DB::raw('cast(dtmRegDate as date) as dd'), DB::raw('count(dtmRegDate) as sales'), DB::raw('max(strAmount) as high'), DB::raw('avg(strAmount) as avg')])->groupBy(DB::raw('Year(dd)'))->get();
     $min = $query1->min('dd');
     $max = $query1->max('dd');
     $dateStart = Carbon::createFromFormat('Y-m-d', $min);
     $dateEnd = Carbon::createFromFormat('Y-m-d', $max);
     $diffInYears = $dateStart->diffInYears($dateEnd, false);
     $Amin = Property::on($database)->min('strAmount');
     $Amax = Property::on($database)->max('strAmount');
     $sum = Property::on($database)->sum('strAmount');
     $avg = Property::on($database)->where('strAmount', '>', 0)->avg('strAmount');
     // dd($min,$max,$Amin,$Amax,$sum,$avg,$dateStart,$dateEnd,$diffInYears);
     $stocksTable = Lava::DataTable();
     // Lava::DataTable() if using Laravel
     $stocksTable->addStringColumn('Date')->addNumberColumn('Registered');
     //  ->addNumberColumn('Bond');
     // Random Data For Example
     foreach ($query1 as &$q) {
         //  echo  substr($q->dd,0,4).'    -    '. $q->sales;
         //  echo "<br>";
         $mdate = intval(substr($q->dd, 0, 4));
         if ($mdate > 2004) {
             // dd($q->dd);
             $stocksTable->addRow([$mdate, $q->sales]);
         }
     }
     // chart - price
     //-------------------------------------------------------------------
     $priceTable = Lava::DataTable();
     // Lava::DataTable() if using Laravel
     $priceTable->addStringColumn('Date')->addNumberColumn('Avg Price');
     foreach ($query1 as $key => $q) {
         //  echo  substr($q->dd,0,4).'    -    '. $q->sales;
         //  echo "<br>";
         $mdate = intval(substr($q->dd, 0, 4));
         if ($mdate > 2004) {
             $priceTable->addRow([$mdate, intval($q->avg)]);
         }
     }
     $c1 = Street::on($database)->count('id');
     $c2 = Complex::on($database)->count('id');
     $c3 = Property::on($database)->select('id')->groupBy('strKey')->get()->count();
     $c4 = Property::on($database)->count('id');
     $votes = Lava::DataTable();
     $votes->addStringColumn('Food Poll')->addNumberColumn('Count')->addRow(['Streets', $c1])->addRow(['Complexes', $c2])->addRow(['Properties', $c3])->addRow(['Owners', $c4]);
     // chart -age
     //-------------------------------------------------------------------
     $queryAge = Property::on($database)->select('strKey', 'strSellers', 'dtmRegDate')->distinct('strIdentity')->OrderBy('dtmRegDate')->GroupBy('dtmRegDate')->get();
     $queryAge = $queryAge->toArray();
     // dd($queryAge);
     $ageTable = Lava::DataTable();
     // Lava::DataTable() if using Laravel
     $ageTable->addStringColumn('Date')->addNumberColumn('Avg Age');
     $agedate = array();
     for ($x = 0; $x <= sizeof($queryAge) - 1; $x++) {
         $seller = substr($queryAge[$x]['strSellers'], -13);
         if (is_numeric($seller) && strlen(ltrim(rtrim($seller))) == 13) {
             $born = substr($seller, 0, 2);
             $age = 116 - $born;
             $mdate = intval(substr($queryAge[$x]['dtmRegDate'], 0, 4));
             //  echo $queryAge[$x]['strKey'] . "   -   " . $mdate . "  -  " . $seller . ' - ' . $age . " <br>";
             $agegate = array_push($agedate, ['date' => $mdate, 'age' => $age]);
         }
     }
     $collection = collect($agedate);
     $coll = $collection->groupBy('date');
     //dd($coll);
     $ageTable->addRow([$mdate, $age]);
     //  dd($queryAge, $queryAge->count(), $seller);
     $agechart = Lava::LineChart('Ages', $ageTable, ['title' => "Sellers Age ", 'colors' => ['Cyan']]);
     $chart = Lava::LineChart('Registrations', $stocksTable, ['title' => "Properties registered ", 'colors' => ['blue']]);
     $chart2 = Lava::LineChart('Prices', $priceTable, ['title' => "Average price ", 'colors' => ['green', 'red'], 'vAxis' => ['format' => 'R###,###,###,###']]);
     $chart3 = Lava::BarChart('Votes', $votes, ['title' => "Totals ", 'colors' => ['DeepSkyBlue']]);
     //$chart3 = Lava::BarChart('Votes', $votes);
     return view('dashboard');
 }
Пример #16
0
 /**
  * Returns the name of a street
  * @param $id
  * @return mixed
  */
 public function getStreetName($id)
 {
     $street = $this->street->where('id', '=', $id)->first();
     return $street->streetKeyName;
 }
 public function streets()
 {
     $streets = Street::all();
     return response()->json($streets);
 }
Пример #18
0
 public function add(Request $request)
 {
     // set database
     $database = Auth::user()->getDatabase();
     //change database
     $property = new Property();
     $property->changeConnection($database);
     // input street name
     $newstreet = $request->input('street');
     //dd($newstreet,$request);
     // check if street exists
     $query = Street::on($database)->where('strStreetName', $newstreet)->first();
     //dd(strlen($newstreet));
     if (is_null($query) && strlen($newstreet) > 0) {
         try {
             Session::flash('flash_message', '' . "Ok to add as not found");
             Session::flash('flash_type', 'alert-success');
         } catch (exception $e) {
             Session::flash('flash_message', '' . $e->getMessage());
             Session::flash('flash_type', 'alert-danger');
         }
     } else {
         Session::flash('flash_message', '' . "Street already exists.");
         Session::flash('flash_type', 'alert-danger');
     }
     return Redirect::back();
 }
 public function __construct()
 {
     $this->user = Auth::user();
     $this->streets = Street::all();
 }
 protected static function restoreTerritory($data)
 {
     $territory = Territory::where('number', $data->terrNumber)->first();
     // var_dump($territory['id']); exit;
     if (empty($territory)) {
         $territory = Territory::create(['number' => $data->terrNumber, 'location' => $data->street]);
     }
     // var_dump($territory['id']); exit;
     if (!empty($territory['id'])) {
         $bad = ['STREET', 'COURT', 'PLACE', '(PARTIE SUD)', '(PARTIE NORD)', '(BILDING)', '(BUILDING)'];
         $good = ['ST', 'CT', 'PL', '', '', '', ''];
         foreach ($data->addresses as $i => $add) {
             $streetEntry = str_replace($bad, $good, strtoupper(Address::getStreet($add->address)));
             $street = Street::where('street', $streetEntry)->first();
             // var_dump($street); exit;
             if (empty($street)) {
                 /*
                 				$street = Street::create([
                 					'street' => $streetEntry,
                 					'is_apt_building' => 0
                 				]);
                 */
                 // else
                 var_dump($streetEntry);
             }
             // var_dump($street); exit;
             $addressEntry = strtoupper(trim(str_replace($streetEntry, '', $add->address)));
             $address = Address::where(['address' => $addressEntry, 'street_id' => $street['id']])->first();
             if (empty($address)) {
                 /*
                 				$address = Address::create([
                 					'territory_id' => $territory['id'],
                 					'street_id' => $street['id'],
                 					'address' => $addressEntry,
                 					'name' => $add->name,
                 					'phone' => $add->phone
                 				]);
                 */
                 // else
                 var_dump([$addressEntry, $address]);
             }
             // var_dump($address); exit;
         }
     }
 }