ADD: municipality
This commit is contained in:
parent
fae8979532
commit
7a5bf3a2a0
72
app/Http/Controllers/Repuve/MunicipalityController.php
Normal file
72
app/Http/Controllers/Repuve/MunicipalityController.php
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
<?php namespace App\Http\Controllers\Repuve;
|
||||||
|
/**
|
||||||
|
* @copyright (c) 2025 Notsoweb Software (https://notsoweb.com) - All Rights Reserved
|
||||||
|
*/
|
||||||
|
|
||||||
|
use App\Models\Municipality;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use App\Http\Controllers\Controller;
|
||||||
|
use Notsoweb\ApiResponse\Enums\ApiResponse;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Descripción
|
||||||
|
*
|
||||||
|
* @author Moisés Cortés C. <moises.cortes@notsoweb.com>
|
||||||
|
*
|
||||||
|
* @version 1.0.0
|
||||||
|
*/
|
||||||
|
class MunicipalityController extends Controller
|
||||||
|
{
|
||||||
|
public function index()
|
||||||
|
{
|
||||||
|
$municipalities = Municipality::all();
|
||||||
|
|
||||||
|
return ApiResponse::OK->response([
|
||||||
|
'data' => $municipalities,
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function store(Request $request)
|
||||||
|
{
|
||||||
|
$request->validate([
|
||||||
|
'code' => 'required|unique:municipalities,code',
|
||||||
|
'name' => 'required|string',
|
||||||
|
]);
|
||||||
|
|
||||||
|
$municipality = Municipality::create([
|
||||||
|
'code' => $request->input('code'),
|
||||||
|
'name' => $request->input('name'),
|
||||||
|
]);
|
||||||
|
|
||||||
|
return ApiResponse::CREATED->response([
|
||||||
|
'data' => $municipality,
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function update(Request $request, $id)
|
||||||
|
{
|
||||||
|
$municipality = Municipality::findOrFail($id);
|
||||||
|
|
||||||
|
$request->validate([
|
||||||
|
'code' => 'required|unique:municipalities,code,' . $municipality->id,
|
||||||
|
'name' => 'required|string',
|
||||||
|
]);
|
||||||
|
|
||||||
|
$municipality->update([
|
||||||
|
'code' => $request->input('code'),
|
||||||
|
'name' => $request->input('name'),
|
||||||
|
]);
|
||||||
|
|
||||||
|
return ApiResponse::OK->response([
|
||||||
|
'data' => $municipality,
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function destroy($id)
|
||||||
|
{
|
||||||
|
$municipality = Municipality::findOrFail($id);
|
||||||
|
$municipality->delete();
|
||||||
|
|
||||||
|
return ApiResponse::NO_CONTENT->response();
|
||||||
|
}
|
||||||
|
}
|
||||||
22
app/Models/Municipality.php
Normal file
22
app/Models/Municipality.php
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
<?php namespace App\Models;
|
||||||
|
/**
|
||||||
|
* @copyright (c) 2025 Notsoweb Software (https://notsoweb.com) - All Rights Reserved
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Descripción
|
||||||
|
*
|
||||||
|
* @author Moisés Cortés C. <moises.cortes@notsoweb.com>
|
||||||
|
*
|
||||||
|
* @version 1.0.0
|
||||||
|
*/
|
||||||
|
class Municipality extends Model
|
||||||
|
{
|
||||||
|
protected $fillable = [
|
||||||
|
'code',
|
||||||
|
'name',
|
||||||
|
];
|
||||||
|
}
|
||||||
@ -0,0 +1,29 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
return new class extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*/
|
||||||
|
public function up(): void
|
||||||
|
{
|
||||||
|
Schema::create('municipalities', function (Blueprint $table) {
|
||||||
|
$table->id();
|
||||||
|
$table->string('code')->unique();
|
||||||
|
$table->string('name');
|
||||||
|
$table->timestamps();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*/
|
||||||
|
public function down(): void
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('municipalities');
|
||||||
|
}
|
||||||
|
};
|
||||||
@ -25,5 +25,6 @@ public function run(): void
|
|||||||
|
|
||||||
$this->call(ModuleSeeder::class);
|
$this->call(ModuleSeeder::class);
|
||||||
$this->call(CatalogNameImgSeeder::class);
|
$this->call(CatalogNameImgSeeder::class);
|
||||||
|
$this->call(MunicipalitySeeder::class);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
51
database/seeders/MunicipalitySeeder.php
Normal file
51
database/seeders/MunicipalitySeeder.php
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Database\Seeders;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @copyright (c) 2025 Notsoweb Software (https://notsoweb.com) - All Rights Reserved
|
||||||
|
*/
|
||||||
|
|
||||||
|
use App\Models\Municipality;
|
||||||
|
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
||||||
|
use Illuminate\Database\Seeder;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Descripción
|
||||||
|
*
|
||||||
|
* @author Moisés Cortés C. <moises.cortes@notsoweb.com>
|
||||||
|
*
|
||||||
|
* @version 1.0.0
|
||||||
|
*/
|
||||||
|
class MunicipalitySeeder extends Seeder
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Ejecutar sembrado de base de datos
|
||||||
|
*/
|
||||||
|
public function run(): void
|
||||||
|
{
|
||||||
|
$municipalities = [
|
||||||
|
['code' => '001', 'name' => 'Balancán'],
|
||||||
|
['code' => '002', 'name' => 'Cárdenas'],
|
||||||
|
['code' => '003', 'name' => 'Centla'],
|
||||||
|
['code' => '004', 'name' => 'Centro'],
|
||||||
|
['code' => '005', 'name' => 'Comalcalco'],
|
||||||
|
['code' => '006', 'name' => 'Cunduacán'],
|
||||||
|
['code' => '007', 'name' => 'Emiliano Zapata'],
|
||||||
|
['code' => '008', 'name' => 'Huimanguillo'],
|
||||||
|
['code' => '009', 'name' => 'Jalapa'],
|
||||||
|
['code' => '010', 'name' => 'Jalpa de Méndez'],
|
||||||
|
['code' => '011', 'name' => 'Jonuta'],
|
||||||
|
['code' => '012', 'name' => 'Macuspana'],
|
||||||
|
['code' => '013', 'name' => 'Nacajuca'],
|
||||||
|
['code' => '014', 'name' => 'Paraíso'],
|
||||||
|
['code' => '015', 'name' => 'Tacotalpa'],
|
||||||
|
['code' => '016', 'name' => 'Teapa'],
|
||||||
|
['code' => '017', 'name' => 'Tenosique'],
|
||||||
|
];
|
||||||
|
|
||||||
|
foreach ($municipalities as $municipality) {
|
||||||
|
Municipality::create($municipality);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -1,5 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
|
use App\Http\Controllers\Repuve\MunicipalityController;
|
||||||
use App\Http\Controllers\Repuve\RecordController;
|
use App\Http\Controllers\Repuve\RecordController;
|
||||||
use App\Http\Controllers\Repuve\ModuleController;
|
use App\Http\Controllers\Repuve\ModuleController;
|
||||||
use App\Http\Controllers\Repuve\CancellationController;
|
use App\Http\Controllers\Repuve\CancellationController;
|
||||||
@ -50,6 +52,7 @@
|
|||||||
Route::post('/moduleCreate', [ModuleController::class, 'store']);
|
Route::post('/moduleCreate', [ModuleController::class, 'store']);
|
||||||
Route::put('/moduleUpdate/{id}', [ModuleController::class, 'update']);
|
Route::put('/moduleUpdate/{id}', [ModuleController::class, 'update']);
|
||||||
Route::patch('/moduleStatus/{id}', [ModuleController::class, 'toggleStatus']);
|
Route::patch('/moduleStatus/{id}', [ModuleController::class, 'toggleStatus']);
|
||||||
|
Route::resource('municipality', MunicipalityController::class);
|
||||||
|
|
||||||
//Rutas de dispositivos
|
//Rutas de dispositivos
|
||||||
Route::get('/devices', [DeviceController::class, 'index']);
|
Route::get('/devices', [DeviceController::class, 'index']);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user