This commit is contained in:
parent
1d5db12a27
commit
307ab7ccb2
@ -11,116 +11,101 @@ class MailTemplateController extends Controller
|
||||
/**
|
||||
* 一覧表示
|
||||
*/
|
||||
public function list(Request $request)
|
||||
public function list(Request $request)
|
||||
{
|
||||
if ($request->input('action') === 'reset') {
|
||||
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 = [
|
||||
'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', 'asc');
|
||||
|
||||
if (!in_array($sort, $allowedSorts)) {
|
||||
$sort = 'mail_template_id';
|
||||
}
|
||||
|
||||
if (!in_array($sort_type, ['asc', 'desc'])) {
|
||||
$sort_type = 'desc';
|
||||
}
|
||||
}
|
||||
|
||||
$query = MailTemplate::query();
|
||||
|
||||
// 絞り込み
|
||||
if ($request->filled('mail_template_id')) {
|
||||
$query->where('mail_template_id', $request->mail_template_id);
|
||||
// === 絞り込み ===
|
||||
$mail_template_id = $request->input('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')) {
|
||||
$query->where('pg_id', $request->pg_id);
|
||||
if ($pg_id) {
|
||||
$query->where('pg_id', $pg_id);
|
||||
}
|
||||
if ($request->has('mgr_cc_flag') && $request->mgr_cc_flag !== '') {
|
||||
$query->where('mgr_cc_flag', $request->mgr_cc_flag);
|
||||
if ($mgr_cc_flag !== null && $mgr_cc_flag !== '') {
|
||||
$query->where('mgr_cc_flag', $mgr_cc_flag);
|
||||
}
|
||||
if ($request->has('use_flag') && $request->use_flag !== '') {
|
||||
$query->where('use_flag', $request->use_flag);
|
||||
if ($use_flag !== null && $use_flag !== '') {
|
||||
$query->where('use_flag', $use_flag);
|
||||
}
|
||||
if ($request->filled('subject')) {
|
||||
$query->where('subject', 'LIKE', "%{$request->subject}%");
|
||||
if ($subject) {
|
||||
$query->where('subject', 'LIKE', "%{$subject}%");
|
||||
}
|
||||
|
||||
$templates = $query->orderBy($sort, $sort_type)->paginate(20);
|
||||
|
||||
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)
|
||||
{
|
||||
if ($request->isMethod('post')) {
|
||||
$data = $this->validateTemplate($request);
|
||||
$data['operator_id'] = optional(\Auth::user())->ope_id ?? null;
|
||||
|
||||
MailTemplate::create($data);
|
||||
|
||||
return redirect()->route('mail_templates')
|
||||
->with('success', 'テンプレートを登録しました');
|
||||
->with('success', '登録しました。');
|
||||
}
|
||||
|
||||
$mailTemplate = new MailTemplate();
|
||||
return view('admin.mail_templates.add', compact('mailTemplate'));
|
||||
return view('admin.mail_templates.add', [
|
||||
'mailTemplate' => new MailTemplate(),
|
||||
'isEdit' => false,
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* 編集
|
||||
*/
|
||||
public function edit($id, Request $request)
|
||||
public function edit(int $id, Request $request)
|
||||
{
|
||||
$mailTemplate = MailTemplate::findOrFail($id);
|
||||
|
||||
if ($request->isMethod('post')) {
|
||||
$data = $this->validateTemplate($request);
|
||||
$data['operator_id'] = optional(\Auth::user())->ope_id ?? null;
|
||||
|
||||
$mailTemplate->update($data);
|
||||
|
||||
return redirect()->route('mail_templates')
|
||||
->with('success', 'テンプレートを更新しました');
|
||||
->with('success', '更新しました。');
|
||||
}
|
||||
|
||||
return view('admin.mail_templates.edit', compact('mailTemplate'));
|
||||
}
|
||||
|
||||
/**
|
||||
* 詳細表示
|
||||
*/
|
||||
public function info($id)
|
||||
{
|
||||
$mailTemplate = MailTemplate::findOrFail($id);
|
||||
|
||||
return view('admin.mail_templates.info', compact('mailTemplate'));
|
||||
return view('admin.mail_templates.edit', [
|
||||
'mailTemplate' => $mailTemplate,
|
||||
'isEdit' => true,
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -128,29 +113,34 @@ class MailTemplateController extends Controller
|
||||
*/
|
||||
public function delete(Request $request)
|
||||
{
|
||||
$id = $request->input('id');
|
||||
if ($id) {
|
||||
MailTemplate::destroy($id);
|
||||
return redirect()->route('mail_templates')->with('success', 'テンプレートを削除しました');
|
||||
}
|
||||
return redirect()->route('mail_templates')->with('error', '削除対象が指定されていません');
|
||||
}
|
||||
$pk = $request->input('pk', []);
|
||||
|
||||
// 配列に統一
|
||||
$ids = is_array($pk) ? $pk : [$pk];
|
||||
$ids = array_values(array_filter($ids, fn($v) => preg_match('/^\d+$/', (string) $v)));
|
||||
|
||||
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)
|
||||
{
|
||||
return $request->validate([
|
||||
'pg_id' => 'nullable|integer',
|
||||
'internal_id' => 'nullable|integer',
|
||||
'mgr_cc_flag' => 'nullable|boolean',
|
||||
'pg_id' => 'required|integer',
|
||||
'internal_id' => 'required|integer',
|
||||
'mgr_cc_flag' => 'required|boolean',
|
||||
'bcc_adrs' => 'nullable|string|max:255',
|
||||
'use_flag' => 'nullable|boolean',
|
||||
'use_flag' => 'required|boolean',
|
||||
'memo' => 'nullable|string|max:255',
|
||||
'subject' => 'required|string|max:255',
|
||||
'text' => 'required|string',
|
||||
'operator_id' => 'nullable|integer',
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -409,7 +409,16 @@ return [
|
||||
'device_work' => '稼働状況',
|
||||
'device_workstart' => '稼働開始日',
|
||||
'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="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
|
||||
|
||||
|
||||
<div class="card-body">
|
||||
|
||||
{{-- セッションメッセージ --}}
|
||||
@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="row">
|
||||
{{-- 編集・詳細時のみテンプレートID表示 --}}
|
||||
@if($isEdit || $isInfo)
|
||||
<div class="form-group col-3">
|
||||
<label>テンプレートID</label>
|
||||
</div>
|
||||
<div class="form-group col-9">
|
||||
<input type="text" value="{{ $mailTemplate->mail_template_id ?? '' }}" class="form-control form-control-lg" readonly />
|
||||
</div>
|
||||
|
||||
{{-- テンプレートID(メールテンプレートID)--}}
|
||||
@if($isEdit)
|
||||
<div class="form-group col-3">
|
||||
<label>メールテンプレートID</label>
|
||||
</div>
|
||||
<div class="form-group col-9">
|
||||
{{-- システム自動入力・右寄せ・読取専用 --}}
|
||||
<input type="text"
|
||||
name="mail_template_id"
|
||||
value="{{ $mailTemplate->mail_template_id ?? '' }}"
|
||||
class="form-control form-control-lg text-right"
|
||||
readonly />
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<!-- 使用プログラムID -->
|
||||
<div class="form-group col-3">
|
||||
<label class="required">使用プログラムID</label>
|
||||
<div class="form-group col-md-3">
|
||||
<label class="required">{{ __('validation.attributes.pg_id') }}</label>
|
||||
</div>
|
||||
<div class="form-group col-9">
|
||||
<input type="number" name="pg_id" value="{{ old('pg_id', $mailTemplate->pg_id ?? '') }}"
|
||||
class="form-control form-control-lg" @if($isInfo) readonly @endif required />
|
||||
<div class="form-group col-md-9">
|
||||
<input type="number" name="pg_id"
|
||||
value="{{ old('pg_id', $mailTemplate->pg_id ?? '') }}"
|
||||
class="form-control form-control-lg text-right"
|
||||
placeholder="{{ __('validation.attributes.pg_id') }}"
|
||||
min="0" required>
|
||||
</div>
|
||||
|
||||
<!-- 内部ID -->
|
||||
{{-- 内部ID --}}
|
||||
<div class="form-group col-3">
|
||||
<label>内部ID</label>
|
||||
<label class="required">{{ __('validation.attributes.internal_id') }}</label>
|
||||
</div>
|
||||
<div class="form-group col-9">
|
||||
<input type="number" name="internal_id" value="{{ old('internal_id', $mailTemplate->internal_id ?? '') }}"
|
||||
class="form-control form-control-lg" @if($isInfo) readonly @endif />
|
||||
{{-- 数値入力・必須・負数NG(0以上)・右寄せ --}}
|
||||
<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 class="form-group col-3">
|
||||
<label>エリアマネージャー同報</label>
|
||||
{{-- エリアマネージャー同報 --}}
|
||||
<div class="form-group col-md-3">
|
||||
<label class="required">{{ __('validation.attributes.mgr_cc_flag') }}</label>
|
||||
</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">
|
||||
<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($isInfo) disabled @endif>
|
||||
@if(old('mgr_cc_flag', $mailTemplate->mgr_cc_flag ?? 1) == 1) checked @endif required>
|
||||
<label class="form-check-label">同報する</label>
|
||||
</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"
|
||||
@if(old('mgr_cc_flag', $mailTemplate->mgr_cc_flag ?? '') == 0) checked @endif
|
||||
@if($isInfo) disabled @endif>
|
||||
@if(old('mgr_cc_flag', $mailTemplate->mgr_cc_flag ?? 1) == 0) checked @endif>
|
||||
<label class="form-check-label">同報しない</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- BCCアドレス -->
|
||||
<div class="form-group col-3">
|
||||
<label>BCCアドレス</label>
|
||||
<label>{{ __('validation.attributes.bcc_adrs') }}</label>
|
||||
</div>
|
||||
<div class="form-group col-9">
|
||||
<input type="text" name="bcc_adrs" value="{{ old('bcc_adrs', $mailTemplate->bcc_adrs ?? '') }}"
|
||||
class="form-control form-control-lg" @if($isInfo) readonly @endif />
|
||||
{{-- 半角128文字以内・左寄せ --}}
|
||||
<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 class="form-group col-3">
|
||||
<label>使用フラグ</label>
|
||||
{{-- 使用フラグ --}}
|
||||
<div class="form-group col-md-3">
|
||||
<label class="required">使用フラグ</label>
|
||||
</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">
|
||||
<input class="form-check-input" type="radio" name="use_flag" value="1"
|
||||
@if(old('use_flag', $mailTemplate->use_flag ?? '') == 1) checked @endif
|
||||
@if($isInfo) disabled @endif>
|
||||
@if(old('use_flag', $mailTemplate->use_flag ?? 1) == 1) checked @endif required>
|
||||
<label class="form-check-label">使用する</label>
|
||||
</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"
|
||||
@if(old('use_flag', $mailTemplate->use_flag ?? '') == 0) checked @endif
|
||||
@if($isInfo) disabled @endif>
|
||||
@if(old('use_flag', $mailTemplate->use_flag ?? 1) == 0) checked @endif required>
|
||||
<label class="form-check-label">使用しない</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- メモ -->
|
||||
<!-- メモ(備考) -->
|
||||
<div class="form-group col-3">
|
||||
<label>メモ</label>
|
||||
<label>備考</label>
|
||||
</div>
|
||||
<div class="form-group col-9">
|
||||
<input type="text" name="memo" value="{{ old('memo', $mailTemplate->memo ?? '') }}"
|
||||
class="form-control form-control-lg" @if($isInfo) readonly @endif />
|
||||
{{-- 全角可・255文字以内・左寄せ --}}
|
||||
<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>
|
||||
|
||||
<!-- 件名 -->
|
||||
@ -103,8 +148,15 @@
|
||||
<label class="required">件名</label>
|
||||
</div>
|
||||
<div class="form-group col-9">
|
||||
<input type="text" name="subject" value="{{ old('subject', $mailTemplate->subject ?? '') }}"
|
||||
class="form-control form-control-lg" @if($isInfo) readonly @endif required />
|
||||
{{-- 全角可・128文字以内・左寄せ・必須 --}}
|
||||
<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>
|
||||
|
||||
<!-- 本文 -->
|
||||
@ -112,29 +164,40 @@
|
||||
<label class="required">本文</label>
|
||||
</div>
|
||||
<div class="form-group col-9">
|
||||
<textarea name="text" class="form-control form-control-lg" rows="8"
|
||||
@if($isInfo) readonly @endif required>{{ old('text', $mailTemplate->text ?? '') }}</textarea>
|
||||
</div>
|
||||
|
||||
<!-- オペレータID -->
|
||||
<div class="form-group col-3">
|
||||
<label>オペレータID</label>
|
||||
</div>
|
||||
<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 />
|
||||
{{-- 全角可・400文字以内・左寄せ・必須 --}}
|
||||
<textarea name="text"
|
||||
class="form-control form-control-lg text-left"
|
||||
placeholder="{{ __('validation.attributes.text') }}"
|
||||
rows="8"
|
||||
maxlength="400"
|
||||
required
|
||||
title="400文字以内で入力してください。">{{ old('text', $mailTemplate->text ?? '') }}</textarea>
|
||||
</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)
|
||||
<button type="submit" class="btn btn-lg btn-success register">{{ __('保存') }}</button>
|
||||
<button type="submit" class="btn btn-lg btn-secondary register">{{ __('戻る') }}</button>
|
||||
@else
|
||||
<button type="submit" class="btn btn-lg btn-success register">{{ __('登録') }}</button>
|
||||
<button type="submit" class="btn btn-lg btn-danger register">{{ __('削除') }}</button>
|
||||
@endif
|
||||
{{-- 登録ボタン --}}
|
||||
@if($isEdit)
|
||||
<button type="button" id="register_edit" class="btn btn-lg btn-success mr-2">
|
||||
{{ __('登録') }}
|
||||
</button>
|
||||
@else
|
||||
<button type="button" id="register" class="btn btn-lg btn-success mr-2 register">
|
||||
{{ __('登録') }}
|
||||
</button>
|
||||
@endif
|
||||
|
||||
{{-- 削除ボタン(編集時のみ表示) --}}
|
||||
@if($isEdit)
|
||||
<button type="button" id="delete_edit" class="btn btn-lg btn-danger">
|
||||
{{ __('削除') }}
|
||||
</button>
|
||||
@endif
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
@extends('layouts.app')
|
||||
@section('title', '[東京都|〇〇駐輪場] メール送信テンプレート新規登録')
|
||||
@section('title', '新規')
|
||||
|
||||
@section('content')
|
||||
<!-- Content Header (Page header) -->
|
||||
@ -7,14 +7,14 @@
|
||||
<div class="container-fluid">
|
||||
<div class="row mb-2">
|
||||
<div class="col-lg-6">
|
||||
<h1 class="m-0 text-dark">新規登録</h1>
|
||||
<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="javascript:void(0);">[東京都|〇〇駐輪場]</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>
|
||||
</div>
|
||||
</div>
|
||||
@ -22,25 +22,22 @@
|
||||
</div>
|
||||
<!-- /.content-header -->
|
||||
|
||||
<!-- Main content -->
|
||||
|
||||
<section class="content">
|
||||
<div class="container-fluid">
|
||||
<!-- Card -->
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="card">
|
||||
<form method="post" action="{{ route('mail_templates_add') }}" enctype="multipart/form-data">
|
||||
@csrf
|
||||
@include('admin.mail_templates._form', [
|
||||
'isEdit' => false,
|
||||
'isInfo' => false,
|
||||
'mailTemplate' => $mailTemplate,
|
||||
])
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card">
|
||||
|
||||
<form id="form_register" action="{{ route('mail_templates_add') }}" method="POST" enctype="multipart/form-data">
|
||||
@csrf
|
||||
@include('admin.mail_templates._form', [
|
||||
'isEdit' => false,
|
||||
'mailTemplate' => $mailTemplate,
|
||||
])
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- /.content -->
|
||||
|
||||
@endsection
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
@extends('layouts.app')
|
||||
@section('title', '[東京都|〇〇駐輪場] メール送信テンプレート')
|
||||
@section('title', '編集')
|
||||
|
||||
@section('content')
|
||||
|
||||
@ -21,13 +21,23 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- /.content-header -->
|
||||
<!-- /.content-header -->
|
||||
<section class="content">
|
||||
<div class="container-fluid">
|
||||
<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
|
||||
@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>
|
||||
</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')
|
||||
|
||||
@section('title', '[東京都|〇〇駐輪場] メール送信テンプレート')
|
||||
@section('title', 'メール送信テンプレート')
|
||||
|
||||
@section('content')
|
||||
<div class="content-header">
|
||||
@ -20,84 +20,110 @@
|
||||
</div>
|
||||
|
||||
<section class="content">
|
||||
<!-- ▼ 絞り込みフィルター -->
|
||||
<div class="col-lg-12">
|
||||
<div class="card">
|
||||
|
||||
{{-- タイトル区 --}}
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">絞り込みフィルター</h3>
|
||||
<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
|
||||
|
||||
{{-- フィルタフォーム主体 --}}
|
||||
<div class="card-body">
|
||||
<form action="{{ route('mail_templates') }}" method="POST" id="list-form" class="form-horizontal">
|
||||
@csrf
|
||||
<input type="hidden" name="sort" value="{{ $sort ?? '' }}">
|
||||
<input type="hidden" name="sort_type" value="{{ $sort_type ?? '' }}">
|
||||
@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
|
||||
|
||||
<table class="table table-borderless mb-0" style="width: 100%;">
|
||||
<tbody>
|
||||
{{-- 行1 --}}
|
||||
<tr>
|
||||
<th style="width: 18%; text-align: left; vertical-align: middle;">メールテンプレートID</th>
|
||||
<td style="width: 32%;">
|
||||
<input type="text" name="mail_template_id"
|
||||
value="{{ old('mail_template_id', $mail_template_id ?? '') }}"
|
||||
class="form-control input-sm" placeholder="123456">
|
||||
</td>
|
||||
|
||||
<th style="width: 18%; text-align: left; vertical-align: middle;">使用プログラムID</th>
|
||||
<td style="width: 32%;">
|
||||
<input type="text" name="pg_id"
|
||||
value="{{ old('pg_id', $pg_id ?? '') }}"
|
||||
class="form-control input-sm" placeholder="123456">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- 行2 --}}
|
||||
<tr>
|
||||
<th style="text-align: left; vertical-align: middle;">エリアマネージャー同報</th>
|
||||
<td>
|
||||
<select name="mgr_cc_flag" class="form-control input-sm">
|
||||
<option value="">全て</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>
|
||||
</select>
|
||||
</td>
|
||||
|
||||
<th style="text-align: left; vertical-align: middle;">使用フラグ</th>
|
||||
<td>
|
||||
<select name="use_flag" class="form-control input-sm">
|
||||
<option value="">全て</option>
|
||||
<option value="1" {{ old('use_flag', $use_flag ?? '') === '1' ? 'selected' : '' }}>使用する</option>
|
||||
<option value="0" {{ old('use_flag', $use_flag ?? '') === '0' ? 'selected' : '' }}>使用しない</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- 行3 --}}
|
||||
<tr>
|
||||
<th style="text-align: left; vertical-align: middle;">件名</th>
|
||||
<td colspan="3">
|
||||
<input type="text" name="subject"
|
||||
value="{{ old('subject', $subject ?? '') }}"
|
||||
class="form-control input-sm" placeholder="キーワード...">
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
{{-- ボタン --}}
|
||||
<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="reset" class="btn btn-default">解除</button>
|
||||
<!-- ▼ 絞り込みフィルター -->
|
||||
<div class="col-lg-12">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">絞り込みフィルター</h3>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<div class="card-body">
|
||||
<form action="{{ route('mail_templates') }}" method="POST" id="list-form" class="form-horizontal">
|
||||
@csrf
|
||||
<input type="hidden" name="sort" value="{{ $sort ?? '' }}">
|
||||
<input type="hidden" name="sort_type" value="{{ $sort_type ?? '' }}">
|
||||
|
||||
<table class="table table-borderless mb-0" style="width: 100%;">
|
||||
<tbody>
|
||||
{{-- 行1 --}}
|
||||
<tr>
|
||||
<th style="width: 18%; text-align: left;">メールテンプレートID</th>
|
||||
<td style="width: 32%;">
|
||||
<input type="text" name="mail_template_id"
|
||||
value="{{ old('mail_template_id', $mail_template_id ?? '') }}"
|
||||
class="form-control input-sm" placeholder="123456">
|
||||
</td>
|
||||
|
||||
<th style="width: 18%; text-align: left;">使用プログラムID</th>
|
||||
<td style="width: 32%;">
|
||||
<input type="text" name="pg_id"
|
||||
value="{{ old('pg_id', $pg_id ?? '') }}"
|
||||
class="form-control input-sm" placeholder="123456">
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- 行2 --}}
|
||||
<tr>
|
||||
<th style="text-align: left;">エリアマネージャー同報</th>
|
||||
<td>
|
||||
<select name="mgr_cc_flag" class="form-control input-sm">
|
||||
<option value="">全て</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>
|
||||
</select>
|
||||
</td>
|
||||
|
||||
<th style="text-align: left;">使用フラグ</th>
|
||||
<td>
|
||||
<select name="use_flag" class="form-control input-sm">
|
||||
<option value="">全て</option>
|
||||
<option value="1" {{ old('use_flag', $use_flag ?? '') == '1' ? 'selected' : '' }}>使用する</option>
|
||||
<option value="0" {{ old('use_flag', $use_flag ?? '') == '0' ? 'selected' : '' }}>使用しない</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
{{-- 行3 --}}
|
||||
<tr>
|
||||
<th style="text-align: left;">件名</th>
|
||||
<td colspan="3">
|
||||
<input type="text" name="subject"
|
||||
value="{{ old('subject', $subject ?? '') }}"
|
||||
class="form-control input-sm" placeholder="キーワード...">
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
{{-- ボタン --}}
|
||||
<div class="form-group col-12 text-left mt-3">
|
||||
<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>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- ▲ 絞り込みフィルター -->
|
||||
<!-- ▲ 絞り込みフィルター -->
|
||||
|
||||
|
||||
<!-- ▼ ツールバー -->
|
||||
<div class="container-fluid mb20">
|
||||
@ -115,7 +141,7 @@
|
||||
<form action="{{ route('mail_templates_delete') }}" method="POST" id="form_delete">
|
||||
@csrf
|
||||
<table class="table table-bordered dataTable text-nowrap">
|
||||
<thead>
|
||||
<thead class="thead-light">
|
||||
<tr>
|
||||
{{-- チェック + 編集ボタン --}}
|
||||
<th style="width:140px;" class="text-left">
|
||||
@ -135,25 +161,25 @@
|
||||
</thead>
|
||||
|
||||
<tbody class="bg-white">
|
||||
@foreach($templates as $item)
|
||||
<tr>
|
||||
<td class="align-middle" style="background-color:#faebd7;">
|
||||
<div class="d-flex align-items-center">
|
||||
<input type="checkbox" class="m-0 checkbox" name="pk[]" value="{{ $item->mail_template_id }}">
|
||||
<a href="{{ route('mail_templates_edit', ['id' => $item->mail_template_id]) }}" class="btn btn-sm btn-default ml-2">編集</a>
|
||||
</div>
|
||||
</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->mail_template_id }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->pg_id }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->internal_id }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->mgr_cc_flag ? '同報する' : '同報しない' }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->bcc_adrs }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->use_flag ? '使用する' : '使用しない' }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->memo }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->subject }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ Str::limit($item->text, 30) }}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
@foreach($templates as $item)
|
||||
<tr>
|
||||
<td class="align-middle" style="background-color:#faebd7;">
|
||||
<div class="d-flex align-items-center">
|
||||
<input type="checkbox" class="m-0 checkbox" name="pk[]" value="{{ $item->mail_template_id }}">
|
||||
<a href="{{ route('mail_templates_edit', ['id' => $item->mail_template_id]) }}" class="btn btn-sm btn-default ml-2">編集</a>
|
||||
</div>
|
||||
</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->mail_template_id }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->pg_id }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->internal_id }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->mgr_cc_flag ? '同報する' : '同報しない' }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->bcc_adrs }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->use_flag ? '使用する' : '使用しない' }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->memo }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ $item->subject }}</td>
|
||||
<td class="sm-item text-left align-middle">{{ Str::limit($item->text, 30) }}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
@ -43,7 +43,7 @@
|
||||
</div>
|
||||
|
||||
<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>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user