From 542a910aa5afff18f6b576bdf26ec2dda0a103cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=A0=E7=9A=84=E5=90=8D=E5=AD=97?= <你的邮箱> Date: Wed, 3 Sep 2025 11:03:00 +0900 Subject: [PATCH 1/2] =?UTF-8?q?=E3=80=8C=E5=B8=82=E5=8C=BA=E3=83=9E?= =?UTF-8?q?=E3=82=B9=E3=82=BF=E3=80=8D=E7=94=BB=E9=9D=A2=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/Admin/CityController.php | 37 ++++++++++-- .../views/admin/CityMaster/_form.blade.php | 14 ++--- .../views/admin/CityMaster/add.blade.php | 58 +++++++------------ .../views/admin/CityMaster/edit.blade.php | 31 +++------- .../views/admin/CityMaster/list.blade.php | 19 +++--- 5 files changed, 80 insertions(+), 79 deletions(-) diff --git a/app/Http/Controllers/Admin/CityController.php b/app/Http/Controllers/Admin/CityController.php index ea8cea3..88e66c8 100644 --- a/app/Http/Controllers/Admin/CityController.php +++ b/app/Http/Controllers/Admin/CityController.php @@ -49,9 +49,21 @@ class CityController extends Controller if ($request->isMethod('POST')) { $rules = [ - 'city_name' => 'required|string|max:255', + 'city_name' => ['required', 'string', 'max:10', 'regex:/^[^ -~。-゚]+$/u'], // 全角のみ + 'print_layout' => ['required', 'string', 'max:10', 'regex:/^[^ -~。-゚]+$/u'], // 全角のみ + 'city_user' => ['required', 'string', 'max:10', 'regex:/^[^ -~。-゚]+$/u'], // 全角のみ + 'city_remarks' => ['nullable', 'string', 'max:20'], // 全角半角可・任意 ]; - $validator = Validator::make($request->all(), $rules); + $messages = [ + 'city_name.required' => '市区名は必須です。', + 'city_name.regex' => '市区名は全角で入力してください。', + 'print_layout.required' => '印字レイアウトファイルは必須です。', + 'print_layout.regex' => '印字レイアウトファイルは全角で入力してください。', + 'city_user.required' => '顧客M入力不要フィールドIDは必須です。', + 'city_user.regex' => '顧客M入力不要フィールドIDは全角で入力してください。', + 'city_remarks.max' => '備考は20文字以内で入力してください。', + ]; + $validator = Validator::make($request->all(), $rules, $messages); $inputs = array_merge($inputs, $request->all()); @@ -91,9 +103,21 @@ class CityController extends Controller if ($request->isMethod('POST')) { $rules = [ - 'city_name' => 'required|string|max:255', + 'city_name' => ['required', 'string', 'max:10', 'regex:/^[^ -~。-゚]+$/u'], + 'print_layout' => ['required', 'string', 'max:10', 'regex:/^[^ -~。-゚]+$/u'], + 'city_user' => ['required', 'string', 'max:10', 'regex:/^[^ -~。-゚]+$/u'], + 'city_remarks' => ['nullable', 'string', 'max:20'], ]; - $validator = Validator::make($request->all(), $rules); + $messages = [ + 'city_name.required' => '市区名は必須です。', + 'city_name.regex' => '市区名は全角で入力してください。', + 'print_layout.required' => '印字レイアウトファイルは必須です。', + 'print_layout.regex' => '印字レイアウトファイルは全角で入力してください。', + 'city_user.required' => '顧客M入力不要フィールドIDは必須です。', + 'city_user.regex' => '顧客M入力不要フィールドIDは全角で入力してください。', + 'city_remarks.max' => '備考は20文字以内で入力してください。', + ]; + $validator = Validator::make($request->all(), $rules, $messages); if (!$validator->fails()) { $city->fill($request->only([ @@ -130,7 +154,10 @@ class CityController extends Controller public function delete(Request $request) { $arr_pk = $request->get('pk'); - if ($arr_pk && City::destroy($arr_pk)) { + if (!$arr_pk) { + return redirect()->route('city')->with('error', __('削除する市区を選択してください。')); + } + if (City::destroy($arr_pk)) { return redirect()->route('city')->with('success', __("削除が完了しました。")); } else { return redirect()->route('city')->with('error', __('削除に失敗しました。')); diff --git a/resources/views/admin/CityMaster/_form.blade.php b/resources/views/admin/CityMaster/_form.blade.php index 05e9cae..fbcb27f 100644 --- a/resources/views/admin/CityMaster/_form.blade.php +++ b/resources/views/admin/CityMaster/_form.blade.php @@ -4,21 +4,21 @@
- - + +
- - + +
- - + +
- +
diff --git a/resources/views/admin/CityMaster/add.blade.php b/resources/views/admin/CityMaster/add.blade.php index e362958..6c1f08d 100644 --- a/resources/views/admin/CityMaster/add.blade.php +++ b/resources/views/admin/CityMaster/add.blade.php @@ -1,43 +1,27 @@ @extends('layouts.app') -@section('title', '[東京都|〇〇駐輪場] マスタ管理') - @section('content') - -
-
-
-
-

[東京都|〇〇駐輪場] マスタ管理

-
-
- -
-
-
+ +
+
+

新規登録

+
- - -
-

市区マスタ 新規登録

- -
-
-
- @csrf - @include('admin.CityMaster._form', ['isEdit' => 0, 'isInfo' => 0]) -
- - 戻る -
-
+
+
+
+ @csrf + @include('admin.CityMaster._form', ['isEdit' => 0, 'isInfo' => 0]) +
+ + 戻る +
+
+
-
-@endsection +@endsection \ No newline at end of file diff --git a/resources/views/admin/CityMaster/edit.blade.php b/resources/views/admin/CityMaster/edit.blade.php index 6b86c8c..c8581fb 100644 --- a/resources/views/admin/CityMaster/edit.blade.php +++ b/resources/views/admin/CityMaster/edit.blade.php @@ -3,31 +3,18 @@ @section('title', '市区マスタ編集') @section('content') - -
-
-
-
-

[東京都|〇〇駐輪場] 市区マスタ

-
-
- -
-
-
-
- -
-

市区マスタ 編集

- +
+

編集

+ +
+ @includeIf('common.flash')
diff --git a/resources/views/admin/CityMaster/list.blade.php b/resources/views/admin/CityMaster/list.blade.php index 9b76039..16da785 100644 --- a/resources/views/admin/CityMaster/list.blade.php +++ b/resources/views/admin/CityMaster/list.blade.php @@ -3,6 +3,14 @@ @section('title', '市区マスタ') @section('content') + {{-- ▼ フラッシュメッセージ --}} + @if(session('success')) +
{{ session('success') }}
+ @endif + @if(session('error')) +
{{ session('error') }}
+ @endif +
@@ -40,10 +48,8 @@ - - + 市区ID @if($sort === 'city_id') @@ -51,8 +57,7 @@ - + 市区名 @if($sort === 'city_name') @@ -69,15 +74,13 @@ - 編集 + 編集 {{ $city->city_id }} {{ $city->city_name }} {{ $city->print_layout }} {{ $city->city_user }} {{ $city->city_remarks }} -   @endforeach From 7c5ba49a473b2c09268361a4c6289726701768c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BD=A0=E7=9A=84=E5=90=8D=E5=AD=97?= <你的邮箱> Date: Wed, 3 Sep 2025 11:04:04 +0900 Subject: [PATCH 2/2] =?UTF-8?q?=E3=80=8C=E9=A7=90=E8=BC=AA=E5=A0=B4?= =?UTF-8?q?=E3=83=9E=E3=82=B9=E3=82=BF=E3=80=8D=E7=94=BB=E9=9D=A2=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/Admin/ParkController.php | 3 +- resources/views/admin/news/add.blade.php | 20 +- resources/views/admin/parks/add.blade.php | 189 ++++++++++++------ resources/views/admin/parks/edit.blade.php | 17 ++ resources/views/admin/parks/list.blade.php | 86 ++++---- 5 files changed, 211 insertions(+), 104 deletions(-) diff --git a/app/Http/Controllers/Admin/ParkController.php b/app/Http/Controllers/Admin/ParkController.php index e3b2e88..f1a4fca 100644 --- a/app/Http/Controllers/Admin/ParkController.php +++ b/app/Http/Controllers/Admin/ParkController.php @@ -30,6 +30,7 @@ class ParkController extends Controller 'p.alert_flag', 'p.print_number', 'p.keep_alive', + 'p.operator_id', ]); if ($request->filled('park_name')) { @@ -69,7 +70,7 @@ class ParkController extends Controller $park->fill($validated); $park->save(); - return redirect()->route('parks')->with('success', '登録しました'); + return redirect()->route('parks')->with('success', '新規登録に完了しました。'); } return view('admin.parks.add', [ diff --git a/resources/views/admin/news/add.blade.php b/resources/views/admin/news/add.blade.php index 55d68ac..2a94363 100644 --- a/resources/views/admin/news/add.blade.php +++ b/resources/views/admin/news/add.blade.php @@ -26,10 +26,15 @@
    @foreach($errors->all() as $e)
  • {{ $e }}
  • @endforeach
@endif + {{-- ▼ 成功メッセージ表示 --}} + @if (session('success')) +
{{ session('success') }}
+ @endif + {{-- ▼ 入力フォーム --}}
-
+ @csrf
@@ -63,7 +68,7 @@
戻る - +
@@ -71,3 +76,14 @@
@endsection + +@push('scripts') + +@endpush diff --git a/resources/views/admin/parks/add.blade.php b/resources/views/admin/parks/add.blade.php index fcac1bb..224ea4a 100644 --- a/resources/views/admin/parks/add.blade.php +++ b/resources/views/admin/parks/add.blade.php @@ -2,68 +2,141 @@ @section('title', '駐輪場マスタ 新規') @section('content') -
- {{-- 画面上部のツールバー(新規は登録だけ/目标图一致) --}} -
-
- +
+ + {{-- ▼ 成功メッセージ表示 --}} + @if (session('success')) +
{{ session('success') }}
+ @endif + + + {{-- ▼ パンくず --}} +
+
+
+
+

新規

+
+
+ +
+
+
-
+ {{-- 画面上部のツールバー(登録ボタン) +
+
+ +
+
+
--}} + + {{-- 本体フォーム(白背景のカード) --}} +
+ @csrf + @include('admin.parks._form') + + +
- {{-- 本体フォーム(白背景のカード) --}} -
- @csrf - @include('admin.parks._form') + @push('scripts') + + @endpush - -
-
+ -@endsection + .screen-toolbar { + display: flex; + justify-content: space-between; + align-items: center + } + + .screen-toolbar .btn { + border-radius: 3px; + padding: .35rem .7rem + } + + .screen-toolbar .btn-light { + background: #fff; + border: 1px solid #dcdfe3; + color: #333 + } + + .form-group { + margin-bottom: .6rem + } + + .col-form-label { + padding-top: .55rem; + font-weight: 600 + } + + .req:after { + content: " *"; + color: #dc3545 + } + + input.form-control, + select.form-control { + height: 34px; + padding: .25rem .5rem + } + + textarea.form-control { + min-height: 72px + } + + .img-thumbnail { + border: 1px dashed #d0d7de; + background: repeating-linear-gradient(45deg, #fafafa, #fafafa 8px, #f3f4f6 8px, #f3f4f6 16px) + } + + .form-footer { + border-top: 1px dashed #e9ecef + } + +@endsection \ No newline at end of file diff --git a/resources/views/admin/parks/edit.blade.php b/resources/views/admin/parks/edit.blade.php index 4295445..f4c2147 100644 --- a/resources/views/admin/parks/edit.blade.php +++ b/resources/views/admin/parks/edit.blade.php @@ -2,6 +2,23 @@ @section('title', '駐輪場マスタ 編集') @section('content') + {{-- ▼ パンくず --}} +
+
+
+
+

編集

+
+
+ +
+
+
+
{{-- 画面上部のツールバー(左:登録/その他、右:削除) --}} diff --git a/resources/views/admin/parks/list.blade.php b/resources/views/admin/parks/list.blade.php index 8698fdb..afd0a9b 100644 --- a/resources/views/admin/parks/list.blade.php +++ b/resources/views/admin/parks/list.blade.php @@ -2,9 +2,17 @@ @section('content')
+ {{-- ▼ フラッシュメッセージ --}} + @if(session('success')) +
{{ session('success') }}
+ @endif + @if(session('error')) +
{{ session('error') }}
+ @endif +

駐輪場マスタ

-