Editor models to editors, navigation improvement
authorelgekko <vasary@elgekko.net>
Tue, 25 Apr 2023 11:46:00 +0000 (13:46 +0200)
committerelgekko <vasary@elgekko.net>
Tue, 25 Apr 2023 11:46:00 +0000 (13:46 +0200)
15 files changed:
TODO.txt
lis-app/pom.xml
lis-ui/src/main/java/hu/user/lis/ui/config/ResourceConfigurer.java
lis-ui/src/main/java/hu/user/lis/ui/editor/AssociateEditorModel.java [moved from lis-ui/src/main/java/hu/user/lis/ui/view/AssociateEditorModel.java with 98% similarity]
lis-ui/src/main/java/hu/user/lis/ui/editor/InvoiceEditorModel.java [moved from lis-ui/src/main/java/hu/user/lis/ui/view/InvoiceEditorModel.java with 99% similarity]
lis-ui/src/main/java/hu/user/lis/ui/editor/PartnerEditorModel.java [moved from lis-ui/src/main/java/hu/user/lis/ui/view/PartnerEditorModel.java with 98% similarity]
lis-ui/src/main/java/hu/user/lis/ui/editor/ProjectEditorModel.java [moved from lis-ui/src/main/java/hu/user/lis/ui/view/ProjectEditorModel.java with 98% similarity]
lis-ui/src/main/java/hu/user/lis/ui/view/IndexViewModel.java
lis-ui/src/main/resources/web/associate-editor.zul
lis-ui/src/main/resources/web/incoming-invoice-editor.zul
lis-ui/src/main/resources/web/outgoing-invoice-editor.zul
lis-ui/src/main/resources/web/partner-editor.zul
lis-ui/src/main/resources/web/partner-selector.zul
lis-ui/src/main/resources/web/project-editor.zul
lis-ui/src/main/resources/web/suppliers.zul

index 00757be221f87b5823e588d7c2f70cb582b13948..d97a315a75b0d6bd6eaa929be4115230fb235c35 100644 (file)
--- a/TODO.txt
+++ b/TODO.txt
@@ -1,21 +1,16 @@
 * Projektek táblázat oszlopok sorrendje: Azonosító, Partner (inkább ügyfél), Név (inkább megnevezés), Kapcsolattartó. Értelemszerűen a projekt részletezésben s ügyfél és megnevezés legyen.
-* A projekt részletek képernyőn össze lehetne csukni a be és a kimenő számla táblázatokat?
-* Számla táblázatban oszlopok:
-       Bejövő számlák: Szállító (ez most a partner), megnevezés (ez most a leírás), nettó összeg, Pénznem (ez most nincs), Fizetési határidő nem kell.
-       Kimenő számlák: Vevő (ez most a partner), megnevezés (ez most a leírás), nettó összeg, pénznem (ez most nincs), fizetési határidő nem kell.
-* a be és kimenő számlák felviteli képernyőjén be lehessen állítani, hogy ez egy tervezett számla-e.
-* számlakép feltöltés/törlés: pdf csatolás
--a dátumformátum: 2023. 04. 23. Nincs hónapnév és értelemszerűen nincs idő sem.
--Összegek: két tizedesre igazítva, magyar számformátum: pl: 100,23   1.543.234,00   2800,05
--Tervezett szamla esetén a határidők nem ismertek, nem kötelező;  áfa deviza esetén nem ismert, nem kötelező
--munkatárs lista és szerkesztő: név, óradíj?
--munkatárs hozzárendelése a projekthez (vagy fordítva)
--munkalap: külön lista xy hány órát (mindenki önköltség) dolgozott melyik projekten
-
-
-- authentikáció: hitelesítés-AD és helyi
-- authorizáció: sap s3 autorazition objects leírás!!!      -pl. számla: szla szám + művelet : megjelenítésnél elérhető e?
-- munkalap rögzítés úgy, hogy raktáron lévő alkatrészt is fel lehessen vinni a munkalapra.
-- Kell keresnünk egy nevet a rendszernek, mert szerintem a Leader Information System nem helyes angolul: SLY-CRM
-- plugin: gondolnunk kell arra, hogy minden ügyfélnél lehet egyedi testreszabási igény, de ennek valahogy el kell teljesen különülnie a "core" forráskódtól. Pl. javascript motort be lehetne építeni, a szkriptek pedig meghatározott pontokon lehetnének becsatolva a logikába. számla részletezés volt a példa (10000EUR számla 3 részletben forintban, kérdés mennyi pl. az utsó számla összege); 10 custom mező, javascripttel futna a custom mezők módosítására
-
+* A projekt részletek képernyőn össze lehetne csukni a be és a kimenő számla táblázatokat.
+* Bejövő számlák: Szállító (ez most a partner), megnevezés (ez most a leírás), nettó összeg, Pénznem (ez most nincs), Fizetési határidő nem kell.
+* Kimenő számlák: Vevő (ez most a partner), megnevezés (ez most a leírás), nettó összeg, pénznem (ez most nincs), fizetési határidő nem kell.
+* A be és kimenő számlák felviteli képernyőjén be lehessen állítani, hogy ez egy tervezett számla-e.
+* Számlakép feltöltés: pdf csatolás
+- A dátumformátum: 2023. 04. 23. Nincs hónapnév és értelemszerűen nincs idő sem.
+- Összegek: két tizedesre igazítva, magyar számformátum: pl: 100,23   1.543.234,00   2800,05
+- Tervezett számla esetén: a határidők nem ismertek, nem kötelező; áfa deviza esetén nem ismert, nem kötelező
+- Munkatárs lista és szerkesztő: név, óradíj?
+- Munkatárs hozzárendelése a projekthez (vagy fordítva)
+- Munkalap: külön lista xy hány órát (mindenki önköltség) dolgozott melyik projekten
+- Autentikáció: AD és helyi
+- Authorizáció: SAP S3 authorization objects leírás
+- Munkalap rögzítés úgy, hogy raktáron lévő alkatrészt is fel lehessen vinni a munkalapra.
+- Plugin: lehet egyedi testreszabási igény, de ennek valahogy el kell teljesen különülnie a "core" forráskódtól. Pl. javascript motort be lehetne építeni, a szkriptek pedig meghatározott pontokon lehetnének becsatolva a logikába. Számla részletezés volt a példa (10000EUR számla 3 részletben forintban, kérdés mennyi pl. az utsó számla összege); 10 custom mező, javascripttel futna a custom mezők módosítására.
index fe740f36634d80eda1c225844c0ddb0bbce43ddf..1da31930cbea0ffd341a92ac0984245f5ffb7d90 100644 (file)
@@ -4,7 +4,7 @@
     <modelVersion>4.0.0</modelVersion>
     <groupId>hu.user</groupId>
     <artifactId>lis-app</artifactId>
