Example #1
0
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store(Request $request)
 {
     $rules = array('name' => 'required', 'agent' => 'required', 'operationCertificate' => 'required', 'address' => 'required');
     $this->validate($request, $rules);
     $farm = new \App\Farm($request->all());
     $id_users = Auth::id();
     $farm->idUser = $id_users;
     $farm->latitude = "120";
     $farm->longitude = "120";
     if (Input::hasFile('patent')) {
         $file = Input::file('patent');
         //Creamos una instancia de la libreria instalada
         $patent = \Image::make(\Input::file('patent'));
         //Ruta donde queremos guardar las imagenes
         $path = 'img/patent/';
         // Cambiar de tamaño
         $patent->resize(450, 450);
         $patent->save($path . $file->getClientOriginalName());
         $farm->patent = $file->getClientOriginalName();
         $farm->save();
         return redirect()->route('farm.index');
     }
     $patent = 'patent';
     $default = Defoult::where('name', $patent)->pluck('image');
     $farm->patent = $default;
     //dd($farm->patent);
     $farm->save();
     return redirect()->route('farm.index');
 }
 /**
  * Display a listing of the resource.
  *
  * @return Response
  */
 public function index(Request $request)
 {
     $activity = array();
     $farm[] = Farm::with('plot.plant')->find($request->input('farmID'));
     $i = 0;
     foreach ($farm as $plot) {
         foreach ($plot->plot as $plot) {
             foreach ($plot->plant as $plant) {
                 if (Activity::with('activityType')->where('plant_id', '=', $plant->id)->first() != null) {
                     $tempActivity = Activity::with('activityType', 'plant.plot', 'user')->where('plant_id', '=', $plant->id)->get()->toArray();
                     foreach ($tempActivity as $temp) {
                         $activity[$i] = $temp;
                         $i++;
                     }
                 }
             }
         }
         $i++;
     }
     usort($activity, function ($a, $b) {
         $rdiff = strcmp($b['date'], $a['date']);
         if ($rdiff) {
             return $rdiff;
         }
         return strcmp($b['time'], $a['time']);
     });
     return $activity;
 }
 /**
  * Display a listing of the resource.
  *
  * @return \Illuminate\Http\Response
  */
 public function index(Request $request)
 {
     $taskCheck = TaskList::all();
     foreach ($taskCheck as $task) {
         $date = strtotime($task->date . ' ' . $task->time);
         $date2 = date("Y-m-d h:i:s");
         $date1 = strtotime($date2);
         if ($date1 > $date) {
             if ($task->status == "Remaining") {
                 $task->status = "Late";
                 $task->update();
             }
         }
     }
     $i = 0;
     $onlyTask = array();
     $farmID = $request->input('id');
     $farmList = Farm::with("plot.plant.taskList.workerMember")->where("id", "=", $farmID)->get();
     foreach ($farmList as $farm) {
         foreach ($farm->plot as $plot) {
             foreach ($plot->plant as $plant) {
                 foreach ($plant->taskList as $task) {
                     $date = date("Y-m-d");
                     if (strtotime($task->date) > strtotime($date . "- 7 days")) {
                         $onlyTask[$i] = $task;
                         $onlyTask[$i]->plantName = $plant->name;
                         $onlyTask[$i]->plotName = $plot->name;
                         $i++;
                     }
                 }
             }
         }
     }
     return $onlyTask;
 }
 public function testIndex()
 {
     $Activity1 = new \App\activity();
     $Activity1->description = 'Test';
     $Activity1->date = '2015-10-05';
     $Activity1->time = '00:00:00';
     $Activity1->plant_id = \App\Plant::where("name", "=", "TestActivityPlant")->first()->id;
     $Activity1->weather = 'few cloud';
     $Activity2 = new \App\activity();
     $Activity2->description = 'Test2';
     $Activity2->date = '2015-10-05';
     $Activity2->time = '00:00:00';
     $Activity2->plant_id = \App\Plant::where("name", "=", "TestActivityPlant")->first()->id;
     $Activity2->weather = 'rain';
     if (Activity::where("plant_id", "=", \App\Plant::where("name", "=", "TestActivityPlant")->first()->id)->count() <= 2) {
         $Activity1->save();
         $Activity2->save();
     }
     $Activity1->toArray();
     $ActivityController = new \App\Http\Controllers\activityController();
     $farmID = array('farmID' => \App\Farm::where("name", "=", "TestActivityFarm")->first()->id);
     $request = new \Illuminate\Http\Request();
     $request->replace($farmID);
     $test = $ActivityController->index($request);
     print_r($test[0] == $Activity2);
     $this->assertEquals($test[0], $Activity2->toArray());
     $this->assertEquals($test[1], $Activity1->toArray());
     $request->replace(null);
     $test2 = $ActivityController->index($request);
     $this->assertEquals(null, $test2);
 }
 public function testDestroyFarm()
 {
     $id = \App\Farm::where("name", "like", "test")->first()->id;
     $farmController = new \App\Http\Controllers\farmController();
     $request = new \Illuminate\Http\Request();
     $farmController->destroy($id, $request);
     $this->assertNull($farmController->show($id));
     $this->assertNull($farmController->destroy(null, $request));
 }
