add edit and delete data tax
This commit is contained in:
@@ -5,6 +5,7 @@ namespace App\Http\Controllers\Api;
|
||||
use App\Exports\TaxationsExport;
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Requests\ExcelUploadRequest;
|
||||
use App\Http\Requests\TaxationsRequest;
|
||||
use App\Http\Resources\TaxationsResource;
|
||||
use App\Imports\TaxationsImport;
|
||||
use Illuminate\Http\Request;
|
||||
@@ -60,4 +61,38 @@ class TaxationsController extends Controller
|
||||
{
|
||||
return Excel::download(new TaxationsExport, 'pajak_per_kecamatan.xlsx');
|
||||
}
|
||||
|
||||
public function delete(Request $request)
|
||||
{
|
||||
try{
|
||||
$tax = Tax::find($request->id);
|
||||
$tax->delete();
|
||||
return response()->json(['message' => 'Data deleted successfully'], 200);
|
||||
}catch(\Exception $e){
|
||||
Log::info($e->getMessage());
|
||||
return response()->json([
|
||||
'error' => 'Failed to delete data',
|
||||
'message' => $e->getMessage()
|
||||
], 500);
|
||||
}
|
||||
}
|
||||
|
||||
public function update(TaxationsRequest $request, string $id)
|
||||
{
|
||||
try{
|
||||
$tax = Tax::find($id);
|
||||
if($tax){
|
||||
$tax->update($request->validated());
|
||||
return response()->json(['message' => 'Successfully updated', new TaxationsResource($tax)]);
|
||||
} else {
|
||||
return response()->json(['message' => 'Tax not found'], 404);
|
||||
}
|
||||
}catch(\Exception $e){
|
||||
Log::info($e->getMessage());
|
||||
return response()->json([
|
||||
'error' => 'Failed to update tax',
|
||||
'message' => $e->getMessage()
|
||||
], 500);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Models\Tax;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class TaxationController extends Controller
|
||||
@@ -52,9 +53,11 @@ class TaxationController extends Controller
|
||||
/**
|
||||
* Show the form for editing the specified resource.
|
||||
*/
|
||||
public function edit(string $id)
|
||||
public function edit(Request $request, string $id)
|
||||
{
|
||||
//
|
||||
$menuId = $request->query('menu_id') ?? $request->input('menu_id');
|
||||
$data = Tax::find($id);
|
||||
return view('taxation.edit', compact('menuId', 'data'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
38
app/Http/Requests/TaxationsRequest.php
Normal file
38
app/Http/Requests/TaxationsRequest.php
Normal file
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Validation\Rule;
|
||||
|
||||
class TaxationsRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*/
|
||||
public function authorize(): bool
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
'tax_no' => ['required', 'string', Rule::unique('taxs')->ignore($this->id)],
|
||||
'tax_code' => ['required', 'string'],
|
||||
'wp_name' => ['required', 'string'],
|
||||
'business_name' => ['required', 'string'],
|
||||
'address' => ['required', 'string'],
|
||||
'start_validity' => ['required', 'date_format:Y-m-d'],
|
||||
'end_validity' => ['required', 'date_format:Y-m-d'],
|
||||
'tax_value' => ['required', 'numeric', 'regex:/^\d{1,16}(\.\d{1,2})?$/'],
|
||||
'subdistrict' => ['required', 'string'],
|
||||
'village' => ['required', 'string'],
|
||||
];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user