-    <version>0.0.5-SNAPSHOT</version>
+    <version>0.0.6-SNAPSHOT</version>
     <parent>
         <groupId>hu.user</groupId>
         <artifactId>lis</artifactId>
index ffa5562ab06a8a9ae65d662ffef55aa29ec756f4..be6d62d56270c93fd563f1e02a317fecb52b5d90 100644 (file)
@@ -10,13 +10,8 @@ public class ResourceConfigurer {
         return "admin/index";
     }
 
-    @GetMapping("/projects")
-    public String projects() {
-        return "index";
-    }
-
-    @GetMapping("/associates")
-    public String associates() {
+    @GetMapping({"/projects", "/associates", "/project/**"})
+    public String index() {
         return "index";
     }
 }
similarity index 98%
rename from lis-ui/src/main/java/hu/user/lis/ui/view/AssociateEditorModel.java
rename to lis-ui/src/main/java/hu/user/lis/ui/editor/AssociateEditorModel.java
index 1a6ec8689de4efa71f5ca364bfd2dea3004f98ab..08bf5978a7e60d254e9079bcdb86ae3d8c9fbcc6 100644 (file)
@@ -1,4 +1,4 @@
-package hu.user.lis.ui.view;
+package hu.user.lis.ui.editor;
 
 import hu.user.lis.db.Associate;
 import hu.user.lis.services.data.AssociateService;
similarity index 99%
rename from lis-ui/src/main/java/hu/user/lis/ui/view/InvoiceEditorModel.java
rename to lis-ui/src/main/java/hu/user/lis/ui/editor/InvoiceEditorModel.java
index 3b78075c1d70feecc62abc78c80de61b22f4317f..e2a125f48854603bd3dbd4c95ac57c433c0bde03 100644 (file)
@@ -1,4 +1,4 @@
-package hu.user.lis.ui.view;
+package hu.user.lis.ui.editor;
 
 import hu.user.lis.db.Currency;
 import hu.user.lis.db.Invoice;
similarity index 98%
rename from lis-ui/src/main/java/hu/user/lis/ui/view/PartnerEditorModel.java
rename to lis-ui/src/main/java/hu/user/lis/ui/editor/PartnerEditorModel.java
index b65c949a344089f3089d2c185952f778f007f4bf..0cb770bd3e4a4e3b0c0c05152d0f901c94278c4c 100644 (file)
@@ -1,4 +1,4 @@
-package hu.user.lis.ui.view;
+package hu.user.lis.ui.editor;
 
 import hu.user.lis.db.Partner;
 import hu.user.lis.services.data.PartnerService;
