This commit is contained in:
parent
f49a573d78
commit
041bef0546
204
app/Http/Controllers/Admin/ParkingRegulationsController.php
Normal file
204
app/Http/Controllers/Admin/ParkingRegulationsController.php
Normal file
@ -0,0 +1,204 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Admin;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use App\Models\Park;
|
||||
use App\Models\ParkingRegulation;
|
||||
|
||||
class ParkingRegulationsController extends Controller
|
||||
{
|
||||
/**
|
||||
* 一覧表示
|
||||
*/
|
||||
public function list(Request $request)
|
||||
{
|
||||
// park_id 検証
|
||||
$request->validate([
|
||||
'park_id' => 'required|integer|exists:park,park_id',
|
||||
], [
|
||||
'park_id.required' => '駐輪場IDは必須です。',
|
||||
'park_id.integer' => '駐輪場IDは整数である必要があります。',
|
||||
'park_id.exists' => '指定された駐輪場が見つかりません。',
|
||||
]);
|
||||
|
||||
$parkId = (int) $request->input('park_id');
|
||||
|
||||
// 駐輪場情報取得
|
||||
$park = Park::where('park_id', $parkId)->firstOrFail();
|
||||
|
||||
// parking_regulations を取得し、psection / ptype 名を JOIN して表示
|
||||
$data = DB::table('parking_regulations')
|
||||
->leftJoin('psection', 'parking_regulations.psection_id', '=', 'psection.psection_id')
|
||||
->leftJoin('ptype', 'parking_regulations.ptype_id', '=', 'ptype.ptype_id')
|
||||
->where('parking_regulations.park_id', $parkId)
|
||||
->select(
|
||||
'parking_regulations.parking_regulations_seq',
|
||||
'parking_regulations.park_id',
|
||||
'parking_regulations.psection_id',
|
||||
'parking_regulations.ptype_id',
|
||||
'parking_regulations.regulations_text',
|
||||
'psection.psection_subject as psection_subject',
|
||||
'ptype.ptype_subject as ptype_subject'
|
||||
)
|
||||
->orderBy('parking_regulations.psection_id')
|
||||
->orderBy('parking_regulations.ptype_id')
|
||||
->paginate(50);
|
||||
|
||||
return view('admin.parking_regulations.list', [
|
||||
'park' => $park,
|
||||
'parkId' => $parkId,
|
||||
'regulations' => $data,
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新規作成フォーム表示/登録
|
||||
*/
|
||||
public function add(Request $request)
|
||||
{
|
||||
$parkId = $request->input('park_id');
|
||||
|
||||
// 駐輪場存在確認
|
||||
if (!$parkId) {
|
||||
return redirect()->back()->withErrors(['park_id' => '駐輪場IDが指定されていません。']);
|
||||
}
|
||||
|
||||
$park = Park::where('park_id', $parkId)->firstOrFail();
|
||||
|
||||
// マスタの選択肢取得
|
||||
$psections = DB::table('psection')->orderBy('psection_id')->get();
|
||||
$ptypes = DB::table('ptype')->orderBy('ptype_id')->get();
|
||||
|
||||
if ($request->isMethod('post')) {
|
||||
// 登録処理
|
||||
$validated = $request->validate([
|
||||
'park_id' => 'required|integer|exists:park,park_id',
|
||||
'psection_id' => 'required|integer',
|
||||
'ptype_id' => 'required|integer',
|
||||
'regulations_text' => 'nullable|string',
|
||||
], [
|
||||
'park_id.required' => '駐輪場IDは必須です。',
|
||||
'psection_id.required' => '車種区分は必須です。',
|
||||
'ptype_id.required' => '駐輪分類は必須です。',
|
||||
]);
|
||||
|
||||
// 重複チェック
|
||||
$exists = DB::table('parking_regulations')
|
||||
->where('park_id', $validated['park_id'])
|
||||
->where('psection_id', $validated['psection_id'])
|
||||
->where('ptype_id', $validated['ptype_id'])
|
||||
->exists();
|
||||
|
||||
if ($exists) {
|
||||
return back()->withErrors(['duplicate' => '同じ組み合わせの規定が既に存在します。'])->withInput();
|
||||
}
|
||||
|
||||
ParkingRegulation::create([
|
||||
'park_id' => $validated['park_id'],
|
||||
'psection_id' => $validated['psection_id'],
|
||||
'ptype_id' => $validated['ptype_id'],
|
||||
'regulations_text' => $validated['regulations_text'] ?? null,
|
||||
]);
|
||||
|
||||
return redirect()->route('parking_regulations_list', ['park_id' => $validated['park_id']])->with('success', '登録しました。');
|
||||
}
|
||||
|
||||
return view('admin.parking_regulations.add', [
|
||||
'park' => $park,
|
||||
'parkId' => $parkId,
|
||||
'psections' => $psections,
|
||||
'ptypes' => $ptypes,
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* 編集フォーム表示
|
||||
*/
|
||||
public function edit($seq, Request $request)
|
||||
{
|
||||
$record = DB::table('parking_regulations')->where('parking_regulations_seq', $seq)->first();
|
||||
if (!$record) {
|
||||
return redirect()->back()->withErrors(['not_found' => '指定の規定が見つかりません。']);
|
||||
}
|
||||
|
||||
$park = Park::where('park_id', $record->park_id)->firstOrFail();
|
||||
|
||||
$psections = DB::table('psection')->orderBy('psection_id')->get();
|
||||
$ptypes = DB::table('ptype')->orderBy('ptype_id')->get();
|
||||
|
||||
return view('admin.parking_regulations.edit', [
|
||||
'park' => $park,
|
||||
'record' => $record,
|
||||
'psections' => $psections,
|
||||
'ptypes' => $ptypes,
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新処理
|
||||
*/
|
||||
public function update($seq, Request $request)
|
||||
{
|
||||
$validated = $request->validate([
|
||||
'psection_id' => 'required|integer',
|
||||
'ptype_id' => 'required|integer',
|
||||
'regulations_text' => 'nullable|string',
|
||||
], [
|
||||
'psection_id.required' => '車種区分は必須です。',
|
||||
'ptype_id.required' => '駐輪分類は必須です。',
|
||||
]);
|
||||
|
||||
// 対象レコード取得
|
||||
$record = DB::table('parking_regulations')->where('parking_regulations_seq', $seq)->first();
|
||||
if (!$record) {
|
||||
return back()->withErrors(['not_found' => '指定の規定が見つかりません。']);
|
||||
}
|
||||
|
||||
// 重複チェック(自分自身は除外)
|
||||
$exists = DB::table('parking_regulations')
|
||||
->where('park_id', $record->park_id)
|
||||
->where('psection_id', $validated['psection_id'])
|
||||
->where('ptype_id', $validated['ptype_id'])
|
||||
->where('parking_regulations_seq', '<>', $seq)
|
||||
->exists();
|
||||
|
||||
if ($exists) {
|
||||
return back()->withErrors(['duplicate' => '同じ組み合わせの規定が既に存在します。'])->withInput();
|
||||
}
|
||||
|
||||
DB::table('parking_regulations')->where('parking_regulations_seq', $seq)->update([
|
||||
'psection_id' => $validated['psection_id'],
|
||||
'ptype_id' => $validated['ptype_id'],
|
||||
'regulations_text' => $validated['regulations_text'] ?? null,
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
|
||||
return redirect()->route('parking_regulations_list', ['park_id' => $record->park_id])->with('success', '更新しました。');
|
||||
}
|
||||
|
||||
/**
|
||||
* 削除処理
|
||||
*/
|
||||
public function delete(Request $request)
|
||||
{
|
||||
$validated = $request->validate([
|
||||
'parking_regulations_seq' => 'required|integer',
|
||||
], [
|
||||
'parking_regulations_seq.required' => '削除対象が指定されていません。',
|
||||
]);
|
||||
|
||||
$seq = (int) $validated['parking_regulations_seq'];
|
||||
|
||||
$record = DB::table('parking_regulations')->where('parking_regulations_seq', $seq)->first();
|
||||
if (!$record) {
|
||||
return back()->withErrors(['not_found' => '指定の規定が見つかりません。']);
|
||||
}
|
||||
|
||||
DB::table('parking_regulations')->where('parking_regulations_seq', $seq)->delete();
|
||||
|
||||
return redirect()->route('parking_regulations_list', ['park_id' => $record->park_id])->with('success', '削除しました。');
|
||||
}
|
||||
}
|
||||
@ -104,7 +104,7 @@ class ReductionConfirmMasterController extends Controller
|
||||
}
|
||||
});
|
||||
|
||||
return redirect()->route('reduction_confirm.list', ['park_id' => $parkId])
|
||||
return redirect()->route('reduction_confirm_list', ['park_id' => $parkId])
|
||||
->with('success', '減免確認マスタを更新しました。');
|
||||
} catch (\Exception $e) {
|
||||
\Log::error('ReductionConfirm update failed', [
|
||||
|
||||
BIN
public/plugins/summernote/font/summernote.ttf
Normal file
BIN
public/plugins/summernote/font/summernote.ttf
Normal file
Binary file not shown.
BIN
public/plugins/summernote/font/summernote.woff2
Normal file
BIN
public/plugins/summernote/font/summernote.woff2
Normal file
Binary file not shown.
1
public/plugins/summernote/summernote.min.css
vendored
Normal file
1
public/plugins/summernote/summernote.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
2
public/plugins/summernote/summernote.min.js
vendored
Normal file
2
public/plugins/summernote/summernote.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
88
resources/views/admin/parking_regulations/_form.blade.php
Normal file
88
resources/views/admin/parking_regulations/_form.blade.php
Normal file
@ -0,0 +1,88 @@
|
||||
@php
|
||||
// $psections: 車種区分コレクション
|
||||
// $ptypes: 駐輪分類コレクション
|
||||
// $parkId: 駐輪場ID
|
||||
// $record: 編集用レコード(null = 新規)
|
||||
$selectedPsection = old('psection_id', $record->psection_id ?? null);
|
||||
$selectedPtype = old('ptype_id', $record->ptype_id ?? null);
|
||||
$regulationsText = old('regulations_text', $record->regulations_text ?? '');
|
||||
@endphp
|
||||
|
||||
<input type="hidden" name="park_id" value="{{ $parkId }}">
|
||||
|
||||
<input type="hidden" name="park_id" value="{{ $parkId }}">
|
||||
|
||||
{{-- 駐輪場名(編集不可) --}}
|
||||
<div class="mb-3 row">
|
||||
<label class="col-md-2 col-form-label font-weight-bold">駐輪場名</label>
|
||||
<div class="col-md-10">
|
||||
<input type="text"
|
||||
class="form-control"
|
||||
value="{{ $park->park_name }}"
|
||||
readonly>
|
||||
</div>
|
||||
</div>
|
||||
{{-- 車種区分 --}}
|
||||
<div class="mb-3 row">
|
||||
<label class="col-md-2 col-form-label font-weight-bold">車種区分 <span class="text-danger">*</span></label>
|
||||
<div class="col-md-10">
|
||||
<select name="psection_id" class="form-control" required>
|
||||
<option value="">選択してください</option>
|
||||
@foreach($psections as $ps)
|
||||
<option value="{{ $ps->psection_id }}"
|
||||
@selected($selectedPsection == $ps->psection_id)>
|
||||
{{ $ps->psection_subject }}
|
||||
</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{-- 駐輪分類 --}}
|
||||
<div class="mb-3 row">
|
||||
<label class="col-md-2 col-form-label font-weight-bold">駐輪分類 <span class="text-danger">*</span></label>
|
||||
<div class="col-md-10">
|
||||
<select name="ptype_id" class="form-control" required>
|
||||
<option value="">選択してください</option>
|
||||
@foreach($ptypes as $pt)
|
||||
<option value="{{ $pt->ptype_id }}"
|
||||
@selected($selectedPtype == $pt->ptype_id)>
|
||||
{{ $pt->ptype_subject }}
|
||||
</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{-- 駐輪規定 --}}
|
||||
<div class="mb-3 row">
|
||||
<label class="col-md-2 col-form-label font-weight-bold">
|
||||
駐輪規定 <span class="text-danger">*</span>
|
||||
</label>
|
||||
<div class="col-md-10">
|
||||
<textarea name="regulations_text"
|
||||
class="form-control js-summernote"
|
||||
required>{!! $regulationsText !!}</textarea>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
document.addEventListener('DOMContentLoaded', function () {
|
||||
$('.js-summernote').summernote({
|
||||
height: 420,
|
||||
minHeight: 420,
|
||||
toolbar: [
|
||||
['style', ['style']],
|
||||
['font', ['bold', 'underline', 'italic', 'clear']],
|
||||
['fontname', ['fontname']],
|
||||
['color', ['color']],
|
||||
['para', ['ul', 'ol', 'paragraph']],
|
||||
['table', ['table']],
|
||||
['insert', ['link', 'picture']],
|
||||
['view', ['fullscreen', 'codeview', 'help']]
|
||||
]
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
|
||||
43
resources/views/admin/parking_regulations/add.blade.php
Normal file
43
resources/views/admin/parking_regulations/add.blade.php
Normal file
@ -0,0 +1,43 @@
|
||||
@extends('layouts.app')
|
||||
@section('title', '駐輪規定 新規登録')
|
||||
|
||||
@section('content')
|
||||
<div class="content-header">
|
||||
<div class="container-fluid">
|
||||
<div class="row mb-2">
|
||||
<div class="col-lg-6">
|
||||
<h1 class="m-0 text-dark">新規</h1>
|
||||
</div>
|
||||
<div class="col-lg-6">
|
||||
<ol class="breadcrumb float-sm-right text-sm">
|
||||
<li class="breadcrumb-item"><a href="{{ route('home') }}">ホーム</a></li>
|
||||
<li class="breadcrumb-item"><a href="{{ route('parking_regulations_list', ['park_id' => $parkId]) }}">駐輪規定マスタ</a></li>
|
||||
<li class="breadcrumb-item active">新規登録</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<section class="content">
|
||||
<div class="container-fluid">
|
||||
@if ($errors->any())
|
||||
<div class="alert alert-danger">@foreach($errors->all() as $e) <div>{{ $e }}</div> @endforeach</div>
|
||||
@endif
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<form method="POST" action="{{ route('parking_regulations_add') }}">
|
||||
@csrf
|
||||
@include('admin.parking_regulations._form', ['psections' => $psections, 'ptypes' => $ptypes, 'parkId' => $parkId, 'record' => null])
|
||||
|
||||
<div class="text-end">
|
||||
<button type="submit" class="btn btn-primary">登録</button>
|
||||
<a href="{{ route('parking_regulations_list', ['park_id' => $parkId]) }}" class="btn btn-default">戻る</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
@endsection
|
||||
44
resources/views/admin/parking_regulations/edit.blade.php
Normal file
44
resources/views/admin/parking_regulations/edit.blade.php
Normal file
@ -0,0 +1,44 @@
|
||||
@extends('layouts.app')
|
||||
@section('title', '駐輪規定 編集')
|
||||
|
||||
@section('content')
|
||||
<div class="content-header">
|
||||
<div class="container-fluid">
|
||||
<div class="row mb-2">
|
||||
<div class="col-lg-6">
|
||||
<h1 class="m-0 text-dark">編集</h1>
|
||||
</div>
|
||||
<div class="col-lg-6">
|
||||
<ol class="breadcrumb float-sm-right text-sm">
|
||||
<li class="breadcrumb-item"><a href="{{ route('home') }}">ホーム</a></li>
|
||||
<li class="breadcrumb-item"><a href="{{ route('parking_regulations_list', ['park_id' => $park->park_id]) }}">駐輪規定マスタ</a></li>
|
||||
<li class="breadcrumb-item active">編集</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<section class="content">
|
||||
<div class="container-fluid">
|
||||
@if ($errors->any())
|
||||
<div class="alert alert-danger">@foreach($errors->all() as $e) <div>{{ $e }}</div> @endforeach</div>
|
||||
@endif
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<form method="POST" action="{{ route('parking_regulations_update', ['seq' => $record->parking_regulations_seq]) }}">
|
||||
@csrf
|
||||
@include('admin.parking_regulations._form', ['psections' => $psections, 'ptypes' => $ptypes, 'parkId' => $park->park_id, 'record' => $record])
|
||||
|
||||
<div class="text-end">
|
||||
<button type="submit" class="btn btn-success">登録</button>
|
||||
<button type="submit" class="btn btn-danger" onclick="return confirm('削除してよいですか?')">削除</button>
|
||||
<a href="{{ route('parking_regulations_list', ['park_id' => $park->park_id]) }}" class="btn btn-secondary">戻る</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
@endsection
|
||||
110
resources/views/admin/parking_regulations/list.blade.php
Normal file
110
resources/views/admin/parking_regulations/list.blade.php
Normal file
@ -0,0 +1,110 @@
|
||||
@extends('layouts.app')
|
||||
@section('title', '駐輪規定マスタ')
|
||||
|
||||
@section('content')
|
||||
<div class="content-header">
|
||||
<div class="container-fluid">
|
||||
<div class="row mb-2">
|
||||
<div class="col-lg-6">
|
||||
<h1 class="m-0 text-dark">駐輪規定マスタ</h1>
|
||||
</div>
|
||||
<div class="col-lg-6">
|
||||
<ol class="breadcrumb float-sm-right text-sm">
|
||||
<li class="breadcrumb-item"><a href="{{ route('home') }}">ホーム</a></li>
|
||||
<li class="breadcrumb-item active">駐輪規定マスタ</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<section class="content">
|
||||
<div class="container-fluid">
|
||||
@if ($errors->any())
|
||||
<div class="alert alert-danger">
|
||||
@foreach ($errors->all() as $e)
|
||||
<div>{{ $e }}</div>
|
||||
@endforeach
|
||||
</div>
|
||||
@endif
|
||||
@if (session('success'))
|
||||
<div class="alert alert-success">{{ session('success') }}</div>
|
||||
@endif
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">駐輪場情報</h3>
|
||||
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="d-flex align-items-center">
|
||||
<div style="width:180px;" class="font-weight-bold">
|
||||
駐輪場名
|
||||
</div>
|
||||
<div class="ml-3">
|
||||
{{ $park->park_name ?? '' }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="d-flex justify-content-between align-items-center mb-2">
|
||||
|
||||
<a href="{{ route('parking_regulations_add', ['park_id' => $parkId]) }}" class="btn btn-primary mr-2">新規</a>
|
||||
{{-- 件数 + ページネーション --}}
|
||||
<div class="d-flex justify-content-between align-items-center mb-3 px-3 pt-3">
|
||||
<div class="text-right ml-auto">
|
||||
<div>
|
||||
全 {{ $regulations->total() }} 件中
|
||||
{{ $regulations->firstItem() }}〜{{ $regulations->lastItem() }} 件を表示
|
||||
</div>
|
||||
<div>
|
||||
{{ $regulations->appends(request()->query())->links('pagination') }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered table-sm">
|
||||
<thead class="thead-light">
|
||||
<tr>
|
||||
<th style="width:100px">操作</th>
|
||||
<th style="width:15%">車種区分</th>
|
||||
<th style="width:15%">駐輪分類</th>
|
||||
<th>駐輪規定</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody style="background:#fff;">
|
||||
@forelse($regulations as $r)
|
||||
<tr>
|
||||
<td>
|
||||
<a href="{{ route('parking_regulations_edit', ['seq' => $r->parking_regulations_seq]) }}" class="btn btn-sm btn-outline-primary">編集</a>
|
||||
<form method="POST" action="{{ route('parking_regulations_delete') }}" style="display:inline">
|
||||
@csrf
|
||||
<input type="hidden" name="parking_regulations_seq" value="{{ $r->parking_regulations_seq }}">
|
||||
|
||||
</form>
|
||||
</td>
|
||||
<td>{{ $r->psection_subject ?? $r->psection_id }}</td>
|
||||
<td>{{ $r->ptype_subject ?? $r->ptype_id }}</td>
|
||||
<td>{{ Str::limit($r->regulations_text ?? '', 200) }}</td>
|
||||
</tr>
|
||||
@empty
|
||||
<tr>
|
||||
<td colspan="4" class="text-center text-muted">規定がありません。</td>
|
||||
</tr>
|
||||
@endforelse
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="mt-2">
|
||||
{{ $regulations->appends(request()->query())->links('pagination') }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
@endsection
|
||||
@ -31,10 +31,10 @@
|
||||
{{-- ▼ ボタンエリア(上部) --}}
|
||||
<div class="mt-2">
|
||||
<button type="button" class="btn btn-default mt-2 btn-submit">登録</button>
|
||||
<a href="{{ route('reduction_confirm.list', ['park_id' => $park->park_id]) }}" class="btn btn-default mt-2">
|
||||
<a href="{{ route('reduction_confirm_list', ['park_id' => $park->park_id]) }}" class="btn btn-default mt-2">
|
||||
減免確認編集
|
||||
</a>
|
||||
<a href="javascript:void(0)" class="btn btn-default mt-2">駐輪状況編集</a>
|
||||
<a href="{{ route('parking_regulations_list', ['park_id' => $park->park_id]) }}" class="btn btn-default mt-2">駐輪規定編集</a>
|
||||
<button type="button" class="btn btn-default mt-2">削除</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -72,7 +72,7 @@
|
||||
</div>
|
||||
<!-- 減免確認マスタ テーブル -->
|
||||
<div class="col-lg-12 px-0 ">
|
||||
<form action="{{ route('reduction_confirm.store') }}" method="POST" id="reduction-form">
|
||||
<form action="{{ route('reduction_confirm_store') }}" method="POST" id="reduction-form">
|
||||
<div class="d-flex justify-content-between align-items-center mb-2">
|
||||
{{-- 左側:登録ボタン --}}
|
||||
<button type="submit" class="btn btn-primary btn-submit">登録</button>
|
||||
|
||||
@ -39,7 +39,7 @@
|
||||
<link href="{{ asset('css/app.css') }}" rel="stylesheet">
|
||||
<!-- kin 追加 -->
|
||||
<link href="{{ asset('assets/css/app.css') }}" rel="stylesheet">
|
||||
|
||||
<link rel="stylesheet" href="{{ asset('plugins/summernote/summernote.min.css') }}">
|
||||
</head>
|
||||
|
||||
<body class="hold-transition sidebar-mini">
|
||||
@ -982,6 +982,7 @@
|
||||
|
||||
<!-- jQuery -->
|
||||
<script src="{{ asset('plugins/jquery/jquery.min.js') }}"></script>
|
||||
<script src="{{ asset('plugins/summernote/summernote.min.js') }}"></script>
|
||||
<script src="{{ asset('plugins/bootstrap/js/bootstrap.bundle.min.js') }}"></script>
|
||||
<script src="{{ asset('plugins/select2/js/select2.full.min.js') }}"></script>
|
||||
<script src="{{ asset('plugins/moment/moment.min.js') }}"></script>
|
||||
|
||||
@ -43,6 +43,7 @@ use App\Http\Controllers\Admin\InvSettingController;
|
||||
use App\Http\Controllers\Admin\ZoneController;
|
||||
use App\Http\Controllers\Admin\PplaceController;
|
||||
use App\Http\Controllers\Admin\ReductionConfirmMasterController;
|
||||
use App\Http\Controllers\Admin\ParkingRegulationsController;
|
||||
use App\Http\Controllers\HomeController;
|
||||
use App\Http\Controllers\Auth\EmailOtpController;
|
||||
|
||||
@ -278,8 +279,15 @@ Route::middleware('auth')->group(function () {
|
||||
Route::match(['get', 'post'], '/usertypes/export', [UsertypeController::class, 'export'])->name('usertypes_export');
|
||||
|
||||
// 減免確認マスタ
|
||||
Route::get('/reduction-confirm-master', [ReductionConfirmMasterController::class, 'list'])->name('reduction_confirm.list');
|
||||
Route::post('/reduction-confirm-master', [ReductionConfirmMasterController::class, 'store'])->name('reduction_confirm.store');
|
||||
Route::get('/reduction-confirm-master', [ReductionConfirmMasterController::class, 'list'])->name('reduction_confirm_list');
|
||||
Route::post('/reduction-confirm-master', [ReductionConfirmMasterController::class, 'store'])->name('reduction_confirm_store');
|
||||
|
||||
// 駐輪規定マスタ
|
||||
Route::match(['get', 'post'], '/admin/parking-regulations', [ParkingRegulationsController::class, 'list'])->name('parking_regulations_list');
|
||||
Route::match(['get', 'post'], '/admin/parking-regulations/add', [ParkingRegulationsController::class, 'add'])->name('parking_regulations_add');
|
||||
Route::match(['get', 'post'], '/admin/parking-regulations/edit/{seq}', [ParkingRegulationsController::class, 'edit'])->name('parking_regulations_edit')->where(['seq' => '[0-9]+']);
|
||||
Route::post('/admin/parking-regulations/update/{seq}', [ParkingRegulationsController::class, 'update'])->name('parking_regulations_update');
|
||||
Route::post('/admin/parking-regulations/delete', [ParkingRegulationsController::class, 'delete'])->name('parking_regulations_delete');
|
||||
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user