| @@ -174,5 +174,7 @@ class KintoneRecordQuery | |||||
| )); | )); | ||||
| return $this; | return $this; | ||||
| } | } | ||||
| return $this; | |||||
| } | } | ||||
| } | } | ||||
| @@ -9,6 +9,7 @@ use LogicException; | |||||
| * @property string customerCode | * @property string customerCode | ||||
| * @property string seasonTicketSeqNo | * @property string seasonTicketSeqNo | ||||
| * @property string parkingName | * @property string parkingName | ||||
| * @property string planName | |||||
| * @property string vehicleNo | * @property string vehicleNo | ||||
| * @property string registerNo | * @property string registerNo | ||||
| */ | */ | ||||
| @@ -25,6 +26,7 @@ class SeasonTicketContract extends KintoneModel | |||||
| const FIELD_CONTRACT_START_DATE = "契約日"; | const FIELD_CONTRACT_START_DATE = "契約日"; | ||||
| const FIELD_CONTRACT_END_DATE = "解約日"; | const FIELD_CONTRACT_END_DATE = "解約日"; | ||||
| const FIELD_CONTRACT_AMOUNT = "契約金額"; | const FIELD_CONTRACT_AMOUNT = "契約金額"; | ||||
| const FIELD_PLAN_NAME = "契約駐車場_0"; | |||||
| const FIELD_STUDENT_LICENSE_IMAGES = "学生証画像"; | const FIELD_STUDENT_LICENSE_IMAGES = "学生証画像"; | ||||
| const FIELD_OTHER_LICENSE_IMAGES = "障がい者手帳画像"; | const FIELD_OTHER_LICENSE_IMAGES = "障がい者手帳画像"; | ||||
| @@ -44,6 +46,7 @@ class SeasonTicketContract extends KintoneModel | |||||
| self::FIELD_CONTRACT_START_DATE => FieldType::DATE, | self::FIELD_CONTRACT_START_DATE => FieldType::DATE, | ||||
| self::FIELD_CONTRACT_END_DATE => FieldType::DATE, | self::FIELD_CONTRACT_END_DATE => FieldType::DATE, | ||||
| self::FIELD_CONTRACT_AMOUNT => FieldType::NUMBER, | self::FIELD_CONTRACT_AMOUNT => FieldType::NUMBER, | ||||
| self::FIELD_PLAN_NAME => FieldType::SINGLE_LINE_TEXT, | |||||
| self::FIELD_STUDENT_LICENSE_IMAGES => FieldType::FILE, | self::FIELD_STUDENT_LICENSE_IMAGES => FieldType::FILE, | ||||
| self::FIELD_OTHER_LICENSE_IMAGES => FieldType::FILE, | self::FIELD_OTHER_LICENSE_IMAGES => FieldType::FILE, | ||||
| self::FIELD_STUDENT_LICENSE_IMAGES_UPLOAD_DATETIME => FieldType::DATETIME, | self::FIELD_STUDENT_LICENSE_IMAGES_UPLOAD_DATETIME => FieldType::DATETIME, | ||||
| @@ -0,0 +1,41 @@ | |||||
| <?php | |||||
| namespace App\Kintone\Models; | |||||
| /** | |||||
| * アプリ名 定期駐車場プランマスタ | |||||
| * @property string planName | |||||
| * @property string parkingName | |||||
| * @property string[] sendItem | |||||
| * @property string vehicleType | |||||
| */ | |||||
| class SeasonTicketContractPlan extends KintoneModel | |||||
| { | |||||
| const CONFIG_KEY = "KINTONE_APP_SEASON_TICKET_CONTRACT_PLAN"; | |||||
| const FIELD_PLAN_NAME = "key"; | |||||
| const FIELD_PARKING_NAME = "定期_駐車場名"; | |||||
| const FIELD_SEND_ITEM = "送付物"; | |||||
| const FIELD_VEHICLE_TYPE = "種別"; | |||||
| protected const FIELDS = [ | |||||
| ...parent::FIELDS, | |||||
| self::FIELD_PARKING_NAME => FieldType::SINGLE_LINE_TEXT, | |||||
| self::FIELD_SEND_ITEM => FieldType::CHECK_BOX, | |||||
| self::FIELD_VEHICLE_TYPE => FieldType::SINGLE_LINE_TEXT, | |||||
| ]; | |||||
| protected const FIELD_NAMES = [ | |||||
| ...parent::FIELD_NAMES, | |||||
| ]; | |||||
| protected function toArrayCustom(): array | |||||
| { | |||||
| $item = $this->sendItem; | |||||
| return [ | |||||
| 'has_season_ticket' => in_array("定期券", $item), | |||||
| 'has_sticker' => in_array("シール", $item), | |||||
| ]; | |||||
| } | |||||
| } | |||||
| @@ -4,6 +4,7 @@ namespace App\Kintone\Repositories; | |||||
| use App\Kintone\Models\Parking; | use App\Kintone\Models\Parking; | ||||
| use App\Kintone\Models\SeasonTicketContract; | use App\Kintone\Models\SeasonTicketContract; | ||||
| use App\Kintone\Models\SeasonTicketContractPlan; | |||||
| use Illuminate\Support\Collection; | use Illuminate\Support\Collection; | ||||
| class SeasonTicketContractRepository | class SeasonTicketContractRepository | ||||
| @@ -21,13 +22,15 @@ class SeasonTicketContractRepository | |||||
| ->where(SeasonTicketContract::FIELD_CUSTOMER_CODE, $customerCode); | ->where(SeasonTicketContract::FIELD_CUSTOMER_CODE, $customerCode); | ||||
| $seasonTicketContracts = SeasonTicketContract::getAccess() | $seasonTicketContracts = SeasonTicketContract::getAccess() | ||||
| ->some($query); | ->some($query); | ||||
| $planAccess = SeasonTicketContractPlan::getAccess(); | |||||
| /** | |||||
| * @var SeasonTicketContract $seasonTicketContract | |||||
| */ | |||||
| foreach ($seasonTicketContracts as $seasonTicketContract) { | foreach ($seasonTicketContracts as $seasonTicketContract) { | ||||
| $ret->put($seasonTicketContract->getRecordId(), new SeasonTicketContractRepositoryData($seasonTicketContract)); | |||||
| $query = SeasonTicketContractPlan::getQuery()->where(SeasonTicketContractPlan::FIELD_PLAN_NAME, $seasonTicketContract->planName); | |||||
| $plan = $planAccess->first($query); | |||||
| $ret->put($seasonTicketContract->getRecordId(), new SeasonTicketContractRepositoryData($seasonTicketContract, $plan)); | |||||
| } | } | ||||
| return $ret; | return $ret; | ||||
| @@ -3,11 +3,13 @@ | |||||
| namespace App\Kintone\Repositories; | namespace App\Kintone\Repositories; | ||||
| use App\Kintone\Models\SeasonTicketContract; | use App\Kintone\Models\SeasonTicketContract; | ||||
| use App\Kintone\Models\SeasonTicketContractPlan; | |||||
| class SeasonTicketContractRepositoryData | class SeasonTicketContractRepositoryData | ||||
| { | { | ||||
| public function __construct( | public function __construct( | ||||
| public SeasonTicketContract $seasonTicketContract, | public SeasonTicketContract $seasonTicketContract, | ||||
| public SeasonTicketContractPlan $plan, | |||||
| ) { | ) { | ||||
| } | } | ||||
| @@ -15,6 +17,7 @@ class SeasonTicketContractRepositoryData | |||||
| { | { | ||||
| return [ | return [ | ||||
| ...$this->seasonTicketContract->toArray(), | ...$this->seasonTicketContract->toArray(), | ||||
| ...$this->plan->toArray(), | |||||
| 'season_ticekt_contract_record_no' => $this->seasonTicketContract->getRecordId(), | 'season_ticekt_contract_record_no' => $this->seasonTicketContract->getRecordId(), | ||||
| ]; | ]; | ||||
| } | } | ||||
| @@ -30,6 +30,7 @@ return [ | |||||
| ...App\Kintone\Models\Bank::setConfig(), | ...App\Kintone\Models\Bank::setConfig(), | ||||
| ...App\Kintone\Models\Parking::setConfig(), | ...App\Kintone\Models\Parking::setConfig(), | ||||
| ...App\Kintone\Models\SeasonTicketContract::setConfig(), | ...App\Kintone\Models\SeasonTicketContract::setConfig(), | ||||
| ...App\Kintone\Models\SeasonTicketContractPlan::setConfig(), | |||||
| ...App\Kintone\Models\SeasonTicketContractEntry::setConfig(), | ...App\Kintone\Models\SeasonTicketContractEntry::setConfig(), | ||||
| ...App\Kintone\Models\PaymentPlan::setConfig(), | ...App\Kintone\Models\PaymentPlan::setConfig(), | ||||
| ...App\Kintone\Models\GeneralApplication::setConfig(), | ...App\Kintone\Models\GeneralApplication::setConfig(), | ||||