@@ -28,11 +28,11 @@ import java.util.Objects;
 @Setter
 @VariableResolver(DelegatingVariableResolver.class)
 public class PartnerEditorModel extends AbstractValidator {
+    @WireVariable
+    PartnerService partnerServiceImpl;
     private Partner formDocument;
     private Partner origDocument;
     private boolean formInvalid = true;
-    @WireVariable
-    PartnerService partnerServiceImpl;
 
     @Init
     public void init() {
similarity index 98%
rename from lis-ui/src/main/java/hu/user/lis/ui/view/ProjectEditorModel.java
rename to lis-ui/src/main/java/hu/user/lis/ui/editor/ProjectEditorModel.java
index d303f7cfd05db3f0a7bb97b2c59f6ee831a61242..df1e21fadc8a539330686dfcc91394c6d64a99d8 100644 (file)
@@ -1,4 +1,4 @@
-package hu.user.lis.ui.view;
+package hu.user.lis.ui.editor;
 
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.google.common.collect.ImmutableMap;
@@ -261,6 +261,7 @@ public class ProjectEditorModel extends AbstractValidator implements EventListen
             origDocument = (Project) data.get("origDocument");
             formDocument = (Project) data.get("formDocument");
             BindUtils.postNotifyChange(this, "formDocument");
+            //Clients.evalJavaScript(String.format("pushNav('/project/%s')", formDocument.getId()));
         }
     }
 
