From 3b54c6fbdbb314fdda8f8598bf658228b361e74e Mon Sep 17 00:00:00 2001 From: michaelschal <35957947-michaelschal@users.noreply.replit.com> Date: Tue, 2 Sep 2025 08:47:11 +0000 Subject: [PATCH] Improve product expiry date filtering and supplier data retrieval Refactor storage logic to correctly filter products by expiry date (expires_soon, expired, active) and update supplier DLC enablement check in routes. Replit-Commit-Author: Agent Replit-Commit-Session-Id: f2b9c241-9fdd-4abd-9041-720afc8b27d6 Replit-Commit-Checkpoint-Type: full_checkpoint --- ...B2-4275-91F7-8FD06695C068}_1756802631614.png | Bin 0 -> 32806 bytes ...29-40AC-811B-7CF229C0AC08}_1756802641364.png | Bin 0 -> 32414 bytes server/routes.ts | 2 +- server/storage.ts | 13 ++++++++----- 4 files changed, 9 insertions(+), 6 deletions(-) create mode 100644 attached_assets/{4F3CA6E2-D8B2-4275-91F7-8FD06695C068}_1756802631614.png create mode 100644 attached_assets/{63A69204-8F29-40AC-811B-7CF229C0AC08}_1756802641364.png diff --git a/attached_assets/{4F3CA6E2-D8B2-4275-91F7-8FD06695C068}_1756802631614.png b/attached_assets/{4F3CA6E2-D8B2-4275-91F7-8FD06695C068}_1756802631614.png new file mode 100644 index 0000000000000000000000000000000000000000..2e630e1366911923508bdb2d04eac6a6cc8a92f3 GIT binary patch literal 32806 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