Example #6
0
 public function run()
 {
     DB::table('farms')->delete();
     ////NEW LOAN #1
     Farm::create(['loan_id' => 1, 'fsn' => '123', 'county_id' => 1317, 'owner' => 'John Doe', 'perm_to_insure' => 0, 'share_rent' => 20, 'IR' => 1000, 'NI' => 2350, 'gov_pgm' => 'PLC']);
     Farm::create(['loan_id' => 1, 'fsn' => '456', 'county_id' => 1310, 'owner' => 'Jim Smith', 'perm_to_insure' => 0, 'IR' => 0, 'NI' => 50, 'gov_pgm' => 'PLC']);
     Farm::create(['loan_id' => 1, 'fsn' => '567', 'county_id' => 1310, 'owner' => 'Elroy Tate', 'perm_to_insure' => 1, 'IR' => 200, 'NI' => 0, 'gov_pgm' => 'PLC']);
     Farm::create(['loan_id' => 1, 'fsn' => '789', 'county_id' => 1310, 'owner' => 'Elroy Tate', 'perm_to_insure' => 1, 'share_rent' => 0, 'cash_rent' => 60000, 'waived' => 40000, 'when_due' => '33% 4/1/15', 'IR' => 400, 'NI' => 0, 'gov_pgm' => 'PLC']);
     ////NEW LOAN #2
     Farm::create(['loan_id' => 2, 'fsn' => '321', 'county_id' => 1317, 'owner' => 'John Doe', 'perm_to_insure' => 0, 'share_rent' => 20, 'IR' => 0, 'NI' => 4347.4, 'gov_pgm' => 'PLC']);
 }
