diff --git a/app/Http/Controllers/ReadingController.php b/app/Http/Controllers/ReadingController.php new file mode 100644 index 0000000..bb2a77b --- /dev/null +++ b/app/Http/Controllers/ReadingController.php @@ -0,0 +1,11 @@ +belongsTo('App\Models\Sensor'); + } } diff --git a/app/Models/Sensor.php b/app/Models/Sensor.php new file mode 100644 index 0000000..ac4c10e --- /dev/null +++ b/app/Models/Sensor.php @@ -0,0 +1,32 @@ +belongsTo('App\Models\User'); + } + + public function readings() + { + return $this->hasMany('App\Models\Reading'); + } +} diff --git a/app/Models/User.php b/app/Models/User.php index 43c7ab1..7a85376 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -37,4 +37,9 @@ class User extends Authenticatable protected $casts = [ 'email_verified_at' => 'datetime', ]; + + public function sensors() + { + return $this->hasMany('App\Models\Sensor'); + } } diff --git a/database/migrations/2020_09_11_205805_create_temperatures_table.php b/database/migrations/2020_09_13_170209_create_sensors_table.php similarity index 63% rename from database/migrations/2020_09_11_205805_create_temperatures_table.php rename to database/migrations/2020_09_13_170209_create_sensors_table.php index b065903..5dabdb2 100644 --- a/database/migrations/2020_09_11_205805_create_temperatures_table.php +++ b/database/migrations/2020_09_13_170209_create_sensors_table.php @@ -4,7 +4,7 @@ use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; -class CreateTemperaturesTable extends Migration +class CreateSensorsTable extends Migration { /** * Run the migrations. @@ -13,13 +13,15 @@ class CreateTemperaturesTable extends Migration */ public function up() { - Schema::create('temperatures', function (Blueprint $table) { + Schema::create('sensors', function (Blueprint $table) { $table->id(); - $table->float('temperature', 2, 2); - $table->boolean('sensor_status'); + $table->foreignId('user_id'); + $table->boolean('status'); $table->float('longitude', 8, 6); $table->float('latitude', 8, 6); $table->timestamps(); + + $table->foreign('user_id')->references('id')->on('users'); }); } @@ -30,6 +32,6 @@ class CreateTemperaturesTable extends Migration */ public function down() { - Schema::dropIfExists('temperatures'); + Schema::dropIfExists('sensors'); } } diff --git a/database/migrations/2020_09_13_170424_create_readings_table.php b/database/migrations/2020_09_13_170424_create_readings_table.php new file mode 100644 index 0000000..ca2e970 --- /dev/null +++ b/database/migrations/2020_09_13_170424_create_readings_table.php @@ -0,0 +1,36 @@ +id(); + $table->foreignId('sensor_id'); + $table->boolean('type'); + $table->float('value', 2, 2); + $table->timestamps(); + + $table->foreign('sensor_id')->references('id')->on('sensors'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('readings'); + } +}