pull develop
このコミットが含まれているのは:
コミット
c742e7a08b
10
README.md
10
README.md
|
@ -5,22 +5,32 @@
|
|||
|
||||
# 開発環境構築手順
|
||||
#### 1.Docker立ち上げ
|
||||
```
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
#### 2.appに入る
|
||||
```
|
||||
docker-compose exec app bash
|
||||
```
|
||||
|
||||
#### 3.各種インストール
|
||||
```
|
||||
npm install
|
||||
composer install
|
||||
```
|
||||
|
||||
#### 4.npm実行
|
||||
```
|
||||
cp .env.example .env
|
||||
php artisan key:generate
|
||||
npm run watch ( npm run dev )
|
||||
```
|
||||
|
||||
#### 5.DB接続
|
||||
```
|
||||
php artisan migrate:fresh --seed
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -34,6 +34,12 @@ MAIL_PASSWORD=null
|
|||
MAIL_ENCRYPTION=null
|
||||
MAIL_FROM_ADDRESS=null
|
||||
MAIL_FROM_NAME="${APP_NAME}"
|
||||
MAIL_OWNER_ADDRESS=""
|
||||
MAIL_OWNER_NAME=""
|
||||
MAIL_CC_ADDRESS=""
|
||||
MAIL_CC_NAME=""
|
||||
MAIL_BCC_ADDRESS=""
|
||||
MAIL_BCC_NAME=""
|
||||
|
||||
AWS_ACCESS_KEY_ID=
|
||||
AWS_SECRET_ACCESS_KEY=
|
||||
|
|
|
@ -3,80 +3,20 @@
|
|||
namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Http\Controllers\Controller, Session;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use App\Http\Controllers\Api\AuthenticationTrait;
|
||||
use App\Http\Controllers\Api\AuthorizationTrait;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
use App\Models\Admin;
|
||||
use App\Models\LoginLimits;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
|
||||
class AdminController extends Controller {
|
||||
protected $guard = 'admins';
|
||||
use AuthenticationTrait;
|
||||
use AuthorizationTrait;
|
||||
|
||||
public function login (Request $r) {
|
||||
// if (null === $r->server('HTTP_USER_AGENT')) {
|
||||
// return ['status_code' => 400, 'error_message' => ['不正なuser_agent。']];
|
||||
// }
|
||||
|
||||
// if (null !== ($ll = LoginLimits::where('user_agent', $r->server('HTTP_USER_AGENT'))->first())) {
|
||||
// if ((time() >= strtotime($ll->updated_at) + 600) === false) {
|
||||
// LoginLimits::where('user_agent', $r->server('HTTP_USER_AGENT'))->delete();
|
||||
// }
|
||||
// if ($ll->fail_number >= 10) {
|
||||
// return ['status_code' => 400, 'error_message' => ['10回連続で失敗しましたので、10分、ログインロックになりました。']];
|
||||
// }
|
||||
// }
|
||||
|
||||
$validate = Validator::make($r->all(), [
|
||||
'email' => 'required|max:255|email',
|
||||
'password' => 'required|min:8|max:72',
|
||||
]);
|
||||
|
||||
if ($validate->fails()) {
|
||||
// バリデーションエラー
|
||||
return ['status_code' => 422, 'error_messages' => $validate->errors()];
|
||||
}
|
||||
|
||||
// 存在しない場合
|
||||
if (null === ($admin = Admin::select('id', 'email', 'password')->where('email', $r->email)->first())) {
|
||||
return ['status_code' => 400, 'error_message' => ['このアカウントが存在しません。']];
|
||||
}
|
||||
|
||||
// パスワードが異なる場合
|
||||
if (!Hash::check($r->password, $admin->password)) {
|
||||
// if ($ll = LoginLimits::where('user_agent', $r->server('HTTP_USER_AGENT'))->first()) {
|
||||
// LoginLimits::where('user_agent', $r->server('HTTP_USER_AGENT'))->update(['fail_number' => $ll->fail_number+1]);
|
||||
// }
|
||||
// else {
|
||||
// LoginLimits::create(['user_agent' => $r->server('HTTP_USER_AGENT'), 'fail_number' => 1]);
|
||||
// }
|
||||
return ['status_code' => 400, 'error_message' => ['ログインに失敗しました。10回連続で失敗すると、一定期間ログインできなくなります。']];
|
||||
}
|
||||
|
||||
// セッションを想像する
|
||||
if (Auth::guard('admins')->attempt($r->all())) {
|
||||
Session::put('admin_email', $admin->email);
|
||||
Session::save();
|
||||
}
|
||||
return ['status_code' => 200];
|
||||
/* Traitで使うメソッド */
|
||||
protected function getGuard () {
|
||||
return 'admin';
|
||||
}
|
||||
|
||||
public function checkLogin () {
|
||||
// セッションがあれば、管理者のトップページに移転する。なければ、ログイン画面となる。
|
||||
if (Session::has('admin_email')) {
|
||||
return redirect('/admin/meeting');
|
||||
}
|
||||
|
||||
return view('admin.login');
|
||||
}
|
||||
|
||||
public function logout () {
|
||||
// セッションを破壊すると、ログイン画面に移転する。
|
||||
if (Session::has('admin_email')) {
|
||||
Session::forget('admin_email');
|
||||
}
|
||||
|
||||
return redirect('/admin/login');
|
||||
protected function getModel () {
|
||||
return new \App\Models\Admin();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,72 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Http\Controllers\Controller, Session;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
// use App\Models\LoginLimits;
|
||||
|
||||
trait AuthenticationTrait {
|
||||
public function login (Request $r) {
|
||||
// if (null === $r->server('HTTP_USER_AGENT')) {
|
||||
// return ['status_code' => 400, 'error_message' => ['不正なuser_agent。']];
|
||||
// }
|
||||
|
||||
// if (null !== ($ll = LoginLimits::where('user_agent', $r->server('HTTP_USER_AGENT'))->first())) {
|
||||
// if ((time() >= strtotime($ll->updated_at) + 600) === false) {
|
||||
// LoginLimits::where('user_agent', $r->server('HTTP_USER_AGENT'))->delete();
|
||||
// }
|
||||
// if ($ll->fail_number >= 10) {
|
||||
// return ['status_code' => 400, 'error_message' => ['10回連続で失敗しましたので、10分、ログインロックになりました。']];
|
||||
// }
|
||||
// }
|
||||
|
||||
$validate = Validator::make($r->all(), [
|
||||
'email' => 'required|max:255|email',
|
||||
'password' => 'required|min:8|max:72',
|
||||
]);
|
||||
|
||||
// バリデーションエラー
|
||||
if ($validate->fails()) {
|
||||
return ['status_code' => 422, 'error_messages' => $validate->errors()];
|
||||
}
|
||||
|
||||
// 存在しない場合
|
||||
if (null === ($get = $this->getModel()->where('email', $r->email)->first())) {
|
||||
return ['status_code' => 400, 'error_message' => ['ログインに失敗しました。10回連続で失敗すると、一定期間ログインできなくなります。']];
|
||||
}
|
||||
|
||||
// パスワードが異なる場合
|
||||
if (!Hash::check($r->password, $get->password)) {
|
||||
// if ($ll = LoginLimits::where('user_agent', $r->server('HTTP_USER_AGENT'))->first()) {
|
||||
// LoginLimits::where('user_agent', $r->server('HTTP_USER_AGENT'))->update(['fail_number' => $ll->fail_number+1]);
|
||||
// }
|
||||
// else {
|
||||
// LoginLimits::create(['user_agent' => $r->server('HTTP_USER_AGENT'), 'fail_number' => 1]);
|
||||
// }
|
||||
return ['status_code' => 400, 'error_message' => ['ログインに失敗しました。10回連続で失敗すると、一定期間ログインできなくなります。']];
|
||||
}
|
||||
|
||||
// セッションを想像する
|
||||
$guard = $this->getGuard();
|
||||
if ($r->session()->has($guard)) {
|
||||
// 認証されたデータのpassword以外を把握する
|
||||
$login_user_datum = $get->toArray();
|
||||
unset($login_user_datum['password']);
|
||||
// セッションに保存する
|
||||
$r->session()->put($guard, $login_user_datum);
|
||||
}
|
||||
|
||||
return ['status_code' => 200];
|
||||
}
|
||||
|
||||
public function logout () {
|
||||
// セッションを破壊すると、ログイン画面に移転する。
|
||||
Session::forget($this->getGuard());
|
||||
|
||||
return redirect(request()->route()->action['prefix'].'/login');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Http\Controllers\Controller, Session;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
trait AuthorizationTrait {
|
||||
// XXX そもそもこのメソッド、使いますか?
|
||||
// 認可の処理はMiddlewareでやっているはずなので(このクラスがMiddlewareでcallされている、なら、ギリギリありですが)
|
||||
public function checkLogin () {
|
||||
// セッションがあれば、管理者のトップページに移転する。なければ、ログイン画面となる。
|
||||
if (Session::has($this->getGuard())) {
|
||||
// XXX リダイレクト先ですが「常に request()->route()->action['prefix'].'/meeting' 」固定ですか?
|
||||
// XXX そうでない場合は、これも「メソッドの戻り値にする」やり方のほうが自由度があると思います
|
||||
return redirect(request()->route()->action['prefix'].'/meeting');
|
||||
}
|
||||
|
||||
return view(request()->route()->action['prefix'].'/login');
|
||||
}
|
||||
}
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Controllers\Controller, Session;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Http\Request;
|
||||
|
@ -14,7 +14,16 @@ use App\Models\MeetingApprovals;
|
|||
use App\Models\TelActivations;
|
||||
|
||||
class ChildrenController extends Controller {
|
||||
public function login () {}
|
||||
use AuthenticationTrait;
|
||||
use AuthorizationTrait;
|
||||
|
||||
/* Traitで使うメソッド */
|
||||
protected function getGuard () {
|
||||
return 'child';
|
||||
}
|
||||
protected function getModel () {
|
||||
return new \App\Models\Child();
|
||||
}
|
||||
|
||||
public function registerTemporary (Request $r) {
|
||||
$validate = Validator::make($r->all(), [
|
||||
|
@ -30,7 +39,7 @@ class ChildrenController extends Controller {
|
|||
return ['status_code' => 400, 'error_messages' => ['既に使用されている電話番号です。']];
|
||||
}
|
||||
|
||||
$token = random_bytes(16);
|
||||
$token = bin2hex(random_bytes(16));
|
||||
$insert = ['tel' => $r->tel, 'token' => $token];
|
||||
|
||||
try {
|
||||
|
@ -84,7 +93,6 @@ class ChildrenController extends Controller {
|
|||
$insert = [
|
||||
'email' => $r->email,
|
||||
'tel' => $get->tel,
|
||||
'tel_verified_at' => date('Y-m-d H:i:s'),
|
||||
'password' => $password,
|
||||
'last_name' => $r->last_name,
|
||||
'first_name' => $r->first_name,
|
||||
|
@ -135,7 +143,7 @@ class ChildrenController extends Controller {
|
|||
$result = [];
|
||||
$child_select = ['id', 'image', 'last_name', 'first_name'];
|
||||
|
||||
if (null === ($list = FatherRelation::select('father_id')->where('father_id', $r->father_id)->orderBy('created_at', 'desc')->get())) {
|
||||
if (null === ($list = FatherRelation::select('father_id')->where('father_id', (int)$r->father_id)->orderBy('created_at', 'desc')->get())) {
|
||||
return ['status_code' => 400];
|
||||
}
|
||||
|
||||
|
@ -152,7 +160,7 @@ class ChildrenController extends Controller {
|
|||
$result = [];
|
||||
$child_select = ['id', 'image', 'last_name', 'first_name'];
|
||||
|
||||
if (null === ($list = MeetingApprovals::select('child_id')->where('meeting_id', $r->meeting_id)->orderBy('created_at', 'desc')->get())) {
|
||||
if (null === ($list = MeetingApprovals::select('child_id')->where('meeting_id', (int)$r->meeting_id)->orderBy('created_at', 'desc')->get())) {
|
||||
return ['status_code' => 400];
|
||||
}
|
||||
|
||||
|
@ -174,7 +182,7 @@ class ChildrenController extends Controller {
|
|||
$child_select = ['id', 'image', 'last_name', 'first_name', 'tel'];
|
||||
$meeting_approvals_select = ['approval_at'];
|
||||
|
||||
if (null === ($list = MeetingApprovals::select($meeting_approvals_select)->where('meeting_id', $r->meeting_id)->whereNull('approval_at')->get())) {
|
||||
if (null === ($list = MeetingApprovals::select($meeting_approvals_select)->where('meeting_id', (int)$r->meeting_id)->whereNull('approval_at')->get())) {
|
||||
return ['status_code' => 400];
|
||||
}
|
||||
|
||||
|
@ -217,7 +225,7 @@ class ChildrenController extends Controller {
|
|||
$father_relation_select = ['hire_at'];
|
||||
|
||||
// 親詳細の取得に成功
|
||||
if (null === ($list = Child::select('id')->where('id', $child_id)->orderBy('created_at', 'desc')->get())) {
|
||||
if (null === ($list = Child::select('id')->where('id', (int)$child_id)->orderBy('created_at', 'desc')->get())) {
|
||||
return ['status_code' => 400];
|
||||
}
|
||||
|
||||
|
@ -225,11 +233,6 @@ class ChildrenController extends Controller {
|
|||
if (null === ($result[] = Child::select($child_select)->find($l->id))) {
|
||||
return ['status_code' => 400];
|
||||
}
|
||||
if (isset($r->father_id)) {
|
||||
if (null === ($result[$i]['father_relation'] = FatherRelation::select($father_relation_select)->where('father_id', $r->father_id)->first())) {
|
||||
return ['status_code' => 400];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return ['status_code' => 200, 'params' => $result];
|
||||
|
@ -247,8 +250,12 @@ class ChildrenController extends Controller {
|
|||
return ['status_code' => 422, 'error_messages' => $validate->errors()];
|
||||
}
|
||||
|
||||
$update = [
|
||||
'image' => $r->image,
|
||||
];
|
||||
|
||||
try {
|
||||
Child::where('id', $child_id)->update($r->all());
|
||||
Child::where('id', (int)$child_id)->update($update);
|
||||
} catch (\Throwable $e) {
|
||||
// 失敗
|
||||
Log::critical($e->getMessage());
|
||||
|
@ -266,8 +273,8 @@ class ChildrenController extends Controller {
|
|||
|
||||
// バリデーションエラー
|
||||
$validate = Validator::make($r->all(), [
|
||||
'email' => 'required|unique:children|max:255|email|alpha_num',
|
||||
'tel' => 'required|unique:children|max:11|numeric|starts_with:0',
|
||||
'email' => 'required|max:255|email',
|
||||
'tel' => 'required|max:11|numeric|starts_with:0',
|
||||
'last_name' => 'required|max:100',
|
||||
'first_name' => 'required|max:100',
|
||||
'company' => 'max:100',
|
||||
|
@ -277,8 +284,16 @@ class ChildrenController extends Controller {
|
|||
return ['status_code' => 422, 'error_messages' => $validate->errors()];
|
||||
}
|
||||
|
||||
$update = [
|
||||
'email' => $r->email,
|
||||
'tel' => $r->tel,
|
||||
'last_name' => $r->last_name,
|
||||
'first_name' => $r->first_name,
|
||||
'company' => $r->company,
|
||||
];
|
||||
|
||||
try {
|
||||
Child::where('id', $child_id)->update($r->all());
|
||||
Child::where('id', (int)$child_id)->update($update);
|
||||
} catch (\Throwable $e) {
|
||||
// 失敗
|
||||
Log::critical($e->getMessage());
|
||||
|
@ -309,8 +324,12 @@ class ChildrenController extends Controller {
|
|||
return ['status_code' => 422, 'error_messages' => $validate->errors()];
|
||||
}
|
||||
|
||||
$update = [
|
||||
'password' => Hash::make($r->password),
|
||||
];
|
||||
|
||||
try {
|
||||
Child::where('id', $child_id)->update($r->all());
|
||||
Child::where('id', (int)$child_id)->update($update);
|
||||
} catch (\Throwable $e) {
|
||||
// 失敗
|
||||
Log::critical($e->getMessage());
|
||||
|
@ -324,7 +343,7 @@ class ChildrenController extends Controller {
|
|||
public function withdrawal ($child_id) {
|
||||
// 削除成功
|
||||
try {
|
||||
Child::where('id', $child_id)->delete();
|
||||
Child::where('id', (int)$child_id)->delete();
|
||||
} catch (\Throwable $e) {
|
||||
Log::critical($e->getMessage());
|
||||
return ['status_code' => 400];
|
||||
|
|
|
@ -6,8 +6,10 @@ use App\Http\Controllers\Controller;
|
|||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
|
||||
use App\Models\Contacts;
|
||||
use App\Mail\ContactsMail;
|
||||
|
||||
class ContactsController extends Controller {
|
||||
public function register (Request $r) {
|
||||
|
@ -25,7 +27,11 @@ class ContactsController extends Controller {
|
|||
];
|
||||
|
||||
try {
|
||||
// DBに入ります。
|
||||
Contacts::create($insert);
|
||||
|
||||
// メールを送ります。
|
||||
Mail::to($r->email)->cc(config('mail.cc.address'))->bcc(config('mail.bcc.address'))->send(new FathersRegistrationTemporaryMail($r->message));
|
||||
} catch (\Throwable $e) {
|
||||
// 失敗
|
||||
Log::critical($e->getMessage());
|
||||
|
|
|
@ -2,24 +2,36 @@
|
|||
|
||||
namespace App\Http\Controllers\Api;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Http\Controllers\Controller, Session;
|
||||
use Illuminate\Support\Facades\Validator;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
|
||||
use App\Models\Father;
|
||||
use App\Models\FatherRelation;
|
||||
use App\Models\EmailActivations;
|
||||
use App\Models\EmailActivation;
|
||||
use App\Mail\FathersRegistrationTemporaryMail;
|
||||
use App\Mail\FathersRegistrationMainMail;
|
||||
|
||||
class FathersController extends Controller {
|
||||
public function login () {}
|
||||
use AuthenticationTrait;
|
||||
use AuthorizationTrait;
|
||||
|
||||
/* Traitで使うメソッド */
|
||||
protected function getGuard () {
|
||||
return 'father';
|
||||
}
|
||||
protected function getModel () {
|
||||
return new \App\Models\Father();
|
||||
}
|
||||
|
||||
public function requestPassword () {}
|
||||
|
||||
public function registerTemporary (Request $r) {
|
||||
$validate = Validator::make($r->all(), [
|
||||
'email' => 'required|unique:father,email_activations|max:255|email|alpha_num'
|
||||
'email' => 'required|unique:fathers|unique:email_activations|max:255|email'
|
||||
]);
|
||||
|
||||
if ($validate->fails()) {
|
||||
|
@ -28,24 +40,23 @@ class FathersController extends Controller {
|
|||
}
|
||||
|
||||
if ($get = Father::where('email', $r->email)->first()) {
|
||||
// すでにDBに登録されている場合
|
||||
// すでにfathersに登録されている場合
|
||||
return ['status_code' => 400, 'error_messages' => ['入力したメールアドレスは既に登録済みです。同じメールアドレスは使用できません。']];
|
||||
}
|
||||
else if ($get = EmailActivations::where('email', $r->email)->first()) {
|
||||
// すでにDBに登録されている場合
|
||||
else if ($get = EmailActivation::where('email', $r->email)->first()) {
|
||||
// すでにemail_activationsに登録されている場合
|
||||
return ['status_code' => 400, 'error_messages' => ['入力したメールアドレスは既に登録済みです。同じメールアドレスは使用できません。']];
|
||||
}
|
||||
else {
|
||||
$chars = 'abcdefghijklmnopqrstuvwxyz0123456789';
|
||||
$token = '';
|
||||
for ($i = 1; $i < 15; $i++) {
|
||||
$token .= $chars[rand(0,35)];
|
||||
}
|
||||
|
||||
$token = bin2hex(random_bytes(16));
|
||||
$create = ['email' => $r->email, 'token' => $token, 'ttl' => date('Y-m-d H:i:s', time()+28800)];
|
||||
|
||||
try {
|
||||
EmailActivations::create($create);
|
||||
// DBに入ります。
|
||||
EmailActivation::create($create);
|
||||
|
||||
// メールを送ります。
|
||||
Mail::to($r->email)->send(new FathersRegistrationTemporaryMail($token));
|
||||
} catch (\Throwable $e) {
|
||||
// 失敗
|
||||
Log::critical($e->getMessage());
|
||||
|
@ -71,25 +82,32 @@ class FathersController extends Controller {
|
|||
return ['status_code' => 422, 'error_messages' => $validate->errors()];
|
||||
}
|
||||
|
||||
$password = Hash::make($r->password);
|
||||
|
||||
if ($get = EmailActivations::where('token', $r->token)->first() && strtotime($get->ttl) > time()) {
|
||||
// 有効期限が切れている場合
|
||||
return['status_code' => 401, 'error_messages' => ['仮登録の有効期限が切れました。改めて管理者にお問い合わせいただき、再登録を行ってください。']];
|
||||
if ($get = EmailActivation::select('email', 'ttl')->where('token', $r->token)->first()) {
|
||||
if (time() > strtotime($get->ttl)) {
|
||||
// 有効期限が切れている場合
|
||||
return['status_code' => 401, 'error_messages' => ['仮登録の有効期限が切れました。改めて管理者にお問い合わせいただき、再登録を行ってください。']];
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
// DBの値の準備。
|
||||
$create = [
|
||||
'email' => $get->email,
|
||||
'email_verified_at' => date('Y-m-d H:i:s'),
|
||||
'password' => $password,
|
||||
'password' => Hash::make($r->password),
|
||||
'company' => $r->company,
|
||||
'image' => $r->image,
|
||||
'profile' => $r->profile,
|
||||
'tel' => $r->tel,
|
||||
];
|
||||
|
||||
// DBに入ります。
|
||||
Father::create($create);
|
||||
|
||||
// メールを送ります。
|
||||
Mail::to($get->email)->send(new FathersRegistrationMainMail());
|
||||
|
||||
// email_activationsから削除します。
|
||||
EmailActivation::where('token', $r->token)->delete();
|
||||
} catch (\Throwable $e) {
|
||||
// 本登録に失敗
|
||||
Log::critical($e->getMessage());
|
||||
|
@ -135,12 +153,21 @@ class FathersController extends Controller {
|
|||
return ['status_code' => 400];
|
||||
}
|
||||
|
||||
<<<<<<< HEAD
|
||||
// foreach ($list as $i => $l) {
|
||||
// $result[] = $l;
|
||||
// if (null === ($result[$i]['relation'] = FatherRelation::select($father_relation_select)->where('father_id', $l->id)->first())) {
|
||||
// return ['status_code' => 400];
|
||||
// }
|
||||
// }
|
||||
=======
|
||||
foreach ($list as $i => $l) {
|
||||
$result[] = $l;
|
||||
if (null === ($result[$i]['relation'] = FatherRelation::select($father_relation_select)->where('father_id', $l->id)->first())) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
>>>>>>> c234cbcd6dbb0d54c6c339a61af0f805f2401a9d
|
||||
|
||||
// 親一覧の取得に成功
|
||||
return ['status_code' => 200, 'params' => $result];
|
||||
|
@ -150,7 +177,7 @@ class FathersController extends Controller {
|
|||
$result = [];
|
||||
$father_select = ['id', 'company', 'image'];
|
||||
|
||||
if (null === ($list = FatherRelation::select('father_id')->where('child_id', $r->child_id)->orderBy('created_at', 'desc')->get())) {
|
||||
if (null === ($list = FatherRelation::select('father_id')->where('child_id', (int)$r->child_id)->orderBy('created_at', 'desc')->get())) {
|
||||
// 親一覧の取得に失敗
|
||||
return ['status_code' => 400];
|
||||
}
|
||||
|
@ -168,7 +195,7 @@ class FathersController extends Controller {
|
|||
public function detail ($father_id) {
|
||||
$father_select = ['image', 'email', 'tel', 'profile', 'company'];
|
||||
|
||||
if (null === ($result = Father::select($father_select)->where('id', $father_id)->orderBy('created_at', 'desc')->get()->toArray())) {
|
||||
if (null === ($result = Father::select($father_select)->where('id', (int)$father_id)->orderBy('created_at', 'desc')->get()->toArray())) {
|
||||
// 親詳細の取得に失敗
|
||||
return ['status_code' => 400, 'error_messages' => ['親の更新に失敗しました。']];
|
||||
}
|
||||
|
@ -190,8 +217,12 @@ class FathersController extends Controller {
|
|||
return ['status_code' => 422, 'error_messages' => $validate->errors()];
|
||||
}
|
||||
|
||||
$update = [
|
||||
'image' => $r->image
|
||||
];
|
||||
|
||||
try {
|
||||
Father::where('id', $father_id)->update($r->all());
|
||||
Father::where('id', (int)$father_id)->update($update);
|
||||
} catch (\Throwable $e) {
|
||||
// 親プロフィール画像のアップロードに失敗
|
||||
Log::critical($e->getMessage());
|
||||
|
@ -209,18 +240,25 @@ class FathersController extends Controller {
|
|||
|
||||
// バリデーションエラー
|
||||
$validate = Validator::make($r->all(), [
|
||||
'email' => 'required|unique:fathers|max:255|email|alpha_num',
|
||||
'email' => 'required|max:255|email',
|
||||
'company' => 'max:100',
|
||||
'profile' => 'max:1000',
|
||||
'tel' => 'required|unique:fathers|max:11|numeric|starts_with:0',
|
||||
'tel' => 'required|max:11|numeric|starts_with:0',
|
||||
]);
|
||||
|
||||
if ($validate->fails()) {
|
||||
return ['status_code' => 422, 'error_messages' => $validate->errors()];
|
||||
}
|
||||
|
||||
$update = [
|
||||
'email' => $r->email,
|
||||
'company' => $r->company,
|
||||
'profile' => $r->profile,
|
||||
'tel' => $r->tel,
|
||||
];
|
||||
|
||||
try {
|
||||
Father::where('id', $father_id)->update($r->all());
|
||||
Father::where('id', (int)$father_id)->update($update);
|
||||
} catch (\Throwable $e) {
|
||||
// 親プロフィール更新失敗
|
||||
Log::critical($e->getMessage());
|
||||
|
@ -251,8 +289,16 @@ class FathersController extends Controller {
|
|||
return ['status_code' => 422, 'error_messages' => $validate->errors()];
|
||||
}
|
||||
|
||||
$update = [
|
||||
'password' => Hash::make($r->password)
|
||||
];
|
||||
|
||||
try {
|
||||
<<<<<<< HEAD
|
||||
Father::where('id', $father_id)->update(['password'=>'123']);
|
||||
=======
|
||||
Father::where('id', (int)$father_id)->update($update);
|
||||
>>>>>>> c234cbcd6dbb0d54c6c339a61af0f805f2401a9d
|
||||
} catch (\Throwable $e) {
|
||||
// 失敗
|
||||
Log::critical($e->getMessage());
|
||||
|
@ -265,7 +311,7 @@ class FathersController extends Controller {
|
|||
|
||||
public function withdrawal ($father_id) {
|
||||
try {
|
||||
Father::where('id', $father_id)->delete();
|
||||
Father::where('id', (int)$father_id)->delete();
|
||||
} catch (\Throwable $e) {
|
||||
// 失敗
|
||||
Log::critical($e->getMessage());
|
||||
|
@ -278,7 +324,7 @@ class FathersController extends Controller {
|
|||
|
||||
public function delete ($meeting_id) {
|
||||
try {
|
||||
Meeting::where('id', $meeting_id)->delete();
|
||||
Meeting::where('id', (int)$meeting_id)->delete();
|
||||
} catch (\Throwable $e) {
|
||||
// 失敗
|
||||
Log::critical($e->getMessage());
|
||||
|
|
|
@ -528,7 +528,11 @@ class MeetingsController extends Controller {
|
|||
|
||||
public function delete ($meeting_id) {
|
||||
try {
|
||||
<<<<<<< HEAD
|
||||
Meeting::where('id', (int)$meeting_id)->delete();
|
||||
=======
|
||||
Meetings::where('meeting_id', (int)$meeting_id)->delete();
|
||||
>>>>>>> c234cbcd6dbb0d54c6c339a61af0f805f2401a9d
|
||||
} catch (\Throwable $e) {
|
||||
Log::critical($e->getMessage());
|
||||
return ['status_code' => 400];
|
||||
|
|
|
@ -20,13 +20,6 @@ class Authenticate extends Middleware
|
|||
}
|
||||
|
||||
public function handle ($request, Closure $next, ...$guard) {
|
||||
if (!session()->has('admin_email') && $request->path() != 'admin/login') {
|
||||
return redirect('/admin/login');
|
||||
}
|
||||
else if (session()->has('admin_email') && $request->path() == 'admin/login') {
|
||||
return redirect('/admin/meeting');
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,23 @@
|
|||
<?php
|
||||
|
||||
namespace App\Mail;
|
||||
|
||||
use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Mail\Mailable;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
|
||||
class ContactsMail extends Mailable {
|
||||
use Queueable, SerializesModels;
|
||||
private $message;
|
||||
|
||||
public function __construct ($message) {
|
||||
$this->message = $message;
|
||||
}
|
||||
|
||||
public function build () {
|
||||
return $this->subject('お問い合わせありがとうございます。')->markdown('emails.contacts', [
|
||||
'message' => $this->message
|
||||
]);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
<?php
|
||||
|
||||
namespace App\Mail;
|
||||
|
||||
use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Mail\Mailable;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
|
||||
class FathersRegistrationMainMail extends Mailable {
|
||||
use Queueable, SerializesModels;
|
||||
|
||||
public function build () {
|
||||
return $this->subject('本登録が完了しました。')->markdown('emails.fathers.registration.main');
|
||||
}
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
<?php
|
||||
|
||||
namespace App\Mail;
|
||||
|
||||
use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Mail\Mailable;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
|
||||
class FathersRegistrationTemporaryMail extends Mailable {
|
||||
use Queueable, SerializesModels;
|
||||
private $token;
|
||||
|
||||
public function __construct ($token) {
|
||||
$this->token = $token;
|
||||
}
|
||||
|
||||
public function build () {
|
||||
return $this->subject('仮登録が完了しました。')->markdown('emails.fathers.registration.temporary', [
|
||||
'token' => $this->token
|
||||
]);
|
||||
}
|
||||
}
|
|
@ -8,6 +8,6 @@ use Illuminate\Foundation\Auth\User as Authenticatable;
|
|||
class Child extends Authenticatable
|
||||
{
|
||||
use HasFactory;
|
||||
protected $fillable = ['father_id', 'title', 'text', 'memo', 'pdf'];
|
||||
protected $fillable = ['email', 'password', 'father_id', 'title', 'text', 'memo', 'pdf'];
|
||||
protected $hidden = ['password'];
|
||||
}
|
||||
|
|
|
@ -8,4 +8,6 @@ use Illuminate\Database\Eloquent\Model;
|
|||
class EmailActivation extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
protected $fillable = ['email', 'token', 'ttl'];
|
||||
protected $attributes = ['type' => 0];
|
||||
}
|
||||
|
|
|
@ -8,5 +8,6 @@ use Illuminate\Foundation\Auth\User as Authenticatable;
|
|||
class Father extends Authenticatable
|
||||
{
|
||||
use HasFactory;
|
||||
protected $fillable = ['email', 'password', 'company', 'image', 'profile', 'tel'];
|
||||
protected $hidden = ['password'];
|
||||
}
|
||||
|
|
|
@ -87,6 +87,18 @@ return [
|
|||
'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'),
|
||||
'name' => env('MAIL_FROM_NAME', 'Example'),
|
||||
],
|
||||
'owner' => [
|
||||
'address' => env('MAIL_OWNER_ADDRESS', 'hello@example.com'),
|
||||
'name' => env('MAIL_OWNER_NAME', 'Example'),
|
||||
],
|
||||
'cc' => [
|
||||
'address' => env('MAIL_CC_ADDRESS', 'hello@example.com'),
|
||||
'name' => env('MAIL_CC_NAME', 'Example'),
|
||||
],
|
||||
'bcc' => [
|
||||
'address' => env('MAIL_BCC_ADDRESS', 'hello@example.com'),
|
||||
'name' => env('MAIL_BCC_NAME', 'Example'),
|
||||
],
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
|
@ -16,6 +16,6 @@ class AdminsTableSeeder extends Seeder
|
|||
public function run()
|
||||
{
|
||||
\App\Models\Admin::factory()->count(10)->create();
|
||||
\App\Models\Admin::create(['email' => 'chankan77@gmail.com', 'password' => Hash::make('password')]);
|
||||
\App\Models\Admin::create(['email' => config('mail.owner.address'), 'password' => Hash::make('password')]);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
@component('mail::message')
|
||||
# お問い合わせありがとうございます。
|
||||
|
||||
お問い合わせありがとうございます。キキカンサポートです。
|
||||
|
||||
【お問い合わせ内容】
|
||||
{{ $message }}
|
||||
|
||||
上記、お問い合わせを受付させて頂きました。通常1〜2日にて回答のご連絡をさせて頂きます。
|
||||
@endcomponent
|
|
@ -0,0 +1,11 @@
|
|||
@component('mail::message')
|
||||
# 本登録が完了しました。
|
||||
|
||||
サイトへのアカウント本登録が完了しました。
|
||||
|
||||
以下のリンクからログインしてくださいませ。
|
||||
|
||||
@component('mail::button', ['url' => env('APP_URL').'/p-account/login'])
|
||||
{{ env('APP_URL') }}/p-account/login
|
||||
@endcomponent
|
||||
@endcomponent
|
|
@ -0,0 +1,11 @@
|
|||
@component('mail::message')
|
||||
# 仮登録が完了しました。
|
||||
|
||||
サイトへのアカウント仮登録が完了しました。
|
||||
|
||||
以下のリンクからログインして、本登録を完了させてください。
|
||||
|
||||
@component('mail::button', ['url' => env('APP_URL').'/p-account/register/'.$token])
|
||||
{{ env('APP_URL') }}/p-account/register/{{ $token }}
|
||||
@endcomponent
|
||||
@endcomponent
|
|
@ -30,7 +30,7 @@ Route::group(['prefix' => 'admin'], function () {
|
|||
Route::put('/updateProfile/{father_id}', '\App\Http\Controllers\Api\FathersController@updateProfile');
|
||||
Route::put('/updatePassword/{father_id}', '\App\Http\Controllers\Api\FathersController@updatePassword');
|
||||
Route::get('/detail/{father_id}', '\App\Http\Controllers\Api\FathersController@detail');
|
||||
Route::delete('/delete/{father_id}', '\App\Http\Controllers\Api\FathersController@withdrawal');
|
||||
Route::delete('/delete', '\App\Http\Controllers\Api\FathersController@withdrawal');
|
||||
Route::post('/registerTemporary', '\App\Http\Controllers\Api\FathersController@registerTemporary');
|
||||
});
|
||||
|
||||
|
@ -48,7 +48,7 @@ Route::group(['prefix' => 'admin'], function () {
|
|||
// MeetingsController
|
||||
Route::group(['prefix' => 'meetings'], function () {
|
||||
Route::get('/list', '\App\Http\Controllers\Api\MeetingsController@list');
|
||||
Route::post('/search', '\App\Http\Controllers\Api\MeetingsController@search');
|
||||
Route::get('/search', '\App\Http\Controllers\Api\MeetingsController@search');
|
||||
Route::get('/detail/{meeting_id}', '\App\Http\Controllers\Api\MeetingsController@detail');
|
||||
Route::put('/update/{meeting_id}', '\App\Http\Controllers\Api\MeetingsController@update');
|
||||
Route::delete('/delete/{meeting_id}', '\App\Http\Controllers\Api\MeetingsController@delete');
|
||||
|
@ -65,106 +65,104 @@ Route::group(['prefix' => 'admin'], function () {
|
|||
Route::delete('/delete/{meeting_id}', '\App\Http\Controllers\Api\MeetingApprovalsController@delete');
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
// ContactsController
|
||||
//// 不明
|
||||
Route::post('/contacts/register', '\App\Http\Controllers\Api\ContactsController@register');
|
||||
// ContactsController
|
||||
Route::post('/contacts/register', '\App\Http\Controllers\Api\ContactsController@register');
|
||||
|
||||
Route::group(['prefix' => 'fathers'], function () {
|
||||
// FathersController
|
||||
Route::post('/registerMain', '\App\Http\Controllers\Api\FathersController@registerMain')->name('fatherregistermain');
|
||||
Route::post('/requestPassword', '\App\Http\Controllers\Api\FathersController@requestPassword')->name('fatherrequestpassword');
|
||||
// Route::post('/login', '\App\Http\Controllers\Api\FathersController@login')->name('fatherlogin');
|
||||
Route::group(['prefix' => 'fathers'], function () {
|
||||
// FathersController
|
||||
Route::post('/registerMain', '\App\Http\Controllers\Api\FathersController@registerMain')->name('fatherregistermain');
|
||||
Route::post('/requestPassword', '\App\Http\Controllers\Api\FathersController@requestPassword')->name('fatherrequestpassword');
|
||||
Route::post('/login', '\App\Http\Controllers\Api\FathersController@login')->name('fatherlogin');
|
||||
|
||||
Route::group(['middleware' => 'auth:fathers'], function () {
|
||||
Route::put('/updateImage/{father_id}', '\App\Http\Controllers\Api\FathersController@updateImage');
|
||||
Route::put('/updateProfile/{father_id}', '\App\Http\Controllers\Api\FathersController@updateProfile');
|
||||
Route::put('/updatePassword/{father_id}', '\App\Http\Controllers\Api\FathersController@updatePassword');
|
||||
Route::delete('/withdrawal', '\App\Http\Controllers\Api\FathersController@withdrawal');
|
||||
Route::group(['middleware' => 'auth:fathers'], function () {
|
||||
Route::put('/updateImage/{father_id}', '\App\Http\Controllers\Api\FathersController@updateImage');
|
||||
Route::put('/updateProfile/{father_id}', '\App\Http\Controllers\Api\FathersController@updateProfile');
|
||||
Route::put('/updatePassword/{father_id}', '\App\Http\Controllers\Api\FathersController@updatePassword');
|
||||
Route::delete('/withdrawal', '\App\Http\Controllers\Api\FathersController@withdrawal');
|
||||
|
||||
// ChildrenController
|
||||
Route::group(['prefix' => 'children'], function () {
|
||||
Route::get('/listOfFather', '\App\Http\Controllers\Api\ChildrenController@listOfFather');
|
||||
Route::get('/listOfMeeting', '\App\Http\Controllers\Api\ChildrenController@listOfMeeting');
|
||||
Route::post('/listOfMeetingNotifyUnapprovel', '\App\Http\Controllers\Api\ChildrenController@listOfMeetingNotifyUnapprovel');
|
||||
Route::post('/listOfMeetingNotifyApprovel', '\App\Http\Controllers\Api\ChildrenController@listOfMeetingNotifyApprovel');
|
||||
Route::get('/detail/{child_id}', '\App\Http\Controllers\Api\ChildrenController@detail');
|
||||
// ChildrenController
|
||||
Route::group(['prefix' => 'children'], function () {
|
||||
Route::get('/listOfFather', '\App\Http\Controllers\Api\ChildrenController@listOfFather');
|
||||
Route::get('/listOfMeeting', '\App\Http\Controllers\Api\ChildrenController@listOfMeeting');
|
||||
Route::post('/listOfMeetingNotifyUnapprovel', '\App\Http\Controllers\Api\ChildrenController@listOfMeetingNotifyUnapprovel');
|
||||
Route::post('/listOfMeetingNotifyApprovel', '\App\Http\Controllers\Api\ChildrenController@listOfMeetingNotifyApprovel');
|
||||
Route::get('/detail/{child_id}', '\App\Http\Controllers\Api\ChildrenController@detail');
|
||||
});
|
||||
|
||||
// MeetingsController
|
||||
Route::group(['prefix' => 'meetings'], function () {
|
||||
Route::post('/register', '\App\Http\Controllers\Api\MeetingsController@register');
|
||||
Route::post('/registerFavorite', '\App\Http\Controllers\Api\MeetingsController@registerFavorite');
|
||||
Route::get('/listOfCompleteOfFather', '\App\Http\Controllers\Api\MeetingsController@listOfCompleteOfFather');
|
||||
Route::get('/listOfIncompleteOfFather', '\App\Http\Controllers\Api\MeetingsController@listOfIncompleteOfFather');
|
||||
Route::get('/listOfFavoriteOfFather', '\App\Http\Controllers\Api\MeetingsController@listOfFavoriteOfFather');
|
||||
Route::get('/listOfNonFavoriteOfFather', '\App\Http\Controllers\Api\MeetingsController@listOfNonFavoriteOfFather');
|
||||
Route::get('/searchOfCompleteOfFather', '\App\Http\Controllers\Api\MeetingsController@searchOfCompleteOfFather');
|
||||
Route::get('/searchOfIncompleteOfFather', '\App\Http\Controllers\Api\MeetingsController@searchOfIncompleteOfFather');
|
||||
Route::get('/detail/{meeting_id}', '\App\Http\Controllers\Api\MeetingsController@detail');
|
||||
Route::put('/update/{meeting_id}', '\App\Http\Controllers\Api\MeetingsController@update');
|
||||
Route::delete('/delete/{meeting_id}', '\App\Http\Controllers\Api\MeetingsController@delete');
|
||||
|
||||
// MeetingImagesController
|
||||
Route::group(['prefix' => 'images'], function () {
|
||||
Route::post('/register', '\App\Http\Controllers\Api\MeetingImagesController@register');
|
||||
Route::delete('/delete/{meeting_id}', '\App\Http\Controllers\Api\MeetingImagesController@delete');
|
||||
});
|
||||
|
||||
// MeetingsController
|
||||
Route::group(['prefix' => 'meetings'], function () {
|
||||
Route::post('/register', '\App\Http\Controllers\Api\MeetingsController@register');
|
||||
Route::post('/registerFavorite', '\App\Http\Controllers\Api\MeetingsController@registerFavorite');
|
||||
Route::get('/listOfCompleteOfFather', '\App\Http\Controllers\Api\MeetingsController@listOfCompleteOfFather');
|
||||
Route::get('/listOfIncompleteOfFather', '\App\Http\Controllers\Api\MeetingsController@listOfIncompleteOfFather');
|
||||
Route::get('/listOfFavoriteOfFather', '\App\Http\Controllers\Api\MeetingsController@listOfFavoriteOfFather');
|
||||
Route::get('/listOfNonFavoriteOfFather', '\App\Http\Controllers\Api\MeetingsController@listOfNonFavoriteOfFather');
|
||||
Route::get('/searchOfCompleteOfFather', '\App\Http\Controllers\Api\MeetingsController@searchOfCompleteOfFather');
|
||||
Route::get('/searchOfIncompleteOfFather', '\App\Http\Controllers\Api\MeetingsController@searchOfIncompleteOfFather');
|
||||
Route::get('/detail/{meeting_id}', '\App\Http\Controllers\Api\MeetingsController@detail');
|
||||
Route::put('/update/{meeting_id}', '\App\Http\Controllers\Api\MeetingsController@update');
|
||||
Route::delete('/delete/{meeting_id}', '\App\Http\Controllers\Api\MeetingsController@delete');
|
||||
|
||||
// MeetingImagesController
|
||||
Route::group(['prefix' => 'images'], function () {
|
||||
Route::post('/register', '\App\Http\Controllers\Api\MeetingImagesController@register');
|
||||
Route::delete('/delete/{meeting_id}', '\App\Http\Controllers\Api\MeetingImagesController@delete');
|
||||
});
|
||||
|
||||
// MeetingApprovalsController
|
||||
Route::group(['prefix' => 'approvals'], function () {
|
||||
// Route::post('/register/{meeting_id}', '\App\Http\Controllers\Api\MeetingApprovalsController@register');
|
||||
// Route::delete('/delete/{meeting_id}', '\App\Http\Controllers\Api\MeetingApprovalsController@delete');
|
||||
Route::post('/listChildrenOfMeeting', '\App\Http\Controllers\Api\MeetingApprovalsController@listChildrenOfMeeting');
|
||||
Route::get('/listChildrenOfApprovel', '\App\Http\Controllers\Api\MeetingApprovalsController@listChildrenOfApprovel');
|
||||
Route::get('/listChildrenOfUnapprovel', '\App\Http\Controllers\Api\MeetingApprovalsController@listChildrenOfUnapprovel');
|
||||
});
|
||||
});
|
||||
|
||||
// FatherRelationsController
|
||||
Route::group(['prefix' => 'relations'], function () {
|
||||
Route::post('/register', '\App\Http\Controllers\Api\FatherRelationsController@register');
|
||||
Route::put('/updateHireDate/{child_id}', '\App\Http\Controllers\Api\FatherRelationsController@updateHireDate');
|
||||
Route::delete('/deleteRelationChild/{child_id}', '\App\Http\Controllers\Api\FatherRelationsController@deleteRelationChild');
|
||||
// MeetingApprovalsController
|
||||
Route::group(['prefix' => 'approvals'], function () {
|
||||
// Route::post('/register/{meeting_id}', '\App\Http\Controllers\Api\MeetingApprovalsController@register');
|
||||
// Route::delete('/delete/{meeting_id}', '\App\Http\Controllers\Api\MeetingApprovalsController@delete');
|
||||
Route::post('/listChildrenOfMeeting', '\App\Http\Controllers\Api\MeetingApprovalsController@listChildrenOfMeeting');
|
||||
Route::get('/listChildrenOfApprovel', '\App\Http\Controllers\Api\MeetingApprovalsController@listChildrenOfApprovel');
|
||||
Route::get('/listChildrenOfUnapprovel', '\App\Http\Controllers\Api\MeetingApprovalsController@listChildrenOfUnapprovel');
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
// ChildrenController
|
||||
Route::group(['prefix' => 'children'], function () {
|
||||
Route::post('/registerTemporary', '\App\Http\Controllers\Api\ChildrenController@registerTemporary')->name('childrenregistertemporary');
|
||||
Route::post('/registerMain', '\App\Http\Controllers\Api\ChildrenController@registerMain')->name('childrenregistermain');
|
||||
// Route::post('/requestPassword', '\App\Http\Controllers\Api\ChildrenController@requestPassword')->name('childrenrequestpassword');
|
||||
// Route::post('/login', '\App\Http\Controllers\Api\ChildrenController@login')->name('childrenlogin');
|
||||
|
||||
Route::group(['middleware' => 'auth:children'], function () {
|
||||
Route::get('/detail/{child_id}', '\App\Http\Controllers\Api\ChildrenController@detail');
|
||||
Route::put('/updateImage/{child_id}', '\App\Http\Controllers\Api\ChildrenController@updateImage');
|
||||
Route::put('/updateProfile/{child_id}', '\App\Http\Controllers\Api\ChildrenController@updateProfile');
|
||||
Route::put('/updatePassword/{child_id}', '\App\Http\Controllers\Api\ChildrenController@updatePassword');
|
||||
Route::delete('/withdrawal', '\App\Http\Controllers\Api\ChildrenController@withdrawal');
|
||||
|
||||
// FathersController
|
||||
Route::group(['prefix' => 'fathers'], function () {
|
||||
Route::get('/listOfChild', '\App\Http\Controllers\Api\FathersController@listOfChild');
|
||||
Route::get('/detail/{father_id}', '\App\Http\Controllers\Api\FathersController@detail');
|
||||
});
|
||||
|
||||
// MeetingsController
|
||||
Route::group(['prefix' => 'meetings'], function () {
|
||||
Route::get('/listOfApprovalOfChild', '\App\Http\Controllers\Api\MeetingsController@listOfApprovalOfChild');
|
||||
Route::get('/listOfNonApprovalOfChild', '\App\Http\Controllers\Api\MeetingsController@listOfNonApprovalOfChild');
|
||||
Route::get('/searchOfApprovalOfChild', '\App\Http\Controllers\Api\MeetingsController@searchOfApprovalOfChild');
|
||||
Route::get('/searchOfNonApprovalOfChild', '\App\Http\Controllers\Api\MeetingsController@searchOfNonApprovalOfChild');
|
||||
Route::get('/detail/{meeting_id}', '\App\Http\Controllers\Api\MeetingsController@detail');
|
||||
|
||||
// MeetingApprovalsController
|
||||
Route::group(['prefix' => 'approvals'], function () {
|
||||
Route::post('/registerApproval', '\App\Http\Controllers\Api\MeetingApprovalsController@registerApproval');
|
||||
});
|
||||
});
|
||||
// FatherRelationsController
|
||||
Route::group(['prefix' => 'relations'], function () {
|
||||
Route::post('/register', '\App\Http\Controllers\Api\FatherRelationsController@register');
|
||||
Route::put('/updateHireDate/{child_id}', '\App\Http\Controllers\Api\FatherRelationsController@updateHireDate');
|
||||
Route::delete('/deleteRelationChild/{child_id}', '\App\Http\Controllers\Api\FatherRelationsController@deleteRelationChild');
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
// ChildrenController
|
||||
Route::group(['prefix' => 'children'], function () {
|
||||
Route::post('/registerTemporary', '\App\Http\Controllers\Api\ChildrenController@registerTemporary')->name('childrenregistertemporary');
|
||||
Route::post('/registerMain', '\App\Http\Controllers\Api\ChildrenController@registerMain')->name('childrenregistermain');
|
||||
// Route::post('/requestPassword', '\App\Http\Controllers\Api\ChildrenController@requestPassword')->name('childrenrequestpassword');
|
||||
// Route::post('/login', '\App\Http\Controllers\Api\ChildrenController@login')->name('childrenlogin');
|
||||
|
||||
Route::group(['middleware' => 'auth:children'], function () {
|
||||
Route::get('/detail/{child_id}', '\App\Http\Controllers\Api\ChildrenController@detail');
|
||||
Route::put('/updateImage/{child_id}', '\App\Http\Controllers\Api\ChildrenController@updateImage');
|
||||
Route::put('/updateProfile/{child_id}', '\App\Http\Controllers\Api\ChildrenController@updateProfile');
|
||||
Route::put('/updatePassword/{child_id}', '\App\Http\Controllers\Api\ChildrenController@updatePassword');
|
||||
Route::delete('/withdrawal', '\App\Http\Controllers\Api\ChildrenController@withdrawal');
|
||||
|
||||
// FathersController
|
||||
Route::group(['prefix' => 'fathers'], function () {
|
||||
Route::get('/listOfChild', '\App\Http\Controllers\Api\FathersController@listOfChild');
|
||||
Route::get('/detail/{father_id}', '\App\Http\Controllers\Api\FathersController@detail');
|
||||
});
|
||||
|
||||
// MeetingsController
|
||||
Route::group(['prefix' => 'meetings'], function () {
|
||||
Route::get('/listOfApprovalOfChild', '\App\Http\Controllers\Api\MeetingsController@listOfApprovalOfChild');
|
||||
Route::get('/listOfNonApprovalOfChild', '\App\Http\Controllers\Api\MeetingsController@listOfNonApprovalOfChild');
|
||||
Route::get('/searchOfApprovalOfChild', '\App\Http\Controllers\Api\MeetingsController@searchOfApprovalOfChild');
|
||||
Route::get('/searchOfNonApprovalOfChild', '\App\Http\Controllers\Api\MeetingsController@searchOfNonApprovalOfChild');
|
||||
Route::get('/detail/{meeting_id}', '\App\Http\Controllers\Api\MeetingsController@detail');
|
||||
|
||||
// MeetingApprovalsController
|
||||
Route::group(['prefix' => 'approvals'], function () {
|
||||
Route::post('/registerApproval', '\App\Http\Controllers\Api\MeetingApprovalsController@registerApproval');
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
|
@ -17,25 +17,42 @@ Route::get('/', function () {
|
|||
return view('welcome');
|
||||
});
|
||||
|
||||
Route::get('/p-account/meeting', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/meeting/detail/{meeting_id}', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/meeting/new', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/meeting/edit/{child_id}', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/favorite', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/search', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/child', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/child/add', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/child/edit/hire-date/{child_id}', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/child/detail/{child_id}', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/profile', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/profile/edit/{father_id}', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/profile/edit/password/{father_id}', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/profile/withdrawal', function () {return view('p_account.index');});
|
||||
Route::get('/p-account/profile/withdrawal/complete', function () {return view('p_account.index');});
|
||||
Route::get('/p-account', function () {return view('p_account.index');});
|
||||
Route::group(['prefix' => 'p-account'], function () {
|
||||
Route::get('/', function () {return view('p_account.index');});
|
||||
|
||||
Route::get('/contact-us', function () { return view('pages.contact.index'); });
|
||||
Route::get('/contact-us/complete/', function () { return view('pages.contact.index'); });
|
||||
Route::group(['middleware' => 'auth:fathers'], function () {
|
||||
Route::group(['prefix' => 'meeting'], function () {
|
||||
Route::get('/', function () {return view('p_account.index');});
|
||||
Route::get('/detail/{meeting_id}', function () {return view('p_account.index');});
|
||||
Route::get('/new', function () {return view('p_account.index');});
|
||||
Route::get('/edit/{child_id}', function () {return view('p_account.index');});
|
||||
});
|
||||
Route::get('/favorite', function () {return view('p_account.index');});
|
||||
Route::get('/search', function () {return view('p_account.index');});
|
||||
Route::group(['prefix' => 'child'], function () {
|
||||
Route::get('/', function () {return view('p_account.index');});
|
||||
Route::get('/add', function () {return view('p_account.index');});
|
||||
Route::get('/edit/hire-date/{child_id}', function () {return view('p_account.index');});
|
||||
Route::get('/detail/{child_id}', function () {return view('p_account.index');});
|
||||
});
|
||||
Route::group(['prefix' => 'profile'], function () {
|
||||
Route::get('/', function () {return view('p_account.index');});
|
||||
Route::group(['prefix' => 'edit'], function () {
|
||||
Route::get('/password/{father_id}', function () {return view('p_account.index');});
|
||||
Route::get('/{father_id}', function () {return view('p_account.index');});
|
||||
});
|
||||
Route::group(['prefix' => 'withdrawal'], function () {
|
||||
Route::get('/', function () {return view('p_account.index');});
|
||||
Route::get('/complete', function () {return view('p_account.index');});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
Route::group(['prefix' => 'contact-us'], function () {
|
||||
Route::get('/', function () { return view('pages.contact.index'); });
|
||||
Route::get('/complete', function () { return view('pages.contact.index'); });
|
||||
});
|
||||
Route::get('/unknown-error ', function () { return view('pages.contact.index'); });
|
||||
//--------------------------------Child Account--------------------------------------//
|
||||
Route::get('/register-temporary/c-account', function () { return view('c_account.auth'); });
|
||||
|
|
新しいイシューから参照