Example #7
0
 public function update($id)
 {
     // save updated
     $record = $this->records->find($id);
     if (!$record) {
         Farm::create(Input::all());
         return $this->respond($record);
     }
     $record->fill(Input::all())->save();
     return $this->respond($record);
 }
 public function testRegister()
 {
     $this->action('POST', 'userController@register', array('username' => "testReg", "password" => "testReg", "name" => "Reg", "lastname" => "Reg", "phoneNumber" => "083000000", "email" => "*****@*****.**", "role" => "test"));
     $this->seeInDatabase("users", array('username' => "testReg"));
     $this->action('POST', 'userController@register', array('username' => "testReg", "password" => "testReg", "name" => "Reg", "lastname" => "Reg", "phoneNumber" => "083000000", "email" => "*****@*****.**", "role" => "test"));
     $this->assertResponseStatus(502);
     $this->action('POST', 'userController@register', array('username' => "testReg2", "password" => "testReg", "name" => "Reg", "lastname" => "Reg", "farmID" => \App\Farm::where("name", "=", "TestActivityFarm")->first()->id * 100 + 320001, "phoneNumber" => "083000000", "email" => "*****@*****.**", "role" => "test"));
     $this->seeInDatabase("users", array('username' => "testReg2"));
     $this->action('POST', 'userController@register', array('username' => "testReg2", "password" => "testReg", "name" => "Reg", "lastname" => "Reg", "farmID" => 1, "phoneNumber" => "083000000", "email" => "*****@*****.**", "role" => "test"));
     $this->assertResponseStatus(502);
 }
 public function testUpdatePlot()
 {
     $id = \App\Plot::where('name', 'like', 'test')->first()->id;
     $farmId = \App\Farm::where("name", "like", "TestActivityFarm")->first()->id;
     $plot = array('name' => 'Test', 'DOB' => '2015-07-30', 'description' => 'Test plot 2', 'farm_id' => $farmId);
     $plotController = new \App\Http\Controllers\plotController();
     $request = new \Illuminate\Http\Request();
     $request->replace($plot);
     $plotController->update($id, $request);
     $this->seeInDatabase('plot', $plot);
 }
 public function setMinMaxMonitor(Request $request)
 {
     $id = $request->input('id');
     if ($id != null) {
         $minMaxMonitor = MinMaxMonitor::find($id);
     } else {
         $minMaxMonitor = new MinMaxMonitor();
     }
     $minMaxMonitor->plant_id = $request->input('plant_id');
     $minMaxMonitor->minHumidityPercentage = $request->input('minHumidityPercentage');
     $minMaxMonitor->maxHumidityPercentage = $request->input('maxHumidityPercentage');
     $minMaxMonitor->minCelsius = $request->input('minCelsius');
     $minMaxMonitor->maxCelsius = $request->input('maxCelsius');
     $minMaxMonitor->minSoilMoisture = $request->input('minSoilMoisture');
     $minMaxMonitor->maxSoilMoisture = $request->input('maxSoilMoisture');
     $minMaxMonitor->minLux = $request->input('minLux');
     $minMaxMonitor->maxLux = $request->input('maxLux');
     if ($request->input('sensor_id') == null) {
         $device = \App\SensingDevice::where("device_id", "=", $request->input('deviceID'))->first();
         $sensor = \App\Sensor::where("sensingDevice_id", "=", $device->id)->first();
     } else {
         $sensor = \App\Sensor::where("id", "=", $request->input('sensor_id'))->first();
     }
     $minMaxMonitor->sensor_id = $sensor->id;
     if ($request->input('sensor_id') == null) {
         $minMaxMonitor->save();
         $member = Farm::find($request->input('farm_id'))->users()->get();
         foreach ($member as $person) {
             $minMaxMonitor = MinMaxMonitor::find($minMaxMonitor->id);
             $minMaxMonitor->user()->attach($person->id);
         }
     } else {
         $minMaxMonitor->update();
     }
     return $minMaxMonitor;
 }
Example #11
0
 public function destroy($id)
 {
     Farm::find($id)->delete();
     $farms = Farm::orderBy('farm')->paginate(env('FARM_PAGINATION_MAX'));
     return view('farms.index')->with('farms', $farms);
 }
Example #12
0
 public function getTop3Farm(Request $request)
 {
     $farmID = $request->input('id');
     $farm = Farm::where("id", "=", $farmID)->with("plot.plant.taskList.workerMember")->first();
     $taskUse = array();
     $i = 0;
     foreach ($farm->plot as $plot) {
         foreach ($plot->plant as $plant) {
             foreach ($plant->taskList as $task) {
                 if ($task->status == "Done") {
                     foreach ($task->workerMember as $worker) {
                         $taskUse[$i] = $worker;
                         $i++;
                     }
                 }
             }
         }
     }
     $member = array();
     $k = 0;
     $defaultID = 0;
     $count = 0;
     for ($j = 0; $j < sizeof($taskUse); $j++) {
         $member[$k] = $taskUse[$j];
         $k++;
     }
     usort($member, function ($a, $b) {
         return strcmp($b['id'], $a['id']);
     });
     $l = 0;
     $memberResult = array();
     for ($j = 0; $j < sizeof($member); $j++) {
         if ($j == 0) {
             $memberResult[$l] = $member[$j];
             $memberResult[$l]->count = 0;
             $defaultID = $member[$j]->id;
         } else {
             if ($member[$j]->id != $defaultID) {
                 $memberResult[$l]->count = $count;
                 $l++;
                 $memberResult[$l] = $member[$j];
                 $defaultID = $member[$j]->id;
                 $count = 0;
             }
         }
         if ($j == sizeof($member) - 1) {
             $count++;
             $memberResult[$l]->count = $count;
         }
         $count++;
     }
     usort($memberResult, function ($a, $b) {
         return strcmp($b['count'], $a['count']);
     });
     $output = array_slice($memberResult, 0, 3);
     return $output;
 }
