|
|
@@ -20,27 +20,74 @@ class Route_UrlAction_UserProNetMediaZaliczkaWniosekRemove extends RouteBase {
|
|
|
];
|
|
|
}
|
|
|
|
|
|
+ public function getProps($args) {
|
|
|
+ $idZaliczkaWniosek = V::get('idZaliczkaWniosek', 0, $_GET, 'int');
|
|
|
+ if ($idZaliczkaWniosek <= 0) throw new Exception("Missing param idZaliczkaWniosek");
|
|
|
+ $wniosekAcl = ACL::getAclByNamespace('default_db/ZALICZKA_WNIOSEK/ZaliczkaWniosek');
|
|
|
+ $wniosek = $wniosekAcl->getItem($idZaliczkaWniosek);
|
|
|
+ if (!$wniosek) throw new Exception("Wniosek o numerze {$idZaliczkaWniosek} nie został odnaleziony w bazie danych");
|
|
|
+ $props = [
|
|
|
+ 'idZaliczkaWniosek' => $idZaliczkaWniosek,
|
|
|
+ 'wniosekAcl' => $wniosekAcl,
|
|
|
+ 'wniosek' => $wniosek,
|
|
|
+ ];
|
|
|
+ return $props;
|
|
|
+ }
|
|
|
+
|
|
|
+ public function cancelAction() {
|
|
|
+ UI::gora();
|
|
|
+ UI::menu();
|
|
|
+ UI::startContainer();
|
|
|
+ try {
|
|
|
+ $props = $this->getProps([
|
|
|
+ 'idZaliczkaWniosek' => V::get('idZaliczkaWniosek', 0, $_GET, 'int')
|
|
|
+ ]);
|
|
|
+
|
|
|
+ $affected = $props['wniosekAcl']->updateItem([
|
|
|
+ 'id' => $props['idZaliczkaWniosek'],
|
|
|
+ 'status' => "Anulowany"
|
|
|
+ ]);
|
|
|
+ DBG::log(['msg'=>"update Wniosek(affected={$affected})", '$wniosek'=>$wniosek]);
|
|
|
+ UI::alert('success', "Wniosek o zaliczkę został anulowany");
|
|
|
+ echo $this->viewWniosek($props['wniosek']);
|
|
|
+ } catch (Exception $e) {
|
|
|
+ UI::alert('danger', $e->getMessage());
|
|
|
+ DBG::log($e);
|
|
|
+ }
|
|
|
+ UI::endContainer();
|
|
|
+ UI::dol();
|
|
|
+ }
|
|
|
+
|
|
|
public function defaultAction() {
|
|
|
UI::gora();
|
|
|
UI::menu();
|
|
|
UI::startContainer();
|
|
|
try {
|
|
|
- $idZaliczkaWniosek = V::get('idZaliczkaWniosek', 0, $_GET, 'int');
|
|
|
- if ($idZaliczkaWniosek <= 0) throw new Exception("Missing param idZaliczkaWniosek");
|
|
|
- $wniosekAcl = ACL::getAclByNamespace('default_db/ZALICZKA_WNIOSEK/ZaliczkaWniosek');
|
|
|
- $wniosek = $wniosekAcl->getItem($idZaliczkaWniosek);
|
|
|
- if (!$wniosek) throw new Exception("Wniosek o numerze {$idZaliczkaWniosek} nie został odnaleziony w bazie danych");
|
|
|
-
|
|
|
- if ('Anulowany' == $wniosek['status']) throw new Exception("Wniosek o numerze {$idZaliczkaWniosek} został już anulowany wcześniej");
|
|
|
- if ('Odrzucony' == $wniosek['status']) throw new Exception("Wniosek o numerze {$idZaliczkaWniosek} został odrzucony");
|
|
|
- if ('Zatwierdzony' == $wniosek['status']) throw new Exception("Wniosek o numerze {$idZaliczkaWniosek} został zatwierdzony");
|
|
|
- // if ('Oczekuje zatwierdzenia' !== $wniosek['status']) throw new Exception("Wniosek o numerze {$idZaliczkaWniosek} ma nieznany status");
|
|
|
- $wniosekAcl->updateItem([
|
|
|
- 'id' => $idZaliczkaWniosek,
|
|
|
- 'status' => "Anulowany"
|
|
|
- ]);
|
|
|
-
|
|
|
- UI::alert('success', "Wniosek anulowany");
|
|
|
+ $props = $this->getProps([
|
|
|
+ 'idZaliczkaWniosek' => V::get('idZaliczkaWniosek', 0, $_GET, 'int')
|
|
|
+ ]);
|
|
|
+ if (!$props['wniosek']) throw new Exception("Wniosek o numerze {$props['idZaliczkaWniosek']} nie został odnaleziony w bazie danych");
|
|
|
+
|
|
|
+ if ('Anulowany' == $props['wniosek']['status']) throw new Exception("Wniosek o numerze {$props['idZaliczkaWniosek']} został już anulowany wcześniej");
|
|
|
+ if ('Odrzucony' == $props['wniosek']['status']) throw new Exception("Wniosek o numerze {$props['idZaliczkaWniosek']} został odrzucony");
|
|
|
+ if ('Zatwierdzony' == $props['wniosek']['status']) throw new Exception("Wniosek o numerze {$props['idZaliczkaWniosek']} został zatwierdzony");
|
|
|
+ // if ('Oczekuje zatwierdzenia' !== $props['wniosek']['status']) throw new Exception("Wniosek o numerze {$props['idZaliczkaWniosek']} ma nieznany status");
|
|
|
+
|
|
|
+ echo UI::h('h1', [], "Wniosek o wypłatę zaliczki");
|
|
|
+ echo $this->viewWniosek($props['wniosek']);
|
|
|
+ echo UI::h('div', ['style' => "text-align:center; padding:32px"], [
|
|
|
+ UI::h('a', [
|
|
|
+ 'href' => $this->getLink('cancel') . "&idZaliczkaWniosek={$props['idZaliczkaWniosek']}",
|
|
|
+ 'class' => "btn btn-lg btn-danger",
|
|
|
+ 'style' => "margin-left:24px"
|
|
|
+ ], "Anuluj wniosek o zaliczkę"),
|
|
|
+ ]);
|
|
|
+
|
|
|
+ echo UI::h('hr');
|
|
|
+ echo UI::h('h3', [], "Pozostałe wnioski pracownika <code>{$props['wniosek']['workerLogin']}</code>:");
|
|
|
+ Router::getRoute('UrlAction_UserProNetMediaZaliczka')->viewWidgetUserWnioski([
|
|
|
+ 'idUser' => $props['wniosek']['workerID']
|
|
|
+ ]);
|
|
|
} catch (Exception $e) {
|
|
|
UI::alert('danger', $e->getMessage());
|
|
|
DBG::log($e);
|
|
|
@@ -49,8 +96,14 @@ class Route_UrlAction_UserProNetMediaZaliczkaWniosekRemove extends RouteBase {
|
|
|
UI::dol();
|
|
|
}
|
|
|
|
|
|
- public function reinstallAction() {
|
|
|
-
|
|
|
+ public function viewWniosek($wniosek) {
|
|
|
+ return UI::h('blockquote', [], [
|
|
|
+ UI::h('p', [], "Nr: {$wniosek['id']}"),
|
|
|
+ UI::h('p', [], "Autor: {$wniosek['workerLogin']}"),
|
|
|
+ UI::h('p', [], "Data zgłoszenia: {$wniosek['created']}"),
|
|
|
+ UI::h('p', [], "Kwota: <b>" . UI::price($wniosek['kwota']) . "</b>"),
|
|
|
+ UI::h('p', [], "Uwagi: {$wniosek['uwagi']}"),
|
|
|
+ ]);
|
|
|
}
|
|
|
|
|
|
}
|