diff --git a/app/Model/Facade/FakturaFacade.php b/app/Model/Facade/FakturaFacade.php index 39d4826..2a8fea4 100644 --- a/app/Model/Facade/FakturaFacade.php +++ b/app/Model/Facade/FakturaFacade.php @@ -663,7 +663,9 @@ class FakturaFacade return null; } - $web = trim((string) ($firma->WEB ?? '')); + // toArray() — bezpečné i když sloupec WEB v DB ještě není (starší tenant) + $row = method_exists($firma, 'toArray') ? $firma->toArray() : (array) $firma; + $web = trim((string) ($row['WEB'] ?? '')); return $web !== '' ? $web : null; } diff --git a/app/UI/FakturaEdit/FakturaEditPresenter.php b/app/UI/FakturaEdit/FakturaEditPresenter.php index 655a22c..46428a5 100644 --- a/app/UI/FakturaEdit/FakturaEditPresenter.php +++ b/app/UI/FakturaEdit/FakturaEditPresenter.php @@ -65,6 +65,7 @@ class FakturaEditPresenter extends BasePresenter $this->ensureZakaznikId = (int) $zdroj->ZAKAZNIK; } + // Snapshot dodavatele / odběratele ze zdroje (včetně D_WEB), ne z aktuální firmy. $this['fakturaForm']->setDefaults([ 'ZAKAZNIK_ID' => $this->ensureZakaznikId, 'CISLO' => $dalsi['cislo'], @@ -76,13 +77,23 @@ class FakturaEditPresenter extends BasePresenter ->format('Y-m-d'), 'DATUM_DUZP' => $datumVystaveni, 'CINNOSTI' => $zdroj->CINNOSTI, + 'D_PRAJM' => $zdroj->D_PRAJM, + 'D_ULICE' => $zdroj->D_ULICE, + 'D_MESTO' => $zdroj->D_MESTO, + 'D_PSC' => $zdroj->D_PSC, + 'D_IC' => $zdroj->D_IC, + 'D_DIC' => $zdroj->D_DIC, + 'D_BANKA' => $zdroj->D_BANKA, + 'D_TELEFON' => $zdroj->D_TELEFON, + 'D_EMAIL' => $zdroj->D_EMAIL, + 'D_WEB' => $zdroj->D_WEB, 'O_PRAJM' => $zdroj->O_PRAJM, 'O_ULICE' => $zdroj->O_ULICE, 'O_MESTO' => $zdroj->O_MESTO, 'O_PSC' => $zdroj->O_PSC, 'O_IC' => $zdroj->O_IC, 'O_DIC' => $zdroj->O_DIC, - ] + $this->fakturaFacade->getDodavatelDefaults($firmaId)); + ]); $this->kopiePolozky = $this->fakturaFacade->getPolozky($id); }