Example #13
0
 public function testMockObject()
 {
     if (\App\Farm::where('name', '=', 'TestActivityFarm')->count() == 0) {
         $Farm = new \App\Farm();
         $Farm->name = 'TestActivityFarm';
         $Farm->description = 'TestActivityFarm';
         $Farm->address = 'CAMT';
         $Farm->Latitude = 18.800474;
         $Farm->Longitude = 98.950507;
         $Farm->save();
         $Plot = new \App\Plot();
         $Plot->name = 'TestActivityPlot';
         $Plot->farm_id = $Farm->id;
         $Plot->description = 'Test plot';
         $Plot->DOB = '2015-01-01';
         $Plot->save();
         $Plant = new \App\Plant();
         $Plant->name = 'TestActivityPlant';
         $Plant->type = 'Vegetable';
         $Plant->DOB = '2015-01-01';
         $Plant->harvestDay = 30;
         $Plant->plot_id = $Plot->id;
         $Plant->save();
         $User = new \App\User();
         $User->username = '******';
         $User->password = Hash::make("testAuth");
         $User->name = 'Auth';
         $User->lastname = 'Auth';
         $User->phoneNumber = '054000000';
         $User->email = '*****@*****.**';
         $User->role = 'test';
         $User->save();
         $Device = new \App\SensingDevice();
         $Device->device_id = "test10test";
         $Device->plot_id = $Plot->id;
         $Device->save();
         $Sensor = new \App\Sensor();
         $Sensor->name = "basic package";
         $Sensor->sensingDevice_id = $Device->id;
         $Sensor->save();
         $Task1 = new \App\TaskList();
         $Task1->description = "TestTask";
         $Task1->pictureLocation = "Temp/task.jpg";
         $Task1->status = "Remaining";
         $Task1->date = "2015-12-10";
         $Task1->time = "18:00:00";
         $Task1->plant_id = $Plant->id;
         $Task1->user_id = $User->id;
         $Task1->save();
         $Task1->workerMember()->attach($User->id);
         $Task2 = new \App\TaskList();
         $Task2->description = "TestTask2";
         $Task2->pictureLocation = "Temp/task.jpg";
         $Task2->status = "Late";
         $Task2->date = "2015-12-10";
         $Task2->time = "20:00:00";
         $Task2->plant_id = $Plant->id;
         $Task2->user_id = $User->id;
         $Task2->save();
         $Task2->workerMember()->attach($User->id);
         $MinMaxMonitor = new \App\MinMaxMonitor();
         $MinMaxMonitor->minHumidityPercentage = 10;
         $MinMaxMonitor->maxHumidityPercentage = 30;
         $MinMaxMonitor->minCelsius = 15;
         $MinMaxMonitor->maxCelsius = 30;
         $MinMaxMonitor->minSoilMoisture = 500;
         $MinMaxMonitor->maxSoilMosture = 1024;
         $MinMaxMonitor->minLux = 50;
         $MinMaxMonitor->maxLux = 10000;
         $MinMaxMonitor->sensor_id = $Sensor->id;
         $MinMaxMonitor->plant_id = $Plant->id;
         $MinMaxMonitor->save();
         $MinMaxMonitor->user()->attach($User->id);
     }
 }
Example #14
0
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function destroy($id, Request $request)
 {
     $username = $request->input('username');
     if ($id == null) {
         return null;
     }
     Farm::find($id)->delete();
     if ($username != null) {
         $user = User::where("username", "=", $username)->first();
         $user->farm()->detach($id);
     }
     return $id;
 }