From 98dd081e0288c517e8914938fd77c6c4e556a540 Mon Sep 17 00:00:00 2001 From: modzeleg Date: Fri, 23 Apr 2021 11:45:51 +0200 Subject: [PATCH] T272 added method for last day in history. History is being sorted --- .../klaus/controller/EventController.java | 21 +++++++++++++++++- .../java/com/release11/klaus/model/Event.java | 7 +++++- .../klaus/service/EtrackServiceImpl.java | 5 ++++- src/main/resources/static/html/mock.html | 6 ++--- .../klaus/controller/EventController.class | Bin 1682 -> 3143 bytes .../com/release11/klaus/model/Event.class | Bin 5636 -> 6097 bytes .../klaus/service/EtrackServiceImpl.class | Bin 2285 -> 2467 bytes target/classes/static/html/mock.html | 6 ++--- 8 files changed, 34 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/release11/klaus/controller/EventController.java b/src/main/java/com/release11/klaus/controller/EventController.java index 4a4e03f..a6faa77 100644 --- a/src/main/java/com/release11/klaus/controller/EventController.java +++ b/src/main/java/com/release11/klaus/controller/EventController.java @@ -8,6 +8,9 @@ import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; +import java.time.LocalDateTime; +import java.util.UUID; + /** * It's the REST api for {@link com.release11.klaus.model.Event} * @author Gabriel Modzelewski @@ -27,8 +30,24 @@ public class EventController { * @return list of Event's */ @PostMapping - public ResponseEntity getHistory(@RequestBody EventRequestDto event){ + public ResponseEntity filterHistory(@RequestBody EventRequestDto event){ return new ResponseEntity(service.getEventsByDateTimeAndBusinessKeys(event), HttpStatus.OK); } + + @GetMapping(path = "/{uuid}/{messageId}") + public ResponseEntity getLastDay(@PathVariable UUID uuid, + @PathVariable Integer messageId){ + LocalDateTime requestTime = LocalDateTime.now(); + LocalDateTime dayBeforeRequest = requestTime.minusDays(1L); + EventRequestDto eventRequestDto = EventRequestDto.builder() + .clientUUID(uuid) + .mockedResponseId(messageId) + .localDateTimeFrom(dayBeforeRequest) + .localDateTimeTo(requestTime) + .build(); + return new ResponseEntity(service.getEventsByDateTimeAndBusinessKeys(eventRequestDto), HttpStatus.OK); + } + + } diff --git a/src/main/java/com/release11/klaus/model/Event.java b/src/main/java/com/release11/klaus/model/Event.java index b4092d9..2798ae8 100644 --- a/src/main/java/com/release11/klaus/model/Event.java +++ b/src/main/java/com/release11/klaus/model/Event.java @@ -15,7 +15,7 @@ import java.time.LocalDateTime; @ToString @NoArgsConstructor @AllArgsConstructor -public class Event { +public class Event implements Comparable{ @DateTimeFormat(pattern = "yyyy-MM-ddTHH:mm:ss") private LocalDateTime dateTimeStamp; @@ -29,4 +29,9 @@ public class Event { private String level; @Nullable private String message; + + @Override + public int compareTo(Event o) { + return this.getDateTimeStamp().compareTo(o.getDateTimeStamp()) * -1; + } } diff --git a/src/main/java/com/release11/klaus/service/EtrackServiceImpl.java b/src/main/java/com/release11/klaus/service/EtrackServiceImpl.java index 35d052f..44ee5d3 100644 --- a/src/main/java/com/release11/klaus/service/EtrackServiceImpl.java +++ b/src/main/java/com/release11/klaus/service/EtrackServiceImpl.java @@ -8,6 +8,7 @@ import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -37,7 +38,9 @@ public class EtrackServiceImpl implements EtrackService { if (eventsDto.getMockedResponseId() != null){ businessKeys.put(BusinessKey.MESSAGE_ID, String.valueOf(eventsDto.getMockedResponseId())); } - return eventRepository.findEvents(eventsDto.getLocalDateTimeFrom(), eventsDto.getLocalDateTimeTo(), + List events = eventRepository.findEvents(eventsDto.getLocalDateTimeFrom(), eventsDto.getLocalDateTimeTo(), businessKeys); + Collections.sort(events); + return events; } } diff --git a/src/main/resources/static/html/mock.html b/src/main/resources/static/html/mock.html index 86867ed..5717c8e 100644 --- a/src/main/resources/static/html/mock.html +++ b/src/main/resources/static/html/mock.html @@ -63,9 +63,7 @@ -
-

> show/hide advanced settings

-
+
@@ -102,7 +100,7 @@
- +
diff --git a/target/classes/com/release11/klaus/controller/EventController.class b/target/classes/com/release11/klaus/controller/EventController.class index 267b4d6b35186e3bd4117a1077353b2381004362..c81b165eb849afa3d528e81dcc7ed54f2e789683 100644 GIT binary patch literal 3143 zcmb_e4ObIK6ulD?)`V3N1w?JFh#EduTeX%b)$pN6L<)$tmfB4+goVv++@0v*c>GWO zjJ7?eKcGLVr*}6Y#Ip22HRo(*XLjCu_q}=VzWM9#-~R;g1w0KgflIDeGW?2XIi)qv zEX$X!w`r^^RWTN&UvV8@PCLp{TS>%`(9o_!!y$pOf?GB`X-m_WSFRYFwpsO!g6k;H zwQcDc(=Vi>CYy5s&6nN_s~`o2b5XL5&&IU!%);hUeRHM*DRgMibsWYKfx&%C3iOwx z3Q_pkttnHgEqoWrm1=?>~j-@69 z#?y5ew&|3NhxrXzP?>#c8(c}@6i#b6qvIodEYKUeqZk(>=N3$RJ4ym=j{8#Jbh_d3 z?k$9N3ZLjWhkk)%*>bA>lov2rlrtkAG{w+xciQ~SGIpk={c1r?X zyEh3OUbAc^y?Z2`(9p`kXlqZd+0LIj#b*TKlVm7HR|ty?v0{2w zFmEiz)w;!+zZ{v{dp85xNywl-?9~e*OPNxg52RXmiwkDZs2C60?pv&~J(cB(e zlMTgW!p!gDi570(so?{hU$ttH3p!gmRY*SpNwevhB^gk~@dzsd9bUcFEi;@9Y<*8e zRa1S@+{(%|*OLw3m@(mj?hviO)qO|*u51Z@yke?#LNs0luDmv0HF3WdxV~?l3)Hfm zt&I9ubiqVlItEt+4&5Z5*BfqX$*p>C(MuH{}tXa^Au zuOd5%nlj9aWi(1jpLHDRg-j!v{5>JiodaofK6dOlNe_szfs=Ol))n07IL3L~cz}71 z4>_CV7~|Oe2gH-1U(h!E8;5sB|2lGK!@#zAzjUmV3SFKZ(>$;N*MV>k-~1GpUGpQu}H;vdH< zz9TXs!83eM@8Y-)6M3{zmw^J`;*{<|k$xsZKN+G`3OwTz_hr8;~T~s&^E~G>B_&JjQ0KI*L;Q#;t delta 381 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 literal 5636 zcmbVQ>vI#=75`mZ(yru{EdvI&hVY2fV%bK4mb6}*kYFIVwH*ounxqdFX|aX%aHKUU zeZSkJkED;8b~2rQEHfQu`j{GK(oUxNlFsyVKeeCwSM*D1`a5@bt(7c;Q;(%R_nhDP z-M#0YbMLYL_TRVO1~7@A8R$_MFV?GthF9_2rg!XEVWr}(H4D{x$*UC3-tubxi2gpk zR<4x1Mg|HA3rVCDQq$#H*?(H0_sHm#G)$xoWGwW-QaJDkQiW{E^}WS%)w|@o)l~(1 z?xuUoE%?+F=ITYaawfD-33b1P0p#dauK8Z$hFkO&+^VOrBk-!YwWY!(zfrC&Y4{Ec zI|ZI8R?1w$<;$~Ygk{LWZtPJ=SG{J_UGip23Oi#Avm{^g8k)kk@ByJn`O6K@Es6U+ z3;RWtta!J)if9g4I4Bw;B+O8E*uvu&Q80^c?d;2IZbf0}NNkeluix~F{?zD;0{)=r85@J;4HDrZgY8tnW;_^j=<$6%|3Qux>A5qh72L+uI!B!2-m22L@ zTJ^fuSQJ_*TB+|VZlf&YP?_+T%Y3gxkD7(Vx#p%~*|+sBk6xk2yyq|1OBY-TA;ZFn zgruVy+R8NCNbx@0zCjx-Z9A1EU#n7B9~{T(V|V-rh%!mY)5Ha3!33wQi-9H3a#v9G z_LD9=LUD2W4?(-dzndD0$)H>^zSN#q%K5@S1BC zU!lKq{rw{ytLz(zFDEk+dvRkVddt*E_)cbI=WhA+AW0Nn-8%i==V=k8#`|=OWozbA zeXUXS&XuLqGWzm9D)$4UyWlmMlTwLN0H^D9zv(yJ)u1?<11WqbgYV*d240n8^)-c& z*2Pk;-Kwv6;UycKwCCKSUvJ!2_(eRqLtsF9-mR4?UUOuwUSC;ToqFi1+8h^euXWJdi<<2O{Y_h}lo7 zQReh)t>!gmDsHpsF|?MRF>IL(yrJ;Kra*R!kAa^kJoa!Xb2|to4)Mm!^A2PeCruYS zvrll;$LAbB^Gz(!z^*AYr1*TEfF5a$HtEn|xk+{IlrS0t`+Si3hNhj6C zdAQSge^+OATwRv%Sf}%WF3#;iy^2qTL=K;l3aR|qI*i{_itlY!Gwlu#;oi#T1UdWy z(Mg_FI@eyrOX$^6X`{?;momuykWvPpCc7bdCzYV^neP09+vN``Ddd+y2mfdBxo+>j zYrFhGRfhb#H}hZP`v(Ql7N5P_<(CRq2>FA7+nsWFyOeTRY)}S+>)oUL*mfy{b0>UD z8FWOMe**( zJMk_C@4%X{6ZbG0A&xppLXJ8qJ1LmdyV!9DSvzT`VxZ%WLC|r>v<(57A;_@J80dtP zCg_BdvC{&|grKyYiGe1aK7uA4%kC496@nCkh0+M4DMl|AK(Ucy}Wt;jU`G6 zJcoZ^nNkw-_&ds!Qm9}ZHz^rt;I~+zWa7togZdJ$jGyB*R4HX}kG2}6KKz+8)G1l` zC(dD&QWpQhGkBR&Kd*s9WGZ1mr7(;pr5t>&;VSkT=6}#{zCn0~&hh;X&XvoQyl+2PKZgsFlmzG>#9$$B(Bs^Uo{Ck!v9``+eAVr2m@8qVY z6DM_I?#oRrGcC>B*c})X_i*}}=#M%HG1!UFVoI_GrsGaho0zBC$+VM^>4cNgrqqUs z*&BFGI)*keaYHX7GEFIQghc|jW{%bL)j97zsA0O|$D{?XCsMaK_zQzrgF6x)eER)ai zJe_qLk{@43Hb1eB!MvSV$F97cT*uzLom$6m-Zs{;={_3Nb6gB~qC*kmVWUEB-CfIZ zFs^&*UMPt>af9gBR+ uPoPcU>y&%&4b}@dt8C4;D4BeIo1gFFhaBx7f`6{!N34_Ac?|y)_WuB1fJ7?* diff --git a/target/classes/com/release11/klaus/service/EtrackServiceImpl.class b/target/classes/com/release11/klaus/service/EtrackServiceImpl.class index 91f486070cccd3e96c06a13a2ea3e211d0464983..0cdf63cab58badb14136532889b9d4e69876120e 100644 GIT binary patch delta 543 zcmZ9I%}x_x6o#L#ozCFc1wx9!1fxd9DUg;J7HWcl)>5&e@>Bl&p+M2r(k6Cf+k0@l z18+dm7zqm(E?v3sHcY$#V|-^CAu*Hr&Uemx&U4;;KhJ#_bie&M{sP>hdFXzP7iJu0 zljO)7QuWF~CG*y=H8QzYqfy=QYprJ6V6|Ise8b?4(rH7f*7omsWtRe$!(8w^o;rJ< zd4~r{N<0jH#TV^INgnegC|V=dlEDkI39tLk^31SZJ*YN)k^BE621kjyxfyiqsqPg! zXEFs0i^RAPf@FGtER%|H)t6aOEGzqgr4QzV_fD>}Fmc4)iI2)HR&`#)(Rr0Vt})DY zE-@;GN1ic?jI$;+-J55f4P_#+$y4pdfN7hwj*s9Iugup zCLNissx@K6f<65)UW%FEm2RQ$X~meLoBqtb^w=lH52LQowXIG#AGr&+sq4g@8@+=0 rhtJZlowaDB%x$t0LWnidWAv~o0qd&8cuhkwtnR~KUC&dK delta 427 zcmX|6%Su8~6kX?f?xTwXGm#7eBMY$9F&^^V_s8_v_E84crl~ael~K#nS;OvGz_Rko(Ln2 z3^71{3kBjfr$hSZHHKxeEWkzH2`sG;~R7D5FAD H^cC<20E0Cn diff --git a/target/classes/static/html/mock.html b/target/classes/static/html/mock.html index 86867ed..5717c8e 100644 --- a/target/classes/static/html/mock.html +++ b/target/classes/static/html/mock.html @@ -63,9 +63,7 @@
-
-

> show/hide advanced settings

-
+
@@ -102,7 +100,7 @@
- +