This commit is contained in:
parent
1d5db12a27
commit
307ab7ccb2
@ -17,110 +17,95 @@ class MailTemplateController extends Controller
|
|||||||
return redirect()->route('mail_templates');
|
return redirect()->route('mail_templates');
|
||||||
}
|
}
|
||||||
|
|
||||||
// 許可されたソートカラム一覧
|
|
||||||
$allowedSorts = [
|
|
||||||
'mail_template_id',
|
|
||||||
'pg_id',
|
|
||||||
'internal_id',
|
|
||||||
'mgr_cc_flag',
|
|
||||||
'bcc_adrs',
|
|
||||||
'use_flag',
|
|
||||||
'memo',
|
|
||||||
'subject',
|
|
||||||
'text',
|
|
||||||
'created_at',
|
|
||||||
'updated_at',
|
|
||||||
'operator_id',
|
|
||||||
];
|
|
||||||
|
|
||||||
|
|
||||||
$sort = $request->input('sort', 'mail_template_id');
|
|
||||||
$sort_type = $request->input('sort_type', 'desc');
|
|
||||||
|
|
||||||
$allowedSorts = [
|
$allowedSorts = [
|
||||||
'mail_template_id', 'pg_id', 'internal_id', 'mgr_cc_flag',
|
'mail_template_id', 'pg_id', 'internal_id', 'mgr_cc_flag',
|
||||||
'bcc_adrs', 'use_flag', 'memo', 'subject', 'text',
|
'bcc_adrs', 'use_flag', 'memo', 'subject', 'text',
|
||||||
'created_at', 'updated_at', 'operator_id'
|
'created_at', 'updated_at', 'operator_id'
|
||||||
];
|
];
|
||||||
|
|
||||||
|
$sort = $request->input('sort', 'mail_template_id');
|
||||||
|
$sort_type = $request->input('sort_type', 'asc');
|
||||||
|
|
||||||
if (!in_array($sort, $allowedSorts)) {
|
if (!in_array($sort, $allowedSorts)) {
|
||||||
$sort = 'mail_template_id';
|
$sort = 'mail_template_id';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!in_array($sort_type, ['asc', 'desc'])) {
|
if (!in_array($sort_type, ['asc', 'desc'])) {
|
||||||
$sort_type = 'desc';
|
$sort_type = 'desc';
|
||||||
}
|
}
|
||||||
|
|
||||||
$query = MailTemplate::query();
|
$query = MailTemplate::query();
|
||||||
|
|
||||||
// 絞り込み
|
// === 絞り込み ===
|
||||||
if ($request->filled('mail_template_id')) {
|
$mail_template_id = $request->input('mail_template_id');
|
||||||
$query->where('mail_template_id', $request->mail_template_id);
|
$pg_id = $request->input('pg_id');
|
||||||
|
$mgr_cc_flag = $request->input('mgr_cc_flag');
|
||||||
|
$use_flag = $request->input('use_flag');
|
||||||
|
$subject = $request->input('subject');
|
||||||
|
|
||||||
|
if ($mail_template_id) {
|
||||||
|
$query->where('mail_template_id', $mail_template_id);
|
||||||
}
|
}
|
||||||
if ($request->filled('pg_id')) {
|
if ($pg_id) {
|
||||||
$query->where('pg_id', $request->pg_id);
|
$query->where('pg_id', $pg_id);
|
||||||
}
|
}
|
||||||
if ($request->has('mgr_cc_flag') && $request->mgr_cc_flag !== '') {
|
if ($mgr_cc_flag !== null && $mgr_cc_flag !== '') {
|
||||||
$query->where('mgr_cc_flag', $request->mgr_cc_flag);
|
$query->where('mgr_cc_flag', $mgr_cc_flag);
|
||||||
}
|
}
|
||||||
if ($request->has('use_flag') && $request->use_flag !== '') {
|
if ($use_flag !== null && $use_flag !== '') {
|
||||||
$query->where('use_flag', $request->use_flag);
|
$query->where('use_flag', $use_flag);
|
||||||
}
|
}
|
||||||
if ($request->filled('subject')) {
|
if ($subject) {
|
||||||
$query->where('subject', 'LIKE', "%{$request->subject}%");
|
$query->where('subject', 'LIKE', "%{$subject}%");
|
||||||
}
|
}
|
||||||
|
|
||||||
$templates = $query->orderBy($sort, $sort_type)->paginate(20);
|
$templates = $query->orderBy($sort, $sort_type)->paginate(20);
|
||||||
|
|
||||||
return view('admin.mail_templates.list', compact(
|
return view('admin.mail_templates.list', compact(
|
||||||
'templates', 'sort', 'sort_type'
|
'templates', 'sort', 'sort_type',
|
||||||
|
'mail_template_id', 'pg_id', 'mgr_cc_flag', 'use_flag', 'subject'
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 新規登録
|
|
||||||
*/
|
|
||||||
public function add(Request $request)
|
public function add(Request $request)
|
||||||
{
|
{
|
||||||
if ($request->isMethod('post')) {
|
if ($request->isMethod('post')) {
|
||||||
$data = $this->validateTemplate($request);
|
$data = $this->validateTemplate($request);
|
||||||
|
$data['operator_id'] = optional(\Auth::user())->ope_id ?? null;
|
||||||
|
|
||||||
MailTemplate::create($data);
|
MailTemplate::create($data);
|
||||||
|
|
||||||
return redirect()->route('mail_templates')
|
return redirect()->route('mail_templates')
|
||||||
->with('success', 'テンプレートを登録しました');
|
->with('success', '登録しました。');
|
||||||
}
|
}
|
||||||
|
|
||||||
$mailTemplate = new MailTemplate();
|
return view('admin.mail_templates.add', [
|
||||||
return view('admin.mail_templates.add', compact('mailTemplate'));
|
'mailTemplate' => new MailTemplate(),
|
||||||
|
'isEdit' => false,
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 編集
|
* 編集
|
||||||
*/
|
*/
|
||||||
public function edit($id, Request $request)
|
public function edit(int $id, Request $request)
|
||||||
{
|
{
|
||||||
$mailTemplate = MailTemplate::findOrFail($id);
|
$mailTemplate = MailTemplate::findOrFail($id);
|
||||||
|
|
||||||
if ($request->isMethod('post')) {
|
if ($request->isMethod('post')) {
|
||||||
$data = $this->validateTemplate($request);
|
$data = $this->validateTemplate($request);
|
||||||
|
$data['operator_id'] = optional(\Auth::user())->ope_id ?? null;
|
||||||
|
|
||||||
$mailTemplate->update($data);
|
$mailTemplate->update($data);
|
||||||
|
|
||||||
return redirect()->route('mail_templates')
|
return redirect()->route('mail_templates')
|
||||||
->with('success', 'テンプレートを更新しました');
|
->with('success', '更新しました。');
|
||||||
}
|
}
|
||||||
|
|
||||||
return view('admin.mail_templates.edit', compact('mailTemplate'));
|
return view('admin.mail_templates.edit', [
|
||||||
}
|
'mailTemplate' => $mailTemplate,
|
||||||
|
'isEdit' => true,
|
||||||
/**
|
]);
|
||||||
* 詳細表示
|
|
||||||
*/
|
|
||||||
public function info($id)
|
|
||||||
{
|
|
||||||
$mailTemplate = MailTemplate::findOrFail($id);
|
|
||||||
|
|
||||||
return view('admin.mail_templates.info', compact('mailTemplate'));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -128,29 +113,34 @@ class MailTemplateController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function delete(Request $request)
|
public function delete(Request $request)
|
||||||
{
|
{
|
||||||
$id = $request->input('id');
|
$pk = $request->input('pk', []);
|
||||||
if ($id) {
|
|
||||||
MailTemplate::destroy($id);
|
// 配列に統一
|
||||||
return redirect()->route('mail_templates')->with('success', 'テンプレートを削除しました');
|
$ids = is_array($pk) ? $pk : [$pk];
|
||||||
}
|
$ids = array_values(array_filter($ids, fn($v) => preg_match('/^\d+$/', (string) $v)));
|
||||||
return redirect()->route('mail_templates')->with('error', '削除対象が指定されていません');
|
|
||||||
|
if (empty($ids)) {
|
||||||
|
return redirect()->route('mail_templates')->with('error', '削除対象が選択されていません。');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MailTemplate::whereIn('mail_template_id', $ids)->delete();
|
||||||
|
|
||||||
|
return redirect()->route('mail_templates')->with('success', '削除しました。');
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* バリデーション共通化
|
* バリデーション共通化
|
||||||
*/
|
*/
|
||||||
private function validateTemplate(Request $request)
|
private function validateTemplate(Request $request)
|
||||||
{
|
{
|
||||||
return $request->validate([
|
return $request->validate([
|
||||||
'pg_id' => 'nullable|integer',
|
'pg_id' => 'required|integer',
|
||||||
'internal_id' => 'nullable|integer',
|
'internal_id' => 'required|integer',
|
||||||
'mgr_cc_flag' => 'nullable|boolean',
|
'mgr_cc_flag' => 'required|boolean',
|
||||||
'bcc_adrs' => 'nullable|string|max:255',
|
'bcc_adrs' => 'nullable|string|max:255',
|
||||||
'use_flag' => 'nullable|boolean',
|
'use_flag' => 'required|boolean',
|
||||||
'memo' => 'nullable|string|max:255',
|
'memo' => 'nullable|string|max:255',
|
||||||
'subject' => 'required|string|max:255',
|
'subject' => 'required|string|max:255',
|
||||||
'text' => 'required|string',
|
'text' => 'required|string',
|
||||||
'operator_id' => 'nullable|integer',
|
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -410,6 +410,15 @@ return [
|
|||||||
'device_workstart' => '稼働開始日',
|
'device_workstart' => '稼働開始日',
|
||||||
'device_replace' => '交換日',
|
'device_replace' => '交換日',
|
||||||
'device_remarks' => '備考',
|
'device_remarks' => '備考',
|
||||||
|
//SWA-97
|
||||||
|
'pg_id' => '使用プログラムID',
|
||||||
|
'internal_id' => '内部ID',
|
||||||
|
'mgr_cc_flag' => 'エリアマネージャー同報',
|
||||||
|
'bcc_adrs' => 'BCCアドレス',
|
||||||
|
'use_flag' => '使用フラグ',
|
||||||
|
'memo' => '備考',
|
||||||
|
'subject' => '件名',
|
||||||
|
'text' => '本文',
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,101 +1,146 @@
|
|||||||
@if(Session::has('success'))
|
<div class="card-body">
|
||||||
|
|
||||||
|
{{-- セッションメッセージ --}}
|
||||||
|
@if(Session::has('success'))
|
||||||
<div class="alert alert-success alert-dismissible" role="alert">
|
<div class="alert alert-success alert-dismissible" role="alert">
|
||||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||||
{{ Session::get('success') }}
|
{{ Session::get('success') }}
|
||||||
</div>
|
</div>
|
||||||
@elseif(Session::has('error'))
|
@elseif(Session::has('error'))
|
||||||
<div class="alert alert-danger alert-dismissible">
|
<div class="alert alert-danger alert-dismissible">
|
||||||
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||||
<h4><i class="icon fa fa-ban"></i> エラー:</h4>
|
<h4><i class="icon fa fa-ban"></i> エラー:</h4>
|
||||||
{!! Session::get('error') !!}
|
{!! Session::get('error') !!}
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
|
{{-- バリデーションエラー --}}
|
||||||
|
@if ($errors->any())
|
||||||
|
<div class="alert alert-danger alert-dismissible fade show" role="alert">
|
||||||
|
<h4>入力内容に不備があります:</h4>
|
||||||
|
<ul class="mb-0">
|
||||||
|
@foreach ($errors->all() as $error)
|
||||||
|
<li>{{ $error }}</li>
|
||||||
|
@endforeach
|
||||||
|
</ul>
|
||||||
|
<button type="button" class="close" data-dismiss="alert" aria-label="閉じる">
|
||||||
|
<span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
{{-- 編集・詳細時のみテンプレートID表示 --}}
|
|
||||||
@if($isEdit || $isInfo)
|
{{-- テンプレートID(メールテンプレートID)--}}
|
||||||
|
@if($isEdit)
|
||||||
<div class="form-group col-3">
|
<div class="form-group col-3">
|
||||||
<label>テンプレートID</label>
|
<label>メールテンプレートID</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-9">
|
<div class="form-group col-9">
|
||||||
<input type="text" value="{{ $mailTemplate->mail_template_id ?? '' }}" class="form-control form-control-lg" readonly />
|
{{-- システム自動入力・右寄せ・読取専用 --}}
|
||||||
|
<input type="text"
|
||||||
|
name="mail_template_id"
|
||||||
|
value="{{ $mailTemplate->mail_template_id ?? '' }}"
|
||||||
|
class="form-control form-control-lg text-right"
|
||||||
|
readonly />
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
<!-- 使用プログラムID -->
|
<!-- 使用プログラムID -->
|
||||||
<div class="form-group col-3">
|
<div class="form-group col-md-3">
|
||||||
<label class="required">使用プログラムID</label>
|
<label class="required">{{ __('validation.attributes.pg_id') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-9">
|
<div class="form-group col-md-9">
|
||||||
<input type="number" name="pg_id" value="{{ old('pg_id', $mailTemplate->pg_id ?? '') }}"
|
<input type="number" name="pg_id"
|
||||||
class="form-control form-control-lg" @if($isInfo) readonly @endif required />
|
value="{{ old('pg_id', $mailTemplate->pg_id ?? '') }}"
|
||||||
|
class="form-control form-control-lg text-right"
|
||||||
|
placeholder="{{ __('validation.attributes.pg_id') }}"
|
||||||
|
min="0" required>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 内部ID -->
|
{{-- 内部ID --}}
|
||||||
<div class="form-group col-3">
|
<div class="form-group col-3">
|
||||||
<label>内部ID</label>
|
<label class="required">{{ __('validation.attributes.internal_id') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-9">
|
<div class="form-group col-9">
|
||||||
<input type="number" name="internal_id" value="{{ old('internal_id', $mailTemplate->internal_id ?? '') }}"
|
{{-- 数値入力・必須・負数NG(0以上)・右寄せ --}}
|
||||||
class="form-control form-control-lg" @if($isInfo) readonly @endif />
|
<input type="number"
|
||||||
|
name="internal_id"
|
||||||
|
value="{{ old('internal_id', $mailTemplate->internal_id ?? '') }}"
|
||||||
|
class="form-control form-control-lg text-right"
|
||||||
|
placeholder="{{ __('validation.attributes.internal_id') }}"
|
||||||
|
min="0"
|
||||||
|
required />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- エリアマネージャー同報 -->
|
{{-- エリアマネージャー同報 --}}
|
||||||
<div class="form-group col-3">
|
<div class="form-group col-md-3">
|
||||||
<label>エリアマネージャー同報</label>
|
<label class="required">{{ __('validation.attributes.mgr_cc_flag') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-9 mt-2">
|
<div class="form-group col-md-9 d-flex align-items-center">
|
||||||
|
|
||||||
<div class="form-check form-check-inline">
|
<div class="form-check form-check-inline">
|
||||||
<input class="form-check-input" type="radio" name="mgr_cc_flag" value="1"
|
<input class="form-check-input" type="radio" name="mgr_cc_flag" value="1"
|
||||||
@if(old('mgr_cc_flag', $mailTemplate->mgr_cc_flag ?? '') == 1) checked @endif
|
@if(old('mgr_cc_flag', $mailTemplate->mgr_cc_flag ?? 1) == 1) checked @endif required>
|
||||||
@if($isInfo) disabled @endif>
|
|
||||||
<label class="form-check-label">同報する</label>
|
<label class="form-check-label">同報する</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-check form-check-inline">
|
<div class="form-check form-check-inline ml-3">
|
||||||
<input class="form-check-input" type="radio" name="mgr_cc_flag" value="0"
|
<input class="form-check-input" type="radio" name="mgr_cc_flag" value="0"
|
||||||
@if(old('mgr_cc_flag', $mailTemplate->mgr_cc_flag ?? '') == 0) checked @endif
|
@if(old('mgr_cc_flag', $mailTemplate->mgr_cc_flag ?? 1) == 0) checked @endif>
|
||||||
@if($isInfo) disabled @endif>
|
|
||||||
<label class="form-check-label">同報しない</label>
|
<label class="form-check-label">同報しない</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- BCCアドレス -->
|
<!-- BCCアドレス -->
|
||||||
<div class="form-group col-3">
|
<div class="form-group col-3">
|
||||||
<label>BCCアドレス</label>
|
<label>{{ __('validation.attributes.bcc_adrs') }}</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-9">
|
<div class="form-group col-9">
|
||||||
<input type="text" name="bcc_adrs" value="{{ old('bcc_adrs', $mailTemplate->bcc_adrs ?? '') }}"
|
{{-- 半角128文字以内・左寄せ --}}
|
||||||
class="form-control form-control-lg" @if($isInfo) readonly @endif />
|
<input type="text"
|
||||||
|
name="bcc_adrs"
|
||||||
|
value="{{ old('bcc_adrs', $mailTemplate->bcc_adrs ?? '') }}"
|
||||||
|
class="form-control form-control-lg text-left"
|
||||||
|
placeholder="{{ __('validation.attributes.bcc_adrs') }}"
|
||||||
|
maxlength="128"
|
||||||
|
pattern="^[\x21-\x7E]+$"
|
||||||
|
title="半角文字で128文字以内で入力してください。">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 使用フラグ -->
|
{{-- 使用フラグ --}}
|
||||||
<div class="form-group col-3">
|
<div class="form-group col-md-3">
|
||||||
<label>使用フラグ</label>
|
<label class="required">使用フラグ</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-9 mt-2">
|
<div class="form-group col-md-9 d-flex align-items-center">
|
||||||
<div class="form-check form-check-inline">
|
<div class="form-check form-check-inline">
|
||||||
<input class="form-check-input" type="radio" name="use_flag" value="1"
|
<input class="form-check-input" type="radio" name="use_flag" value="1"
|
||||||
@if(old('use_flag', $mailTemplate->use_flag ?? '') == 1) checked @endif
|
@if(old('use_flag', $mailTemplate->use_flag ?? 1) == 1) checked @endif required>
|
||||||
@if($isInfo) disabled @endif>
|
|
||||||
<label class="form-check-label">使用する</label>
|
<label class="form-check-label">使用する</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-check form-check-inline">
|
<div class="form-check form-check-inline ml-3">
|
||||||
<input class="form-check-input" type="radio" name="use_flag" value="0"
|
<input class="form-check-input" type="radio" name="use_flag" value="0"
|
||||||
@if(old('use_flag', $mailTemplate->use_flag ?? '') == 0) checked @endif
|
@if(old('use_flag', $mailTemplate->use_flag ?? 1) == 0) checked @endif required>
|
||||||
@if($isInfo) disabled @endif>
|
|
||||||
<label class="form-check-label">使用しない</label>
|
<label class="form-check-label">使用しない</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- メモ -->
|
<!-- メモ(備考) -->
|
||||||
<div class="form-group col-3">
|
<div class="form-group col-3">
|
||||||
<label>メモ</label>
|
<label>備考</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-9">
|
<div class="form-group col-9">
|
||||||
<input type="text" name="memo" value="{{ old('memo', $mailTemplate->memo ?? '') }}"
|
{{-- 全角可・255文字以内・左寄せ --}}
|
||||||
class="form-control form-control-lg" @if($isInfo) readonly @endif />
|
<input type="text"
|
||||||
|
name="memo"
|
||||||
|
value="{{ old('memo', $mailTemplate->memo ?? '') }}"
|
||||||
|
class="form-control form-control-lg text-left"
|
||||||
|
placeholder="{{ __('validation.attributes.memo') }}"
|
||||||
|
maxlength="255"
|
||||||
|
title="255文字以内で入力してください。">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 件名 -->
|
<!-- 件名 -->
|
||||||
@ -103,8 +148,15 @@
|
|||||||
<label class="required">件名</label>
|
<label class="required">件名</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-9">
|
<div class="form-group col-9">
|
||||||
<input type="text" name="subject" value="{{ old('subject', $mailTemplate->subject ?? '') }}"
|
{{-- 全角可・128文字以内・左寄せ・必須 --}}
|
||||||
class="form-control form-control-lg" @if($isInfo) readonly @endif required />
|
<input type="text"
|
||||||
|
name="subject"
|
||||||
|
value="{{ old('subject', $mailTemplate->subject ?? '') }}"
|
||||||
|
class="form-control form-control-lg text-left"
|
||||||
|
placeholder="{{ __('validation.attributes.subject') }}"
|
||||||
|
maxlength="128"
|
||||||
|
required
|
||||||
|
title="128文字以内で入力してください。">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 本文 -->
|
<!-- 本文 -->
|
||||||
@ -112,29 +164,40 @@
|
|||||||
<label class="required">本文</label>
|
<label class="required">本文</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-9">
|
<div class="form-group col-9">
|
||||||
<textarea name="text" class="form-control form-control-lg" rows="8"
|
{{-- 全角可・400文字以内・左寄せ・必須 --}}
|
||||||
@if($isInfo) readonly @endif required>{{ old('text', $mailTemplate->text ?? '') }}</textarea>
|
<textarea name="text"
|
||||||
</div>
|
class="form-control form-control-lg text-left"
|
||||||
|
placeholder="{{ __('validation.attributes.text') }}"
|
||||||
<!-- オペレータID -->
|
rows="8"
|
||||||
<div class="form-group col-3">
|
maxlength="400"
|
||||||
<label>オペレータID</label>
|
required
|
||||||
</div>
|
title="400文字以内で入力してください。">{{ old('text', $mailTemplate->text ?? '') }}</textarea>
|
||||||
<div class="form-group col-9">
|
|
||||||
<input type="number" name="operator_id" value="{{ old('operator_id', $mailTemplate->operator_id ?? '') }}"
|
|
||||||
class="form-control form-control-lg" @if($isInfo) readonly @endif />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{-- ===== 下部ボタン領域 ===== --}}
|
{{-- ▼ 下部ボタン --}}
|
||||||
|
<div class="row mt-4">
|
||||||
|
<div class="form-group col-md-10 d-flex align-items-center gap-2 justify-content-start">
|
||||||
|
|
||||||
{{-- 下部ボタン --}}
|
{{-- 登録ボタン --}}
|
||||||
@if($isEdit)
|
@if($isEdit)
|
||||||
<button type="submit" class="btn btn-lg btn-success register">{{ __('保存') }}</button>
|
<button type="button" id="register_edit" class="btn btn-lg btn-success mr-2">
|
||||||
<button type="submit" class="btn btn-lg btn-secondary register">{{ __('戻る') }}</button>
|
{{ __('登録') }}
|
||||||
|
</button>
|
||||||
@else
|
@else
|
||||||
<button type="submit" class="btn btn-lg btn-success register">{{ __('登録') }}</button>
|
<button type="button" id="register" class="btn btn-lg btn-success mr-2 register">
|
||||||
<button type="submit" class="btn btn-lg btn-danger register">{{ __('削除') }}</button>
|
{{ __('登録') }}
|
||||||
|
</button>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
|
{{-- 削除ボタン(編集時のみ表示) --}}
|
||||||
|
@if($isEdit)
|
||||||
|
<button type="button" id="delete_edit" class="btn btn-lg btn-danger">
|
||||||
|
{{ __('削除') }}
|
||||||
|
</button>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
@extends('layouts.app')
|
@extends('layouts.app')
|
||||||
@section('title', '[東京都|〇〇駐輪場] メール送信テンプレート新規登録')
|
@section('title', '新規')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<!-- Content Header (Page header) -->
|
<!-- Content Header (Page header) -->
|
||||||
@ -7,14 +7,14 @@
|
|||||||
<div class="container-fluid">
|
<div class="container-fluid">
|
||||||
<div class="row mb-2">
|
<div class="row mb-2">
|
||||||
<div class="col-lg-6">
|
<div class="col-lg-6">
|
||||||
<h1 class="m-0 text-dark">新規登録</h1>
|
<h1 class="m-0 text-dark">新規</h1>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-6">
|
<div class="col-lg-6">
|
||||||
<ol class="breadcrumb float-sm-right text-sm">
|
<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('home') }}">ホーム</a></li>
|
||||||
<!-- <li class="breadcrumb-item"><a href="javascript:void(0);">[東京都|〇〇駐輪場]</a></li> -->
|
<!-- <li class="breadcrumb-item"><a href="javascript:void(0);">[東京都|〇〇駐輪場]</a></li> -->
|
||||||
<li class="breadcrumb-item"><a href="{{ route('mail_templates') }}">メール送信テンプレート</a></li>
|
<li class="breadcrumb-item"><a href="{{ route('mail_templates') }}">メール送信テンプレート</a></li>
|
||||||
<li class="breadcrumb-item active">新規登録</li>
|
<li class="breadcrumb-item active">新規</li>
|
||||||
</ol>
|
</ol>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -22,25 +22,22 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- /.content-header -->
|
<!-- /.content-header -->
|
||||||
|
|
||||||
<!-- Main content -->
|
|
||||||
<section class="content">
|
<section class="content">
|
||||||
<div class="container-fluid">
|
<div class="container-fluid">
|
||||||
<!-- Card -->
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-12">
|
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<form method="post" action="{{ route('mail_templates_add') }}" enctype="multipart/form-data">
|
|
||||||
|
<form id="form_register" action="{{ route('mail_templates_add') }}" method="POST" enctype="multipart/form-data">
|
||||||
@csrf
|
@csrf
|
||||||
@include('admin.mail_templates._form', [
|
@include('admin.mail_templates._form', [
|
||||||
'isEdit' => false,
|
'isEdit' => false,
|
||||||
'isInfo' => false,
|
|
||||||
'mailTemplate' => $mailTemplate,
|
'mailTemplate' => $mailTemplate,
|
||||||
])
|
])
|
||||||
</form>
|
</form>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
<!-- /.content -->
|
<!-- /.content -->
|
||||||
|
|
||||||
@endsection
|
@endsection
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
@extends('layouts.app')
|
@extends('layouts.app')
|
||||||
@section('title', '[東京都|〇〇駐輪場] メール送信テンプレート')
|
@section('title', '編集')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
@ -21,13 +21,23 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- /.content-header -->
|
<!-- /.content-header -->
|
||||||
<section class="content">
|
<section class="content">
|
||||||
<div class="container-fluid">
|
<div class="container-fluid">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<form method="post" action="{{ route('mail_templates_edit', ['id' => $mailTemplate->mail_template_id]) }}" enctype="multipart/form-data">
|
{{-- 編集フォーム --}}
|
||||||
|
<form id="form_edit" action="{{ route('mail_templates_edit', ['id' => $mailTemplate->mail_template_id]) }}" method="POST">
|
||||||
@csrf
|
@csrf
|
||||||
@include('admin.mail_templates._form', ['isEdit' => 1, 'isInfo' => 0, 'mailTemplate' => $mailTemplate])
|
@include('admin.mail_templates._form', [
|
||||||
|
'isEdit' => true,
|
||||||
|
'mailTemplate' => $mailTemplate,
|
||||||
|
])
|
||||||
|
</form>
|
||||||
|
|
||||||
|
{{-- 削除フォーム(非表示) --}}
|
||||||
|
<form id="form_delete" action="{{ route('mail_templates_delete') }}" method="POST" style="display:none;">
|
||||||
|
@csrf
|
||||||
|
<input type="hidden" name="pk[]" value="{{ $mailTemplate->mail_template_id }}">
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -1,21 +0,0 @@
|
|||||||
@extends('layouts.app')
|
|
||||||
@section('title', '[東京都|〇〇駐輪場] メール送信テンプレート')
|
|
||||||
|
|
||||||
@section('content')
|
|
||||||
<div class="content-header">
|
|
||||||
<div class="container-fluid">
|
|
||||||
<h1 class="m-0 text-dark">メール送信テンプレート詳細</h1>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<section class="content">
|
|
||||||
<div class="container-fluid">
|
|
||||||
<div class="card">
|
|
||||||
{{-- info 画面なので action は不要 --}}
|
|
||||||
<form method="post" enctype="multipart/form-data">
|
|
||||||
@csrf
|
|
||||||
@include('admin.mail_templates._form', ['isEdit' => 0, 'isInfo' => 1, 'mailTemplate' => $mailTemplate])
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
@endsection
|
|
||||||
@ -1,6 +1,6 @@
|
|||||||
@extends('layouts.app')
|
@extends('layouts.app')
|
||||||
|
|
||||||
@section('title', '[東京都|〇〇駐輪場] メール送信テンプレート')
|
@section('title', 'メール送信テンプレート')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="content-header">
|
<div class="content-header">
|
||||||
@ -20,16 +20,41 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<section class="content">
|
<section class="content">
|
||||||
|
<div class="container-fluid">
|
||||||
|
@if(Session::has('success'))
|
||||||
|
<div class="alert alert-success alert-dismissible" role="alert">
|
||||||
|
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||||
|
{{ Session::get('success') }}
|
||||||
|
</div>
|
||||||
|
@elseif(Session::has('error'))
|
||||||
|
<div class="alert alert-danger alert-dismissible">
|
||||||
|
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
||||||
|
<h4><i class="icon fa fa-ban"></i>入力内容に不備があります:</h4>
|
||||||
|
{!! Session::get('error') !!}
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@if ($errors->any())
|
||||||
|
<div class="alert alert-danger alert-dismissible fade show" role="alert">
|
||||||
|
<h4>入力内容に不備があります:</h4>
|
||||||
|
<ul class="mb-0">
|
||||||
|
@foreach ($errors->all() as $error)
|
||||||
|
<li>{{ $error }}</li>
|
||||||
|
@endforeach
|
||||||
|
</ul>
|
||||||
|
<button type="button" class="close" data-dismiss="alert" aria-label="閉じる">
|
||||||
|
<span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
<!-- ▼ 絞り込みフィルター -->
|
<!-- ▼ 絞り込みフィルター -->
|
||||||
<div class="col-lg-12">
|
<div class="col-lg-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
|
|
||||||
{{-- タイトル区 --}}
|
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h3 class="card-title">絞り込みフィルター</h3>
|
<h3 class="card-title">絞り込みフィルター</h3>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{-- フィルタフォーム主体 --}}
|
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<form action="{{ route('mail_templates') }}" method="POST" id="list-form" class="form-horizontal">
|
<form action="{{ route('mail_templates') }}" method="POST" id="list-form" class="form-horizontal">
|
||||||
@csrf
|
@csrf
|
||||||
@ -40,14 +65,14 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
{{-- 行1 --}}
|
{{-- 行1 --}}
|
||||||
<tr>
|
<tr>
|
||||||
<th style="width: 18%; text-align: left; vertical-align: middle;">メールテンプレートID</th>
|
<th style="width: 18%; text-align: left;">メールテンプレートID</th>
|
||||||
<td style="width: 32%;">
|
<td style="width: 32%;">
|
||||||
<input type="text" name="mail_template_id"
|
<input type="text" name="mail_template_id"
|
||||||
value="{{ old('mail_template_id', $mail_template_id ?? '') }}"
|
value="{{ old('mail_template_id', $mail_template_id ?? '') }}"
|
||||||
class="form-control input-sm" placeholder="123456">
|
class="form-control input-sm" placeholder="123456">
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<th style="width: 18%; text-align: left; vertical-align: middle;">使用プログラムID</th>
|
<th style="width: 18%; text-align: left;">使用プログラムID</th>
|
||||||
<td style="width: 32%;">
|
<td style="width: 32%;">
|
||||||
<input type="text" name="pg_id"
|
<input type="text" name="pg_id"
|
||||||
value="{{ old('pg_id', $pg_id ?? '') }}"
|
value="{{ old('pg_id', $pg_id ?? '') }}"
|
||||||
@ -57,28 +82,28 @@
|
|||||||
|
|
||||||
{{-- 行2 --}}
|
{{-- 行2 --}}
|
||||||
<tr>
|
<tr>
|
||||||
<th style="text-align: left; vertical-align: middle;">エリアマネージャー同報</th>
|
<th style="text-align: left;">エリアマネージャー同報</th>
|
||||||
<td>
|
<td>
|
||||||
<select name="mgr_cc_flag" class="form-control input-sm">
|
<select name="mgr_cc_flag" class="form-control input-sm">
|
||||||
<option value="">全て</option>
|
<option value="">全て</option>
|
||||||
<option value="1" {{ old('mgr_cc_flag', $mgr_cc_flag ?? '') === '1' ? 'selected' : '' }}>同報する</option>
|
<option value="1" {{ old('mgr_cc_flag', $mgr_cc_flag ?? '') == '1' ? 'selected' : '' }}>同報する</option>
|
||||||
<option value="0" {{ old('mgr_cc_flag', $mgr_cc_flag ?? '') === '0' ? 'selected' : '' }}>同報市内</option>
|
<option value="0" {{ old('mgr_cc_flag', $mgr_cc_flag ?? '') == '0' ? 'selected' : '' }}>同報しない</option>
|
||||||
</select>
|
</select>
|
||||||
</td>
|
</td>
|
||||||
|
|
||||||
<th style="text-align: left; vertical-align: middle;">使用フラグ</th>
|
<th style="text-align: left;">使用フラグ</th>
|
||||||
<td>
|
<td>
|
||||||
<select name="use_flag" class="form-control input-sm">
|
<select name="use_flag" class="form-control input-sm">
|
||||||
<option value="">全て</option>
|
<option value="">全て</option>
|
||||||
<option value="1" {{ old('use_flag', $use_flag ?? '') === '1' ? 'selected' : '' }}>使用する</option>
|
<option value="1" {{ old('use_flag', $use_flag ?? '') == '1' ? 'selected' : '' }}>使用する</option>
|
||||||
<option value="0" {{ old('use_flag', $use_flag ?? '') === '0' ? 'selected' : '' }}>使用しない</option>
|
<option value="0" {{ old('use_flag', $use_flag ?? '') == '0' ? 'selected' : '' }}>使用しない</option>
|
||||||
</select>
|
</select>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
{{-- 行3 --}}
|
{{-- 行3 --}}
|
||||||
<tr>
|
<tr>
|
||||||
<th style="text-align: left; vertical-align: middle;">件名</th>
|
<th style="text-align: left;">件名</th>
|
||||||
<td colspan="3">
|
<td colspan="3">
|
||||||
<input type="text" name="subject"
|
<input type="text" name="subject"
|
||||||
value="{{ old('subject', $subject ?? '') }}"
|
value="{{ old('subject', $subject ?? '') }}"
|
||||||
@ -89,8 +114,8 @@
|
|||||||
</table>
|
</table>
|
||||||
|
|
||||||
{{-- ボタン --}}
|
{{-- ボタン --}}
|
||||||
<div class="form-group col-12 text-left">
|
<div class="form-group col-12 text-left mt-3">
|
||||||
<button type="submit" name="action" value="filter" class="btn btn-default">絞り込み</button>
|
<button type="submit" name="action" value="filter" class="btn btn-default mr10">絞り込み</button>
|
||||||
<button type="submit" name="action" value="reset" class="btn btn-default">解除</button>
|
<button type="submit" name="action" value="reset" class="btn btn-default">解除</button>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
@ -99,6 +124,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- ▲ 絞り込みフィルター -->
|
<!-- ▲ 絞り込みフィルター -->
|
||||||
|
|
||||||
|
|
||||||
<!-- ▼ ツールバー -->
|
<!-- ▼ ツールバー -->
|
||||||
<div class="container-fluid mb20">
|
<div class="container-fluid mb20">
|
||||||
<button type="button" class="btn btn-sm btn-default mr10" onclick="location.href='{{ route('mail_templates_add') }}'">新規</button>
|
<button type="button" class="btn btn-sm btn-default mr10" onclick="location.href='{{ route('mail_templates_add') }}'">新規</button>
|
||||||
@ -115,7 +141,7 @@
|
|||||||
<form action="{{ route('mail_templates_delete') }}" method="POST" id="form_delete">
|
<form action="{{ route('mail_templates_delete') }}" method="POST" id="form_delete">
|
||||||
@csrf
|
@csrf
|
||||||
<table class="table table-bordered dataTable text-nowrap">
|
<table class="table table-bordered dataTable text-nowrap">
|
||||||
<thead>
|
<thead class="thead-light">
|
||||||
<tr>
|
<tr>
|
||||||
{{-- チェック + 編集ボタン --}}
|
{{-- チェック + 編集ボタン --}}
|
||||||
<th style="width:140px;" class="text-left">
|
<th style="width:140px;" class="text-left">
|
||||||
|
|||||||
@ -43,7 +43,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group col-12 text-left">
|
<div class="form-group col-12 text-left">
|
||||||
<button type="submit" name="action" value="filter" class="btn btn-default">絞り込み</button>
|
<button type="submit" name="action" value="filter" class="btn btn-default mr10">絞り込み</button>
|
||||||
<a href="{{ route('operator_ques') }}" class="btn btn-default">解除</a>
|
<a href="{{ route('operator_ques') }}" class="btn btn-default">解除</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user