saveMessageDetsta(); $this->saveMessageDetstaFej( ); $this->saveMessageDetstaLab(); $this->saveMessageDetstaTetelek(); } /** * * @param common\models\Ugiro; * @param common\models\giro\GiroDETSTA $giroDETSTA * */ protected function saveMessageDetsta( ) { $this->message = new MessageDetsta(); $this->message->id_user = $this->idUser; if ( isset( $this->koteg ) ){ $this->message->id_ugiro = $this->koteg->id_ugiro; } if ( !$this->message->save() ){ \Yii::error("Nem sikerült menteni a detsta üzenet fájlt"); throw new \Exception("Nem sikerült menteni a detsta üzenet fájtl"); } \Yii::info("detsta üzenet mentve"); } protected function readDate($date){ $date = trim($date); if ( empty($date)) return null; $dtime = \DateTime::createFromFormat('Ymd' ,$date); if ( !$dtime ){ return false; } return $dtime->format('Y-m-d'); } /** * * */ protected function saveMessageDetstaFej( ){ $this->messageFej = new MessageDetstaFej(); $fej = $this->giroDETSTA->fej; /** @var common\components\giro\GiroDETSTAFej $fej */ $dtime = \DateTime::createFromFormat("yyyyMMdd",""); $this->messageFej->id_message = $this->message->id_message; $this->messageFej->record_tipus = $fej->recordTipus; $this->messageFej->uzenet_tipus = $fej->uzenetTipus; $this->messageFej->jelentes_jelzo = $fej->jelentesJelzo; $this->messageFej->kezdemenyezo_azonosito = $fej->kezdemenyezoAzonosito; $this->messageFej->csoportos_uzenet_sorszam = $fej->csoportosUzenetSorszam->sorszam; $this->messageFej->csoportos_uzenet_datum = $this->readDate($fej->csoportosUzenetSorszam->osszeallitasDatuma ); $this->messageFej->detsta_uzenet_sorszam = $fej->detstaUzenetSorszam->sorszam; $this->messageFej->detsta_uzenet_datum = $this->readDate( $fej->detstaUzenetSorszam->osszeallitasDatuma ); $this->messageFej->ido = $fej->ido; if ( !$this->messageFej->save(false)){ \Yii::error("Nem sikerült menteni a detsta üzenet fej fájlt"); throw new \Exception("Nem sikerült menteni a detsta üzenet fej fájlt"); } \Yii::info("detsta fej üzenet mentve"); } protected function saveMessageDetstaLab( ){ $this->messageLab = new MessageDetstaLab(); $lab = $this->giroDETSTA->lab; $this->messageLab->id_message = $this->message->id_message; $this->messageLab->record_tipus = $lab->recordTipus; $this->messageLab->teljesitett_tetelek_szama = $lab->teljesitettTetelekSzama; $this->messageLab->teljesitett_tetelek_osszerteke = $lab->teljesitettTetelekOsszerteke; $this->messageLab->visszautasitott_tetelek_szama = $lab->visszautasitottTetelekSzama; $this->messageLab->visszautasitott_tetelek_osszerteke = $lab->visszautasitottTetelekSzama; $this->messageLab->megnemvalaszolt_tetelek_szama = $lab->megNemValaszoltTetelekSzama; $this->messageLab->megnemvalaszolt_tetelek_osszerteke = $lab->megNemValaszoltTetelekOsszerteke; if ( !$this->messageLab->save(false)){ \Yii::error("Nem sikerült menteni a detsta üzenet lab fájlt"); throw new \Exception("Nem sikerült menteni a detsta üzenet lab fájlt"); } \Yii::info("detsta lab üzenet mentve"); } protected function saveMessageDetstaTetelek( ){ $tetelek = $this->giroDETSTA->tetelek; foreach ($tetelek as $tetel){ $this->saveMessageDetstaTetel($tetel); } } protected function saveMessageDetstaTetel($tetel ){ $mt = new MessageDetstaTetel(); $mt->id_message = $this->message->id_message; $mt->record_tipus = $tetel->recordTipus ; $mt->tetel_sorszam= $tetel->tetelSorszam ; $mt->osszeg= $tetel->osszeg ; $mt->eredeti_tetel_elszamolasi_datuma= $tetel->eredetiTetelElszamolasiDatuma ; $mt->visszajelzes_informacio= $tetel->visszajelzesInformacio ; $mt->feldolgozas_datum= $tetel->feldolgozasDatum ; $mt->terhelesi_datum= $this->readDate($tetel->terhelesiDatum); $mt->valasz_hivatkozasi_kod= $tetel->valaszHivatkozasiKod ; $mt->eredeti_hivatkozasi_kod= $tetel->eredetiHivatkozasiKod ; $mt->ugyfel_azonosito= $tetel->ugyfelAzonosito ; $request = $this->readRequest($mt->tetel_sorszam); if ( isset($request) ){ $mt->id_ticket_installment_request = $request->id_ticket_installment_request; } if ( !$mt->save(false)){ \Yii::error("Nem sikerült menteni a detsta üzenet tetelt"); throw new \Exception("Nem sikerült menteni a detsta üzenet tetelt"); } \Yii::info("detsta tetel üzenet mentve"); $this->messageTetelek[] = $mt; } protected function readRequest($tetel_sorszam){ $query = TicketInstallmentRequest::find(); $query->innerJoin("ugiro_request_assignment","ugiro_request_assignment.id_request = ticket_installment_request.id_ticket_installment_request"); $query->innerJoin("ugiro","ugiro.id_ugiro = ugiro_request_assignment.id_ugiro"); $query->andWhere(['ugiro.id_ugiro' => $this->koteg->id_ugiro]); $query->andWhere(['ticket_installment_request.number' => $tetel_sorszam]); return $query->one(); } }