From a9e39f3f387ec0617078e5a1264630af809ce6a3 Mon Sep 17 00:00:00 2001 From: elgekko Date: Tue, 2 May 2023 14:24:47 +0200 Subject: [PATCH] Minor changes, bugfixes --- TODO.txt | 33 ++++---- .../src/main/java/hu/user/lis/db/Invoice.java | 1 + .../lis/services/data/InvoiceServiceImpl.java | 5 ++ .../lis/services/data/ProjectServiceImpl.java | 1 - .../user/lis/ui/view/AssociatesViewModel.java | 4 +- .../resources/web/incoming-invoice-editor.zul | 5 ++ .../resources/web/outgoing-invoice-editor.zul | 5 ++ .../src/main/resources/web/project-editor.zul | 78 ++++++++++--------- 8 files changed, 80 insertions(+), 52 deletions(-) diff --git a/TODO.txt b/TODO.txt index e4035c3..5ddebc5 100644 --- a/TODO.txt +++ b/TODO.txt @@ -15,11 +15,29 @@ * Dátumformátum: 2023. 04. 23. nincs hónapnév és értelemszerűen nincs idő sem. * Munkatárs hozzárendelése a projekthez a szerkesztőben -- Valós adatok a projekt, partner, számla nézetben (Kele Károly) +0.0.8 +* A projektszám formátuma más kell, hogy legyen (Csabi). +* Számlához kellene a számla sorszám: a szerkesztőben és/vagy a listában? +* A be és kimenő számlák táblázatban szerepeljen a teljesítés dátuma a fizetési határidő oszlop előtt. +- Projekt résztvevők így nagy helyet foglalnak el. + Inkább legyen egy nyomógomb a projekt szerkesztő tetején egy dialógus ablakban lehet szerkeszteni a résztvevőket. + A felugró ablak helyett inkáb plusz tab lett az adatok mellett, maradhat? Layout para +* Munkatárs táblázatban a szerkesztés gomb nem aktív. + - Projekt szerkesztőben treasury műveletek lista: Eladás (aloszlop összeg és deviza), Vétel (aloszlop összeg és deviza),Üzletkötés dátuma, Értéknap - A treasury szerkesztőben banki visszaigazolás pdf csatolása +- Projekt szerkesztőben tresaury táblázat alatt munkalap lista, ráfordítás összesítéssel (fixen 21 munkanappal számolva havonta) - Munkalap: külön lista xy hány órát (mindenki önköltség) dolgozott melyik projekten -- Projekt szerkesztőben munkalap lista, ráfordítás összesítéssel (fixen 21 munkanappal számolva havonta) + +- Valós adatok a projekt, partner, számla nézetben (Kele Károly) +- A projekt szerkesztés/részletezés tetején az adatok legyenek bal oldalon bekeretezve. + A jobb oldalon pedig legyen látható a projekt árrése. + Az árrés annyi sorból áll ahány devizanem van a projekt számláiban. Egy adott devizanem esetén a számolás: + Kimenő - Bejövő - Treasury eladás + Treasury vétel + +- számla kiegyenlítés +- Minden kívülről leszipkázható adat jöjjön módosítható legyen REST API-n: szla kiegyenlítés, bejövő/kimenő számlák, munkalap + Ez emiatt kell, a szinkronizációt egy külső app végzi? - Autentikáció: AD és helyi - Authorizáció: SAP S3 authorization objects leírás @@ -27,14 +45,3 @@ - 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. -- A projektszám formátuma más kell, hogy legyen (Csabi). -- Munkatárs táblázatban a szerkesztés gomb nem aktív. -- Számlához kellene a számla sorszáma. -- A be és kimenő számlák táblázatban szerepeljen a teljesítés dátuma a fizetési határidő oszlop előtt. -- Projekt résztvevők így nagyok helyet foglalnak el. Inkább legyen egy nyomógomb a projekt szerkesztő tetején egy dialógus ablakban lehet szerkeszteni a résztvevőket. -- Treasury táblázat a következő. -- Tresaury táblázat után pedig a munkalap táblázat. -- A projekt szerkesztés/részletezés tetején az adatok legyenek bal oldalon bekeretezve. - A jobb oldalon pedig legyen látható a projekt árrése. - Az árrés annyi sorból áll ahány devizanem van a projekt számláiban. Egy adott devizanem esetén a számolás: - Kimenő - Bejövő - Treasury eladás + Treasury vétel \ No newline at end of file diff --git a/lis-db/src/main/java/hu/user/lis/db/Invoice.java b/lis-db/src/main/java/hu/user/lis/db/Invoice.java index ba9f723..ea07d90 100644 --- a/lis-db/src/main/java/hu/user/lis/db/Invoice.java +++ b/lis-db/src/main/java/hu/user/lis/db/Invoice.java @@ -11,6 +11,7 @@ import java.util.Date; @NoArgsConstructor public class Invoice { String id; + String humanId; String projectId; String title; Partner partner; diff --git a/lis-services/src/main/java/hu/user/lis/services/data/InvoiceServiceImpl.java b/lis-services/src/main/java/hu/user/lis/services/data/InvoiceServiceImpl.java index 518a08a..1b85825 100644 --- a/lis-services/src/main/java/hu/user/lis/services/data/InvoiceServiceImpl.java +++ b/lis-services/src/main/java/hu/user/lis/services/data/InvoiceServiceImpl.java @@ -12,6 +12,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.lang.reflect.Field; +import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; @@ -72,6 +73,8 @@ public class InvoiceServiceImpl implements InvoiceService { List result = new ArrayList<>(); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); + DateFormat humanIdDateFormat = new SimpleDateFormat("yyyy"); + for (int i = 0; i < GENERATE_COUNT; i++) { String id = RandomStringUtils.random(8, "0123456789abcdef"); String title = dataGeneratorService.faker().commerce().productName(); @@ -79,6 +82,7 @@ public class InvoiceServiceImpl implements InvoiceService { Date completionDate = dataGeneratorService.faker().date().between(formatter.parse("2010-01-01"), new Date()); Date createDate = dataGeneratorService.faker().date().past(RandomUtils.nextInt(6, 20), TimeUnit.DAYS, completionDate); Date paymentDeadline = dataGeneratorService.faker().date().future(1, TimeUnit.DAYS, completionDate); + String humanId = String.format("%s / %s", humanIdDateFormat.format(completionDate), String.format("%04d", i)); int currencyIndex = RandomUtils.nextInt(0, 3); Currency currency = Arrays.stream(Currency.values()) .filter(p -> p.getVal() == currencyIndex) @@ -88,6 +92,7 @@ public class InvoiceServiceImpl implements InvoiceService { double vatAmount = grossAmount - netAmount; Invoice entity = Invoice.builder() .id(id) + .humanId(humanId) .title(title) .currency(currency) .partner(partner) diff --git a/lis-services/src/main/java/hu/user/lis/services/data/ProjectServiceImpl.java b/lis-services/src/main/java/hu/user/lis/services/data/ProjectServiceImpl.java index f222923..1c073c8 100644 --- a/lis-services/src/main/java/hu/user/lis/services/data/ProjectServiceImpl.java +++ b/lis-services/src/main/java/hu/user/lis/services/data/ProjectServiceImpl.java @@ -72,7 +72,6 @@ public class ProjectServiceImpl implements ProjectService { String id = RandomStringUtils.random(8, "0123456789abcdef"); String name = dataGeneratorService.faker().commerce().productName(); Date dt = dataGeneratorService.faker().date().past(i + 1, TimeUnit.DAYS); - //"2023-0054" String humanId = String.format("%s-%s", dateFormat.format(dt), String.format("%04d", i)); String contactName = dataGeneratorService.faker().name().fullName(); Partner partner = partnerService.getRandom(); diff --git a/lis-ui/src/main/java/hu/user/lis/ui/view/AssociatesViewModel.java b/lis-ui/src/main/java/hu/user/lis/ui/view/AssociatesViewModel.java index 90d8cdf..a8abd65 100644 --- a/lis-ui/src/main/java/hu/user/lis/ui/view/AssociatesViewModel.java +++ b/lis-ui/src/main/java/hu/user/lis/ui/view/AssociatesViewModel.java @@ -56,12 +56,12 @@ public class AssociatesViewModel { } @Command - @NotifyChange("selectedPartner") + @NotifyChange("selectedEntity") public void search() { } @Command - @NotifyChange("selectedPartner") + @NotifyChange("selectedEntity") public void onListSelection() { selectedEntity = null; Set selections = associatesDataModel.getSelection(); diff --git a/lis-ui/src/main/resources/web/incoming-invoice-editor.zul b/lis-ui/src/main/resources/web/incoming-invoice-editor.zul index 4092f04..c1f115f 100644 --- a/lis-ui/src/main/resources/web/incoming-invoice-editor.zul +++ b/lis-ui/src/main/resources/web/incoming-invoice-editor.zul @@ -28,6 +28,11 @@