// Tutaj zaczyna się sekcja budowania formularza
private $groups = array(); private $intro = array(); private $termlife = array();
public function __construct(DocumentData $documentData = null) {
if (!$documentData) {
$documentData = new DocumentData();
}
// pobieranie danych dodatkowych zapisanych w bazie
$dataReader = new AdditionalDataReader();
$additionalData = $dataReader->read();
$documentData = $documentData->getData();
'name' => '? Wprowadzenie',
'type' => 'textMulti',
'label' => 'Wprowadzenie',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getIntroData($documentData)
),
),
),
'textMultiList' => array ( 'name' => '? Potrzeby i cele',
'type' => 'textMultiList',
'label' => 'Poszukujecie/Poszukujesz ubezpieczenia, które',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getNeedsData($documentData)
),
),
),
'name' => '? Sytuacja Osobista',
'type' => 'textMulti',
'label' => 'Osobista',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getPersonData($documentData)
),
),
),
'name' => '? Sytuacja Finansowa',
'type' => 'textMulti',
'label' => 'Finansowa',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getFinancialData($documentData, $additionalData)
),
),
),
);
foreach ($documentData['policies'] as $type => $policieType) {
foreach ($policieType as $policy) {
// dla typu TerLifeIns
if ($type == 'TerLifIns' || $type == 'MorIns') {
$this->termlife = array ( 'name' => '? Rekomendacja Life Term + Mortgage' .$count,
'type' => 'textMultiList',
'label' => 'Na podstawie otrzymanych informacji, zalecam Wam / Tobie ubezpieczenie',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getRecomendationTerLifInsData($documentData)[1]
),
'type' => 'textMultiList',
'label' => 'Dodatkowo omówiono i zaproponowano następujące cechy i elementy:',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getRecomendationTerLifInsData($documentData)[2]
),
'type' => 'textMultiList',
'label' => 'Opis Ubezpieczyciela',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getRecomendationTerLifInsData($documentData)[3]
),
),
),
);
}
// dla Hive
if ($type == 'PerAcc' || $type =='AccSicAndHos' || $type == 'MedCas') {
'name' => '? Rekomendacja Hive',
'type' => 'textMultiList',
'label' => 'Na podstawie otrzymanych informacji, zalecam Wam / Tobie ubezpieczenie',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getRecomendationHiveData($documentData)[1]
),
'type' => 'textMultiList',
'label' => 'Opis ubezpieczyciela',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getRecomendationHiveData($documentData)[3]
),
),
),
);
}
// dla Whole of Life
if ($type == 'WOL') {
'name' => '? Rekomendacja Whole of Life',
'type' => 'textMultiList',
'label' => 'Na podstawie otrzymanych informacji, zalecam Wam / Tobie ubezpieczenie',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getRecomendationWOL($documentData)[1]
),
'type' => 'textMultiList',
'label' => 'Dodatkowo omówiono i zaproponowano następujące cechy i elementy:',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getRecomendationWOL($documentData)[2]
),
'type' => 'textMultiList',
'label' => 'Opis Ubezpieczyciela',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getRecomendationWOL($documentData)[3]
),
),
),
);
}
// // dla MCPC
if ($type == 'MulClaProCov') {
'name' => '? Rekomendacja Multi-claim',
'type' => 'textMultiList',
'label' => 'Na podstawie otrzymanych informacji, zalecam Wam / Tobie ubezpieczenie',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getRecomendationMCPC($documentData)[1]
),
'type' => 'textMultiList',
'label' => 'Dodatkowo omówiono i zaproponowano następujące cechy i elementy',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getRecomendationMCPC($documentData)[2]
),
'type' => 'textMultiList',
'label' => 'Opis Ubezpieczyciela',
'optional' => true, // false -> bez checkbox
'partitions' => $this->getRecomendationMCPC($documentData)[3]
),
),
),
);
}
}
}
$this->groups = $this->intro + $this->termlife + $this->hive + $this->wol + $this->mcpc;
//throw new Exception('<pre>' . print_r($this->groups, 1) . '</pre>');
}
public function getGroups() {
return $this->groups;
}
No to poza tym, że mam teraz w jednej zmiennej $intro kilka wcześniej rozbitych zmiennych group, to wylądowałem na tym samym co na początku...
Poczekam na reakcję nospor ale obawiam się (IMG:
style_emoticons/default/facepalmxd.gif)
Ten post edytował pela222 8.04.2021, 12:32:38