Formular
unknown
php
3 years ago
14 kB
6
Indexable
<?php namespace Drupal\idsp_korona_cestne_vyhlasenie\Form; use Drupal\Core\Form\FormBase; use Drupal\Core\Form\FormStateInterface; use Drupal\idsp_korona_cestne_spatvzatie\Entity\KoronaCestneSpatvzatie; use Drupal\idsp_korona_cestne_vyhlasenie\Entity\KoronaCestneVyhlasenie; class OdkladPoistnehoJanuar2022_Form extends FormBase { /** * {@inheritdoc} */ public function getFormId() { return 'odklad_poistneho_januar_2022_form'; } /** * {@inheritdoc} */ public function buildForm(array $form, FormStateInterface $form_state) { $form['preukazanie'] = [ '#type' => 'markup', '#markup' => '<b><p class="govuk-body govuk-!-font-weight-bold">Preukázanie poklesu čistého obratu alebo poklesu príjmov z podnikania a z inej samostatnej zárobkovej činnosti o 40 % a viac, na účely predĺženia splatnosti poistného na sociálne poistenie za kalendárny mesiac január 2022 do 31. marca 2025 </p></b>' ]; $form['zaklad'] = [ '#type' => 'markup', '#markup' => '<b><p class="govuk-body"> (na základe § 293ew zákona č. 461/2003 Z. z. o sociálnom poistení v znení zákona č. 68/2020 Z. z., nariadenia vlády Slovenskej republiky č. 131/2020 Z. z. v znení nariadenia vlády č. 172/2020 Z. z., nariadenia vlády č. 196/2020 Z. z., nariadenia vlády č. 380/2020 Z. z., nariadenia vlády č. 31/2021 Z. z., nariadenia vlády č. 89/2021 Z. z., nariadenia vlády č. 101/2021 Z. z., nariadenia vlády č. 154/2021 Z. z., nariadenia vlády č. 181/2021 Z. z. , nariadenia vlády č. 379/2021 Z. z., nariadenia vlády č. 435/2021 Z. z., nariadenia vlády č. 517/2021 Z. z. a nariadenia vlády č. 16/2022 Z. z. a na základe nariadenia vlády Slovenskej republiky č. 76/2020 Z. z. v znení nariadenia vlády č. 132/2020 Z. z. a nariadenia vlády č. 102/2021 Z. z.). </p></b>' ]; $form['instrukcie'] = [ '#type' => 'markup', '#markup' => '<b><p class="govuk-body">Čestné vyhlásenie je určené na vyplnenie a odoslanie elektronicky. Začnite výberom jednej z možností "Zamestnávateľ" alebo "Samostatne zárobkovo činná osoba (SZČO)".</p></b>' ]; $form['typ_odv'] = [ '#type' => 'select', '#title' => $this->t('Typ'), '#options' => [ 'zamestnavatel' => 'Zamestnávateľ', 'szco' => 'Samostatne zárobkovo činná osoba (SZČO)' ], '#default_value' => 'zamestnavatel', '#required' => TRUE, '#multiple' => FALSE, ]; $form['nazov_fo'] = [ '#type' => 'textfield', '#title' => 'Názov/meno a priezvisko v prípade FO', '#attributes' => ['name' => 'nazov_fo', 'id' => 'nazov_fo'], '#required' => TRUE, ]; $form['statutar'] = [ '#type' => 'textfield', '#title' => 'Meno a priezvisko štatutárneho zástupcu zamestnávateľa', '#attributes' => ['name' => 'statutar', 'id' => 'statutar'] ]; $form['var_symbol'] = [ '#type' => 'textfield', '#title' => '* Variabilný symbol', '#attributes' => ['name' => 'var_symbol', 'id' => 'var_symbol'], '#required' => TRUE, ]; $form['var_symbol_hint'] = [ '#type' => 'markup', '#markup' => '<b><p class="govuk-body">* VS je IČ pridelené <u>Sociálnou poisťovňou</u>! Ak bol zvolený typ "Zamestnávateľ", začína na 1 (pre zamestnávateľa PO) alebo 2 (pre zamestnávateľa FO) alebo 9 (pre zahraničného zamestnávateľa). Ak bol vybratý typ "SZČO" začína na 3.</p></b>' ]; $form['rodne_cislo'] = [ '#type' => 'textfield', '#title' => 'Rodné číslo', '#attributes' => ['name' => 'rodne_cislo', 'id' => 'rodne_cislo'], ]; $form['ico'] = [ '#type' => 'textfield', '#title' => 'IČO', '#attributes' => ['name' => 'ico', 'id' => 'ico'] ]; // Create empty options array $options = array(); // Taxonomy vocabulary machine name $taxonomy = 'pobocka'; // Get all the taxonomy terms from the vocabulary $tax_items = \Drupal::entityTypeManager()->getStorage('taxonomy_term')->loadTree($taxonomy); // Inject into the options array foreach($tax_items as $tax_item) { $options[$tax_item->tid] = $tax_item->name; } $form['pobocka'] = [ '#type' => 'select', '#title' => "Miestne príslušná pobočka", '#options' => $options, '#required' => TRUE, '#multiple' => FALSE, ]; $form['sidlo'] = [ '#type' => 'textarea', '#title' => 'Sídlo zamestnávateľa/adresa trvalého pobytu v prípade FO', '#attributes' => ['name' => 'sidlo', 'id' => ''], '#required' => TRUE, ]; $form['email'] = [ '#type' => 'textfield', '#title' => 'E-mail', '#attributes' => ['name' => 'email', 'id' => ''], '#required' => TRUE ]; $form['prehlasenie'] = [ '#type' => 'markup', '#markup' => '<p class="govuk-body govuk-!-font-weight-bold">Zaslaním tohto formuláru čestne prehlasujem, že v mesiaci <u>január 2022</u> som ako <span class="typ_odv_poist"></span> vykázal (a) pokles čistého obratu podľa § 2 ods. 15 zákona č. 431/2002 Z. z. v znení zákona č. 333/2014 Z. z. alebo príjmu z podnikania a z inej samostatnej zárobkovej činnosti podľa § 6 ods. 1 a 2 zákona č. 595/2003 Z. z. o dani z príjmov v znení neskorších predpisov (ďalej len „tržba“) o 40 % a viac.</p>' ]; $form['oznamenie'] = [ '#type' => 'markup', '#markup' => '<p class="govuk-body">Ako <span class="typ_odv_poist"></span> zároveň oznamujem, že pokles tržieb som určil (a) spôsobom<sup>2</sup>, že som porovnal (a) výšku tržieb za mesiac január 2022</p>' ]; $form['typ_trzieb'] = [ '#type' => 'radios', '#title' => 'Typ tržieb', '#options' => [ 'januar2019' => 's výškou tržieb za mesiac január 2019 <sup>1</sup>', 'rok2019' => 's mesačným priemerom tržieb za rok 2019<sup>1</sup>', 'februar2020' => 's výškou tržieb za mesiac február 2020<sup>1</sup>' ], '#required' => TRUE, '#multiple' => FALSE, ]; $form['poucenie_title'] = [ '#type' => 'markup', '#markup' => '<b><p class="govuk-body govuk-!-font-weight-bold">Poučenie:</p></b>' ]; $form['poucenie'] = [ '#type' => 'markup', '#markup' => '<p class="govuk-body"> Odklad splatnosti poistného a príspevkov na starobné dôchodkové sporenie (ďalej len „poistné“) sa týka zamestnávateľov v časti poistného za zamestnávateľa a povinne poistených SZČO, ktorí vykazujú v dôsledku mimoriadnej situácie pokles čistého obratu alebo pokles príjmov z podnikania a inej samostatnej zárobkovej činnosti o 40 % a viac. Upozorňujeme, že zmena sa týka poistného za kalendárny mesiac január 2022 a zamestnávateľ je naďalej povinný odvádzať poistné, ktoré platí zamestnanec a odvádza ho za neho zamestnávateľ, v pôvodnej lehote splatnosti. Povinnosť vykazovať poistné sa nemení a zamestnávatelia musia predložiť výkaz poistného v pôvodnej lehote. Pôvodné lehoty platia aj pre plnenie prihlasovacích a oznamovacích povinností zamestnávateľa. Spôsob určenia poklesu čistého obratu podľa osobitného predpisu a príjmov z podnikania a inej samostatnej zárobkovej činnosti podľa osobitného predpisu je určený nariadením vlády Slovenskej republiky č. 76/2020 Z. z. z 9. apríla 2020 o spôsobe určenia poklesu čistého obratu a príjmov z podnikania a z inej samostatnej zárobkovej činnosti, ktoré je doplnené nariadením vlády Slovenskej republiky č. 132/2020 Z. z. z 20. mája 2020 a nariadením vlády Slovenskej republiky č. 102/201 Z. z. zo 17. marca 2021. Pokles tržieb odvádzateľa sa určí porovnaním výšky tržieb za mesiac január 2022:</p> <ul class="govuk-list govuk-list--bullet"> <li> s výškou tržieb za mesiac január 2019 alebo </li> <li> s mesačným priemerom tržieb za rok 2019 (ak odvádzateľ vykonával činnosť po celý rok 2019) alebo </li> <li> s výškou tržieb za mesiac február 2020 (ak odvádzateľ nevykonával činnosť v januári 2019). </li> </ul> <p class="govuk-body"> Ak zamestnávateľ alebo povinne poistená SZČO, za predpokladu splnenia zákonom stanovených podmienok pre odklad splatnosti, zaplatia poistné za január 2022 v predĺženej lehote splatnosti do 31. marca 2025, teda včas a v správnej výške, Sociálna poisťovňa im penále nepredpíše. V prípade, ak zamestnávateľ alebo povinne poistená SZČO nezaplatia poistné za január 2022 ani do 31. marca 2025, Sociálna poisťovňa im môže povoliť splátky dlžnej sumy poistného, ktorú nezvýši o úrok. Na účely posúdenia nároku na nemocenskú alebo dôchodkovú dávku sa poistné za mesiac január 2022 považuje za zaplatené do uplynutia tretieho mesiaca po mesiaci, v ktorom skončí krízová situácia. Ak v tejto lehote poistenec nedoplatí dlžné poistné, bude povinný vrátiť dávku alebo jej časť odo dňa, od ktorého mu nepatrila alebo nepatrila v poskytovanej sume, ak je vyššia ako 5 eur. O zapracovaní predĺženej lehoty splatnosti poistného za január 2022 Vám Sociálna poisťovňa zašle notifikáciu mailovou formou. </p>' ]; $form['vyhlasenie_checkbox_title'] = [ '#type' => 'markup', '#markup' => '<p class="govuk-body govuk-!-font-weight-bold">Vyhlásenie:</p>' ]; $form['suhlas'] = [ '#type' => 'checkbox', '#title' => 'Som si vedomý skutočnosti, že nepravdivé čestné vyhlásenie zakladá skutkovú podstatu priestupku podľa § 21 ods. 1 písm. f) zákona Slovenskej národnej rady č. 372/1990 Zb. o priestupkoch v znení neskorších predpisov.', '#default_value' => FALSE, '#required' => TRUE, ]; $form['vyhlasenie_title'] = [ '#type' => 'markup', '#markup' => '<b><p class="govuk-body govuk-!-font-weight-bold">Vyhlásenie:</p></b>' ]; $form['vyhlasenie'] = [ '#type' => 'checkbox', '#title' => 'Súhlasím, aby údaje uvedené vo formulári boli použité a spracované v informačnom systéme Sociálnej poisťovne v súlade s účelom, pre ktorý boli poskytnuté podľa zákona č. 461/2003 Z. z. o sociálnom poistení v znení neskorších predpisov', '#default_value' => FALSE, '#required' => TRUE ]; $form['submit'] = [ '#type' => 'submit', '#weight' => 1, '#value' => $this->t('Submit'), '#name' => 'region_submit', '#default_value' => 'region_submit', '#op'=>'region', ]; $form['vyhlasenie_title'] = [ '#type' => 'markup', '#markup' => '<hr><p class="govuk-body">Ak ste SZČO a zároveň zamestnávateľ (FO) a predĺženie splatnosti poistného sa týka obidvoch typov (SZČO aj zamestnávateľa), je potrebné odoslať formulár 2x (za oba typy)!</p> <p class="govuk-body"><sup>1</sup> označte aktuálnu skutočnosť.</p> <p class="govuk-body"><sup>2</sup> spôsob učenia poklesu tržieb upravuje nariadenie vlády Slovenskej republiky č. 76/2020 Z. z. z 9. apríla 2020 o spôsobe určenia poklesu čistého obratu a príjmov z podnikania a z inej samostatnej zárobkovej činnosti a nariadením vlády Slovenskej republiky č.132/2020 Z. z. z 20. mája 2020.</p> ', '#weight' => 10 ]; $form['#attached']['library'][] = "idsp_base/odklad_poistneho_vyhlasenie"; return $form; } public function validateForm(array &$form, FormStateInterface $form_state) { if(\Drupal::service('email.validator')->isValid($form_state->getValue('email')) === FALSE) { $form_state->setError($form, 'Zadajte platnú emailovú adresu.'); } $typOdv = $form_state->getValue('typ_odv') ; $varSym = $form_state->getValue('var_symbol') ; $firstChar = substr($varSym, 0, 1); if($typOdv === 'szco') { if (strlen($varSym) != 10 || $firstChar != "3") { $form_state->setError($form, 'Zadajte platný variabilný symbol.'); } if(strlen($form_state->getValue('rodne_cislo')) == 0) { $form_state->setError($form, 'Zadajte platné rodné číslo.'); } } else if ($typOdv == 'zamestnavatel') { if (strlen($varSym) != 10) { $form_state->setError($form, 'Zadajte platný variabilný symbol.'); } if(!in_array($firstChar, ['1', '2', '9'])) { $form_state->setError($form, 'Zadajte platný variabilný symbol.'); } if(strlen($form_state->getValue('ico')) != 8) { $form_state->setError($form, 'Zadajte platné IČO.'); } if(strlen($form_state->getValue('statutar')) == 0) { $form_state->setError($form, 'Zadajte meno a priezvisko štatutárneho zástupcu zamestnávateľa.'); } } } public function submitForm(array &$form, FormStateInterface $form_state) { KoronaCestneVyhlasenie::create([ 'uuid' => \Drupal::service('uuid')->generate(), 'nazov_fo' => $form_state->getValue('nazov_fo'), 'typ_odv' => $form_state->getValue('typ_odv'), 'var_symbol' => $form_state->getValue('var_symbol'), 'email' => $form_state->getValue('email'), 'statutar' => $form_state->getValue('statutar'), 'ico' => $form_state->getValue('ico'), 'rodne_cislo' => $form_state->getValue('rodne_cislo'), 'sidlo' => $form_state->getValue('sidlo'), 'typ_trzieb' => $form_state->getValue('typ_trzieb'), 'email' => $form_state->getValue('email'), 'prehlasenie' => TRUE, 'suhlas' => TRUE, 'status' => TRUE ])->save(); return $this->messenger()->addStatus('Formulár úspešne odoslaný.'); } }
Editor is loading...