| @@ -0,0 +1,36 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Ask; | |||||
| use App\Kintone\Models\Customer; | |||||
| class AskNotice extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private Ask $app | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.ask_notice'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "【自動返信】[月極定期駐車場ナビ]お問い合わせありがとうございます。"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'phone_no' => $this->customer->phoneNumber, | |||||
| 'email' => $this->customer->email, | |||||
| 'ask' => $this->app->ask, | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,30 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| class BankAccountRegisterFailed extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.bank_account_register_failed'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "###TODO## 口座登録失敗"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return []; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,30 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| class BankAccountRegisterRemaind extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.bank_account_register_remaind'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "###TODO## 口座登録催促"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return []; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,43 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| class EntryApprove extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.vehicle_info_update_order_notice'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "車両番号・防犯登録番号変更受付のお知らせ"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'customer_name_kana' => $this->customer->customerNameKana, | |||||
| 'parking_name' => '##TODO##', | |||||
| 'type_name' => '##TODO##', | |||||
| 'plan_name' => '##TODO##', | |||||
| 'vehicle_no' => '##TODO##', | |||||
| 'use_start_date' => '##TODO##', | |||||
| 'payment_method' => '##TODO##', | |||||
| 'amount' => '##TODO##', | |||||
| 'can_terminate_15' => true, | |||||
| 'can_terminate_end_of_month' => true, | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,43 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| class EntryPaymentComplete extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.entry_payment_complete'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "【定期利用承認】申込承認 月極定期駐車場ナビ"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'customer_name_kana' => $this->customer->customerNameKana, | |||||
| 'parking_name' => '##TODO##', | |||||
| 'type_name' => '##TODO##', | |||||
| 'plan_name' => '##TODO##', | |||||
| 'vehicle_no' => '##TODO##', | |||||
| 'use_start_date' => '##TODO##', | |||||
| 'payment_method' => '##TODO##', | |||||
| 'amount' => '##TODO##', | |||||
| 'can_terminate_15' => true, | |||||
| 'can_terminate_end_of_month' => true, | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -3,12 +3,21 @@ | |||||
| namespace App\Email\Members; | namespace App\Email\Members; | ||||
| use App\Email\BaseEmailer; | use App\Email\BaseEmailer; | ||||
| use App\Kintone\Models\Customer; | |||||
| abstract class Members extends BaseEmailer | abstract class Members extends BaseEmailer | ||||
| { | { | ||||
| public function __construct(protected Customer $customer) | |||||
| { | |||||
| $this->setEmail($customer->email); | |||||
| } | |||||
| public function getParams(): array | public function getParams(): array | ||||
| { | { | ||||
| return array_merge($this->getMemberParams(), []); | |||||
| return array_merge($this->getMemberParams(), [ | |||||
| 'customer_name' => $this->customer->customerName | |||||
| ]); | |||||
| } | } | ||||
| abstract public function getMemberParams(): array; | abstract public function getMemberParams(): array; | ||||
| @@ -2,12 +2,19 @@ | |||||
| namespace App\Email\Members; | namespace App\Email\Members; | ||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\ParkingCertificateApplication; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| class ParkingCertificateOrderNotice extends Members | class ParkingCertificateOrderNotice extends Members | ||||
| { | { | ||||
| public function __construct() | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| private ParkingCertificateApplication $app | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | } | ||||
| public function getTemplateName(): string | public function getTemplateName(): string | ||||
| @@ -0,0 +1,40 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| use App\Kintone\Models\SeasonTicketReOrderApplication; | |||||
| class SeasonTicketReOrderNotice extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| private SeasonTicketReOrderApplication $app | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.season_ticket_re_order_notice'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "定期券再発行申請受付のお知らせ"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'parking_name' => $this->app->parkingName, | |||||
| 'zip_code' => $this->customer->zipCode, | |||||
| 'address' => $this->customer->address, | |||||
| 'reason' => $this->app->reason, | |||||
| 'memo' => $this->app->memo, | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,40 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| use App\Kintone\Models\StickerReOrderApplication; | |||||
| class StickerReOrderNotice extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| private StickerReOrderApplication $app | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.sticker_re_order_notice'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "シール再発行申請受付のお知らせ"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'parking_name' => $this->app->parkingName, | |||||
| 'zip_code' => $this->customer->zipCode, | |||||
| 'address' => $this->customer->address, | |||||
| 'reason' => $this->app->reason, | |||||
| 'memo' => $this->app->memo, | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,38 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| use App\Kintone\Models\TerminateApplication; | |||||
| class TerminateOrderApprove extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| private TerminateApplication $app | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.terminate_order_approve'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "解約申請完了 月極定期駐車場ナビ"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'parking_name' => $this->app->parkingName, | |||||
| 'vehicle_no' => $this->seasonTicketContract->vehicleNo, | |||||
| 'terminate_date' => $this->app->terminateDate->format('Y/m/d'), | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,38 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| use App\Kintone\Models\TerminateApplication; | |||||
| class TerminateOrderComplete extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| private TerminateApplication $app | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.terminate_order_complete'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "契約期間満了のお知らせ"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'parking_name' => $this->app->parkingName, | |||||
| 'vehicle_no' => $this->seasonTicketContract->vehicleNo, | |||||
| 'terminate_date' => $this->app->terminateDate->format('Y/m/d'), | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,38 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| use App\Kintone\Models\TerminateApplication; | |||||
| class TerminateOrderNotice extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| private TerminateApplication $app | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.terminate_order_notice'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "【自動返信】解約申請受付のお知らせ"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'parking_name' => $this->app->parkingName, | |||||
| 'vehicle_no' => $this->seasonTicketContract->vehicleNo, | |||||
| 'terminate_date' => $this->app->terminateDate->format('Y/m/d'), | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,39 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| use App\Kintone\Models\UserInfoUpdateApplication; | |||||
| class UserInfoUpdateOrderApprove extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| private UserInfoUpdateApplication $app | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.user_info_update_order_approve'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "利用者情報変更完了のお知らせ"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'zip_code' => $this->customer->zipCode, | |||||
| 'address' => $this->customer->address, | |||||
| 'phone_no' => $this->customer->phoneNumber, | |||||
| 'memo' => $this->app->memo, | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,39 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| use App\Kintone\Models\UserInfoUpdateApplication; | |||||
| class UserInfoUpdateOrderNotice extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| private UserInfoUpdateApplication $app | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.user_info_update_order_notice'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "利用者情報変更受付のお知らせ"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'zip_code' => $this->customer->zipCode, | |||||
| 'address' => $this->customer->address, | |||||
| 'phone_no' => $this->customer->phoneNumber, | |||||
| 'memo' => $this->app->memo, | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,40 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| use App\Kintone\Models\VehicleInfoUpdateApplication; | |||||
| class VehicleInfoUpdateOrderApprove extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| private VehicleInfoUpdateApplication $app | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.vehicle_info_update_order_approve'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "車両番号・防犯登録番号変更完了のお知らせ"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'parking_name' => $this->app->parkingName, | |||||
| 'vehicle_no' => $this->app->vehicleNoAfter, | |||||
| 'register_no' => $this->app->registerNoAfter, | |||||
| 'change_date' => $this->app->changeDate->format('Y/m/d'), | |||||
| 'memo' => $this->app->memo, | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -0,0 +1,40 @@ | |||||
| <?php | |||||
| namespace App\Email\Members; | |||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| use App\Kintone\Models\VehicleInfoUpdateApplication; | |||||
| class VehicleInfoUpdateOrderNotice extends Members | |||||
| { | |||||
| public function __construct( | |||||
| protected Customer $customer, | |||||
| private SeasonTicketContract $seasonTicketContract, | |||||
| private VehicleInfoUpdateApplication $app | |||||
| ) { | |||||
| parent::__construct($customer); | |||||
| } | |||||
| public function getTemplateName(): string | |||||
| { | |||||
| return 'emails.members.vehicle_info_update_order_notice'; | |||||
| } | |||||
| public function getSubject(): string | |||||
| { | |||||
| return "車両番号・防犯登録番号変更受付のお知らせ"; | |||||
| } | |||||
| public function getMemberParams(): array | |||||
| { | |||||
| return [ | |||||
| 'parking_name' => $this->app->parkingName, | |||||
| 'vehicle_no' => $this->app->vehicleNoAfter, | |||||
| 'register_no' => $this->app->registerNoAfter, | |||||
| 'change_date' => $this->app->changeDate->format('Y/m/d'), | |||||
| 'memo' => $this->app->memo, | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -2,15 +2,18 @@ | |||||
| namespace App\Http\Controllers\Web\FAQ; | namespace App\Http\Controllers\Web\FAQ; | ||||
| use App\Email\Members\AskNotice; | |||||
| use App\Http\Controllers\Web\WebController; | use App\Http\Controllers\Web\WebController; | ||||
| use App\Kintone\KintoneRecordQueryOperator; | use App\Kintone\KintoneRecordQueryOperator; | ||||
| use App\Kintone\Models\Ask; | use App\Kintone\Models\Ask; | ||||
| use App\Kintone\Models\Customer; | use App\Kintone\Models\Customer; | ||||
| use App\Kintone\Models\FAQ; | use App\Kintone\Models\FAQ; | ||||
| use App\Logic\AskManager; | use App\Logic\AskManager; | ||||
| use App\Logic\EmailManager; | |||||
| use App\Util\DateUtil; | use App\Util\DateUtil; | ||||
| use Illuminate\Http\JsonResponse; | use Illuminate\Http\JsonResponse; | ||||
| use Illuminate\Http\Request; | use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\Auth; | |||||
| class AskController extends WebController | class AskController extends WebController | ||||
| { | { | ||||
| @@ -36,8 +39,19 @@ class AskController extends WebController | |||||
| { | { | ||||
| $param = $this->param; | $param = $this->param; | ||||
| $this->manager->setCustomer(Customer::getSelf()) | |||||
| ->register($param->genre, $param->ask); | |||||
| $customer = Customer::getSelf(); | |||||
| $ask = $this->manager->setCustomer(Customer::getSelf()) | |||||
| ->make($param->genre, $param->ask); | |||||
| // メール送信 | |||||
| $email = new AskNotice($customer, $ask); | |||||
| $email->setUser(Auth::user()); | |||||
| $emailMmanager = new EmailManager($email); | |||||
| $emailMmanager->confirm(); | |||||
| $ask->save(); | |||||
| return $this->successResponse(); | return $this->successResponse(); | ||||
| } | } | ||||
| @@ -2,14 +2,17 @@ | |||||
| namespace App\Http\Controllers\Web\SeasonTicketContract; | namespace App\Http\Controllers\Web\SeasonTicketContract; | ||||
| use App\Email\Members\ParkingCertificateOrderNotice; | |||||
| use App\Http\Controllers\Web\WebController; | use App\Http\Controllers\Web\WebController; | ||||
| use App\Kintone\Models\Customer; | use App\Kintone\Models\Customer; | ||||
| use App\Kintone\Models\Parking; | use App\Kintone\Models\Parking; | ||||
| use App\Kintone\Models\ParkingCertificateApplication; | use App\Kintone\Models\ParkingCertificateApplication; | ||||
| use App\Kintone\Models\SeasonTicketContract; | use App\Kintone\Models\SeasonTicketContract; | ||||
| use App\Logic\EmailManager; | |||||
| use App\Logic\GeneralApplicationManager; | use App\Logic\GeneralApplicationManager; | ||||
| use Illuminate\Http\JsonResponse; | use Illuminate\Http\JsonResponse; | ||||
| use Illuminate\Http\Request; | use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\Auth; | |||||
| class ParkingCertificateOrderController extends WebController | class ParkingCertificateOrderController extends WebController | ||||
| { | { | ||||
| @@ -61,6 +64,12 @@ class ParkingCertificateOrderController extends WebController | |||||
| $application->mailAddress = $param->mailAddress; | $application->mailAddress = $param->mailAddress; | ||||
| $application->memo = $param->memo; | $application->memo = $param->memo; | ||||
| // メール送信 | |||||
| $email = new ParkingCertificateOrderNotice($customer, $seasonTicketContract, $application); | |||||
| $email->setUser(Auth::user()); | |||||
| $emailMmanager = new EmailManager($email); | |||||
| $emailMmanager->confirm(); | |||||
| $application->save(); | $application->save(); | ||||
| return $this->successResponse(); | return $this->successResponse(); | ||||
| @@ -2,15 +2,17 @@ | |||||
| namespace App\Http\Controllers\Web\SeasonTicketContract; | namespace App\Http\Controllers\Web\SeasonTicketContract; | ||||
| use App\Email\Members\SeasonTicketReOrderNotice; | |||||
| use App\Http\Controllers\Web\WebController; | use App\Http\Controllers\Web\WebController; | ||||
| use App\Kintone\Models\Customer; | use App\Kintone\Models\Customer; | ||||
| use App\Kintone\Models\Parking; | use App\Kintone\Models\Parking; | ||||
| use App\Kintone\Models\SeasonTicketContract; | use App\Kintone\Models\SeasonTicketContract; | ||||
| use App\Kintone\Models\SeasonTicketReOrderApplication; | use App\Kintone\Models\SeasonTicketReOrderApplication; | ||||
| use App\Logic\EmailManager; | |||||
| use App\Logic\GeneralApplicationManager; | use App\Logic\GeneralApplicationManager; | ||||
| use Illuminate\Http\JsonResponse; | use Illuminate\Http\JsonResponse; | ||||
| use Illuminate\Http\Request; | use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\Auth; | |||||
| class SeasonTicketReOrderController extends WebController | class SeasonTicketReOrderController extends WebController | ||||
| { | { | ||||
| @@ -51,6 +53,13 @@ class SeasonTicketReOrderController extends WebController | |||||
| $application->reason = $param->reason; | $application->reason = $param->reason; | ||||
| $application->memo = $param->memo; | $application->memo = $param->memo; | ||||
| // メール送信 | |||||
| $email = new SeasonTicketReOrderNotice($customer, $seasonTicketContract, $application); | |||||
| $email->setUser(Auth::user()); | |||||
| $emailMmanager = new EmailManager($email); | |||||
| $emailMmanager->confirm(); | |||||
| $application->save(); | $application->save(); | ||||
| return $this->successResponse(); | return $this->successResponse(); | ||||
| @@ -2,15 +2,18 @@ | |||||
| namespace App\Http\Controllers\Web\SeasonTicketContract; | namespace App\Http\Controllers\Web\SeasonTicketContract; | ||||
| use App\Email\Members\StickerReOrderNotice; | |||||
| use App\Http\Controllers\Web\WebController; | use App\Http\Controllers\Web\WebController; | ||||
| use App\Kintone\Models\Customer; | use App\Kintone\Models\Customer; | ||||
| use App\Kintone\Models\Parking; | use App\Kintone\Models\Parking; | ||||
| use App\Kintone\Models\SeasonTicketContract; | use App\Kintone\Models\SeasonTicketContract; | ||||
| use App\Kintone\Models\SeasonTicketReOrderApplication; | use App\Kintone\Models\SeasonTicketReOrderApplication; | ||||
| use App\Kintone\Models\StickerReOrderApplication; | use App\Kintone\Models\StickerReOrderApplication; | ||||
| use App\Logic\EmailManager; | |||||
| use App\Logic\GeneralApplicationManager; | use App\Logic\GeneralApplicationManager; | ||||
| use Illuminate\Http\JsonResponse; | use Illuminate\Http\JsonResponse; | ||||
| use Illuminate\Http\Request; | use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\Auth; | |||||
| class StickerReOrderController extends WebController | class StickerReOrderController extends WebController | ||||
| { | { | ||||
| @@ -51,6 +54,12 @@ class StickerReOrderController extends WebController | |||||
| $application->reason = $param->reason; | $application->reason = $param->reason; | ||||
| $application->memo = $param->memo; | $application->memo = $param->memo; | ||||
| // メール送信 | |||||
| $email = new StickerReOrderNotice($customer, $seasonTicketContract, $application); | |||||
| $email->setUser(Auth::user()); | |||||
| $emailMmanager = new EmailManager($email); | |||||
| $emailMmanager->confirm(); | |||||
| $application->save(); | $application->save(); | ||||
| return $this->successResponse(); | return $this->successResponse(); | ||||
| @@ -2,14 +2,17 @@ | |||||
| namespace App\Http\Controllers\Web\SeasonTicketContract; | namespace App\Http\Controllers\Web\SeasonTicketContract; | ||||
| use App\Email\Members\TerminateOrderNotice; | |||||
| use App\Http\Controllers\Web\WebController; | use App\Http\Controllers\Web\WebController; | ||||
| use App\Kintone\Models\Customer; | use App\Kintone\Models\Customer; | ||||
| use App\Kintone\Models\Parking; | use App\Kintone\Models\Parking; | ||||
| use App\Kintone\Models\SeasonTicketContract; | use App\Kintone\Models\SeasonTicketContract; | ||||
| use App\Kintone\Models\TerminateApplication; | use App\Kintone\Models\TerminateApplication; | ||||
| use App\Logic\EmailManager; | |||||
| use App\Logic\GeneralApplicationManager; | use App\Logic\GeneralApplicationManager; | ||||
| use Illuminate\Http\JsonResponse; | use Illuminate\Http\JsonResponse; | ||||
| use Illuminate\Http\Request; | use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\Auth; | |||||
| class TerminationOrderController extends WebController | class TerminationOrderController extends WebController | ||||
| { | { | ||||
| @@ -53,6 +56,12 @@ class TerminationOrderController extends WebController | |||||
| $application->opinion = $param->opinion; | $application->opinion = $param->opinion; | ||||
| $application->memo = $param->memo; | $application->memo = $param->memo; | ||||
| // メール送信 | |||||
| $email = new TerminateOrderNotice($customer, $seasonTicketContract, $application); | |||||
| $email->setUser(Auth::user()); | |||||
| $emailMmanager = new EmailManager($email); | |||||
| $emailMmanager->confirm(); | |||||
| $application->save(); | $application->save(); | ||||
| return $this->successResponse(); | return $this->successResponse(); | ||||
| @@ -3,10 +3,6 @@ | |||||
| namespace App\Http\Controllers\Web\SeasonTicketContract; | namespace App\Http\Controllers\Web\SeasonTicketContract; | ||||
| use App\Http\Controllers\Web\WebController; | use App\Http\Controllers\Web\WebController; | ||||
| use App\Kintone\Models\Customer; | |||||
| use App\Kintone\Models\ParkingRoom; | |||||
| use App\Kintone\Models\SeasonTicketContract; | |||||
| use App\Logic\GeneralApplicationManager; | |||||
| use App\Util\DateUtil; | use App\Util\DateUtil; | ||||
| use Illuminate\Http\JsonResponse; | use Illuminate\Http\JsonResponse; | ||||
| use Illuminate\Http\Request; | use Illuminate\Http\Request; | ||||
| @@ -2,14 +2,17 @@ | |||||
| namespace App\Http\Controllers\Web\SeasonTicketContract; | namespace App\Http\Controllers\Web\SeasonTicketContract; | ||||
| use App\Email\Members\VehicleInfoUpdateOrderNotice; | |||||
| use App\Http\Controllers\Web\WebController; | use App\Http\Controllers\Web\WebController; | ||||
| use App\Kintone\Models\Customer; | use App\Kintone\Models\Customer; | ||||
| use App\Kintone\Models\Parking; | use App\Kintone\Models\Parking; | ||||
| use App\Kintone\Models\SeasonTicketContract; | use App\Kintone\Models\SeasonTicketContract; | ||||
| use App\Kintone\Models\VehicleInfoUpdateApplication; | use App\Kintone\Models\VehicleInfoUpdateApplication; | ||||
| use App\Logic\EmailManager; | |||||
| use App\Logic\GeneralApplicationManager; | use App\Logic\GeneralApplicationManager; | ||||
| use Illuminate\Http\JsonResponse; | use Illuminate\Http\JsonResponse; | ||||
| use Illuminate\Http\Request; | use Illuminate\Http\Request; | ||||
| use Illuminate\Support\Facades\Auth; | |||||
| class UpdateVehicleInfoOrderController extends WebController | class UpdateVehicleInfoOrderController extends WebController | ||||
| { | { | ||||
| @@ -54,6 +57,12 @@ class UpdateVehicleInfoOrderController extends WebController | |||||
| $application->registerNoAfter = $param->registerNo; | $application->registerNoAfter = $param->registerNo; | ||||
| $application->memo = $param->memo; | $application->memo = $param->memo; | ||||
| // メール送信 | |||||
| $email = new VehicleInfoUpdateOrderNotice($customer, $seasonTicketContract, $application); | |||||
| $email->setUser(Auth::user()); | |||||
| $emailMmanager = new EmailManager($email); | |||||
| $emailMmanager->confirm(); | |||||
| $application->save(); | $application->save(); | ||||
| return $this->successResponse(); | return $this->successResponse(); | ||||
| @@ -109,7 +109,6 @@ class KintoneAccess | |||||
| ])->get($this->getRecordUrl(), [ | ])->get($this->getRecordUrl(), [ | ||||
| "app" => $this->appId, | "app" => $this->appId, | ||||
| "id" => $id, | "id" => $id, | ||||
| 'fields' => $this->fields, | |||||
| ]); | ]); | ||||
| if ($response->failed()) { | if ($response->failed()) { | ||||
| @@ -2,8 +2,13 @@ | |||||
| namespace App\Kintone\Models; | namespace App\Kintone\Models; | ||||
| use Illuminate\Support\Carbon; | |||||
| /** | /** | ||||
| * アプリ名 問い合わせ | * アプリ名 問い合わせ | ||||
| * @property string $genre | |||||
| * @property string $ask | |||||
| * @property Carbon $askDatetime | |||||
| */ | */ | ||||
| class Ask extends KintoneModel | class Ask extends KintoneModel | ||||
| { | { | ||||
| @@ -25,4 +30,8 @@ class Ask extends KintoneModel | |||||
| protected const FIELD_NAMES = [ | protected const FIELD_NAMES = [ | ||||
| ...parent::FIELD_NAMES, | ...parent::FIELD_NAMES, | ||||
| ]; | ]; | ||||
| protected const RELATIONS = [ | |||||
| Customer::class, | |||||
| ]; | |||||
| } | } | ||||
| @@ -11,6 +11,8 @@ use Illuminate\Support\Facades\Auth; | |||||
| * @property string customerNameKana | * @property string customerNameKana | ||||
| * @property string email | * @property string email | ||||
| * @property string phoneNumber | * @property string phoneNumber | ||||
| * @property string zipCode | |||||
| * @property string address | |||||
| */ | */ | ||||
| class Customer extends KintoneModel | class Customer extends KintoneModel | ||||
| { | { | ||||
| @@ -2,7 +2,6 @@ | |||||
| namespace App\Kintone\Models; | namespace App\Kintone\Models; | ||||
| use App\Kintone\KintoneAccess; | |||||
| use Illuminate\Support\Carbon; | use Illuminate\Support\Carbon; | ||||
| /** | /** | ||||
| @@ -47,7 +46,6 @@ abstract class GeneralApplication extends KintoneModel | |||||
| protected const RELATIONS = [ | protected const RELATIONS = [ | ||||
| SeasonTicketContract::class, | SeasonTicketContract::class, | ||||
| Parking::class, | |||||
| Customer::class, | Customer::class, | ||||
| ]; | ]; | ||||
| } | } | ||||
| @@ -1,29 +0,0 @@ | |||||
| <?php | |||||
| namespace App\Kintone\Models; | |||||
| /** | |||||
| * アプリ名 車室情報2 | |||||
| */ | |||||
| class ParkingRoom extends KintoneModel | |||||
| { | |||||
| const CONFIG_KEY = "KINTONE_APP_PARKING_ROOM"; | |||||
| const FIELD_PARKING_NAME = "定期駐車場"; | |||||
| const FIELD_ROOM_NO = "車室番号"; | |||||
| const FIELD_SEASON_TICKET_CONTRACT_RECORD_NO = "契約情報"; | |||||
| protected const FIELDS = [ | |||||
| ...parent::FIELDS, | |||||
| self::FIELD_PARKING_NAME => FieldType::SINGLE_LINE_TEXT, | |||||
| self::FIELD_ROOM_NO => FieldType::SINGLE_LINE_TEXT, | |||||
| self::FIELD_SEASON_TICKET_CONTRACT_RECORD_NO => FieldType::NUMBER, | |||||
| ]; | |||||
| protected const FIELD_NAMES = [ | |||||
| ...parent::FIELD_NAMES, | |||||
| self::FIELD_PARKING_NAME => 'parking_name', | |||||
| self::FIELD_ROOM_NO => 'room_no', | |||||
| self::FIELD_SEASON_TICKET_CONTRACT_RECORD_NO => 'season_ticekt_contract_record_no', | |||||
| ]; | |||||
| } | |||||
| @@ -15,6 +15,8 @@ class SeasonTicketContract extends KintoneModel | |||||
| const CONFIG_KEY = "KINTONE_APP_SEASON_TICKET_CONTRACT"; | const CONFIG_KEY = "KINTONE_APP_SEASON_TICKET_CONTRACT"; | ||||
| const FIELD_CUSTOMER_CODE = "顧客コード"; | const FIELD_CUSTOMER_CODE = "顧客コード"; | ||||
| const FIELD_PARKING_NAME = "駐車場名"; | |||||
| const FIELD_ROOM_NO = "車室番号"; | |||||
| const FIELD_SEASON_TICKET_SEQ_NO = "定期券番号_0"; | const FIELD_SEASON_TICKET_SEQ_NO = "定期券番号_0"; | ||||
| const FIELD_VEHICLE_NO = "車両番号"; | const FIELD_VEHICLE_NO = "車両番号"; | ||||
| const FIELD_REGISTER_NO = "防犯登録番号"; | const FIELD_REGISTER_NO = "防犯登録番号"; | ||||
| @@ -30,6 +32,8 @@ class SeasonTicketContract extends KintoneModel | |||||
| protected const FIELDS = [ | protected const FIELDS = [ | ||||
| ...parent::FIELDS, | ...parent::FIELDS, | ||||
| self::FIELD_CUSTOMER_CODE => FieldType::NUMBER, | self::FIELD_CUSTOMER_CODE => FieldType::NUMBER, | ||||
| self::FIELD_PARKING_NAME => FieldType::SINGLE_LINE_TEXT, | |||||
| self::FIELD_ROOM_NO => FieldType::SINGLE_LINE_TEXT, | |||||
| self::FIELD_SEASON_TICKET_SEQ_NO => FieldType::SINGLE_LINE_TEXT, | self::FIELD_SEASON_TICKET_SEQ_NO => FieldType::SINGLE_LINE_TEXT, | ||||
| self::FIELD_VEHICLE_NO => FieldType::SINGLE_LINE_TEXT, | self::FIELD_VEHICLE_NO => FieldType::SINGLE_LINE_TEXT, | ||||
| self::FIELD_REGISTER_NO => FieldType::SINGLE_LINE_TEXT, | self::FIELD_REGISTER_NO => FieldType::SINGLE_LINE_TEXT, | ||||
| @@ -44,7 +48,9 @@ class SeasonTicketContract extends KintoneModel | |||||
| protected const FIELD_NAMES = [ | protected const FIELD_NAMES = [ | ||||
| ...parent::FIELD_NAMES, | ...parent::FIELD_NAMES, | ||||
| self::FIELD_SEASON_TICKET_SEQ_NO => 'season_ticket_seq_no', | |||||
| self::FIELD_SEASON_TICKET_SEQ_NO => 'season_ticekt_contract_record_no', | |||||
| self::FIELD_PARKING_NAME => 'parking_name', | |||||
| self::FIELD_ROOM_NO => 'room_no', | |||||
| self::FIELD_VEHICLE_NO => 'vehicle_no', | self::FIELD_VEHICLE_NO => 'vehicle_no', | ||||
| self::FIELD_REGISTER_NO => 'register_no', | self::FIELD_REGISTER_NO => 'register_no', | ||||
| self::FIELD_CONTRACT_START_DATE => 'contract_start_date', | self::FIELD_CONTRACT_START_DATE => 'contract_start_date', | ||||
| @@ -53,15 +59,4 @@ class SeasonTicketContract extends KintoneModel | |||||
| self::FIELD_STUDENT_LICENSE_IMAGES_UPLOAD_DATETIME => 'student_license_images_upload_datetime', | self::FIELD_STUDENT_LICENSE_IMAGES_UPLOAD_DATETIME => 'student_license_images_upload_datetime', | ||||
| self::FIELD_OTHER_LICENSE_IMAGES_UPLOAD_DATETIME => 'other_license_images_upload_datetime', | self::FIELD_OTHER_LICENSE_IMAGES_UPLOAD_DATETIME => 'other_license_images_upload_datetime', | ||||
| ]; | ]; | ||||
| public function parkingRoom() | |||||
| { | |||||
| $key = $this->getStr(self::FIELD_SEASON_TICKET_SEQ_NO); | |||||
| if (!$key) { | |||||
| throw new LogicException("モデル初期化不正"); | |||||
| } | |||||
| return ParkingRoom::getAccess()->first( | |||||
| ParkingRoom::getQuery()->where(ParkingRoom::FIELD_SEASON_TICKET_CONTRACT_RECORD_NO, $key) | |||||
| ); | |||||
| } | |||||
| } | } | ||||
| @@ -2,6 +2,8 @@ | |||||
| namespace App\Kintone\Models; | namespace App\Kintone\Models; | ||||
| use Illuminate\Support\Carbon; | |||||
| /** | /** | ||||
| * アプリ名 各種申請 [車両番号・防犯番号変更申請] | * アプリ名 各種申請 [車両番号・防犯番号変更申請] | ||||
| * @property ?Carbon changeDate | * @property ?Carbon changeDate | ||||
| @@ -2,7 +2,7 @@ | |||||
| namespace App\Kintone\Repositories; | namespace App\Kintone\Repositories; | ||||
| use App\Kintone\Models\ParkingRoom; | |||||
| use App\Kintone\Models\Parking; | |||||
| use App\Kintone\Models\SeasonTicketContract; | use App\Kintone\Models\SeasonTicketContract; | ||||
| use Illuminate\Support\Collection; | use Illuminate\Support\Collection; | ||||
| @@ -22,34 +22,12 @@ class SeasonTicketContractRepository | |||||
| $seasonTicketContracts = SeasonTicketContract::getAccess() | $seasonTicketContracts = SeasonTicketContract::getAccess() | ||||
| ->some($query); | ->some($query); | ||||
| $recordIds = []; | |||||
| foreach ($seasonTicketContracts as $seasonTicketContract) { | |||||
| $recordIds[] = $seasonTicketContract->getRecordId(); | |||||
| } | |||||
| $query = ParkingRoom::getQuery() | |||||
| ->whereIn(ParkingRoom::FIELD_SEASON_TICKET_CONTRACT_RECORD_NO, $recordIds); | |||||
| $parkings = ParkingRoom::getAccess() | |||||
| ->some($query); | |||||
| /** | |||||
| * @var Collection<string, ParkingRoom> | |||||
| */ | |||||
| $parkingsBySeasonTicketContractRecordId = collect(); | |||||
| foreach ($parkings as $parking) { | |||||
| $parkingsBySeasonTicketContractRecordId->put($parking->getNumber(ParkingRoom::FIELD_SEASON_TICKET_CONTRACT_RECORD_NO), $parking); | |||||
| } | |||||
| /** | /** | ||||
| * @var SeasonTicketContract $seasonTicketContract | * @var SeasonTicketContract $seasonTicketContract | ||||
| */ | */ | ||||
| foreach ($seasonTicketContracts as $seasonTicketContract) { | foreach ($seasonTicketContracts as $seasonTicketContract) { | ||||
| $parking = null; | |||||
| $parking = $parkingsBySeasonTicketContractRecordId->get($seasonTicketContract->getRecordId(), null); | |||||
| $ret->put($seasonTicketContract->getRecordId(), new SeasonTicketContractRepositoryData($seasonTicketContract, $parking)); | |||||
| $ret->put($seasonTicketContract->getRecordId(), new SeasonTicketContractRepositoryData($seasonTicketContract)); | |||||
| } | } | ||||
| return $ret; | return $ret; | ||||
| @@ -2,22 +2,20 @@ | |||||
| namespace App\Kintone\Repositories; | namespace App\Kintone\Repositories; | ||||
| use App\Kintone\Models\ParkingRoom; | |||||
| use App\Kintone\Models\SeasonTicketContract; | use App\Kintone\Models\SeasonTicketContract; | ||||
| class SeasonTicketContractRepositoryData | class SeasonTicketContractRepositoryData | ||||
| { | { | ||||
| public function __construct( | public function __construct( | ||||
| public SeasonTicketContract $seasonTicketContract, | public SeasonTicketContract $seasonTicketContract, | ||||
| public ParkingRoom|null $parkingRoom = null, | |||||
| ) { | ) { | ||||
| } | } | ||||
| public function toArray(): array | public function toArray(): array | ||||
| { | { | ||||
| return [ | return [ | ||||
| ...$this->parkingRoom !== null ? $this->parkingRoom->toArray() : [], | |||||
| ...$this->seasonTicketContract->toArray(), | ...$this->seasonTicketContract->toArray(), | ||||
| 'season_ticekt_contract_record_no' => $this->seasonTicketContract->getRecordId(), | |||||
| ]; | ]; | ||||
| } | } | ||||
| } | } | ||||
| @@ -26,20 +26,17 @@ class AskManager | |||||
| } | } | ||||
| public function register(string $genre, string $ask) | |||||
| public function make(string $genre, string $ask) | |||||
| { | { | ||||
| if ($this->customer === null) { | if ($this->customer === null) { | ||||
| throw new LogicException("顧客NULL"); | throw new LogicException("顧客NULL"); | ||||
| } | } | ||||
| $this->model->set(Ask::FIELD_ASK_DATETIME, DateUtil::now()); | $this->model->set(Ask::FIELD_ASK_DATETIME, DateUtil::now()); | ||||
| $this->model->set(Ask::FIELD_GENRE, $genre); | $this->model->set(Ask::FIELD_GENRE, $genre); | ||||
| $this->model->set(Ask::FIELD_ASK, $ask); | $this->model->set(Ask::FIELD_ASK, $ask); | ||||
| $this->model->set(Ask::FIELD_CUSTOMER_CODE, $this->customer->getStr(Customer::FIELD_CUSTOMER_CODE)); | $this->model->set(Ask::FIELD_CUSTOMER_CODE, $this->customer->getStr(Customer::FIELD_CUSTOMER_CODE)); | ||||
| $this->model->getAccess() | |||||
| ->addAppToken(Customer::class) | |||||
| ->create($this->model); | |||||
| return $this->model; | |||||
| } | } | ||||
| } | } | ||||
| @@ -120,6 +120,17 @@ class EmailManager | |||||
| } | } | ||||
| } | } | ||||
| // ステージング環境では特定のドメインに対してのみ送信可能 | |||||
| // 送信先の書き換えは行わない | |||||
| if (app()->environment([EnvironmentName::STAGING->value])) { | |||||
| $email = $this->model->email; | |||||
| if (!Str::endsWith($email, ['@satellite-tech.co.jp', '@sute.jp', '@kyoto-public.or.jp'])) { | |||||
| // 送信NG | |||||
| info(sprintf("ローカル環境Email送信対象外アドレスのため、メール送信スキップ [%s]", $email)); | |||||
| return; | |||||
| } | |||||
| } | |||||
| $validator = Validator::make(['email' => $this->model->email], [ | $validator = Validator::make(['email' => $this->model->email], [ | ||||
| 'email' => ['required', 'email:strict,dns'] | 'email' => ['required', 'email:strict,dns'] | ||||
| ]); | ]); | ||||
| @@ -95,7 +95,7 @@ class GeneralApplicationManager | |||||
| $this->model->customerCode = $this->customer->customerCode; | $this->model->customerCode = $this->customer->customerCode; | ||||
| if ($this->seasonTicketContract !== null) { | if ($this->seasonTicketContract !== null) { | ||||
| $this->model->seasonTicketContractRecordNo = $this->seasonTicketContract->seasonTicketSeqNo; | |||||
| $this->model->seasonTicketContractRecordNo = $this->seasonTicketContract->getRecordId(); | |||||
| } | } | ||||
| if ($this->parking !== null) { | if ($this->parking !== null) { | ||||
| @@ -28,7 +28,6 @@ return [ | |||||
| 'applications' => [ | 'applications' => [ | ||||
| ...App\Kintone\Models\Customer::setConfig(), | ...App\Kintone\Models\Customer::setConfig(), | ||||
| ...App\Kintone\Models\Parking::setConfig(), | ...App\Kintone\Models\Parking::setConfig(), | ||||
| ...App\Kintone\Models\ParkingRoom::setConfig(), | |||||
| ...App\Kintone\Models\SeasonTicketContract::setConfig(), | ...App\Kintone\Models\SeasonTicketContract::setConfig(), | ||||
| ...App\Kintone\Models\PaymentPlan::setConfig(), | ...App\Kintone\Models\PaymentPlan::setConfig(), | ||||
| ...App\Kintone\Models\GeneralApplication::setConfig(), | ...App\Kintone\Models\GeneralApplication::setConfig(), | ||||
| @@ -0,0 +1,60 @@ | |||||
| @extends('emails.layouts.guests') | |||||
| @section('contents') | |||||
| この度は、弊社駐車場・駐輪場へのお申込を頂きありがとうございます。 | |||||
| こちらのメールは【自動返信】メールのため現在、ご契約は確定しておりません。 | |||||
| 担当者確認後、利用確認事項メールをお送り致します。※注1 | |||||
| 土日祝・年末年始を除き 4 営業日後までに連絡が無い場合には、お手数ですが下記連絡先までお問い合わせ下さい。 | |||||
| 【順次受付中のため、こちらのメールを受け取られても状況により満車になっている場合がござ います。予めご了承下さい。】 | |||||
| ※注1■【重要】 | |||||
| 「満車」の駐車場・駐輪場につきましては、利用確認事項メールはお送り致しておりません。 | |||||
| ご予約にてシステム受付しておりますので、空き次第のご連絡となります。 | |||||
| (申込順の対応となりますので予めご了承下さい。) | |||||
| ※注2■【重要】 | |||||
| 「@kyotopublic.or.jp」からのメールが、迷惑メールフォルダ・削除フォルダに入っていないかご 確認下さい。 | |||||
| ※gmail、yahoo メール等にて受信エラーが頻発しております。 | |||||
| 迷惑メール対策やドメイン指定受信等を設定している方のみならず設定の覚えがない方も、確認メールが受信されますよう【@kyotopublic.or.jp】のドメイン登録をお願い致します。 | |||||
| ◆ドメイン登録の設定をされていない場合において確認メールが届かないことがありましても、 弊社では分かりかねますため必ず設定をお願い致します。◆ | |||||
| 入力されたメールアドレス、携帯番号及び住所(番地・部屋番号等)に不備があると登録ができ かねますので、その際はお手数ですが再度申請をお願い致します。 | |||||
| ■土日祝日・年末年始は休業しております。 | |||||
| その他申込状況により、利用確認事項メールの送付にお時間がかかる場合がございます。ご理解のほどよろしくお願い致します。 | |||||
| ■最新の駐車場・駐輪場の情報をご確認お願い致します。 | |||||
| 各駐車場・駐輪場において、申込時より料金変更や取扱い変更を実施する場合がございますため、弊社 HP・現地の案内をご確認下さいますようお願い致します。 | |||||
| なお、お問い合わせの際は確認のため駐車場・駐輪場名の他、お名前等詳細についてもお知らせ下さい。 | |||||
| 【お問い合わせフォーム】 | |||||
| https://www.kyotopublic.or.jp/teiki-parking/contact/ | |||||
| ------------------------------------------------------------------------------------- | |||||
| ◆駐車場 | |||||
| ×××× | |||||
| ◆種別 | |||||
| ×××× | |||||
| ◆プラン | |||||
| ×××× | |||||
| ◆定期券の選択 | |||||
| ×××× | |||||
| ◆お名前 | |||||
| ×××× | |||||
| ◆フリガナ | |||||
| ×××× | |||||
| ◆電話番号 | |||||
| ×××× | |||||
| ◆メールアドレス | |||||
| ×××× | |||||
| ◆その他ご要望 | |||||
| ×××× | |||||
| @endsection | |||||
| @@ -1,11 +1,13 @@ | |||||
| ご利用ありがとうございます。 | |||||
| MyPageです。 | |||||
| 一般財団法人 京都市都市整備公社 定期担当です。 | |||||
| @yield('contents') | @yield('contents') | ||||
| ※このメールをお送りしているアドレスは、送信専用となっており、返信いただいてもご回答いたしかねます。 | |||||
| ※このメールにお心当たりのない方は、お手数ですが削除いただきますようお願いいたします。 | |||||
| --------------------------------------------------------------------------------------- | |||||
| MyPage | |||||
| --------------------------------------------------------- | |||||
| 一般財団法人 京都市都市整備公社 | |||||
| (登録番号:T7130005012806) | |||||
| 定期担当 | |||||
| Mail:kyoto-kosha@kyotopublic.or.jp | |||||
| URL:https://www.kyotopublic.or.jp/teiki-parking/【月極定期駐車場ナビ】 | |||||
| TEL:0120-593-418(土日祝除く 8:30〜17:15) | |||||
| ※お問い合わせ、返信の際は確認のため必ず「お名前」「駐車場名」「新規 or 契約中」をお伝え下さいますようお願い致します。 | |||||
| ※定期利用取扱事項・HP、場内の案内表示等を遵守下さいますようお願い致します。 | |||||
| @@ -1,11 +1,15 @@ | |||||
| ご利用ありがとうございます。 | |||||
| EasyReceiptです。 | |||||
| @yield('contents') | |||||
| {{ $customer_name }}様 | |||||
| 一般財団法人 京都市都市整備公社 定期担当です。 | |||||
| ※このメールをお送りしているアドレスは、送信専用となっており、返信いただいてもご回答いたしかねます。 | |||||
| ※このメールにお心当たりのない方は、お手数ですが削除いただきますようお願いいたします。 | |||||
| @yield('contents') | |||||
| --------------------------------------------------------------------------------------- | |||||
| EasyReceipt | |||||
| --------------------------------------------------------- | |||||
| 一般財団法人 京都市都市整備公社 | |||||
| (登録番号:T7130005012806) | |||||
| 定期担当 | |||||
| Mail:kyoto-kosha@kyotopublic.or.jp | |||||
| URL:https://www.kyotopublic.or.jp/teiki-parking/【月極定期駐車場ナビ】 | |||||
| TEL:0120-593-418(土日祝除く 8:30〜17:15) | |||||
| ※お問い合わせ、返信の際は確認のため必ず「お名前」「駐車場名」「新規 or 契約中」をお伝え下さいますようお願い致します。 | |||||
| ※定期利用取扱事項・HP、場内の案内表示等を遵守下さいますようお願い致します。 | |||||
| @@ -0,0 +1,24 @@ | |||||
| @extends('emails.layouts.member') | |||||
| @section('contents') | |||||
| この度はお問い合わせ頂きましてありがとうございます。 | |||||
| こちらのメールは【自動返信】メールです。 | |||||
| 担当者確認後、ご連絡致しますのでしばらくお待ち下さいますようお願い申し上げます。 | |||||
| 土日祝・年末年始を除き 4 営業日後までに連絡が無い場合には、お手数ですが下記連絡先までお問い合わせ下さい。 | |||||
| よくあるお問い合わせ内容については、マイページ「FAQ」をご確認お願い致します。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■お問い合わせ内容■ | |||||
| ◆お名前 | |||||
| {{ $customer_name }} | |||||
| ◆電話番号 | |||||
| {{ $phone_no }} | |||||
| ◆メールアドレス | |||||
| {{ $email }} | |||||
| ◆お問い合わせ内容 | |||||
| {{ $ask }} | |||||
| @endsection | |||||
| @@ -0,0 +1,5 @@ | |||||
| @extends('emails.layouts.members') | |||||
| @section('contents') | |||||
| 口座登録失敗しました | |||||
| @endsection | |||||
| @@ -0,0 +1,5 @@ | |||||
| @extends('emails.layouts.members') | |||||
| @section('contents') | |||||
| 口座登録してください | |||||
| @endsection | |||||
| @@ -0,0 +1,79 @@ | |||||
| @extends('emails.layouts.members') | |||||
| @section('contents') | |||||
| 定期利用取扱事項を同意のうえ、定期利用申込みを頂き誠にありがとうございます。 | |||||
| 定期利用について、以下の内容にてお手続きいたしますのでご確認下さい。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■申込内容■ | |||||
| ◆定期利用者 | |||||
| お名前:{{ $customer_name }} | |||||
| フリガナ:{{ $customer_name_kana }} | |||||
| ◆駐車場 | |||||
| {{ $parking_name }} | |||||
| ◆種別 | |||||
| {{ $type_name }} | |||||
| ◆プラン | |||||
| {{ $plan_name }} | |||||
| ◆定期券の選択 | |||||
| {{ $season_ticket_select }} | |||||
| @if($vehicle_no) | |||||
| ◆利用車両番号 | |||||
| {{ $vehicle_no }} | |||||
| @endif | |||||
| ◆利用開始日(希望) | |||||
| {{ $use_start_date }} | |||||
| ◆◆お支払方法及び定期駐車料金 | |||||
| お支払方法:{{ $payment_method }} | |||||
| 定期駐車料金:{{ $amount }} | |||||
| ※料金は利用日までの前払いのため、○月日割分○○円と○月分○○円 (合計○○円)を○年○月○日までにお振込下さい。(手数料は振込者負担でお願い致します。) | |||||
| 銀行:ゆうちょ銀行 | |||||
| 店名:四四八(ヨンヨンハチ) | |||||
| 店番:448 預金種目:普通預金 口座番号:4498331 | |||||
| 一般財団法人 京都市都市整備公社 | |||||
| ザイ)キヨウトシトシセイビコウシヤ | |||||
| *ゆうちょ銀行の口座をお持ちの方はこちら | |||||
| 記号:14420 番号:44983311 | |||||
| 銀行:ゆうちょ銀行 | |||||
| 店名:四四八(ヨンヨンハチ) | |||||
| 店番:448 | |||||
| 預金種目:普通預金 口座番号:3032832 | |||||
| 一般財団法人 京都市都市整備公社 | |||||
| ザイ)キヨウトシトシセイビコウシヤ | |||||
| *ゆうちょ銀行の口座をお持ちの方はこちら | |||||
| 記号:14420 番号:30328321 | |||||
| ■申込者名でお振込下さい。(申込者名以外でお振込の場合は事前にご連絡下さい。) | |||||
| ■郵送物がある場合、お振込確認後に普通郵便で発送いたします。(休日除き約 4 営業日の日数を要します。) | |||||
| ■次回以降のお支払いは【口座振替】となります。お振込確認後、ご登録の携帯番号あてにショ ートメッセージを送りますので、お早めに振替口座のご登録をお願いします。 | |||||
| ■(お車の方)車庫証明書発行希望の方は、マイページ「車庫証明書申請」からご申請下さい。 | |||||
| ※新規申込時に申し出される方は2ケ月分以上の駐車料金前納が必要となります。 | |||||
| ◆◆備考 | |||||
| 指定期日までに入金確認ができない場合、キャンセルとさせて頂きます。 | |||||
| 万が一お振込が遅れそうな場合やお振込後に定期利用承認メールが届かない場合には、下記の連絡先まで必ずご連絡下さい。 | |||||
| その他、ご不明な点等がございましたら、下記の連絡先までご連絡下さい。 | |||||
| ◆◆解約について | |||||
| 解約の場合は、必ず解約月の10日までに、マイページ「解約申請」よりご申請下さい。 | |||||
| @if($can_terminate_15 && $can_terminate_end_of_month) | |||||
| ※解約日は15日又は末日のみとなります。 | |||||
| @elseif($can_terminate_end_of_month) | |||||
| ※解約日は末日のみとなります。 | |||||
| ※解約申請が10日を過ぎると、翌月末でのご解約となります。 | |||||
| @endif | |||||
| ※金融機関での振替締日の状況により、口座振替が実施される場合がございます。 | |||||
| (一部駐輪場では取扱いが異なります。詳しくはマイページ「解約申請」をご確認下さい。) | |||||
| @endsection | |||||
| @@ -0,0 +1,68 @@ | |||||
| @extends('emails.layouts.members') | |||||
| @section('contents') | |||||
| ご入金を確認致しました。誠にありがとうございます。 | |||||
| 以下の内容にて定期利用を承認し、契約完了としますので、必ずご確認下さい。 | |||||
| ◆次回お支払より【口座振替】となります。 | |||||
| ご登録の携帯番号あてにショ ートメッセージを送りますので、お早めに振替口座のご登録をお願いします。 | |||||
| (法人契約のお客様には、別途口座振替依頼書を郵送致します。) | |||||
| ◆【口座振替】は、翌月分の定期駐車料金の【前払い】となります。 | |||||
| (口座登録状況により複数月分を合算振替する場合がございます。) | |||||
| ※定期駐車料金の未払が続く場合、ご利用をお断りする場合がございます。お支払い状況には十分にご注意下さい。 | |||||
| ◆◆解約について | |||||
| 解約の場合は、必ず解約月の10日までに、マイページ「解約申請」よりご申請下さい。 | |||||
| @if($can_terminate_15 && $can_terminate_end_of_month) | |||||
| ※解約日は15日又は末日のみとなります。 | |||||
| @elseif($can_terminate_end_of_month) | |||||
| ※解約日は末日のみとなります。 | |||||
| ※解約申請が10日を過ぎると、翌月末でのご解約となります。 | |||||
| @endif | |||||
| ※金融機関での振替締日の状況により、口座振替が実施される場合がございます。 | |||||
| (一部駐輪場では取扱いが異なります。詳しくはマイページ「解約申請」をご確認下さい。) | |||||
| ◆お客様情報に変更がございましたら、マイページ各種変更申請よりご申請下さい。 | |||||
| ◆車庫証明書をご希望の場合は、マイページ「車庫証明書申請」よりご申請下さい | |||||
| ◆お客様へのご連絡は【「マイページへの通知」「メール」「ショートメッセージ」】が基本となります。 | |||||
| 迷惑メールフォルダの確認及び迷惑メール対策やドメイン指定受信等を設定している方は、弊社 からの連絡メールが必ず受信できるよう、【@kyotopublic.or.jp】の登録をお願い致します。 ドメイン登録の設定をされていない場合、連絡メールが正しく届かないことがございます。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■定期利用承認■ | |||||
| ◆定期利用者 | |||||
| お名前:{{ $customer_name }} | |||||
| フリガナ:{{ $customer_name_kana }} | |||||
| ◆駐車場 | |||||
| {{ $parking_name }} | |||||
| ◆種別 | |||||
| {{ $type_name }} | |||||
| ◆プラン | |||||
| {{ $plan_name }} | |||||
| ◆定期券の選択 | |||||
| XXXXXX | |||||
| @if($vehicle_no) | |||||
| ◆利用車両番号 | |||||
| {{ $vehicle_no }} | |||||
| @endif | |||||
| ◆利用開始日(希望) | |||||
| {{ $use_start_date }} | |||||
| ◆お支払方法及び定期駐車料金 | |||||
| お支払方法:{{ $payment_method }} | |||||
| 定期駐車料金:XXXX円(消費税等含む,適用税率1 0% 消費税額 XX円) | |||||
| ◆備考 | |||||
| 定期利用にあたり、必ず各駐車場・駐輪場ページ掲載の定期利用取扱事項と、ホームページ・メ ール及び現地の案内に従いご利用下さい。 | |||||
| その他ご不明な点等がございましたら、下記の連絡先までご連絡下さい。 | |||||
| @endsection | |||||
| @@ -0,0 +1,5 @@ | |||||
| @extends('emails.layouts.member') | |||||
| @section('contents') | |||||
| 受け付けました | |||||
| @endsection | |||||
| @@ -0,0 +1,27 @@ | |||||
| @extends('emails.layouts.member') | |||||
| @section('contents') | |||||
| こちらのメールは【自動返信】メールです。 | |||||
| 内容を確認後、定期券を再発行し郵送いたします。 | |||||
| 土日祝・年末年始を除き 4 営業日後までに郵便が届かない場合には、お手数ですが下記連絡先までお問い合わせ下さい。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■申込内容■ | |||||
| ◆駐車場 | |||||
| {{ $parking_name }} | |||||
| ◆氏名 | |||||
| {{ $customer_name }} | |||||
| ◆郵便番号 | |||||
| {{ $zip_code }} | |||||
| ◆住所 | |||||
| {{ $address }} | |||||
| ◆再発行理由 | |||||
| {{ $reason }} | |||||
| ◆備考 | |||||
| {{ $memo }} | |||||
| @endsection | |||||
| @@ -0,0 +1,27 @@ | |||||
| @extends('emails.layouts.member') | |||||
| @section('contents') | |||||
| こちらのメールは【自動返信】メールです。 | |||||
| 内容を確認後、シールを再発行し郵送いたします。 | |||||
| 土日祝・年末年始を除き 4 営業日後までに郵便が届かない場合には、お手数ですが下記連絡先までお問い合わせ下さい。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■申込内容■ | |||||
| ◆駐車場 | |||||
| {{ $parking_name }} | |||||
| ◆氏名 | |||||
| {{ $customer_name }} | |||||
| ◆郵便番号 | |||||
| {{ $zip_code }} | |||||
| ◆住所 | |||||
| {{ $address }} | |||||
| ◆再発行理由 | |||||
| {{ $reason }} | |||||
| ◆備考 | |||||
| {{ $memo }} | |||||
| @endsection | |||||
| @@ -0,0 +1,30 @@ | |||||
| @extends('emails.layouts.member') | |||||
| @section('contents') | |||||
| 弊社駐車場をご利用頂き誠にありがとうございます。 | |||||
| 以下の内容にて、ご解約手続きが完了しました。下記内容を必ずご確認下さい。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■申込内容■ | |||||
| ◆定期利用者 | |||||
| {{ $customer_name }} | |||||
| ◆駐車場名 | |||||
| {{ $parking_name }} | |||||
| @if($vehicle_no) | |||||
| ◆利用車両番号 | |||||
| {{ $vehicle_no }} | |||||
| @endif | |||||
| ◆解約予定日 | |||||
| {{ $terminate_date }} | |||||
| ※注1【解約日までに車両等を必ずご移動して下さい。次の契約者の方のご迷惑となりますので 車両他荷物など残置がないよう必ずご確認下さい。】 | |||||
| ※注2【弊社から送付しています自転車・バイク車両貼付の定期シールは解約日以降に必ず剥離して下さい。】 | |||||
| ※注3【弊社から送付しています定期券等がございましたら、現地返却ボックス又は弊社宛てに返送して下さい。】 | |||||
| ご不明な点等ございましたら担当までご連絡下さい。 | |||||
| 弊社駐車場をご利用頂き誠にありがとうございました。 | |||||
| 今後ともご愛顧賜りますよう宜しくお願い致します。 | |||||
| @endsection | |||||
| @@ -0,0 +1,30 @@ | |||||
| @extends('emails.layouts.member') | |||||
| @section('contents') | |||||
| 弊社駐車場をご利用頂き誠にありがとうございます。 | |||||
| 以下の内容にて、ご契約期間が満了しました。下記内容を必ずご確認下さい。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■申込内容■ | |||||
| ◆定期利用者 | |||||
| {{ $customer_name }} | |||||
| ◆駐車場名 | |||||
| {{ $parking_name }} | |||||
| @if($vehicle_no) | |||||
| ◆利用車両番号 | |||||
| {{ $vehicle_no }} | |||||
| @endif | |||||
| ◆解約予定日 | |||||
| {{ $terminate_date }} | |||||
| ※注1【解約日以降の駐車場のご利用はご遠慮下さい。次の契約者の方のご迷惑となりますので 車両他荷物など残置がないようお願いします。】 | |||||
| ※注2【弊社から送付しています自転車・バイク車両貼付の定期シールは解約日以降に必ず剥離して下さい。】 | |||||
| ※注3【弊社から送付しています定期券等がございましたら、現地返却ボックス又は弊社宛てに返送して下さい。】 | |||||
| ご不明な点等ございましたら担当までご連絡下さい。 | |||||
| 弊社駐車場をご利用頂き誠にありがとうございました。 | |||||
| 今後ともご愛顧賜りますよう宜しくお願い致します。 | |||||
| @endsection | |||||
| @@ -0,0 +1,24 @@ | |||||
| @extends('emails.layouts.member') | |||||
| @section('contents') | |||||
| こちらのメールは【自動返信】メールのため現在、ご解約は確定しておりません。 | |||||
| 担当者確認後、解約申請完了メールをお送り致します。 | |||||
| 土日祝・年末年始を除き 4 営業日後までに連絡が無い場合には、お手数ですが下記連絡先までお問い合わせ下さい。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■申込内容■ | |||||
| ◆定期利用者 | |||||
| {{ $customer_name }} | |||||
| ◆駐車場名 | |||||
| {{ $parking_name }} | |||||
| @if($vehicle_no) | |||||
| ◆利用車両番号 | |||||
| {{ $vehicle_no }} | |||||
| @endif | |||||
| ◆解約予定日 | |||||
| {{ $terminate_date }} | |||||
| @endsection | |||||
| @@ -0,0 +1,22 @@ | |||||
| @extends('emails.layouts.member') | |||||
| @section('contents') | |||||
| 以下の内容で利用者情報変更手続きが完了いたしました。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■申込内容■ | |||||
| ◆氏名 | |||||
| {{ $customer_name }} | |||||
| ◆郵便番号 | |||||
| {{ $zip_code }} | |||||
| ◆住所 | |||||
| {{ $address }} | |||||
| ◆電話番号 | |||||
| {{ $phone_no }} | |||||
| ◆備考 | |||||
| {{ $memo }} | |||||
| @endsection | |||||
| @@ -0,0 +1,24 @@ | |||||
| @extends('emails.layouts.member') | |||||
| @section('contents') | |||||
| こちらのメールは【自動返信】メールです。 | |||||
| 内容を確認後、利用者情報変更完了メールを送付いたします。 | |||||
| 土日祝・年末年始を除き 4 営業日後までに連絡が無い場合には、お手数ですが下記連絡先までお問い合わせ下さい。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■申込内容■ | |||||
| ◆氏名 | |||||
| {{ $customer_name }} | |||||
| ◆郵便番号 | |||||
| {{ $zip_code }} | |||||
| ◆住所 | |||||
| {{ $address }} | |||||
| ◆電話番号 | |||||
| {{ $phone_no }} | |||||
| ◆備考 | |||||
| {{ $memo }} | |||||
| @endsection | |||||
| @@ -0,0 +1,25 @@ | |||||
| @extends('emails.layouts.member') | |||||
| @section('contents') | |||||
| 以下の内容で車両番号・防犯登録番号変更手続きが完了いたしました。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■申込内容■ | |||||
| ◆駐車場 | |||||
| {{ $parking_name }} | |||||
| ◆氏名 | |||||
| {{ $customer_name }} | |||||
| ◆(変更後)車両番号 | |||||
| {{ $vehicle_no }} | |||||
| ◆(変更後)防犯登録番号 | |||||
| {{ $register_no }} | |||||
| ◆変更日 | |||||
| {{ $change_date }} | |||||
| ◆備考 | |||||
| {{ $memo }} | |||||
| @endsection | |||||
| @@ -0,0 +1,27 @@ | |||||
| @extends('emails.layouts.member') | |||||
| @section('contents') | |||||
| こちらのメールは【自動返信】メールです。 | |||||
| 内容を確認後、車両番号・防犯登録番号変更完了メールを送付いたします。 | |||||
| 土日祝・年末年始を除き 4 営業日後までに連絡が無い場合には、お手数ですが下記連絡先までお問い合わせ下さい。 | |||||
| ------------------------------------------------------------------------------------- | |||||
| ■申込内容■ | |||||
| ◆駐車場 | |||||
| {{ $parking_name }} | |||||
| ◆氏名 | |||||
| {{ $customer_name }} | |||||
| ◆(変更後)車両番号 | |||||
| {{ $vehicle_no }} | |||||
| ◆(変更後)防犯登録番号 | |||||
| {{ $register_no }} | |||||
| ◆変更日 | |||||
| {{ $change_date }} | |||||
| ◆備考 | |||||
| {{ $memo }} | |||||
| @endsection | |||||