0hL>OP|-_`5c>H^z}Hg-dYYWmd{ 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 z z7as_Ineb?;Hd%)JLl6XATo~bDhIwpu-X89nQ(e8^l3CI{)vp9}CWU+69;TtlMWH?C zu;BIKx1|>W!IT*I%iBiUeVOVn^^-LTynvC>wi5=-fapC%>xfnjbf)Qn*VYEir;T1c z{eZAqbg4q*%`s>9cYt}}5nZ&&$)_K_dzZ5&p;2V3S@oUmKvc}lTh=M@NPdSIy2O6~FwVi5$lnLKFPhKW~SV!iICqrYepyVTJJIHDn^;Dda;AexkQ? zWr_K*hIy4Dq*?(psWsfnD5lT+N7o}ZZf*dY#}esyMR&O@H>fk`By-?TIT>bBO5Ge zWmJcM0#ts_>R#D&iORi6a0}fCcm9H|M*|vmCgEz4vKW6!x0;o}UrtE<1;%k{<&8}- z*N6GA+0e9IJaCj4$P$Vfg<^TMH5s(MD#(bUw(V4tyY%+#-hOGYQ2A%(V3Z`+a309O zT$LEg8#6VPWd$SM8x9v;o67`4@QTp4r3Gr#L)d?jLI4DeO%F^JkS}p=9g1m&-`Du` z_LwNXI>Op$ASF+PdOQ?*6%Iz4qGX@dfh-T8`VAMhzDg;#&5M2t!f({a!7tv9>&S5O z2EtRQg0A|(l;J8oAfgWLu4ov=P6aaTJH8iLk?PVtLU(WjVvPzQ7&Tr9`C(@o87Uh| zsd9eyKp3m_;XnUM(U=Iuf_&@JNFFA4+>j}ML0y4Ft_%c1t}d_5wwY3JoXv@l$xXDV zLT<*#*VzyrXu`{d*nsH9a}NUgz2fOy+yetc`BHcsAztWPPzHPKKa*{F5^*4Q_{!&3 zn0S?gNvcCDb3(Q3A8v>xG-4?rC)4B*9*{l`mJxxYhtoyZcB=^TsGvIZn1VsZhbu+u zwpWmUi|JI0w17n?-CrT%&G{czO|DM3uP~&AKuY-4JFQP_0X_KwY!+Z_j08$eA=$&u zu?J9gehs2l>G$}31{dKi-2yz@2W`nbbNdAj&JM`*pR9^VlnWrURBjvjdwpQ~r zf&y$QX<>0ov#+NM78f%GujUQ)Zdw_xF2=!|3{9GE&OSDk^+=#hTI%$Dv&1wf(x*t= zVw_P%`PX3FNN5xhaVh>=NYU}|IN`iz~Z)}Kc99DZ3x@RS6vYHyG_K$mV{u40=aN~c=_5JDq0dE4EW56M` zaqkbykT6eJVL<|9t`}neLnF+;5|s|y>r$yK7XYq-^lUpURGLpbHD2rj_S(uKannNc zRp7sSsl4q|!GAbr(6@`yZeRClo3fV`w4x|NI8GSM`C1Go; z!6@yqq`rW#RBf{2cWqIbvYUjVKydm!3iR{%R{K!>|!BaGZ0hpl{W3uA{8Y=zksX>?rrc;#t-lrp+^7aWp+Qg0GK8V{nl|c+U0=zC+?VBGf=9M_mwbVu{zh(vi zH`=T;OHnvXL~ebJ(?vx7_c5RU;b8o)HqRdb2Bq1CnDFl2Os)z?K!d-~2=RO8S0lt% z|Jw7@I+Ibu4*G^3fC=gMuim{89uFmSeMPGZ|5C(U6Oc(4E~U#5qyZ;Y*L{Mj!@~7v zUlZqP|(K7{|ahNBgz6ClXpE~MvEyV z(4bUr#an>=*6CFdGAA@8mwJVbECPQi_ZV{WCln%7_$W9(OAHUqF%r+=YMRAz+6oriEn0lYE8 z!4w9tH#ZzT@asvd(ZWISMqfr_zBKUH)N-#Bu*db|p-O3}o1)vP*1Rb-xj_3(`QT~4 zw(2HznBl2?Vf{Ycl6`3>(ks&*;#j|r(_ik7UNF5G-xD1jW5H&52hRt&5|pN7r3(4i zl5RN-aI>R1fP9oVTSfKD>S+HI`l6EEWm^h8o3i8 zn!=}G=Wt&^y(PkKZD@jLH**0ZBd9$TUcTc{oDf>{48H%)|<51C@x1ZHmOjbmSx~c<)roOse-+|+ zU*khlWlk5zn~m2zhn#tyi3?OzTwM5S$xf0HF53SPz9eo|wa@637$~nH;zJy-`fQw` zx_(TcPFJHK>8Qr@C(@u?>Em)=^0J@02f-=2^O3Z$)#cUXskEdJb=dI*T=cD!GQ&Io zUlq`|W|Je7Gn_x~llc|+K6!1Jv=3H^2yZxO4(V5ml=)tFMBFy_L?Oh<4IfXe@FEtP zcK)`8KHmT5Aq4ZEuXE zf9L1{AieQh`c$W9`!LcU68J4qetor#3vZ6SRyq?XC)?1L3sQfjS13xr5gqv#D^a{k zv?R7aPjZJ8;+K2AF>cnYzeT6=Ox{kDz(`xg*F8s1H(y5gB}rqZKiOQYQXxQ=L1o9g z7o@xt^<`+uv2ea-K!pbTh=M*~I`a z_O1%duq#Anxcmugj06BJN6n>=BF@M=|xm_KUhSJ>ef2!$lIIwlT7N;Rt z23XMs@k&;KhL5TSMLw$Ti|BTG)2iRsORG1~=6l_MC`ioHUeTQ=t+M2+NC30Y05@?O z5e4pR<<7;$>$Pg?^npvNVU_^G>5TJ_?s{tvp2-to?()%mR(cv%VEVg#>O2lZLibY@ z5)*39JGPZCJzrS(92egS+JsBFx6VEXGk*)a%zY0&2f9RJ#z35%bs@lxDc~ z%#+are0v^hXe`;Xo@E@zn~(MK3EgY4{LcvW<#gJ_JH-X@PzDoqcHJk~5{ux+K{&?Eq1J>I}=Z5t^i?t#ptihoN;RF{lQrV01aP#x`^h>eO-Q(hv2XXBFgn*A zEp{R+(Gf)Yo|BmgjeR#VWbDD7TZ#4Rtjmz4q*tv2h`?O--8yytosCE1bx-_810CHk zzSaifEs*;gPwN2(NT+y7{|lc(>+b&R#|!hVWwIFc{Y%d#l?=pEr&M;5{MW#&(jphE z`Pmvs{x3oL5WGQ~K7`zr{*qe}A?voXAe4FC1* zR5kpUymH4cxuuVy__-w-G!DQaoow^8UqHVYwM>$T-ATPz3Cw{bn8^5^W(1&!{_seO zXc5JI9KB4F8pCcW@Mwx&Lp2T;w`*kfTP0luk-IByPVLdS-4Ykir!MS7pGeAlCLys| zHuAC(l`anAiINWZ@Ryv(Ht(i3Bx3Ca=F_?O_LQ#J)(#)?kB!fD{MQ>W(wfz}VU6Oh&;@~;MVg+%fK5-(_WXkY2RgO2YfCr?6C=Xj?! zIkVmx;d9*VJMT_tlyLNd3DFMWXEz~`zBs-s?IDS$z6mbywU9FcVl;?T+`0?<$S|>{h)_qdJ=7CWJ5}^ArCEWcJyDMWj&L{__D7?`z zLPUR>Hf3%_(=)_S7ao`E7K+GiTweX%=I!qbi}2nU-|i-Z}I#!oAt3|FmLG$7c!JNkZrD)x{nCX@L)VOT)V%GM5Wl$3_W z@|eLZ1&L(Wx?hY@3#wihGK;p8?1GxK*gef>@8^XX=j!=vfVYbezOW9Tt@(Fy^GU2* zW~gzBw2rnX{%G)WbP;nVw&O0NlORU`B<5QcUrIUm!}V@n%AGL)F$ap2{9Be5?&_AJ zCMR=Ns(o13S7jC>W&aI%wt`)pFbD1}`F636H{Z@_ZjUcakR()IaZWYSPKA!;3~ab@ z#8Z#=rRk-cbmA}^D~m34On#(4W$@CuNnSb38`|!!vJSvcj~5B9J<0hwcsV_iz~Y%h z7g?wsF~Q(s6s4T26Ii6M`!J|Kecq4QAufNWzjG6s3gz{Gr|~?JEnch>vyK08Q_#J# zg24t!1Vkj~grPD7*VF5C&%z@8N}WNTOXX(avmU`;=3-6Y9#0C)E!p08A`c5DnpVVv>o@PTj*?!)NVj(Vd~oS(adOoW=z z%R@e6TUV;C_Pa-%nTD0drak=y&{H^&^;!^3TSxIU?$#ApSAK$5Q<#YklFX)PG0OHy zsx!b>!sx}m0LTf9G+0ZC zJSydn<1REVyfmb!t^8mrJG6q4is#$`#zQ}5hbJ{~$!`Wi$d|_SFDqNJk=tO#J6Hx^ z)2z9@YFWPNR?|J;O|~4m9lf^o8XpW07exk6&IA+WXyb)xWOMH`hJ5-gEOjrQ&pd4+ty_mgN5|jF4Gwpw z(8xxLo6YAcJzn&zp$|I`ynm*#jwm9a0_G)VVlSJ0^Z}fcCslK_HBZYSU-&|9S6&7{ zVP}3R1rW4s#CxY=RlM8m%MSY8xC?lBo8c#%iQYC{bzD?T``gg@BsfFI#eo2*8jGxD z0krx2GlAau7#%&&T5HPnk`HLKUPZw*c-m$!SG7~p=mq3{ypNBhCrbgX;)xG9OfvcWN4ddIoSg^hlswqMKm>3(c!|vlb$OG{XXyo|-9i;&Fyv7vE9+ ziP-EnS)P@H`!JIN&5B>W)!cC(g~%6%WaZnNZB%~aM!loF^K`DWH~|?sGj+}~U!v+x zOp1QUZHo=0A9p1oUiL$*b=pI*rn5fwS>kdDL9*xP=d$$z{HG&^BIob3j&csO97j6u zg6DtBN#a;NM7YHP06A?VC6ttG;xriQZv}?zJF7OVQepmVvz%m+R06oW_SbAD@x;oK zn`MBnR_aSlcsj;gAd7mAbcnaNX8wln_S$@!osHk8o7>_P=U?_tqjD*!kx~5fVEgrJ zEP|Q+bhI! z>rBs7Yg@3Lrychf?o27OK~A@4RU^1raXP|c7Q@X8QOiAk$HXG3k9lP-=M%5h&+?_@|ExR#%rD4l(LoB$=~{Y z{3g1>D-p~6u{enJY{hZ5kSQc|FJa%k31)buDL{^ajAG&GKYV*z4hU2{LO+aaVVBXC z?oJfUxtPG=Yt6v)Q*4Uq%ylY^@5OI*nJ6G?Z<6B}^S!N?Ol%x>uahOT9R#1Wg7-Ex zM>Bu{HFP>=3#uK&pCQ$t=VyYi7kMx~1kaZ=Xc=NNs_yu^g&8+RSe9mmQa;@~zzlZr ze0!5HO4all|1357pkSNQyoGRg7^6raW0o0sKGJY@7kM3gTFGI}DS-tmq_wdr80c%grXR3^>;cX9MmqSyygEfaI8GJAETqhH`IkLP5T8C{8}zq zdY}6YK>s9Gqh4uSLH#|`sMdXHtZTApTsY1LPT46Wb(n`ACNvACTjN7&2ql@&{vn3H zOB$G*#;RhhGV$cSR}S7g&e-5*zYlY{2#o8hQxOx2+aG-ecW66awi2ghi}|~vOx>9& zYBzA!$BiS4Mq9ZVt<7FPWe~reDdn(Vp==~*@Y;tt91NP?u8s>W%I`^`}0_GdiYk*sAwwxi~5CKw-layxT;VY<L#Gx+i3tKIN&S=2&<5>Y{m)gr$~V0qgVb5Dln~PabS zz#K71*nEFm*2xFg=u64!@55`1raqI_9BwMMOu7l1Pz}1RqzWI4(LVfvPsOPRp))IE zji=8A`B+HRI~{6i3*$B$9)^LTOBT{HJB}udO`PdguWwdK>3s{GnW&qx%+U%jUWHhS z3_YiPwfHx258dYzwkI_c?CKJjTkESDQ2&K5m>D@yr-;hf#;uq@Ni+p~F12}=O^=w+ zizO(zX58SOJKQJK4$(bLDfq|7f53`8iwaTKD?V0VyMgdThA+6NDHi)~Q z1|qfAeF_oRzDG?ppMMJuws2Yd;R7Z|_SIr!WNu6_ew@j1VEU*4Igc+V?YypgJY4#W z!5`NZw+JHzg%{}?%0l+29toOSkL0K6d1x5=wcvRX4 znNbywNzQR?4xu+eRzg&lU**xMA#5dwVTzLnKZ&lY|7+U(^69*PgPite$_M9`JIjcY z_*rzzMfRxU?-=(N5iLdwPuJs*gDlnWcV6v%8?exCjY_tQpblQ^dtUtKs=B`KQs^^J z3`72bC}3G(14;(-FcNhr>dWe26-g=D?qSj6X7P?Mywb`7^R#jAGV4pEdwt3L-M+ivHXv#sh| z%R6a%jK7{&=)Z{ofDoD1yrgBI4wl5QI#7X$b0FH+Say{6R!SG@i62ZzGf=5h7p^}J z`9}$7#T8S#Q^3U^O0nLC>(#rPjbybS-L)9S1O4el22j!L%5_0|6ho9BJTgw1syAM9{!7-`_IOwqIq{ zVYf@pikuZMQu#CWt#IZmO9((bME>8C4F6vN&HwvqIR33Q|Aj1D*v$Xus!0Bq+`$Eo z27slE=?vF64GVl6h@p10J2AXndY_`LQwy@D6|m%PV7Zt5I}QrcDa3aoH=15vV<`7u z>c5ChRpgN2TAOCJ{3=SxLfI-ak6(I@V_ zCd+)+w)PWV%;eKvK#!W&Z$RZz$&7BbjIyW%KGd^~sr%6t7;q&-d6u7HZC`%y%4Te5 zGl+L8o)LlH9g0{d2bd3i93QOlBFxl33}+OFG~F}z>QdTUh(LbMHYpZEp*Q1yl+V4E z@6k1uHKpL*5Hm$zAqtuqdF+K^{W?X=v{pnM^ZqV&J^r!6LdSU2+rGhy*6t^^&wf1^ zFHPMXSIx&auT6vC(gGO1mx1b97Ie6xJ6j?>a^QBj%GyeSg*$jKlKT5_~;3YBju-n@nN#SP^2sFl`ssX+7uj zms=8$;CQGnW7l|&30kk8NYr2njE+9W6tdvMAE#lLW{#(#uuk}f?k7fxgS4!jQ%m?S zx3{^Nyfqf0a{zMGg)(~^I{h4xW-G{n7O1CXZ^kb6HagJ7d{(a zeYEtdE52xTAgIVIPqx8AotpmgLMSD-)b^+^;)Fy3-2xZUv1O!^r`iT7 zslTJYc_7neyxcX=C5DeZ8}Kwrr?fR-Yl9g0EvdG58zuNSo0x>66IY?Qu{$ZJJ%)?p z#rourV0pKq&D_Ht;*iaqttHmSOlcCv9(VvNGhJA+X6Y z1&+wS1ZQ(E^(1W+BFJTYUPNj>4baUUuyTFz{aT&}vZg+s07}^Z%aBHDxwulxWdX82 zEov#*d*6hSc!hf1n^4(j#uJ?!I37_T`{5}~!gF@p^w_ThVZHavTE>Vm@l1a9t_5*C z;L2$4l5KYLse&l<_<0=?7~@_XROL6yK>UF67*AlZGbxYmdwG#j=oztY@9Re|HvQ0D) zXAMUWt!x$e=1!k;hn!sU4%j2Ia^>szuM5dc>T2RC#wynQi6zx*4I~ZwEKOdz2lAKFB?fKCmafm z(mM+;*SxKMw=|RK{@`=n5M;F4rV##;JDsUx+X(cLsjZJ|S_fLr(VLR#q9}}c@p-eR zQz*wiU!Yva+{|xD?~`ati;ABTM(efjqB(j$;T2p>K2+?LNgOXC23bK|A9oes!Xle2 zE;CoYWO7^ghzw{5msE&tM^4pc1H#+2oZ9G_g=D6#uBvF}Xu-la-~olQWC! zbaW3{*Psly>fz_EQ{Ck76p`wbKyjj`xyrjmtfrJJZE7}1A|^B4oq(QjL*91V;K%LB z#xU-n!!H5xTz|6dAqmeoBz#4AKGS>V0ya5BS}k*C92+OmY>ZkeT8SNbGp=ez9X#QH zbqMO}CAoI}6C>m!1hH+-3Ss1M^*+L|`5gPTOP~{;KzCoCFF0)$^b+#{n3t`gx*6#C z3jB+q)wZSX*2e(!cEj@T7dY7?a=rAcdbuaHtuJV)jCUrxHO@FNW@VHt^T>P3 z>DPhEBHlL2Ngc2Kq8h@uG#%1e0l@tqj6;NL8ALh)D0Xlw>LR$2cQiPrfwNFrVnA3W zsfj+Y3xeo%b{-A(W1>c@878B_(w{0B$t$rdeHvut!#5*TyatZE&g?fTvJQ7uPsl%f zGK#6~q}9BwWfqIcnlCjWGKJMXoJK{viWYL)ye%w(#n>nO^2zrQP6E!1K7L(V7g=-0N)M=puBXyDuR|yno?Cuk4Lj3Gct(d0M zvn|Cip!98y?!T`Za~YT+-qOpyC46%c$omKV&kn&y{@6h7{!_`H_O=$qf4impe|r-I zY}@`{(m(u{)g%88?UB(3h1*!5?D)T=PkWD6+rFbED#U01PFU4Y6UHSX1Fgr7VSz;! z2yEmH-0tMszxOKm8hKpkwtv6ipsi))r~;C}eus8hx literal 0 HcmV?d00001 diff --git a/attached_assets/{63A69204-8F29-40AC-811B-7CF229C0AC08}_1756802641364.png b/attached_assets/{63A69204-8F29-40AC-811B-7CF229C0AC08}_1756802641364.png new file mode 100644 index 0000000000000000000000000000000000000000..97d8c4f6df60dbd92b5745585de42ba0279a0444 GIT binary patch literal 32414 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 literal 0 HcmV?d00001 diff --git a/server/routes.ts b/server/routes.ts index f4fc60c..c7bf047 100644 --- a/server/routes.ts +++ b/server/routes.ts @@ -216,7 +216,7 @@ export async function registerRoutes(app: Express): Promise { // Filter suppliers for DLC enabled only if requested if (dlcFilter) { - const dlcSuppliers = suppliers.filter(supplier => supplier.dlcEnabled === true); + const dlcSuppliers = suppliers.filter(supplier => supplier.hasDlc === true); res.json(dlcSuppliers); } else { res.json(suppliers); diff --git a/server/storage.ts b/server/storage.ts index bc97d17..66927ec 100644 --- a/server/storage.ts +++ b/server/storage.ts @@ -68,7 +68,7 @@ import { type InsertWeatherSettings, } from "@shared/schema"; import { db } from "./db"; -import { eq, and, inArray, desc, sql, gte, lte, lt, or, isNull, isNotNull, asc } from "drizzle-orm"; +import { eq, and, inArray, desc, sql, gte, lte, lt, gt, or, isNull, isNotNull, asc, ne } from "drizzle-orm"; import { getAnnouncementStorage } from "./announcementStorage"; @@ -1511,15 +1511,17 @@ export class DatabaseStorage implements IStorage { // Handle dynamic status filtering based on expiry date calculation if (filters.status && filters.status !== 'all') { const today = new Date(); + today.setHours(0, 0, 0, 0); // Set to start of day for accurate comparison if (filters.status === 'expires_soon') { // Products expiring within 15 days but not expired yet const in15Days = new Date(); in15Days.setDate(today.getDate() + 15); + in15Days.setHours(23, 59, 59, 999); // End of day conditions.push( and( - sql`${dlcProducts.expiryDate} > ${today}`, - sql`${dlcProducts.expiryDate} <= ${in15Days}`, + gt(dlcProducts.expiryDate, today), + lte(dlcProducts.expiryDate, in15Days), ne(dlcProducts.status, 'valides') ) ); @@ -1527,7 +1529,7 @@ export class DatabaseStorage implements IStorage { // Products already expired conditions.push( and( - sql`${dlcProducts.expiryDate} <= ${today}`, + lte(dlcProducts.expiryDate, today), ne(dlcProducts.status, 'valides') ) ); @@ -1535,9 +1537,10 @@ export class DatabaseStorage implements IStorage { // Products active (more than 15 days until expiry) const in15Days = new Date(); in15Days.setDate(today.getDate() + 15); + in15Days.setHours(23, 59, 59, 999); conditions.push( and( - sql`${dlcProducts.expiryDate} > ${in15Days}`, + gt(dlcProducts.expiryDate, in15Days), ne(dlcProducts.status, 'valides') ) );