index 7034e5475373692d9e4ca4bd59d2800dbb2ec318..8ba1db01fb8de783ac37fc7735b28829d733b0fb 100644 (file)
@@ -29,6 +29,7 @@ public class IndexViewModel implements EventListener {
     public static final String PROJECT_EDITOR_PAGE = "~./project-editor.zul";
     private static final String PARTNERS_LIST = "~./partners.zul";
     private static final String PROJECTS_LIST = "~./projects.zul";
+    private static final String PROJECT_EDITOR = "~./project-editor.zul";
     private static final String ASSOCIATES_LIST = "~./associates.zul";
     @WireVariable
     BuildProperties buildProperties;
@@ -38,7 +39,8 @@ public class IndexViewModel implements EventListener {
     String page;
     private Map<String, String> navigation = ImmutableMap.of(
             "/projects", PROJECTS_LIST,
-            "/accociates", ASSOCIATES_LIST
+            "/project", PROJECT_EDITOR,
+            "/associates", ASSOCIATES_LIST
     );
 
     @Init
index cb219316a4741bbf04e09e9831f8ea29d955cc82..e437e94b29e97be71cd9f1e17a95fa87e732cd2e 100644 (file)
@@ -1,8 +1,8 @@
 <?link rel="stylesheet" type="text/css" href="~./static/css/skeleton.css" ?>
 <?link rel="stylesheet" type="text/css" href="~./static/css/webclient.css" ?>
 <zk>
-    <window id="associatePopup" width="60%" height="40%" closable="true"
-            viewModel="@id('vm') @init('hu.user.lis.ui.view.AssociateEditorModel')">
+    <window id="associatePopup" width="60%" height="400px" closable="true"
+            viewModel="@id('vm') @init('hu.user.lis.ui.editor.AssociateEditorModel')">
         <caption label="Munkatárs szerkesztés"/>
         <borderlayout>
             <center border="none" vflex="true" hflex="true">
index 77010bdf564ac6e79eefc553ff42cd923d58a48e..f967e10cca1cbaea89460927e997867e8576d9af 100644 (file)
@@ -6,8 +6,8 @@
         import hu.user.lis.db.Currency;
         ListModelList currencies = new ListModelList(Currency.values());
     </zscript>
-    <window id="invoicePopup" width="50%" height="50%" closable="true"
-            maximizable="true" sizable="true" viewModel="@id('vm') @init('hu.user.lis.ui.view.InvoiceEditorModel')">
+    <window id="invoicePopup" width="50%" height="500px" closable="true"
+            maximizable="true" sizable="true" viewModel="@id('vm') @init('hu.user.lis.ui.editor.InvoiceEditorModel')">
         <caption label="Bejövő számla szerkesztés"/>
         <borderlayout>
             <center border="none" vflex="true" hflex="true">
@@ -19,6 +19,8 @@
                     <tabpanels>
                         <tabpanel>
                             <vlayout hflex="true">
+                                <label value="Tervezett"/>
+                                <checkbox mold="switch" checked="@bind(vm.formDocument.planned)"/>
                                 <label value="Leírás"/>
                                 <textbox hflex="true" instant="true"
                                          value="@bind(vm.formDocument.title) @validator(vm)"
                                 <label value="Partner"/>
                                 <partner-selector/>
                                 <hlayout>
-                                    <vlayout>
-                                        <label value="Tervezett"/>
-                                        <checkbox mold="switch" checked="@bind(vm.formDocument.planned)"/>
-                                    </vlayout>
                                     <vlayout>
                                         <label value="Pénznem"/>
                                         <combobox instant="true" model="${currencies}"
                                     </vlayout>
                                 </hlayout>
                                 <hlayout>
-                                    <vlayout>
-                                        <label value="Tervezett"/>
-                                        <checkbox mold="switch" checked="@bind(vm.formDocument.planned)"/>
-                                    </vlayout>
                                     <vlayout>
                                         <label value="Kiállítás dátuma"/>
                                         <datebox instant="true" locale="hu"
index 09dd76ee00234a82641ebc6ba39be74eb19db4f1..f7b5776b7293c3d735f6ba894f78724a84b36a2f 100644 (file)
@@ -6,8 +6,8 @@
         import hu.user.lis.db.Currency;
         ListModelList currencies = new ListModelList(Currency.values());
     </zscript>
-    <window id="invoicePopup" width="50%" height="50%" closable="true"
-            maximizable="true" sizable="true" viewModel="@id('vm') @init('hu.user.lis.ui.view.InvoiceEditorModel')">
+    <window id="invoicePopup" width="50%" height="500px" closable="true"
+            maximizable="true" sizable="true" viewModel="@id('vm') @init('hu.user.lis.ui.editor.InvoiceEditorModel')">
         <caption label="Kimenő számla szerkesztés"/>
         <borderlayout>
             <center border="none" vflex="true" hflex="true">
@@ -19,6 +19,8 @@
                     <tabpanels>
                         <tabpanel>
                             <vlayout hflex="true">
+                                <label value="Tervezett"/>
+                                <checkbox mold="switch" checked="@bind(vm.formDocument.planned)"/>
                                 <label value="Leírás"/>
                                 <textbox hflex="true" instant="true"
                                          value="@bind(vm.formDocument.title) @validator(vm)"
index 2f4dbae591d74ae2e74f22488667466d7c99f2b6..c53c21cbf491f03cda3e71634db8cd6db87bd4b6 100644 (file)
@@ -1,8 +1,8 @@
 <?link rel="stylesheet" type="text/css" href="~./static/css/skeleton.css" ?>
 <?link rel="stylesheet" type="text/css" href="~./static/css/webclient.css" ?>
 <zk>
-    <window id="partnerPopup" width="60%" height="40%" closable="true"
-            viewModel="@id('vm') @init('hu.user.lis.ui.view.PartnerEditorModel')">
+    <window id="partnerPopup" width="60%" height="400px" closable="true"
+            viewModel="@id('vm') @init('hu.user.lis.ui.editor.PartnerEditorModel')">
         <caption label="Partner szerkesztés"/>
         <borderlayout>
             <center border="none" vflex="true" hflex="true">
index 240c2057467bf6141eefebf91b29fa0f82dda325..208196044fd52452a80099239a8299647b432732 100644 (file)
@@ -1,5 +1,5 @@
 <zk xmlns:c="client">
-    <hlayout>
+    <hlayout hflex="true">
         <bandbox id="bd" autodrop="true" iconSclass="z-icon-sort-down"
                  value="@load(vm.formDocument.partner) @converter('hu.user.lis.ui.converter.PartnerToNameConverter')"
                  onChanging="@command('onPartnerBandChanging')" onOpen="@command('onPartnerBandOpen')"
index c2146d709fa5f9524b168e2c21b73432939d75f7..418f9fde3c67f45e308fc64417a1af0130c1782a 100644 (file)
@@ -3,7 +3,7 @@
 <?component name="partner-selector" inline="true" macroURI="~./partner-selector.zul"?>
 <zk>
     <window id="projectEditor" hflex="true" vflex="true"
-            viewModel="@id('vm') @init('hu.user.lis.ui.view.ProjectEditorModel')">
+            viewModel="@id('vm') @init('hu.user.lis.ui.editor.ProjectEditorModel')">
         <caption label="Projekt szerkesztés"/>
         <borderlayout>
             <center id="centerPanel" border="none" vflex="true" hflex="true" autoscroll="true">
index 78d74ea844d31356a153b3b19c03abc734cc32ee..cb43c3f55873f92f53307ab500adfcf8511086ae 100644 (file)
@@ -1,6 +1,6 @@
 <?link rel="stylesheet" type="text/css" href="~./static/css/skeleton.css" ?>
 <?link rel="stylesheet" type="text/css" href="~./static/css/webclient.css" ?>
-<?component name="text" class="hu.user.lis.ui.form.Field$Text" ?>
+<?component name="text" class="hu.user.lis.ui.editor.Field$Text" ?>
 <zk xmlns:c="client">
     <window id="supplierPopup" title="Szállítók" width="80%" height="60%" closable="true"
             viewModel="@id('vm') @init('hu.user.lis.ui.view.SuppliersViewModel')">