From b68d89670c6f327f0adda4c8085fcf39aaa69f17 Mon Sep 17 00:00:00 2001 From: SurendarSuri30 Date: Thu, 5 Feb 2026 19:15:46 +0530 Subject: [PATCH] new hr design --- assets/hrLogin.png | Bin 0 -> 1323962 bytes devtools_options.yaml | 4 + lib/branch/branch_selection_page.dart | 218 +-- lib/claimshistory.dart | 656 ------- lib/customAppBar/base_layout.dart | 29 + lib/customAppBar/customAppBar.dart | 33 +- lib/customAppBar/side_bar.dart | 306 ++++ lib/customAppBar/toastHelper.dart | 7 +- lib/customAppBar/top_app_bar.dart | 177 ++ lib/email_verify.dart | 772 +++----- lib/excel_verification.dart | 1434 --------------- lib/hrDashboard.dart | 979 ---------- lib/hrHome.dart | 4 +- lib/hrLogin.dart | 851 +++------ lib/main.dart | 54 +- lib/postFileUpload.dart | 1262 ------------- lib/presentation/RaiseClaimForm.dart | 1494 ++++++++++++++++ lib/presentation/cdList.dart | 496 +++++ .../cdTransactionDetails.dart | 618 +++++-- .../claims.dart | 1057 +++++++---- lib/presentation/claimshistory.dart | 1590 +++++++++++++++++ lib/presentation/excelVerification.dart | 767 ++++++++ lib/presentation/hrDashboard.dart | 490 +++++ lib/{ => presentation}/hrPolicyDetails.dart | 975 ++++++---- lib/presentation/policies.dart | 987 ++++++++++ lib/presentation/postFileUpload.dart | 1220 +++++++++++++ lib/presentation/preFileUpload.dart | 1544 ++++++++++++++++ lib/service/api_service.dart | 197 +- lib/service/file_upload_service.dart | 70 + .../hrDashboardTabs/activePolicies.dart | 924 +++++----- lib/service/hrDashboardTabs/cd.dart | 14 +- .../hrDashboardTabs/preEnrollment.dart | 748 ++++---- lib/service/multi_file_upload_widget.dart | 226 +++ lib/service/svg_service.dart | 60 + lib/service/token_storage_service.dart | 225 ++- linux/flutter/generated_plugin_registrant.cc | 4 + linux/flutter/generated_plugins.cmake | 1 + macos/Flutter/GeneratedPluginRegistrant.swift | 2 + pubspec.yaml | 5 + .../flutter/generated_plugin_registrant.cc | 3 + windows/flutter/generated_plugins.cmake | 1 + 41 files changed, 13115 insertions(+), 7389 deletions(-) create mode 100644 assets/hrLogin.png create mode 100644 devtools_options.yaml delete mode 100755 lib/claimshistory.dart create mode 100644 lib/customAppBar/base_layout.dart create mode 100644 lib/customAppBar/side_bar.dart create mode 100644 lib/customAppBar/top_app_bar.dart delete mode 100755 lib/excel_verification.dart delete mode 100755 lib/hrDashboard.dart delete mode 100755 lib/postFileUpload.dart create mode 100644 lib/presentation/RaiseClaimForm.dart create mode 100644 lib/presentation/cdList.dart rename lib/{ => presentation}/cdTransactionDetails.dart (62%) rename lib/{service/hrDashboardTabs => presentation}/claims.dart (70%) create mode 100755 lib/presentation/claimshistory.dart create mode 100644 lib/presentation/excelVerification.dart create mode 100755 lib/presentation/hrDashboard.dart rename lib/{ => presentation}/hrPolicyDetails.dart (57%) create mode 100644 lib/presentation/policies.dart create mode 100755 lib/presentation/postFileUpload.dart create mode 100755 lib/presentation/preFileUpload.dart create mode 100755 lib/service/file_upload_service.dart create mode 100755 lib/service/multi_file_upload_widget.dart create mode 100644 lib/service/svg_service.dart diff --git a/assets/hrLogin.png b/assets/hrLogin.png new file mode 100644 index 0000000000000000000000000000000000000000..e494a9e9a0a2e179c5224ebf682e37180033d53e GIT binary patch literal 1323962 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

?pyuku<8N8so-v3mk%323vbBc_cJ>L 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

S!XZK^bpNCmGi{(0a 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

  • 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�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ȚFB9;TX{`eajLfL~z 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 z z`0N@^v;DK~X23*iwiym2jV2mq9M6TN=B%aK#31rnEbYTTPex2-W)3ih@-%Q;> z60h<*_=o!m_#f0L?7y%)}fvB0(LGzd8h< zJMv7_g>vpFh&+-l@YK7%Rhct@S>a*Gbo_7MPRdE9!KnC5=y(XO_w6nqtVC;Km1GCirZvglIrg%1^2Y{9Ct zO*rgR`~EZ#Q*omPk0pktM2e-H6vD;__FL_TMFWI0DGZYo+vE$wxfG+dW*GX+p0%FI z8_t~H%1&AEb2WGJwg^O_JUyPn#1enzb4^G*rOf1S&22v&k^SCZ+C>s z%O{TdwY9+S0{_WtqIFinO@pwURwZhW7<1Wq__=c2#duN8PD#^J^o!C`Q!V}`2YvNx zbE67c>FjB=ind8AJZLc54inhVJo#<;)Ap0sX9$SAckaroiGHV@<7d+*qGMSOF4^zS zUoXGA5*MuGo3AiW4NmucR?xj!Bfr5g<6l-@gb47uFmgHNfg%Barl8C z4;ba1CZ83PoXyFdCuT@5qd)s>Oi1W;9m4%w%EH>|M|Y@Sj0*D!LSa;;%aMqFQDA7m z=>n=_FRd@&{mNmitW2SQpu%E}mL|i;X`Q2M+YbMBd0g$y<*xhkJY#(P{yg`?78Vmn#neR}rIL>$tYG*Ze=P_WxF4pJ!0 z!99!Hq8+O71T{I9D|HFlUh>5~TwTUmAZKlSIs6NJX<6NfFRd~2N+L@myM6k!m?*LC z*nhd9=at3qhx{EA7EXP)Bj(BA+T6_fO3G{m2Cp z#GjFoEC*IsK*fbf)^z@Tpf!hg{t^psnMHxNj+2As zI4eD1T`AB|j_1#ns0ttd8r%r%)XQHWs~Z^BTxdOOE=6Q6FW3?F(T8joUA%et``hkEYuHH1>SO%TuBMg|>Z!af^{?}}I&rUeH2|8q zafJiqp-!Q{JS3!jRtOL~?AP^dPGg@>isbpnRDukhjOY{ZO`GV>jV1cdu;m&%>q=Ih z_`9m5Us`(Fd^rH{f%Th-9Ypcw$hR~Yn1KJ|WPdAC~WX1%qh5$@KZ>AWx0GWGe+esiiDOmTChi0+$2;U(P={Gd&MQcFjCFT_4_b>DoZTG7 znjGILzD`Wt$2EL9friMT0Cz~&%g8y>or-$msdJpvNJ!oR_^Ms*YoVjBbpZvT&kQ1T=24&pb?*#48NFx=aWaj}T(p_>UT0#?8HTm^4= zOr?o)dseKH!+3j&%FIPq<)8?-$FWK=6TNde%CrRmeg&u zjJsZXQ)HD#p~w%fJyb59ysdNEWiZy(m{SuRths)CyzL44e)PT{81zv5r@X+hiyOYb zqxecbP_!dvM~)I4Pt;G{u0|0962(7ZEr%N`VM@|f=T{aK{3AqLeM4ys%IJ zpB9agoy%ersRJ5N@5%i(csLijTZh4$PkRQBz}uR}ssoi%L*=NEym(GMo=}2d@sSOV z&u*gc9nRuupHuEqmYN_hf69l7K5<+DA0+*;r5u4Oyg|+;uH}Nrz^)G6Zh%*ti8?@4 zH7+{u3ulV^DsBKiy8O8v$)cl)QvbW?KJ2_6x=K>~GwuL-*6p+n!&8PX9$C@?HGnU+ z!vueve+eY?-5t@%4O=hWuS7QmkTYsz%Cl*a@H;1prQ6Lmx7^#uR~pa{d)HCu zrcj=I+UR(})`#z?6VU}sszV<6b2A#)mV3!Er;mPO#P!J`v_Ma_AZ~j>*#%r!?bXK_ z7>M5z#wGRcxP>fD>^y_SXh(~rQ;BRVOEc00x>nD^gC2Lv1iG~++Io77w1SVCO_G4C zuk!^Sl>EeFzkz?MeEpsyGvYtnh4H>Q3yZoYNY}9iBlJQ)H(}zkNe_VM{0eil3A}F+sG${aX_j z!abUAwlTWXPvz`5HWiQnkL55tLbkUusu`_gWtF*T*{oB`xKTmnj>X!*Y0`cz^Wb-0 z`{D9_G9uV=HyIsqOFRSKVgG0RaRSCr+oI6mG@RU59sD+HnVhF&ioNfDvzG6^Z0GzP zZYv_%cP=~V7TG`7KxIxr4Hd~m_Xg@`#Aq$(huUVPw7^i^kr;rvTd|ztdy;P4&N6!^ z{o8fhRs@rO4ZUv*l0g1ft013?;hcY?b#(6}VHySuvtcL*NbAviR_gEp?W z_jk|P=bb-bJ?mL>)tptM#u#OnJUZaD6NpAzLW=}4hZkK<>H05&q3Xx2W-?r68aS=wA&7^wWX9@&Z~N%V*gxP4N;SkF#tH~{(YgF^X>bI*jPQL!Q}xr(RnQ{5yW}J*%U(X8<1~R} zEJoiyL`r^ua((evP6l^Wh}v1xN^+oJ%R-&Qq(rIH?A`2Lu(#38a!ZVxD#B$Tc(G^f z{q4nKguK4QpFy&!w7RGtbMTj6JzpF>;33A`qFN40s}O2fdTvNl%8;f|cDt+GPm`UZ z>$dB+$<+OLzFiM?fEw4eR-^h`@^rYH&-rL2o9p@A7kln6y{7iudV42K!_Mgctn(;- zx@o}!I(K>3RCR~(ez(K$pAoTK5Xn#qysWbXeudtm0>SbkO!3dwKf38)EFl5I$S-}o zUn7;3-g^~)h+Y+A6N>Qj8POmUT)D!AmIQ2jZBeq*+O2iCIcc^T@8Hlc0maBIY8#3~(WNyg|My4`^*pct z8{e~P>f3aUyS%n+AMs>Y={!}aaCziLbM-;9efdnaxL#6G3r^_L)uea|`mln&5sU%k zoX$uY4cvN|F%#pTl$3u5zgG1nw*2~yd97c~pPd-K18!Y}vs--q6Z4$wx=|qQZ&!w9 z!A&bl!m*vik4dw;&ikcGE}QtZQm|(^3Co7K9yYh-!HH?GuDJr*8 zpNIYk4YV6uAhgW@jmfv!S{yl4TTgYN$S*)f>;tZjeIUgXRY5Qw@Pvq5bnmI zR)AQ-s0IuuigAjZ)?4j*+@0s%!2yI!E$bX!oQR`k>b|ea{=L`%>-^Kt9&amS6k$40 zFnH8%%(KNjT;96Wtq;35dDq0ZU)&!v*C8c1W!NuRx%Q4V`R>k=IZ zUTRJJs3X}Kmoxi9bCCctxx{5#>@hY&-0$OVYTWR=0Kw3LjcBWbh$u2xO~V?asGs^d znH3@JP;cO;Y)*Ru$Vhl<4a${LbakXD$fDs^n#m)td%7&un_bkg8&LSz+KSj9fabE6 zJCFrHNcXXG{vHy3F=e)UJ##x;3FA3-vU#{o&f_c$%r`fqIL5Ty^bfkVP;S^UxYgX4 zlQ+~ia#m7zv>R5{*7$jCN6KeLqC6IozIxmS8a*%kA4)PnZM0#DXsJ9)jo$$^dmo)g zpO$~K92!T;`t;)x=M@h&9~`H&vtFHi;Pwc|w@!QdpHhcROc<0U^BCWZM5q+p0Nr1P zMkfQy3;ny(Cf}nW#{PVB8zgwP6V=40j!r{tfZ2lT5G|>Oep-bR5GD|%;Og!=Sss~F z^ljx%hecOXx^Olp;k@sv2Dfbtp7fz6_G0}FoK(8~_?}80(o`Tv1e5_Mg0LMI=A&HW z+0?#g@Nm%-Hu!u+C<9`gw4}JXo__qQq*4ty-$*juZ z$6b8Kpuc}5?kjOD9R*GMd+023>6u^^lE=un(5%aMH=n&KNQ&Ug#Gx1)n|6Cf4AP44KQcNr}sh6NpLk%WxtlM@U0QYH4*$EH!%(QfiK zzk&I!u?oe-90cKnuQ}>zVn%L7F5=FZi!d!GM0t@kdpIi0X*PIdD;NoONs)}4BqL~y zCJDVnA4Z6)WYO+Y6i!z7Z6st@{{9W$qOcnUvOnH9BVPZTw!T>FzY{4g+`Y!a%G&d? z$NB=fkrH{BIdObmbiCJ?sz;NehduH?i!_?@ZCB^;GpGq0O8(}}l$MLDwHb6J-Pqjc z6ZLb%MNf#EBP zu&M$PjrU-%)UtK<0?{{~Kq(r7K=*3Kjx&sSegWl=o)N9RX)n4}Pa;i7PE^VDj^Vm( zAt{qekHz2!L|m<*0IRvZlm!U>!bB;fe>5P}2hE;caGYba** zaAp>`u|nmPPu4FX6TVw7BrPge!d@0$hGDEz36Fs8efhr+o>gbeN3#s{@XQ!Q24ERc zFEkcLf8u6pdtas%9%>D9aShXJ-6r;vuTCtNb8UP|o8O&O{z(K)OZr!z3Olug%?QHm zNJ~)QiCzwu4kf%C^3rXepSr?^4dlqd%*T)M1KIX-ckcPK!}L`boC%Dt_f zdLTZ+Omtr4ysR$HU=7q_vlaw)7(>I5D)2HPUEVcnOxmCo+B<{|Jls)|F(=>si(-1R zTVubu;n19!n|$rycv8(u;cM#Fv0&0s&H8%c@BNBFPt(Nb>y^eNs`8o0W0X!HbjQv zgDR#XaV-$%h)c9;=>aF&>O#Nur3x9?HdRYhJ9YXZaOO6m**A#rvv6+n3gl!wt?xjy z0sR!pw2)!ag$kjI77-;f9KLEPE}{kZ5)ZkGRsPg*|AC*as)%Pg<8Z##dRzO+AVS`U zel}NoL-2|FkDW)Y^99mkeFRa~;byo5D&_!$+5V5$Rb5%iaorDsz?B((^s4U|ZdI_K z`Mips!Xd4Yu|Ec-Z5^3&9p0n$oeuDim+GQ5)yHy6kNmenp1dpVAB0F!^r0X2-WL(eS8w%6UyE%NS#CshVc*nvjFs*Z-qFY z`IH-WaUSL?Pp+Wh?NKV0{$QG&xCrJ6tayWBMfMcrO%8*{DY?zxO!RiFPjR!$hOz>p zn1?#naV+H#V#tLx>{VS)27pbnmaR$ASahH4Uaiqd_sQK7J@lNESaqSr50ta03-h2( zuc{j3-{qNwNZ=Gd!~Pe7t7H8|W_#1V(Si#!b?oN#M-&I%)^Cu3Muj6(r@A-iRub-M zYzohOADm5{;slLmDBGmWnmd?(l za0T(UKmT-o0EnL!wUj(vk6d|uIGTHf-`U(6l2w`iSW|tjBS6C>SNZnB_t46ysnJ&M zVOqTrB$}}l@fdGpBuM{DFy7D;!OIcG+OIl*ck(rA@0R+Rm)ocRjV+%rF^C#GgH`H; zXM)08RnSQY0yQbn^*oYk3dnhDDVt_Ltd0q1<=3d2x4(1o;VoE(6F6&!#m3h4C&+YO zU}Gz+)4^+iEaNxIgzR?gJJ)UP!1MBoh9^9LUD8^<|I0%a9j3!S>*mW&O;Wfm<5r^RqKf(i$|r^=S@BnpsC*jOy{>B~@^LmGvjl?X2{((b;nbyy+8wdd}t_mF=-+tk0zj<8km zc58?I;~^;Z6BqtSm|pq-E@nU^n?5`Qtl(GygQJ2xT+7kDQW$!o!>)=L{fi%u7S>PK zpy_p%Xx{ihqW5{06UM8-hp|JPtL4oNE{3Szr72{$_i+R^kDA&VgAEgFPSt*(DEuuV zL-+PxQr$_r`BbR?@v+I%1@G2EHW3R3{GH1lP+|?cM_#yy;8)&2CCzcLAfaJUUE0Z7 zW*tiy6E41}uG$TlI?7YrqQNUo-H&hW2e0@>Xn`Pe=PL}@IyO@k!X4|Q z8HkF*UAM8MW=5>K)PuI9}_vJ}Lp*TD0i@?yHJ4@%F4^JJYN*Z_<7KTifFaJt1ZD zf9~P3@P0b@?>51~k%oqUaqM=3NMsL&BSVd+d?H9#`muR6*M@z@z9A8(EFO?S0M z3=Cc!Wryn~GFs-<5P*zh2TOr>d{ZxI=&X`^o`3%^o}=Sik|sGX`6yV&y&Nh<*lSzV zGifh87Bn9a9O3k&fvv`n8jSK*$iB+?D2LiXkJOCQAM?~_M`M*xLc)b*lAvG~hpU^w z(^(h>L(!}!VYZ>zmyF|TEjA61!qhZ{d`el+jk^my5&cN%wc*?qNBZxLQMdjwG+quj zitG|Q2%(s24H=4Qi18bY+drIRoz*)2;Lm`Os_g*^3870mNU@OV|fCeCK1OY3Rj6 ze&Y(Zg=kGJb*Gu$C^T&FyC1GtoY+|(RjhECPbe5@=@|ix?oDPBtoC_VKmEHiKRLgW zO=r$W|8WBWGI$NSjf8)TuDR3%Q670shemkDbnPZevz9nEhz8Ndc;ZonlszjiHZsX6 z@N3`W9?ohj2-?tb$r2ttK$N_`q8o%mmM@$XIB&V@l>&2~f_MT_r>;y$o>p{BHJs@y z3dqzK?T}}=QVF#xq?Pm|bhV}z8`U41nllRGxY6cku&4J9=-FXD(=%}p@VILcpJ#~_y!xaMbBw%A%?zNCZ^Vr z+0Ci$i_)P1cabpjmi+0f`gJeXX6uVnKRVD-WAER*-oo4B z&;#p;ya*ZrRvt~dVh#Lo0##wsjQ=cQ{_HP~3>JhSi6Y*Sao%M=-H8pYAJWC0bNEN9 zd$y0eMN~qos_#E)$W&GoXuzCTB5XE48a$5r9VR;#usJ%HrB96vGT9~wYxju2RF~9S z#hjbd{e_!+Migku8Jn6*qiRH<^DVvHa;hAmsPL>I3+Na1^J25fg?L#Iq`H3deVkU8<5>YMn!2RD0fkhoG&wdLFQ7*mi zX=z6wslJN_u*%L|pvP4K`+ilNPspS2dyZk4(fK5rTGeDtG9S7WdAXaF6@iVutnIPY zewE?UNO@Q(tNkti4F1Pf*d};#F#XzBOaE=$ZS?cowtP5n7E@-nQcm|e+tzAT*Ee+K z$hCae`*1wZp|*ScPgFi&D2SuIXo6cbOxWdMS&N|)8I~E21y30Scjy|4>!9V#)TD&X#eX^oyzeWt+J_Z zUVOJEaI4}SzU3mjPEcC4jnLyKr!1f?ME7Kfq66k>RVX`d6XqNjpf<6Ma4W5k1azd2 ztw%T;8v?L6cOrRd35mGyow~<;8k^zf-wKha_3mD{W&5O;lqDs7x9~Vb%s2dapiYD2 zc0)1EsB4o|Y)%*iXv%e4?xudOm-9YC=bFQYk0*gsid-|Q=@A6}RF_b(FScGp0guX+ z&r{=$bOLF+(N3#*Ty`R1vv7sZ5D>@E?Mq6XAI!*SABm=ocp|W8^`u(W`4#VZNi5rK z$&3?(YQ4HsL}&Jv$x?n_l0?;&0Jk zo}MU`_D`BNxD3|!BtpV?nin0hBGodItq-OzI%|&QDEYcSwyP!F-f5k2vg){*nR(*i z{>Tgs_3G(aG0?9{zt?L$_;)|H)YNjC7RgF&QyiF?clxh)#AV*NyRp@0#_iFl*Zk6+ z`=AT@PS2IRWo|HIzKbXWE00BsEWK5N7I%jw?UuL&pkK0h`4DqPFUDtTpAT(b@}~-< z?kS17S(Hv%m6DinzRP$NCV$UX=0v(0kb!+9S{~g5cQzhXdwqpyqp{`~x4(@YHGiu? zBQZ)t?7fMiC|Gbx2ri_Re8rZ>!C+^pG2hO-t*90{CWE_`7e-Qlv)09{BaM$ywl;c| zy=ozA{IL!Bf>&90Za;kXT*J}FCjtp|ON?;$Uk$URYgZWr_QEN1CYuZZpYj87q>L%c z9nkCzfUEV?T9vh!b+O_UY1;o3L_{VczaA(AQs<8Wbzb9}7k4prA7BPWaOd^E0J{w% z*1u#~RhIc!QmrV_y#z^Z<>wAe#!?totSu43IcLMmZ_YHCANhl4&@m-wBpap=%M(!~ z$-hP@Nl~I0!V2Q8T_;I)a?kK7hl~Ze$NB`$VD4btU}Ph#eU_@7YSv@_y4AmqJRQFM zXUq2cXj(@O&MqF}S6bg1zacVTrP$R4tKIBj|f6U{{lTw+9j zf^L{#AkQhPIy(Dw+96b!^<%nl^;ec7+owiX35q4vV=>y|X0S1_$ck3AzyGDVhi}iN zIeE=U3cCX)_)L+4OKF!0GZB$j=>JKfHJm~rz1p-n0yH3=le!dBDQZ$cRiZy^>i3Gm zvF--XqfL*y96MpHSeDCii{p|JR@WTfOV2&enQoffHE%93duK!or-`Qzj8N+&v@n-aFy6 zIcjNAxSe>}SKOSjCRUWJ4xCZMR??n4Pb6b8%6W^an+4a3)vwp;pW;R#6jS$YAzWji zvAbLw9)ia+K!`ukr4a;K;t2E3=^3_Fvw8r7Rw|!JBIbv4z1h83t|suq{4mxQeI@~b zPdP%dG%AGQ=mIT**{n-7Xyxg<49%jyr|)b%SStWpl{+Mlw`E=G=<{q9cZG zgA0rOTM`tCtEd8{>7@k$!8^%1Ey7sYx9y7ZIx4xCsjx7!_F(9R3L#4(UPD0Tu8zCf zBBiCo3kMp1OAv!guvgkF4R%RKAw~o{Dh7 z6twVOzFkk`QpwZDe$6bj;6|l(r0Pz0hDEirx&mePMDnQ89d8f5WZsS(uu@_Po%Hd=XT-?U#v$>> z-;7=_RUuJGu+QA>@-`Ks@q-iNj=MoL5nfMj6cNhB<;7_z41%!cHC$FSz5>R8r;6)w z-@3g)Yb*-ZsWE0mrMRK%w4OV?y*S{Lu_5qNZQnz^ud^?R%cfs=Q2r<2xGr|MFLJw= zqKiM@(rY0c-3yzT?Aoiu$>2eY{^Xp@p(eTq21+VzRHp>%_oJOGSA_L}4*2r14*8m) zVbMz&{O1!iv;qz2hGzeqW9)u@u~|2lV0ltTGZah+_e`?JMtpN)Y4r!z>GPuo9rxsJD99;E(9?hwGK!L_RA zn#`u4>0*om<&DO?coJr69~^r08D)>gtbmy^cnO+G19!lYoIP&(ZSK|wK(F-|fp>*|XU@L3BcK_Ck;xh} z-Sz}c`|=vhYFq2G+Fds8+J2H?r49Y_jYhEcchO*%WA70BKJ-O%~0!SUBP^EyX~#;g580z*Wa1xwlA*} zM!#>V=!>BATT!~A#cO#=gDkRPO!6fUdR)D@KAapRwXPBAhe#v9-Th7TZq0$R0j|rs zuxKT`vTSDS$7xq0SEZxMkZrZPqc-n8H!%P5*&dTT(_i)b{SgMVZfSMh(T9Fji6F zSJ5IhrWHCRcgtouEcA4>*M@<(a6Vrdu%C3fwd}Ho1JF*L`pwsKGtl&_;ygy(uCxGz zJXw!iG za@C}zR#oY4-^UwPf@EwEWQ}e%Wf}cMbP1<5YdVH74@;iLB7z8g2(5EsN zKa6Wo!C(ffxo-j3%&DMzD-!u)vIyp3g1n@_7Ax^3f%OYbw#D*8R+;y7;E1Tc3Yt0fbyk?mfEs z>o-l4m2cyfzBpgBX6={783CUyUB0e^q#$|2>}DFuHuKji!h&uFLMGEI;mWMV{t@Ne z(XCQJd-SO{)WdAcU`s`R6gWdbXwam~lE0Rmh%T#Iu=~Se($HM+HMPQt*x+_ZO38U$ zSzcvDiMyYN8msF=eT@%lg_zGLS|P&Oy2?jt>U@$|BJR05>n$1=Y1+vh&msBL%o+4h zqqLuLJIdi6r2Uq+4_o*HJ7e>!o9Si>Fq+B8|GqFXeW<3u_j4lsk|HdHP zZ7IOEx~8Q7e{zgAQ9H)-0LfGgzNMpW&R{p#e3=;8m`TEeX^WEqr|AfXj zQCXxkH%e6i3s@%EuzDl{F`{yiWL|2o4wF0POX+T#J)r8F%jT1lPBmN>7VzP&!(=30 zh!%c#&age~F?xL)zHONGr+$~>2Nr0fLeA3G+TcN3ec{TyOa1#D5MN(^Q1q+-Nld8C z-(0USrcTi`USZhmNS+ljD#s`^$ZLIcXZ7iTId=bzbl(}BaMLz-@j2d8K)_wc1*=Lj zT0+R;Fk$?6Id$DZTcd%G&i>j<(}pIAMp`C{au?krrc+sDCeGBcyT|uFjW8M8PpG9n z^2FX$cVW;6Mae-Hc_&xArMm`~#>Dw%;V=9+r#jC{v)er8A0y;MWg#gS@UIl7{I1Sy zT{J%ubFgMwO$Ywodhq$s`E7Hf!f0roERK5^wYA5?qJQm+ptieNl?uj9QD#wkw)EXU zCN`ROCu($>6aJbksb{V`yyi3A_N@3AJfFR8i>y5l`oC_r`0s2!-e!nAoosIWAD{^f zl=DUD7tls6d-iJ+%X+S2B%|CXcKG}pBq|AP@<~svnPMwuQ%s3F(UfqHf@zYwNnR2} zP>wmtUDovoYC9Idz{o!!kfQ7Kvvqa>3yqzWSdbmqFR^tJEi8vy4^DM zO+^3VA+8q2&Cd(C)ae{W;FOfIk{YXHf_1mT0;JM0U5D~NWE(q^T}Vss;RwuzSiB17 zkCsQdK3X0B%(zL^cS4_QZ1!Vfw=nl5VqgGIbl}3Qjb&^}V{u<#3M#Q|s7;TCy%?(V zg<*>&5;8aP5Fwu<;B)O9x5Hdpp2l61lk^^J2I2rR)2+CA!6>*Q00g2d*s}TKw&%B_5@_WJH*e>vO53n7;+{H zkvfyH-~iKETzm5obe$8xtY0wpvb@x`)rWVLRoP*r-?3vm`F*Y$;z4)4_ihfVk_+nX-cGhN+OwE;!&V ziQVeqr3vo?%SeX6KE6FyjZf2K!H-6!0P&fMil;`>QL?ZylMH3>xSC#p^18{PQ^R>< zd-kEV?bJTC&%P!{wu^=M>szP}kIV7qmKEV^=haNs+A)75DzVG8Y?o_)Mo9-{BMb}T zSNmAF2vMf0@p@TtsLW`doN2eyKq7zrY%_B2Ngc|i{7yV#&Py52P#7!O{mIA8X8*6` zb}t>%@qpyyW~Ssi!|sNBoz?D{0%mY6Z14%hDOy}KZHd3d`FDA-@#?h?)o0(y#cbzI zq&J2P`@E709pvL!EG#_F`$?+Go0(Oy9Di%UZ9~~86i&z#01(IkH^zzR{PPu&+;S-Dv1(7=c##{|ivIx|X20_+zDo%JRnQxfCWR6^G|+%a0qmYoGK1ECN5 zon0c=byGTQC#k%*QRr5vY-@vYT&dC3zHmA`3f^tYC+@;D_R%}Hlj$wy8V0OAuX~I0 zU>6;Yi3L2PbFJ3{(*I+8rKXZo6`zjtfw=xX#1G#^%d_^aAg07;xuzmbMp>Lc%!Qv# zbZ`ZFV$i*1qAd3(O}Ttik8b9oUO(^s1(V8IurHclY-#5jRemYO_&nd6ZfYw6>6L={ zi(Q186dS!Br@2liTe zLVTNx)28h>$$xe?l;l|z#MQE9Judh?JIs=LuyG*EJOT&|1ET0X+y`&8IEx_c%PmS; zV5v11hZypxy{5ET3tdI=goE7u-Q-;{XqSk2Sgx0pX+<>D<%ZXcEI|!qbP6UHWYYG} z$;>mQ(XcCgHe^t!HvaE~pApMOC=1C?H1HY) zf5b9Y^EE|ew%S@RHNW^)=6A&^c)xBGL(Pftj!^A-I#}$<4+RZ8>N0s%g+CUZUa`Pf zYq@x&#~(Z!CFiopS4;`OMgl5)hu(9tsP!>zcC7}pemxE=dn>8XO`aN0y(-Nm$4H3y z{h~wW*ckEi1u3P~e}fHfOQuacV)Z-ijC$IzOi__9c1JRmeKZm=gFO+8`g_>XiKkKA zuSP!)g0Mk%)So$8&CZpL#L!pq1LTkJax z;iT<;*=PLoo;9hC?2IMNFVlg8XN6{If$eiwY*nmiGO1kEA(1|myre04*LszTM=3rG z5uJfu?A$nhW4*WQ@u=-q$qrrT8qA}Oyzuf94eQZ~D36d6&I`CBuxucl$gd8xK z;^gy0PdfU1TXCTgwIpc{yx3L?BKarzPhN6I$C`7d z3C6m)o{X~6@U=fwv<)?(ES(oO0Zmujb}aqdv=>DT46AwM^mxZuyR9}meLF7n?Eg>3 z8P2Ddx5PU?$rRSKD`S^5fU4SN_=qp3Hy!NwIpyj*hyDUiS2^AlEYpM~c;=W4d%!%} zw-KspK?qW5%R9jFUTD^1Y-D^FZgE)+K&RZkczctthPwCtn0p#&2gMmfZ{zv%7#m`F;8jA2f zqy1#)nVw`K?;MZeYA~`k8jk(yVByvk!D&s>#&WhmekVK{ESyj*Pdz6QNiIBxi|HmQ zXBB0L#w3UME7ZgA+QnL1-I?)Z<`bNiwy&P6!>-?6qSGq=0PqoG#fr_{RzJy6j5F&>nCB9~(ZqtSBTfjYSYy_)0ILDLlSPe(CrAR6-iRq(+WE5 zqin?J|2T&aXrC!R1yRe z#q;qrti20%!J0;N;>l1fLM!j@RRf52xdYGY9g3RsZaQ31_)u@CNml4`8op1ItQx3rl9|RmK$Ix2w(^c-mW2bQKeNae(g9%sZTige$+r!!cc9 z_{$(D^-^V4pOaL7#l4!xa}9Z9#`pOu*jA%xpQuG}%)&ad-T-H?yHkI)U0YoXUgPS9 z+3}$N^f8X0ilfgT(T)2sNrU ztEv)Ser2+{k9B-UBQjRv98j{8(r}!6mvD>HN#|$&Yv|sw@?<&Uks0Zf^kxu2{{DsO zd#n!Q{^_sAS*f$!mENgg)IP__P`t+sIfL4dsjOHPsJAbMzwaa&WL^iV`S$r0yvJg~ z6D?Ja&|ns}c<-mOFeSXU(tqv?{E*m-qQHO;Xw-iJ%>bulzoGO2FptCa#smh*U=}GC zrL*(R30_?>iZ#wg0{eu)(POg*L;@-~*^ofnnQcUV2Q??9OGZUvQt{e=a~7PrkD3p{ zJGG94bDIzO@r}pAbk<&A^remgA{mj^y6O$t`VtHK{nlF089cE&Z2~hT*FTK-N(%2E zQ(dzYK|#|KRtHi&iGaWt;;}{r?O5@2>vD$&Nn6@R@1T_IfJnpJid04}c@}IUuZd88 zch5S4)NI%t1CSb5r&N?M2nNkYxL>!GS5|LMYYl^#ukBu5bq6-O8=)Kcj|yXr%b468 z^Afxgct)=an@%V_|n6w>-s1SUo~sWvr~z}LStJ>-BW}fIU#KJ{<@T*+lDbQjgFIvG2;nOfi!qHY3;0F} zi(rFNazib93y&AK+Tn8(F0MUIuEm#Z-2-=Tza5%{RD{igXE!VTR&-AXJQHMn=}kIS zLu5)I@$R z+v%XAD;iTvF#_;mn3;ZMo%O2r%F57iv8teKnkv_>ByoH;dOp!$Iti;p?$%1|$A2gS zn2FsL1lHsF@WinwvNUBqz6aWmhhr%#$E(jTC-u%P!A-n^1-uThzFGBJOV8EWli&nQ zi_rAC|N4|`nd}@oSw=`n@ozY7(UH3t*%%RrQ9#BM+ewzfuf=S7r%}2itO0|`Whq=a zuqrHH5eQ6em&_WBD0`MGca%uN4%s5ZwY{056}X-E)SdPy2tf8b8nhuoDf= z13s-E%1^rQXitOXiueIY2=szEhMf8GTkh-rKdPBHA^zhOQI&%k55ic7FtNVeW7!iw`YFMo89XU zElZUaphGQf|BIHFMM#U^af_?~sRRt=`p+WT{Q~T7Ee0P2m=uJGPPEZ+-z4zdlq3bf z1W;Gs6EvN&!{by1M0KPFWGRXc+NqqKd{r>0`gLpq+FUaE$E0e}KQK=p0w(nc0cn;j zbYrz6`i^F>=*7z-?t7s4sckOIm;`ZoM0oawk~U`kzUi)s)ki7 z#w&dOH7i$#XTs{|+uXEMRbmwB^hr0*zgZn`L%f$XW9B{uR;01m;{^Zs6v*-{L_@#0 zYp52VQ=$gFEf|drIHy~)@ol)AIb%;7+^=%`YT3$eB&2l5d3#3dsg~3!m;RLj|CRHl zp=q1y&w6DPWTDGn$@IhwbK_8gtu9&dlb;Y{P0h?mQ@nXQbbgvUB4C~V{NPWH=a+wM zE-}y%o1Qe7TQT)~jpu5xhsqdphOqFc+<~SCixGtvEOU4GI4bJE14)&GM_msQl$amo zg_38V#}Wl1UEVqB;$6T<&%(H|DgchsnuS&}5HSl`t7F}gf z(HJ%_q5hIf7V=|;c)S7*Qc-bmVzM2&q7=zifE*yic*-Oy5r4BJIg>kbElIO{oUHRnm@=ZNW`L%o+AVHETq=VaI`}x9KLA}q-yQc*_ z`pmdvXPCZfSiZNrwa>cS$47oPQT*6UA0_@9O)y_n=-aMv?$74*6RmhhgB9+F6NdLI z(BRh}i(J;^#U~XEFl^v$7w>fdOQkH(du(=A^}QFQ9?yN#BJ}SZPDZc1u#*jGq>Rh^ zim$>bllGhGdaU6msOBH|t4|23b*&RGZv&97+}09Yx?Hp>>2nEe2sX*6(;cEeMC*;1 z&wfNpl9ehBg!5q_(elE*Nf{;w85gHjXsT8wB1g0Mpth?n0Wd?BT(@_oiesf5pRP1? zDwQ?Yp?oD47z@{RZ$;KRLRWk`mN{FN4;>>OKLOyMlPxc?8$m>CArDQvhM*T>J9}!J zMt@f5oZbl^=4sHm;@%lENWkI7tL`jn&b#k586Q!Tm8Gb314bZPnvFjw0KX?RmQ-oy&{$yK`*RoOqccUJ}xk z>8nhIo00YFDT7a3s`=Ti+wf9=;~nK(ljpuoBZCTXxYEpF6Wg;d{?SqCz8QKJM56N+ z`xe)=d5ehyM6wG3kl3{HOBUqm=FP_LW>17^YrtbDp234y+b=Gpi1nAtJ7yNsw>ap< zkYp)z1V$2yr=j!{D?Zx3ALUb@o`P zp}YW0h|IGn^;=;D5aZ#p%uY&lHdCLiapvD)sZy&4*`Qt>q6e1YMc6fVuFA&FDo0d` zk#zgC7Z=;*MsA{W|F>$LXWZy?^=6fLW>PA(pv*ve0>_5rL5wW;Hr*Sn$T+C}3crOAjUrSaKj*P`cd9O}H zU$Wbb-k5{k;j1eRQcI$DO{}?Z8ftVbuK2?~&w>fFX!<_28BqZfk%G)Vf+RG4b(ubT z52svge6U6YDljS<^K5W3-A21`xrmQv(amFQ#cyNvi(cB!j-R=AzDqosYjdA+>GciH zp7TgJr3VdGQf=HlTB=|_=be7loGXwCtc?OXC3Wau-gTIl_U));Wwjg*?3MOB{!JD3 z2g9NF4qLh`F85hUg>NZR-3G3aLi{@E#@H6QrXkwuR#CFIvin6@CK-gj!Z#nc@=O12 zy`S>+gm}aLa+vkksY;H>oD_y(jz7}z+Cf@rtx||a678v{_tJEYz4a>0o22iDW44>2 zGxmVnWv&8+kj#XG{30vEVBrX6dF|Zi+{N+8&9BS8ZO4&W=`e9I93ZXJVR_)e6w4;p zl(Z)}*YJ_grH$6TYx!)`hphc21_qRH8o}YmcuKu&W{>@tg zQx}aq$!F1OD+J(5U>@n3neI5?tFDdy_|#Is5q8ahBl-T8Z8>y~Ty75EyEF6mobOhO zdt)zu?Xh&5D@i5y;`pSf-r4>jyUYYvxt)Kot3YAejS`JPOT3JbTj0-y_lUBXJ1477 zQwPsGvMa5Nywcoe*+sr4>xw1Cx^R0Usu9 z^S=mG^Yw7rWl!-5fs(-yQR)XPAEK-FNz{8e+4-wYqexL(FMdjy z{7w>~4BHasDPC0qdR>rwas-U*G&)^$(-VrEoR#vdX(fNC)`B=vtux54#boC|rfHycnypBiTMR4j~lch6xMbXT~1qoiTO79(a=R|Lzl9 zD_-#ZqsZO1(;}CULM_+PQd!}SEDjI|v#ann(13YW9Mso=>-jvGhT-TvRa*M_&GM1R(dbm!5AH?6VZe=diAe*@l2e5zg}XJ3L^aI@#AJ!BdeqCQNMnLk-ZlRwv+g=6eGcUkm>6 zq<@JE#refD>`Rh_@vAb#fbtndO0{|w&G1I~0^A@j`SMgyhH#~$B-$F!U`5+u5kmPW zF3H1(e5^!R|08Nt#DyDW+lPdc4*<*)J%0<=sW?9D*9jJ-n{Q3eL%SU$AT<`7{%WMv z)e^ie$6NATP(;{s)6znkA@U3pG(MKT9>uP|9_PNOx!gaWt>zk4kLNxw=eA)<{g1x! zSvkh?&!lLGS`)CI898~QsdoCKip0tBphn(4<1f~+gbgO#D>s$7Yq9s3er18mVky-M z+ZaRZ{`o!mbFciBSxY;r(%y+N{C0EP>6oL#6=%PEXC`$BJH4FMkP7rO*bIwZmb7NS{4f&sTcVhgt zXa+?8ne0%+Asr`nb!K49<6is_x2H*TWu{oJ=vB2#E@MuZv@QC%29_t|;A<|Wdi)Wv z{VfdH1Cl1@PW{2Y$5f|4`iIS!B~zR?58`oqWE4{fOfnzuoAT_SZFrvMig9llTSxRJ zf1Yvd_B8VAT5nk$EPxc;E!#A;-WgOt<4C<>K> zSzuYws9a!CT^GZk5Nx)jS?6UgHLz3w4>mj}jIpR>ZP0f`+qic54ML1rSD^ONv0p(p zo0NoCtPX|=jhfHm%2pGH!)7jxJu+TZKK{K*=e)ShPh}x1)0Lk<^2v|Ij&aBkfd8s; zB0=fX5wC(Y7W1mTfn0RNl~}5g{nk;?w{r6FqQEOlB+y$A*GX_KLAYc`riJ3?B^0Qt zoph?hr$d?dWzRuKr;E)NSl-}<;D}_f^+ELzSMxPp=PSaaJ z?+%cq-iKIj+P2d7KBsj#-<|8p)~qky3W7_cPCY3;?WcB}ThORT z>)+xjh$geXTQ>N36wX(hlGH*``lH^!Y072BetA0o;Ai6H>iN89@lT9 zkwU&APSwgtn8O1cJtf`MY3q7BSsm-VU^Tl`zb2Uem^XR{t=gt}X=z~rCV!kV8*_Z! z!f<#E`giN#CN0UP2{nnK=bKjCR5+WEc2yl!5G;jM4{ND-CM&lqWK-H>^`UgcA@l)8 zS?)N5fd4?bhs8IVYL@n_nZPD_=#Oy_hbZH|le)jc9J8YM+ zQ$=jtc#1&Wy;wDRv9=2WnLw!cRtA|}{80q<^fIiWdxYrAWe+MXrB{eJh=3??gKD+v z_S62Zfl-q_^Rz&{fL-6XfAl>Ye!Skqv;wS$?vaWlTy+xz&6Cg&ZF4zouMj=C6g6m4~4X3MO?PdlR?;;u<_K5ns4sDT7rpO#}uSWO&C4TJ9VV=1e;4i;rJv6(%Yu(_bbu7X@NW=>lE1}LlZej@4Qk$6%HE-q%d>TRF3SKMBy~+sE zev^gAma(&07gf`g^NtVu^M|(#$3En@O2_LDuDVk#Oos!BM|s!}w!a3b+N<0t$~f+q zjr}qLZo32QqO0NG^#JqrI~M}DKu@eWbF&hhcRSl3J=Y#1E1RfR8E)k56SH_LrwG;-nha2_Uml= z{gtpK^-mRiW^O8<`;(8$!|jv8`$v5}JRbM9wpz1iG?JiW_jr!~9!4AQKdL-9Fq1Lt zJ81`+Vjwib06?B;AHuue7FRY^_Pr`ca~Ikq+dWizBT$c$-WJPU{<1eoz~(wC+Rt@2 zb0*x}?clp!(mT}0qz*6B8^7&KZ>bFU!R6IdHY@c3pUVF1dQ?ACQG` zohPL@wUor_TA1d%XX#nL5b5iL@)X1CyrQu|?r?@KXkn4ZfRuU&d#;^Klh>FY0)3K# za-etfz8X?SRaWMOF9pst()~f~Id9>p!n4&GKNl1$4CDjKjr)2XL5& zx4Wb$&GWj_A2qt?UTZb5+a=bI?cCJ$9!$|pvWhxpza)&_*gbd#r%n%3kB5ux4-oay z0IiP7vz+f@y(zI*+uBi1h0cN{O+|5(NvlO=N6grO9~fmS{zG27rCrCXUbQB}Gu8U! zb5r>P02ThfRrNjgEAwp7Z6z2Gg>-<#4=e%o05+vw(wDn|rLr4jK+=7#UZGrbTq7lU zrnnxNEP`fiyCctc>|<4x6tUU@>eqfQcR_-yuZ>~L6XAm@^OjrIL(JcteT4&3`{a^3#O5~Be5Y8g6Zd($ zX>MgEYAxoDeL?UF+|CnH13Np4wH5-|L~?wL{P0>b&XoDS9H!% ziM|_gJEOeW)S%6>aLvw;pgE7BLyu{Wt9;kfAW3}qan-I}yZv?3?;+dww)gc+Xl3R3 zpVIF?>x@U)Nu6>n^fE7GtV|ZUVg@0 z>G?cKnHO3ar)F%qO|be9L_ZzG-njft8#l^$$~JRV(O850;JPcGWtzrInHx_d{G9CY zQWb57d9SeZW_~M;x-=WH{CrQZK8N`TMsFSqGAxsMsSXnB_(YmrG!R*~;E1OnLp!Z9 zrIXceDKx<7ul+C|$sZ8ukym~YA{xWa9jSLUb)5mLhxtB^TP+NyZAt-GeYsQ{U65Or zV0Q=c^%PEsfpYdiL2R4U(CZLy=}`^uldyP*BtJKvIa&Lo1N3nNT^Qbo5O5FDHH(Z3 zwpXuASDXZ|AMh%#Ey|2j*m*NJ38OJ(gTI02bne_bmpU(JmCHA`;|$ALBU*nMmxQo3 zokp=O6Z5+ZzFO{lUREY>`d^aAB0_k@8=IvnQ&KY+ zSoQ%6Wie)NtF<5gM-Wh#qfqIaAqw@?FQ>Nb;M-o`dnmWYf8;-T=_@e`@}qROk+ zNc`2}YM)2_i8ttuJKwv*;NkkkYPW|#-hQ|&?Zm|eVls;c_bU$x#gi;4XCr66FF&Pd zGLtjt8F_U|u<(pM;bWXp)i;5xAru7_4e~e8{*2>8^xP4K6~2rEZf_JO{jDW&JYxWH zq)>_70aD+JK?3-#v~wJ=mIMf*NKQvb9CCK}W08wUdyc+Li*C)s@%xj|f^p`jcB?Fr z0&|p3ZR8cw7T4l}r7@W5#XnT8V>Hw607;WPSif-&-LiwRr0z*I*qhUc^r=avkFTmy z-7WgJf{UdSjH3oK#Y|TWW~6}mSQp|p61D)De0Ek*Ko`GQjKn%zW>|LsNk%E!k0$Qj z#f^of0UVV_{{*DCl2tP>f^6EYm+DIl>0)qcVP-Fv3>4C=L$OcVloBNcBN<2iD{^znV{U|6K~4R zvI+}IGJ$>k+$YY+Y>fue%=le?HVd1dGPHa%GDe=2&im2jCxMQCo%nrA*S1Oax@x?j zDU$E|y~yNM946^~L~XEO+&}qIpfDP1FN+uhn_)5XO zK1%?DLBFLEdIh`paQ|+r!%C!lO5_1-Agj>`(K$`qTbdh$-;Aw)BigiOJ&o5viN6?3f}2^+A`HWf%&2f42`d!MxE$MsF3zoGVVZYUd6r zcM1~2*?88NosKmTP|$aJc(;sbhwSM6;u$MKVr8^jl>5;m;mNhpFY4)H7`K?}8HWq_ z38i5yP%=gdw&&Q-7&iIF6o-kf+`Z0FBp%bUDq1r8-YC12&IP|~XVJ7xfEY6<7fY|& zMhH8m4URFmyxg)T^m#{nNoGv*NAR6pJ8I*wP$mPEq7lXH1+X9GZ8>%I-Pu~mZ6W*s zB$7;PPM?tMJ6I5<{sr0TxUacJ?MGI~VE;>?M6VwHEHN zWtbD#t*n?CEtz54C~&ZyBKz&TQH=tqySJzVW%rxxv6 zXUP@XU{cKm2SfKisitJwF8TO8Za%j-j;aA++4A;OZn~|trKyQEFN9`R_Qqra3*sHX8i z^X@Br_<@S#JjA!h#pveO#L+5PPQUu^hQ8x$V>yYLPKT;(%aa+wrczhBkNtccx^ooH z^;Z%@ukTz`uPlfx_YqZ{mu84=(ASd{aTrf zH%iF#vAb0>G4oPIF#J3N&W*A)4t2f3+uMt+R{KS8uCuYOH;}uS|0dnksX{vqlVhcXgd*^T z;xjD;aQQBT)2s|;)>x|Y8{)|Z`f02z4xmn1PL!nN;kZ?XYzbwBhirfK5GlA#;cYYa z{$x%Ig@&V_5ljmcaQx?2{?o6qWhDAE$#+!H`J;v%Z{}dSzS;nOyUhDy3>M+v z=Q6)5&nf=oZ>q@;orJ?h3QA|}cBc?ISNbBLlYs!OJyWOTneFId#aX| zo4g33*&*?;C8G0p=wMR!`<4628~AZyqHC@3fDggPS_CbsHq`S1p;9Xorl86CXde5r zFed9zAxgdb@#Mn3ViA?9`G1n%(vi3TeP#qajjrj9%LRkKZwVGgGoe)Mzx|zga#*?D zY84n1o&}6cPCw_;7KO6+L$D?ph6V7{m+s$8J1q#pn@IQXdV!7XN(c*ZDfDie&J67y zCKj_FFV^=*Fb+PvbII4V!?!S#j zK`)swtW{DUEzCy?USU~mPI!_^fS!^^14y9SKRYnK3(cF6Iqi`E!AR%ZE<}gtk@Tjb zg&Lzeuz?*?%gZ)w{$$J-`nWzO&oFqkH0-fin)sTkX>40N-YgNo-{m>XiFLyxy5lz(mORRtG^!9?;M3fES`Xws#-Mwnvk6nNqCvO^di)s7*~m1DzO2+Qty`jgQL z!7__tFN8!y8Cm2ugATvnl8eafMXq_)fCxcEtar0IUrSbZ|g zqG>sT!}g!yVN+05Win>jICIDC@SeR*#69(Ezu)=E>nZBXx7Xy?YroOg?AJrTE#lX0 zzc%uJzf1{8BxD)g z(n=&OJ3z^Pq;Bu0!9a*nZUy!Pegtq($_qvOO!^xn zA-|RiOjJM6k1EDNYh&@Nkjg_rla*90===Oy(_HFW(p)8Ep%R%l7wI9?DCosj9FsIx zUz&=4{Z$|nfaDgn_6`=u|B8y+;Di5RqKOsA+n^t&#NX0bX&km}N{UjcuCkJJJ{L;_ z9g;p>;NYWP;3LR~cBPhIR?lWjki+Za4%+LnwT?Z3=izABwn-9r9TVv45G%#VCY%Lf zZJ&ksG_2cL@!aT^xT5TAMI#ZrB?+Tkf|C-sW}6K6xJDBeDW45h6s7yp|us zelfCthe~M_Wdz0s@dr2M<=1fOg)F#ZzbNBxC9z5C3WI#s2D2u91fXJ1qrglm4h*^r ziva~@8;e5QUUasV&taDm!iOQiO=Qp1I+f{jX>(_^Wc~Wsd_nEZ?~_apu1My$_cfsU zOT$6t+d`5Sy^i*Ul@;%7-^1s}<=M__`;*tk*HORPM^<3u`k%GoT#U5(wzcEO(E^sP zl0UqKRtS6^k|?Mw9;7BV&jf~&K_(`M4zwVH6Vb>HgT;5Q4gYZ zmxqS~#APpZ1KS>fmJ8AC)1kSC-`nX0oQ2uzKi$OlAAT$2ZqcJJ&+rINe(F<1v zW-Zn|izL@xJw2Gg_hW+n9W z*E%Ok+gb7Psx_I>Z=!*SFJ4<-J1AkYqa$}C%y5FN(e42&h04ovR7H=xo;fU>pj>mB zk4nf`oK50o+=_u7&m?5$;^;72M@-T_^p(&*VE;~jacyFClzwD3dV5bg$E%g>;Osr6 zjl|w+0J0FF5Ese%(e4JRaI54lB(%)e_&((U8)cH8JI>#|vXgg|mtGC#&uI^g@ zy5*HrqG(+R5)4e!`^#%jkX-CI+vExpRr9W|FAKqz zLit9Br=yq)vr}PiVs>X`>Wy~w!D(B&ns6XIMZ?&kOS}R#r&T8PAACgauG$Tg^hJSe zH8-CHB0m0ozDVP-eh<>Zmcy->0%~&kst!6t?c_ofyl{$9&!>zPkjZo2vVG_1#tEZZ{6P%|?_82F2o;v0*-AjC7+;UlU<2 z-IclmZLDnO)ZWgx&?c1@ZO1`pf!+ z`D9E3gjsKDj@{RoJmBlzsNXt#Y^}mRZ}x280TkZ@I00~s|2@1j+r zv5j=Hsr2bTnr93LOVRUSX)vztm3jwyLlMbQZH8`hlk*pu(Pp1OSEjb~s;w-D7134J4cKUyJf<}3i%GyV z{j5EIOIRii75gwD3~movpHPn2B?|*t;q1hmx5B?G4oj>3dFH-T>LA}94s>SavVN!z z10Vuv8)?+%;(hM(WPi%VV>Ax;xxgpJAV{?(I$a<5x45TX@NG!C04W*K#|w8BPQ|IK z&{kM)29(u~-htxnV`u6y#KVjWTaHoQ+epo+(f|ZMMW@2kKr({l>)WFTt5TaAm+1!8 zmLR#~nMLsWkhxd#!V3{DM>4XQr}qOseqMCBdteAqg%KqV<N| z&6!QPeTL8Vm*MGCCi}J^0;I_{lNrjO)7WW;+<6Y(u{J1%{xzD_S0Ap?gnYISIVvxw ze|QFD^#Etm$06FyZXm<`&+_IBX%JpjEckIP@)Mo22~#f_P-g+$YRk$jH}};h1*)Q; z;&fpLVx9upo85+VEFda*g&n2d^W3tqYG)+ERNuCvzvfyxsQPr7AvqdY=YOx)!uOSV z4@C$mvu{=XMw@jAzCTX1Bc|pSeS4bYSTp0#HWxQjanx_x7ePYE z&i^`|q?#0EWzP2_tB*YDy!4Y~zWR#ct>B9$mTJ>N4W;Ag?jWa`OAtSXoqLOdm0UVj z(zxv-=1AH3$A9w26fb{RH^==~)BtYQT1Qn*bw2M8=)}i4V8RZlh|y?Ir~Bt>6wx(G zMEpN0&wN%doZNm-^Y^OR=*1+i0HKd{8xJxAc0FS^0gr6Q9Qw15ihqHcK_VyWz59PQ zTP^M7+3M^EXV#nPCCt?qt~QHMZ0uNb|DF+hwC{X9YuX~t|c>2I2 z7B8XspgB9Br0`vGYr~ZIGZfk!sm+fnd7GT`xe986`-s+m#_q_`>d z0a-`8L>$UeTT>l$V4O<4E22U)ns;t%PIXy4S`8#~cXwpYE-yc{y4(=9$O)kb&qJS~0p zh4XW-as|utm}Ey~FS(yh)&=49N|e?=PvBnTc)ELdFsb7Vy%cE=z?~B<=Ef`rw2?Ha zXLl8b1=cwrk4EE9n*x)zyTMqKT*#A0$uB#K6r`gkTGU`&HkAK2NIbB zo`{NFQU%z3MNW)MXaRNTv&wo>f2;BQ*kMaqn46puISa^Z9fMb=Q$3VGSwYnf#o0oH z#Jr{}=o^%|^MA>?R$T}gTZ}{Atcbah9rbx`X;Tcnmn9C7xjBszKi*c9mEHG`FDDM~ zYM65QD-q}s^`+X~S1dl-;|>NjYj?zar3=`>3+}m6S|)hHH={XEWS4!UZIda}Qr}x=FAvD86|<>=bzOW+hp4{7gl$;ZTLO zFHE;t$|5Nc}OGBZ7*DCwTZt!w?d0t87k~p}T%xe?S=Y6Tsy5nunY;Fx- zyM+JW)Y=`*^i*55L==QaQ3wgS6k|cpxby`53?p4|eb?@YP^W4;G3%_tc_|0gMvl}* zIEzbZ?}%O@y^Es!;G%ubj2@@5}jh1{dg^Q^=)Q4k*?Womk7|X zGLZO@MJ&s&-N4Av@^0|e&?4eKb6jdp3RX7%#Kzx5KYrXU6k!!0S-^;_rji`s3wzF;HXkwLl=iSk* zU+4Ym`t#~Z)$>vnN1Oy8f%JdtY*DGw`~6W%$w3~?p~&>o9B)#c|L~WBwri}9N57I) z-MTl|O+|9A6xZQL%sDEuK<%T`wt{*m{d%SWZ$^xx7*pE2JZK!1b=qSFI7_K^#wJ{5 zYvS{Al*Tot#@5TzTh!3S=5KbePbvzC>e@r~8)qhz91**ES??1*mQGm{>m+p;f=vTR z6sO7!`V92|$6BFrSagrVp^N|>leihjFh1#!WJ1M2K(PAC*Fz}VJSjExkotWt4FC7@ z-S|2fx5XEv0f6$@xgGWA?5vN3gCh!SC-_2`g69Bsv@7#B$Gmg&OhOW;tCE$^n-$r8N-Tda zRjHuwKDmS_rp_A8IrT9Lz@)N+xsL|wYMxI;KI`M{`%efFByZ`N$r;ES9FeXU#r-`1 zmY2(CT6|m4hqYJ8e5>ny=Wuxgs3v(wEY1c#|FRoZtQx-9yTJDC{`++I`nvDeacx?r zV-V!zvX=U97}*F^>41E8*~JHSYBC&#FDcG*=p|w4sTM}ff)oir-lhT0tcBlPRCu5_ z9KorjdR%agTa`}UZP3lt_h$^vvT93rNjQg}S{{07rs8qamgb_dDeRIfM1tE(ONth7 zc3&~v+O_)?_~fyV{0T&0ytVOh@GD_GI4@jU0^;!$1NOU}L7wM1!Oa=5x_(rG)4QIK z=b5F?cz$!MO4DGyNj~D>HFYcq#cB)h!To@m(C=%89>LyJ8fN130u92ua-=@@?eTrx z{s}4 zFqjSKTv~H5=E@>CfkQ^c8@!)BT%s0tY}_G|CIEA=;Vy?gz?rQ^o}pK4vXS?I$I6@E z2#mvpr+rg@xtkT|3Q>`CL|5lFu={kL^>^vP82HixfGPQ}HOKE||ic}kU~ODA9F zXw>q?L77NsOi!j_P?m$-N(vBRJi78ruhxo9aWcELld2yU5BI+mHOQOhNvu;oKNd1x z?bb}8kmN>CkU3Y+B6>O^%NU+!x8VFtRsy>7yfwb1wS<{*Qq0V51t|W)wUU`IS>E3? z9^yu36{aAkx2DHwH73hU!$&?U>N>{Otyi1Hz#;gYhjj8yi~mo?l{rIM4BfJ+gkGMt z3DYpEii*YtO#%nukPZ2^CTM|`<;fVjZR6IlVZK#>?Nll6c1zPm|B;`JE%}aTPjFiv zb!@n=#wl47V;7yQh;nqYfGK55fhrFkT`1(Yy0Xx!wq&|UdSzX;3|>8V=%u?i#Q@{m zF>*cL_~R1n^AHDBJW=t!TC`+!Y13t7(p3mjP1_8Ws)6(9OmR%8$oWn|GW5G{!5|#7 z<}}ZV{FujH`PTwCeWalk(#MJs{q>>S?h%HeTUHku8Mxo}CrqD1OU4}9#zp^t(f6dw zRSsqJGzfG6Ew%v&s$isPCeuz7*iw>-C^>jMz8hT<*(4zTAF{&3hBW{7fzx0DFGHYH z)L7`)>&05LEj}2vSU{YM-_d++vWE6bV7f%0b`mqN`_tUO0#&I~e*ST+XSk#fm-lBi z^!@p1;8q+a<6jR_Y_15-=2^+~UfB+fUv1p1)Q*ZTC$bDJx;SPK-#S^4a&I{w?qDDA z-9{AB36=3(xZiADM|{R5{hzaz;CmVLoltIjwb{C}X|Q4aJDpb*VN~l~7Yi@2_9A45 zX4QD$F;+{ZTUC_#h!HY_$TJ`8bJy1MD(sd@Ef z2R)`QfYXz>hj5BU=~w;={Ht7_UWUsn0&YGAb4j8KQwabP55r`AcEK}|=W@UiiORrp zr=8p?DVOkRb8W}H^XR!UU6YlZjQY0O<=uI2nXQF^)E{b5{7zT2jT#hTZ+wEQphx1> z+xVoKeDf^Ee-huR-`UV@>h_^E7@m(eMk#SM^2Y$u$5KbguZl2@^F_dUnf)lwTn}wO zR5OFp`FrG}3un_#$A79Cdb$mrkgZqOWabf8;N zJ8ek}^8Q#%7uF+*tBpONkI!lE?Qtl-JrW#QxQr^s<$D4X`19@mNcdgl)Z7Qsbi$VG zjAA(&7Ng(g>ybcp`3?z!NLH*PeIradE~qH>?2c1j%1ZPoL|s25QfsS9nolBmerYpL z9hc#y@(Cw|WB@GUUzGLYQm=KFx7RI^D4q&)7@Yz_t2MmxbwfdxH=N(QHZM&XCiaHF zrOC*s8j65evj0ZqO=NbsNac{o_81*t21>R-Us0r%e2sv0bL~hSA7yqpcS$}jKd8cb zd09*?v=jwpdi!oezKW`Wy#zop5|{)rrBy00ucN@4jVMd9|*q}Pma zKeB=#R24c)0*vW#2Z^WI`BQS{XzGGJ@`(qw$uS&{WI zj4&FZ33&5PP0(3OGIvF>crrd4f*!`R2p01(ub-<_cW1Eo(`*nb|M8{qn3+Ra^svwB zFdjg^2pA8pF@1Ky-HwLu2U>s0lc1_EhF%!ciHo}Q3e75iCU__hf@+uz2ga{j{cfor zWQ8Wjy3C`SPdWHLt)w+4(X#3KoUyJ1K4io9_rpxD-*$jxGE+@`(S$y*X7jQ?jw81! z;4m#?Znc;jwe(bfpO8c0z5FNpvhEuRZJ6cBpz=xG$?uR{BFS>Fbl7AB5e~L~x12ez z|3#YqJ=Ey(SLE@HWPWM)d6o$3np%BIG|oDS4cr@V!I4?ak!!dwY{zb`8X= z`Ap^zc9GEO590Hz7%rH0PlS$q-o9t0Fr(0TOcR=M9eK#d@vs4Vid*+Zyro(*ED8>uPagW13B&J6 z6pgv}>AdEW#Z<5X`BhC6fh`{Vpi7F9I>92%8o?K-k{#0z673c0c{$^fhL5UV}5H1@LNzsa@pAISLU(UD9P?o z-Jfffn44VE{>%Qdhp%gRt(Ut*9kw?dCu!m0mKv?2MNej(_IJa~^q2A3-lCmni1-f= z$AmyFvpRA5OfT}~u+$QM}z(cJiWh@DXnx9FLYvC{H@EfYD&ub}< zRxXQzQRt?iN9_4AU;{HT&%-9P!yofQ0+l-{Q>Dvk!I5fdW|{t8Su2B(&R9wa7$fsi z43#PG4B!KCGPQYq_FWNkgeutEV7pm)?N$xtua)A174-QYme5Xsi!9unVN6!>S)zVh zVLS9EdhCAaF{qt>hE-8{IqaA2ijK9$ga|L4wzA}fogY;~a-B&Z>9eidSHXi)w~fCS zyZawV+AQAz-qsrvD)--P!5Wxhj>6)em~>(`6)C^;R`pKuhwH0?msi=ndLM0@Z4s8) zTL+TkJIaqd8=qco5BF1S0WQJAdGtN~zx&^1osS99H;oK)E$Gpnh9BtIBIx&U`%JQ; zQ+-xSpAEW4CW?O4m3M0akF-feD+hjaA;M6tD~^&#+fVxJ+nvW?NgMS^*Q%^|F0t+! zSve6N{5;Vzf#JTDA-VltL6BhKO&i_aRZmRPoETS}gWjyTFj(ur9hAVUhsCMyCY>UQ z7tEVGzT@Eh(d;0?`XVZWcIy3xsq>DN;Jy);bf3U#{?Vao#V~0iZ!9l|MjEsw$7iU{ z35&6OE;@Z9ZJzyTi-AmVTNm>n@cW=m9;f}7u(L$Jwb>3H+77Vc$H3&Y$$2u|C$5ey z&U@kUuI6$#Co`Id4}yArS^$X_m6w*EEDO&%bQ3?!taY0RM>O9a(rd90X#9ftjsoyE zFjH3Lt_{u#B@_ix^!*UXkU;8Avs<;fd)aI!#&$yZdS)%pUl)Smv?6q zn;%|oSO0&;mhO6YWfu4up+?#|t`z}gPIc;JYSzVm&LiKhT7D3`&luNB`$p9A8Y@Q2 zF2QR39l7*ia~NgSchf6Sq=NYYoHuT+J-rv+w|9;2XR+QkX4Ic6d>>|kWq3wLx6OFwyI z@#h0`vN1L{s>J?@;T>&%Hq_UZAVc^0xy*lcYLLirqC!SHsUBgF{?&%2ep^Z|HFFJ= zy1j;)!Ipk_Ki=%U6$Asg8xK>wE5L~@0vD3(aq@BsSD1@jOWX=&0fL2g#MIQld zk4Ncs0CA&s6vFD~UX<;Q%Uk&)LKD=CO@YqcGo1ZyHUQZ19j=!x+nlJDYEINe4I{xw ziQsW5b`I2Rn>Kq=+1$2xy7u?x(G7VLd-(d{q}A<|$q#DqIG^+y-g(b8?01Ix^7emY z=W9?B6)%=_Z)vCqKO_Xof0Z!EN#)5;bZLSDkM`F61JR?E3=v9h9`o_x@XYF;Pl@F?bJBTi7Tvio?3w= z;;s=>?~5t84cu?gYLleJ_s@hh90R;5D<``Wi@olot8r_vm2lwf|T5J$K@kTKI z6pF;4fON1~R9BLRUg4Qx?SzJB zaSO=mE^&G-Es3m4XS$HY3V+zX(8s^5K%H9tG#YXVy$rgG`PP4{3(zmVMK#CdN5ABf zJ$6kCV%Qf)%9U(d^rK`nyF5OZS?ZMUlI`gbTX$&a>-ji?=DCjJIH7yX>3&zU8ujbF zLH~`oZ_dhSUY=hMgdPmVr<9K9GkMhPoafQos~n^R-d<*{NYZ6z%Qb%s+Q0h!SmbrB z4wtjfBpo@n`ogrFVk3f|YgDGw>;^fUet(onBn}eCR2v%M3V&o>^;}N8Q5c^F7MNAd|ja)KRxS;?>|ni2SopPgyZMrZ?CA?%d2H&yIt4>@1F|A zXXssbIv6#?q?oA9q>DAxRKkgcWUSNDo0+JX%(Jrhzs16^td(%wGb;27uMqaw>>UtOO42+6 zmX^HhbT=1|`vyjh@@K#RZ#1~7;{gHH_`e6SfdzUxeX%E-Ade$eRlZdY>4-Db?EXfj zw!y~V{MDWz@@oLSJ5dTo_G!y=Gd;2Ouc-kl4BhZBnvfjs&X7_`QC^*+3^o-{VRSiZ za@F#8?RDc5IN&Tnq}#n|$2rt9?$%7LewRbrfEHff?@#PE$VliP5a}_fcHQ zg30%)jfUH3)<&3uxPjU%D=pyKCV$_#jE&2~Tzy*lvPVWP&{>ybOig}zPVlB;!H=oD zOb;^ea=#bZTuIkjLFeq@v)cApXt4CW+WFjg`}#NgnT}SyCb-Oxi{{;Ig)bU{D3~~aZ5XS3t{%|VQ;@R= zmZxQDwfgC}_^O%7c=Qoq;-*jpu<$FPT@wdzkGs%T$WzCmk%~c@Z6HO&nB58R#bTPX z57n0tb%a%byP_{AkuDM_z=xHs4lGjEuQchD)FYiyNFfXxhG#jn-D+I>xOXRdV_LV)*=8wx)=UVc@)UMjPt!*h!l)_K|n4LWLKc-ez`bp~73=i2&|jriEccVo0`A)ah~?#Lfv_0U$- zI(j^EE$tAo4j{8URTs!v-8_oQntynYR&Z7&EPi$31aSAIr%hb^p;HngzzT!LMT;R``uGud1`=HkW5x7U@8ILlM=QQ(e?%BZ0ET^^^WU?}&vvFAk5JFfb$g%ol>z9@`eM<&r+l4`_jw@g=kWCKqD|s2_P!QKGF<=N z_AbOi_Ofw|TmCV+n&5UoGpEeruI_rEq#1TRdf!!TFVo|(Oe~q*Gi|A50+WC=aC(YM z41yrrT5|^eN#;*8TW@i?zuKUl8E&$zj$en=T)FS?>5$NQJUxSOvVslY{WAgk7CfSV z6Vs4=9)5nyx4@bDtrRzqx(jI5_iXwoPord^HsrWiH7S=A?EY2$-l^|LENTR*{rMfq zyC36mE3DuamY3lGMW2!bwNG>R^)~KFA#c3VS9JpntleR4tfU?B=ZlkUmX(GT=Iyu9 zlo6;{?JIu+Z+FJ?CFH{@qR~~m%6?v*KFx56b9qohQbT2KBr$>klr@t0$;%dmS?5fO z)mkmV7bAuH#|%aY<8`-9!4wMU%_0NO;OC;6Ro8-}!U$aQA^0;)K_Kq=NrxuED+6(t zsK{yk@4RiRy&WgMxz1jkM=j@Gt5dTJSWWG8t>d|GQKu<#3lGvMx0Ssk;L#CJmMw%*g%3yVLmA2P4==rba_%j7q!=(PU+ zOfH3O6`vVoDC*sq5X;uxU;k-P{nc9&Gtj^;z>+9*wU)aX%5DaVkQ_s8;YYY+SKHk9 z{oYywc*Sg7+ILrz<~c>v_wt@^uUW;XR*xPbtA{ldAE*Y<(U`iQWcWO4syBbk+|lH&gXyQGt3S8i?lpf0cI`kJAmpa}cf#-DQPq0 zN=PD(v3<3bW0wx-s^?w&S4`27kTv8Ywv@II+OK48DgSCYW=CSlJ11s@==3?S=iI!Cl%^!(* zJbRpNc%=?$`N;tgSJXAqH_=^BV9(od+Z$T8R1XpMVOoA1`9l+qW)&P&YNqqwn1WQH zI9V55XvJ$$2tlN;Qh9$yT$l4qaO$847(=#N5&GDL6&qdl%>9_LemW={R#%YpL7P)bI4JGij6WRYhXgVzzs08m zzpr@UM)M%a=gZEVA8)VwklDZGcCvjM`i&0vqqU~TheHIu45bfk_ zNyd)UN)Ax~@nV)#P}%g6~zn$eKX5_R>dBjK%zRY z%T1(tvK7SZVi<1P9BsaQvhx?(1lrr~QZ@x7-+JI~q;vne z{QcI(9C{lL*B%s*JXd2YZQ>SaSz?8^^xG)?jsc(l5T@P(^T09X7X^`FYJmKgbBgBV z!nZ*Zru;P!03N)-uwZ%KS0qXOfw(R&<>LM{K;H$!jNZ}M%3i^0)o3Ks_`$08WObm~ z%=BcAD;oOLaa>fH3}~f4=g-cMJo&{Z&CVO}@#@Z~iv0VzdW+a3%+c6bph-9sq~mlQ zaKnB}Qt@oR>pK}VG`rlv{1X~PL^xwj6zeIbQsvo@qn%W9B`d53vbyV@f@L+>*AWrd zfum4s*2p)W(Rhz)x547Q)8G@)=Rx&|H035Ck)7*0 zJm@C>lCdlhN*Ufy8=Sk4sUYk`@QX~lbwRCWp)@AEXp4qmuUXBzTV!Y-{;Pn;BWZz; zuXw=DQkC=GZFPXBP55>Q3lHN5FL4sGX?^VdJLxyOo1pRDz10)Flvp1XZmy6FXC1}C zl7>O$6*5gPi#neYWQ4EdX)bZn#xCg&K_8E&pR)Kw3d~>DuB&!GA8bsAfR3+o_e`9#QH zZv6o5t6uC?a>^9hmOQL5XIT!60&4TDG&P-htA|fQWnueXvgS8rsyc#KFsDPIB^SK^&3nzg+| zs)xNfsk!Y@inQr0u{CLm4i~yaJMXNz5G^n65!}Y2iv3m+JyYfH=D$!n_-@s83)02*+;msF8sABE!_3)>08dd&rj?JdN4>*6>v zdLg9G@R>D#$mcuFi8Z*63$voM{1VG+$ka_y>Rh<|4~D}=CvqbP@NxwVo?}^Qv*--B zJ~|()jLv%cJY8>^S-xDa?TVo+I{uf=oGnm8DA_OW+kH6F7g$Y01j1L3Prz3R$O z)xsNwy)l{4W&?R@8FhDQJSl8{?6V*WL^VQf$&~8CB>PLqqrG2Mt*N5@UcOxZ(N~h> zG|)|;3faatIT*Xta>J*5f<`H*aW@UWpNk`6+v~h+JeGhs~sv|px)-8hQ?HSE(kK0 z%rfT(^}hql9mdbib5*<3yzoK^B1D#k;-Pf-tkH4;*vhv-q;W@(i1UA};D?YyYxR@t zPau#LO`>gmmMYqdU@;uR%I}NVJw!plrcgJd0TVmySwAdoF z*mJB>U`+(#mw3ZIQ1XfjzL1t`)k+wM%m!M@TGG<;-HcBPhclx4=$Bp(7+1|_G-Uv$ zlRbBmrE6O}9-&4oVum{SFPoVDY7olSD?nKsG`Z@4eV_T?yDrL6WW)Z0f84UZ1H`1nwK2aM+!^_%rvm!tEv5OW zepkTjIY^nkcaz~%N)*!S?bW-hT*7WGxRT7gohJMb`b9o`yvyvs#cc5K!5q*fZ|9a- zThv?3;Ao=)5Jffjd>ed!@I7&j;;KJ{Jlz$^{?-HgA^Gf042mypgQvaiPG*xT%OV|6 zc&YhTSn&xK>o!T|?*w=3o9wC+dlSm&98W%J?af#AW6R0?PBsoeGFCof{Jk_3~ zMhtce=aD+6vuPeywI2g6?A@Aj$VmH9i1JD!(m*Oim!tL|!huxE8_pmrRt(uwC*)kU zG5>uSur(8E*z~8vL0`8aW3)&We4ft3X~rdt|RRz{qrh9*=#8CC{nqpbs5C1S^QD zl5q<>7bm>h@iO3@26X*=DW;?SU) zc9qN~O}gR{_mJ~#*Z|>IdibK{t(4Moo_W>uLX%fOW&~NEWI?zGYZb&1WZ+=X@x_rX zlTXNg+0nop%oOmoN$(xK5il=mr@#dIU!H)m^dCQvML;~7K}lKBVI$eORtR5z*NV8c zBn*Ax$WB}Ix6`|P^MHe-YxT(%#f`Z8-H;P>5$nWL53k{qqL_1^(LOz@lh2<0ckn0f zs^Ct5#i@LVF)LFTY6u5r3(@a%PyU_c%M*e8*E4_o#eSIeySRRn%R8aJ`a-**WA}m- z?`%w16kLZfY{`;+`B-6MLQoWWLBJsub!PImf=cZK>1&%^du_gT@#%nHz=)>5u2pZn zumY!oXb$0D7_*Iah%mJEt4b$iOaB$~Q=2J{oXv_1^D?R2=SEC;v{?+?=RxkL`P>}XGkvpT76KJ)4iY}siZF`>K798KU zrVLMp*cXTRd^9n!;>!GJoir|J7J~iHE7x@D)lx9}0S*IP>PR7<{8L+ryWUWoT^`^V4IA+Y!Dr$H)2vIQ7*C?(}6DX5nY zTE>MJDj4iBBFxI)M0@0STeaK>N!$jMEb}*o`SAAj;`={{VcBZ=HZd#W?;Fkdm)RK+ znnERdmh`VUsi2Y$8o!-!h6|JOmjajIa5lb(|dg9*^8h! zEODtwKT=+sRcepmV1mjg&ss@%Zrq}^Of704O=9drOam^Tyj7zrM=_3VEoUwz4XtK8 zMS$ZZ*xupNn{AWj)H~Nj2-q%vu^;KNdGl@JS^XUzK#CJr@YSF^iid1b6OT^&E)TKa zt`T2Mld_Kc_TinJzG?`nafzmY#}F=gW)>#{lj@k&A~HG5bev=%HVs|~I=>m1kI>{1 z6(S4)(Pa>%1%oD8KN19K+&`yI@taq%5Op4{f{g<1Hcn2qOpM?S-MQ*yDOgQ-asW>I z0brkBt?b`IA?ItIS0?vfZFnvd!urSk{1atBi7W-7G(5i?)XW*4ij}KD6Gb7l3mImI;=mB_{;BVF)Z%=fEMfCeK)%0 z4Zn%|5xB3?fk=jV#;s#ML{1 z>h5Tm+EDRSF2YF&I2#@81t&I>v;|&zm2A9GKK&x~D@Z+_E+L%s++%dAWYHNPkUZUx z(Y;)t)9W46B)w@gUJfwptS>Sym?uO-gU4PVs?yvHa=RjAHk=s4hLb=j45o6JD~COOi0!y z^B_r@6{q5YGMpfk4TM3I=~DuIg&lq)f;350c6|X;`F3=ELRU zZ0#Q@2-@)CzN^$;DGsK5WNoq3-*_p$=&=>dGh%PA{;lGx4~|{M z=Pj%9MNq%_s!M&#RyC1|FGjION5(Ey%&w)oBN2UA#8!n%O0{1&&bdu4EJ!B>iYC1E z$Zir-3c=tVESJrvXl-L8MMBMvFKr_7H;_Py^r9A6>xbF<62wFj2Zlk4nMRtQx!B={ z;e1_q@Lo0km|Zuk-NGApGJMb3$(&|{g--^ckUpbDTp=OMVF1`*NnpA9fU5b0huIV+ z;$(xHP*S*2iBAUVUVhlN**_@uUysL!!=kb}ZtR;*_&}X$MCfThw=3iOzfTYPPf>dv zvrOt9S^2a9z$Z_~k(IF2iYPN5BRuks(xXvWz^&TT=+V)v4r$kU|A%^!e7XM|00NM1 zXj{dEe`W{pz8x7sI1^9j;6oT{$q%3NL#{p1mk(4!QYjd7Ki><=>*k_M$%l)R7M>TV zDeA(h4M_|fqRDfYO24bN?*Xz3s(|Sfhut2(#rWE%B2NBM+Vtb>ujY46Aywy_A6<^U z7rql_d)yTAnN`eYo@X2}m`ZVh2l=bY&-9czFDf(T5Dp@=#W%>_ehUgiDr@-BvddFs zTzDWdw+Q$g`ju+Ta|zbM`4Qi*pb}-M?h`Spt-V8;N7SEb=cdC|w=ICG^P}FqAe_<0 zh29LUWOB}^a>kW-yY5G!IQ!q!ma;&GP!kx6L3aIlS=2raxJ}f^LTqh24c>0XIHti5 z_G#P7iOAsO-W*~WtG^RS4O|e;rcaswIJ9IgJcIsTnAMWFq!;A-#{){-Fbl7nDcx7u zHJ1l|A=3D_Mr8%*;CY#`-d4=@jO>6HmNT&4~e>D3%C*^tUrFdzQaJ$41EwMG%wBQW6I0WUlaJ;>mGye;gpvh zErl>yj?x`(|CE~q2;vh_fJRB29Ex<)c;WT9S)++}ca7t+??Kdf+|Jy>^M%j8G8jnN z=%r#U=}57sNavZgGhrXx?I;@^9a&Q50b)XbRecJ-k4)`!M{GLN63UAnJsoxa?y_&P zoeJG{d+1ksU;O&?V_l~VEMUX@MOq_Zfq_DW%BjLhI#Jgqi!$3V>U$)SNm$h~*2$c! zB2#3b2%7N~w}X#hLK-8!wIzIRdV0qmN%sXjrIkdq+K?Hy+>XI zGV~Ct=oC;l(L!=v)=xEJxM+*BGxmsnlK}2lNg@MAz)wvSTeu$T#LaQ*cDpi^J==5Kb)Y&C5aN7@cs87eML zXOIBOEk8M z`TvYt1lUfzkqux)sKLtyE?>QU>*U3_fb-3$5~Y%nG#c&7;=5gZu)(Hf)lczC+Nk0y zM0K3^j2_(Qx4j_MZ6GNXWWd^;O=ui+#?!HoszsAb)n4%!#+qYK+6VN|JIqInf97J< zxUK$>uCdL|>X&9HINp9E3>C^-{sTfr03KX!8caVGIU49k7>A~EjZ2UmGL$(fIg5Dj;eefY5`*YCU{H%E5}1OcQ45QCWBwy@@cYf zyqscJ;HZAX>`Sly>2FU;bBMn=@Bl>7Xr^g_xxf0&_03yPOB6dRqkbe86}-ci3-{t7 zd@SL?J5RX6I&rT=$i~_GMo*7se1EmhqS~%0Z&DM^d{vKM1M+W?Q^bb1t``aEfb~<~ zWZwrx9rCdawZ6;g_YCUP&5yKFqi>XOkH>GX zG{Bzec4;zu(*cHwJER!Tq`QRv@Vk3c>YEp|V3tiED)W@~;(Xe&CD_9hYD zWpOx7rO!F*4(LyjmUkk2XXHr0V+66 zzp#HSrg&ZG$h>}KNZ~}zQ?(|XE*+lL7bXYAn09_9?As=h@-_>oY`;IIO19b310&W* z;|5s(PvIL@<8h>vMqd-?b>EM-893Um@*b9HgQIjs{N7$46=6_y_P?!}PWs(#`8t{d z@|n=t$W9))}t*KSNbapR7h6KGb7qulev(KD-*O%)Uk@4<1fST1s~ za+`NR8z&2XBa3n)C}3di<+9|cCg7ndKn6}4SV8`BJD{IQ{(KttWLTsb^)CnHS7ddv z1Qfq^gm&XVPo~RXJ7Yo7-V;Z(xSs8|ev0M?tqeQ~b!Z!J0q9E>QeCs$jHwGhr*-2U ztDe?)z4y3k5nU$`7eXjV60w9)$W~;gBX$kxm+-`)A;1wXN-el`tLH7{O;}SdXU)o9 zLx$_}qsq0uL6Zt6u@WdH=i!6{ETB5LDEd$GG2^!HV7#Y~NNhQbV~XGGr9U(Ce6NYt z*R^N=70Ig~hySd-jZ;N3-_X#g65^|TdHV@m8nfw)%OuI0Cg)t5$sbsoOHyY6&xvg> zH=8=%du0X9tK~G26c^$F3W_C!532OB{~)nd_d7Y*6-VV46$KPm1IoZsZ@ewja|`vO z@V+#y@d`x@MGy0t8cevrtB9QFg5u=!j)J}S9DYL5%N!j77RraadaZ#9PCj6>un};} zLZ#Cho`DZUFQ78uCbx+X;9d zwWpPhrZYlJ;H|~^r%lw}H!jBU!fM!FLCNR-#>r-}3$GDweGhWv5}v!I+IBUbIyl;~EH8QwmNv?;!vgDs6~GO9LMW<`w}SMO!M zb9nh`pI@=Pxb7?~kq20f43J|1p7-OP!~eDK>EoL{*)xoL_gBDGk_sO#mr%zEu@6L- zD6Z&dg-)b;oyH%<*0to`bpKdN-yd@_7;rA33snag;kmnWa#V{h6 zA2HZ6KjlO8oHLeD@^hm`t))02)kK9|YvOk>(HywgQg2G4#~rDMGRFtY{=6^;lMKJ- z4<0%JG6MUz1C#sk6?N``o+pS0nsJ1kQxrU}BY@Jmlx+am9-9+UZUX0p2g_%F9ucLt z;qIq>z)iWou&@+(dR^Q*nKgt3-^pLZK04NmD{GOR{Sv+HgmnzTZsoHSiQI2 zom!^0ukZcxl%2zv<7ePlyn4K3r2Sb2?LOy2`)ZHo+6$xM-8bU`_zv9&o&kQh(JGst!n zs6mbam(9?4;_)(kQ6axs%Pwq4(ZHWnR=yalJ>zmv4!C1Gq`pi8Fc=n99^ivzRzO{Ow!w zD=M+ZX2|EV@xJ4;pRvzwh|_=3VixTkmT6aZf`~BsPTOn|DmI#|5vWLR2_`INsQ|Ix z5Ik*N{_YbvR`DNX{dAm}S?aP%AtCs_kAS6(wk0%%Px?@J zg=g8U_V#2bwXI?}BiZR>>4-0C)XP%uzuGjSsI>6wdP_1`a!}lqcJme&vLDlmCJ`lY+9ysA7wHuY44Q*ox|-tuYn z#%|F#p1kqqI2>}3rv42NI2V^aDw4Gs2fZFHa*;uZ!ub1l_amhoXd8~YNd-wvJS%{` z$wm*Yh43RQ2nNJ}jrcr`4Fez={cuw;SS(xeWsA;m637FoMK zdm->77T!Oo%gbliY70!Rz8YVvw2cPV#p>xN#lS@CZ|HYLcHnF{&U2@yF#>84^pi&O z)Yf&z2@GRgARpSyf6xb~ZblQAk9WIoE}1L23_m~A`d?TUqKB$m2pcX~YIpD2Qs@;$3%MGOX=jC_jNq8m@+oefs|^6HR_zYf zCRl9z?5V9y*TNI-{>b_pSU}Gvi;`mtq#3pe)Bhy#aBx<^v3BwrQV$yC2#dXkY%_jT zkrRT$#H6SJ%l(2CxXg;p*C&N($a>~7Ap$tO4fFX0-Eg|bpb-%yvA2lGB@M8VGsxhv z#Ah$o2A53x+3M0!RE=|n)pr;q0K!F^lt(c_LV5cE<6*Bz?CUe^xF^+^yF_~U{1UG5 zsXUif>p=IE@Z3<{K@MK;?r0a8JWlxsImzv0icJ?VZG4xY3;x;O-ps9Q;%iyG25Hot zPtocG)!)Hh_Fh0&s&G)x>f^qw7@ExCQ4LGTznvfiVM-J@2;Eu^Mo5KDa{RtN^&lu* zD4xuPEm{pb+nc5CFi8$ROWg5A>Y=IS8sbN9jQ_a68HZ|ij_kqk@L+IOXy9ynD}KPN)$ ztVh-uhV0Av?+UG^MwN3I>qTUPH9fYixb?*{DHbmLrB^+nWMEZrZtd)7}}xeiZgS zrV^2JhVLrgn@q-iEIf3PmK)&#f~XHkH}d?k?S+ zLhOxvj##FQq~RcIZ(T#f6~kw^4*DuQHig2abzVO2jo|2W{cGd|#J@(CJIN34{`q}S za>8>k+B^2=86?!rRsElhd|7I0L=7ZucoCxx_CKo`D;p5TKH#a+L=C~mPTOL(m~r?; z2dotBZ4bKmxbZ+xK&bNmbpXA!>PSy}fto6k&t_4N6Al|$k}n-qe}z39=22au)<-Et z6Qku7t3)=Nd~NtH%ahL}K@PL0X#HY4!lF!b(X$(A8nun543z`n9d7$!5-*Si$3?0m z(L$1cg+Xxl%+`~UkLy@^d<6e*4$@NJc@4ebPJiIkc)(h1QSj+s{s5vNT&5y3W+?{q8!|9bxXvP36Dhnz8khvvylSPWYz?V*K-$Wzn}b5AS$+h$f+AINH5Cl0xu zx-3Vl7f;GN%NmjxI&8JfJYR8D#B&*XbRViy(S$#l(U-wTUR_ZRn&y6V3jF84uyR%O zH}Dy!AVLbik+uH}OvOAKp@)Oxhmz-y>fxXN#eHiKw% zJJKE$0axA5sJ(1OZ~-{Vz-#{Jf?<*8E0{@`945kPcy#abYIAb1E9a!TOy=ihyX54~Gf?(c`d&$+Gsjtcr!ZE_i4}U<>`m&jwDR5v^+N ze)n2r@<_gpH&kz}K^g0S$H4DdXS_yK9b4L)RTO>i!u|&XwNsdfV6=+?ylCqhHqYJ_H^Zt^bKRUd5jA?2@a_SL(70%f`UP5v*Bm*5e+xc*G zlh5}4sgPSI!u|AK3?C_PXbSVa!sq3R^85<#jg)lO*(hWAcbzqOE=6oXF`J6B9lh)= z_aIzN)-~ZfoB`cTOT>6G1h%9-{A?sj$zrSUC6q|8V&CsjZmp&ndw{xzf#A};_sN`g zgZg+)Rg+?2x67H=j1+d=vWUTMM4)Sk;NOx&=^%R+08DKp+1`MjG{c*{&mKFPD`^<3 zydh}xGp-91Qx%sjLf*~E)+aVS4#h7g`WAyRJY=zOTF1&oJ`d|Pj)$h>P|kg+RUFY( zskrJ;bJfUohiP69pLt`ad8?y`y}3p=7=+{AN>6*aiH{H5(as!j=VUnT#8ne8`~f)i z?<6Yw`vt+i=?Lyuddpmn4^bC&+_pFD0Q3O6sYEElNK|*VewO?Plfgu-TXA~qa2}7U znj|r2%Is(w2zi{H-s1^R!&%U0mNbUwb&3ha!z#R!K_#O;NtlF}I(Pd!)!tg^u_za% zc(dQK9#Bd$^oUI=!t;+oahX*w+^`XgM%r zLZ}vSmubQM;a}TrZI1!tOUrpe*fQK2Hv)FegwavTu9;c&7c}oHa!tC z8Ao;rf``G-Kce^J+;2n0u{`Mv-s*uD7ssg8p|?Ch_ZVW0f8Kzj=30n70SBY%kj9R- z5{A{CI%Br#>d3?M^K(K!K6UZ=s291t{qyl?4&PgN1LyyL&g90a$Rh62LE{M7(8~{N z&n|2RDL2vls?!)!pFslmKZ)szxWs?sccT$q<|`*$%1bK7_{iN69%NxTdk9D;!fQb4JWI1vg^E^C)TS`XpJ>>R22Bj0_U~2kc z)XCs}ZfOUU+VHA($=ZcUv@w7q(B^*rnNnf=^!v1uXVP)`dwPyM{Wn=1c$j1dv4=;9 z4E(~?{P@6&<(4j-HeNEiMDMSGm?d1N?U*S6E@@YLbDr99b9ex1C3 za$E1>|u{og#U<8+7D0mcp~6af@VmlR9m4wHzSo%X|b7Z>WmUfpQx)!D`t2Q$P>I z;Vy9|Cj@rcJJE)rz#c#0T znLx9XiAVgqHP342NL<+?m1@n=vl7ef6Zf6{$+5Di_hyH%3~0cM{sP5>!Tm!Ab0C9i z@=|BYF^*?*?k%WKQx8?-PxqxX7bz#BX&y&50a4LN{x87%QquwV9?Fn3DSfwRij3UN-@}^ApB%OYxmY+iE z)l!Mx0|0QIDm&>j*~MUGef$Pj_J6$lY5QsR@oxC>#b^a&Z`+Zl!KnN4;~CDFmbZa9 z5o!apbf8^ZbD~=;sv<_i5|oz*$U?iMAtbgMweewy;Nj;50VOVKOJ;v_!BlumVo{OG))V0USZ-$PkXqT{Ty>f+H)It0&|B$dNIEe){@e#m)`aX~#9+_6Oh= z-)a?H`I+h=50HM;=jn6yTq0)l0wsUpcv@b&Z5rDY;vV@NsU&*26L2;_|(1vp`{q!U9Y-v0N6!CZQKj%di4$@{hi-%q<`B+wJk zsHIcsp%>NV`vR)L-r$MxLOCn}+ry&w&*C>5vbd+Gz~XZ= zQQyWq{;(&VFua<|KGTHDlVyKygH4wBhmarN*!Q2erv^08ru7;~Rtd?Ql;fhdUM_=; zOg~?(FN4oK@{3|H%pw889hUj4>b1bx&^W@sHUP3~HnNP(T7EqHHDVL@Ybzpp zT0SUCgR+_O3a3L|b;DoMJP;Y8EZ+DjkRUE!9vjn}CiYqhB_LzTFte%0Y;#4F)Hc-f zNA^(=54^#qHZs!Y;x+h1BLC9U!bqfr!iSwQf}s!0(~Dg0f7VTJtk08_5ZkzvvSGH` z%G7GKy5iWB(OM1epBw@odktG%7(sTgN7o*F`p(A#EFTJ9U~#;7kpFXD8|_%%vIS1b z;48(dJo$A;a2@Tnm zIxg|%dCB#2yc^n0R?)-+_}K)D+294bOn{bWALOMwbwBPR&1A9{aU(4Dk2G;k+ydpK zh8+J&vRm5u{^Q@<*@eqleuPQ8SHPP^W4D~3xYF15$vi`P&Y;twPxQ`H_2^g~7h)Xs zwOtKcpyIW}AKbee+A#2s`?2W=HM(FTi%5xgX()ZNQJ4G?$g;}sfHJS)f?GXGl~<=T z!xXlTcK27?;=;-loKG%!Z8C-tM^P?@56US9O@2+r03xpePFc+ntR$8iXj0!{6dQEu zI0W?Kb(GO|Nd6dPkTdL)j%-B!A1By_npykL_=uw{At!M36gPsTjthP6{vUbaL+0&o zG%;>Et*O@aerS0jRLY&Xk`tW7rx5WoxiL$ zp3;T)m5iA8>lkd+Nw;1n%^Wb4$H+$ju}VF%PYWTR~K!C7qvbU7FL3k;f$OB z=}RLI56gfQ&{bT_;(r^}WJ(~ipm1|l8n;}@559CHEJQ*&sK10hwP9rzW3m!uuAcGt z872#D2!z%NjJ@$Le&?j9&P-|QSmn*=>V72jnr{qK=I&;Ujq|g|JTK#+z2GlNLlR7L zA?51n_$Dj%`rBtEWq`j@UD{-#SAVN-)~rFEXM3HUYUwq#4B$xVy+_qNj_+YC&A`hxo$4oRTt;&@h z;qnWOm0yFc==g9hAK^p_YM-(D%hWwRsECCuKXyB`k**;o(9NzSTaQ+I@-t(*h}p|w zFK-0@_={fi4+TF0OtTJ&(J1X-Ej!=C9*=rAx6-t?iVeMeRbO9U@{I;=K2eEW_QK0g zF3vhy;dH6tf=)Y1WzpF=nu}>wAguyw<(enNW6Uwrz`>}#!QoH;M0xFQa(R9PfI%0# z%Ab1VRmgwKc;K5MKb*|HqhQj}Q)t3l(w=oUikk_p7TD<|cg62vjpOZ{UZlx)!KV2w zCacaX)(nvg*iKR#f#gn8*&=88^w~6aXBykcIRu=V^E?fXife@XGj8$0l*}{cQm{rj zi8W6m^w^KPRBezV;jYh4wYtu{V>dtdn*6TxUy|c)za|Wz^QlR>uCO9{9vTHnFbrTp z!MT=`K2rwwMc@$cZ7i2;f4W4}vz2FwLNg+w5RJj%<~_l-HolISMIWvt41{%>g^`!! zlcx*L0%71-@B^)^U@tva%~ zU<^%ck;529!vLoX+&^U_aHk?nl&O9FaL>^%tQ_N;o~JlIE{Gr6bEG32`j9*p>bE>_ zS8_9F_xZZ@>^Q$J59z_$BN;Fi$~hU8J*z@Os7*LhMdUlS{57q1`&$>aiR$$vdIMEc94vq%Z6u3Ikwf+#ZCOoB)ExRvbXcj1Cj zl>Q$iarF0ir0R5;atf@teI~zdq|pizr7Y^Sz=f?g+G;vUwA#wpQr`Y*LzYw!_NNrv z^}KGZN%8mv{+KlAsOG>4u7Ue>;tllN6t;Xfe{X&gdGolEKXsX=civKV^rdVHfTYI%^-t%s3B?4V~X z?-IZ&V&oW?x_fkq=<&CeD}tUQ8fUte@VG%u?yBV7%-eGi8rpUz!xD0ONbFR=%xC9j zH$TzOwhYc43cmi1*0Zy?YV*AttDGHN0j&FF^>+L$i0(a%?m#h&9xhV~B)ctDF4-yJ zHC2mmvw73ES8l0tKywPvBbd8=rZ88otpx**NIKyxS$s{ieGjk*=)>IfCd*Sp?)2Bc z`xXEDS^dmgef*U2DOMg40rx8IDh+hgpq^t^cGz-7*cecN=5CY~qd70y+cB>c~+D6%dXA@XyYc+$suI?^B`e0Ot_PWz?NwwrCJ zpQ`%>29MM8evPQ1-_zB6axC)Pzr|~6-mU6O{maq(rM!Sn12O`C?6kimq$C(xAH*@e zStoUV%l_Tm^0g>bM7&A$d=9IU4oKrFT0rN$RiD_4SvLK>0IS>Xa|sqvN|~~8WZkQB z=W4@VUd?diSq{y+)JYS!^=8}!Y>@N5vvw7=S5{3@C!3o|aNm!P z(_v*uuKmk%YxzMd^OJ_{Qlwepmrr@X1O*9*Z!T+F=-CITODZC4i}xaJ{+Zoxy~v!b z@mlD(mm1Ssm{AS5VZ1be2F+bPO zhWK>(EqpJ(YsF`;))qvs*O^+Gg!M-UXG#7+hO{Al;(F35)-)^CV$gymb|UnLyuhKz z_#1<{V)OIvG8S zls#sE86vA#6u=>QNqoFs70cHdVo!^^;Bs*1HTlcH$$8Er?uD0c!alv&T?8e{*?(Te z*Mv`~2&dg?hlD~MHPQ9o$j9Q8mfn)Vl#i&b-`$-&h8yx>Uo^O2e+#-;{iZvIDV|hF z7Wtz@SOkhmBmcRiO-ER+q2WAg>@_cmlwW$lsrP`99>|^Cv*xzcaU8dm7#Y#5ph`3C z&$xF#?iak|UP=i6Z-QuMXY*?eQQe>ZtD7EPQ6XEA>d+Uq!JulFGC zZ-5(C0Hp83oleucHM;Rfocg47HKvK3nDE+Z(U#c89@6Jh=Qyi#utM@48n^9NX6JGi zNV@mO;T2i&)42va@F`38FOD{Kwl7xtKL?RJyljX)h8?ZFJgvR_ zcORJ_73C6PpT8tNTod_tPs%&&oEYOb7DlM;+j=MD)}}H_^1~}Ep&~SEHCb$uw~3nz zI7$AHIp^S_$k9m7+f*zkX{ul>v@7R^S@ohAt_I388@!9z1Ph~Nx~#>CN0e#9roHVx zGJZ!iNlmW}_ROn}b7zB-Cn^K990;)6;C5^lZ|GVjI3u^h1U#+M7>P$;aMpm zS98S_*4{^rS3KM4ibiY(*k>(Rj^FcFsA`D4W-uPA$^K{K;9Y-Qhw2Zpo48B8Rkqj8 zO!*@8<6AN&?>hY&Kkc)Eu;)EBfw3me;z$EvmCJT(UqRxTfUKd|S)(6E9_@ zU*Vf%*4EX0cCm|4QLdH#wAllttcWL9sh(${;&*Eupf<-P7C=+GqrvVdc#+@RiC|dS z$ zmSkAjZj_V$CY(tojCD9U!m^&$1~21hzEYPAslSg--N_e-B};FROzMGLWY}{ucHydm zQj(Y(Bd@kS)bSYC-`%j1Sf?VFWIurPRg}|AXQuhC;F6p;Aw2#W-P7hN3 zh(W4#He55f*+A6!G7Y8Wxrt&x_vW!iS++3?%hC^U$n@1ryT&+(M53M^xjMGKse|X(;LAgGZu#Mmn>-C(n}Ys&rm<)Z0EzVkfb~&{bN%91P8XH*{Hu z_fpvdbhWV?#ipOudf88Y9yPpk*!h19Kcwd~vAq0=Bm}h2{#Mp}L@(}}YTR)qXRebC zma6A<^POKwoP3PP!OpY?C^e^pW0ErS^0gpoAk`HSHY4@fGld;8>Y=-ymb)JBjGUkz zoXK9W93YuAUJ^5)09NUNo@85V=<@BU!Cw98bVBB|7WFs53F~d*MI)A0s!N<`^jB9m z);lBS{a}DSRwiCY<2`s%s(>`@~1K*D=8xSceJpwcp`F_{f;P6 z*p{29<;!Q%?2>oOGoj6=Iw9lGP&o*rPI;q7iC`3H7legs-NGh`C3LPY4Ao}Qg87%U2EDc$Pb zI_8Et3J&s&XHCD!p!JigGPPf_IyjDZL*gm6ou4CEn;Y))xj%2!)0zV~LAhsF+1Bp4 z=awmC|9ubq>4e0a1X;c7#w0v%pKUvg5X+V)r_BdmS4X@`+2RuZ?s~F&e2hUeB!np7 zlY&7ML6Lt6`Mw!b`ZEM=JiRWTuNt4!X4Rh}Ngc{mhhl(}7anCOecJmZ?~ALN)HfHypPIE4A^UlwQCvly zsc-(eDIhnQe%5(*gla+t@>J6z;@k0Id94&rsoLhq9@@m#@G~Op4L!eW!eweINC*b3 zFRtPb(@a|SLcUV)FCWKW*l|m?>G;`0@SgTv8s2sc$8<*j!1Y{&7mgcWOOjt_daz~_ zC-NX~Y)Z%K)|x{lU{O27FTlkEWUx4u7G=MA75T2`2+qlWv*rhLyZt}$BAt+aLebO^ z0q84wbyJSX?(>*BHS+a2_QMxum5iai)JIi9tmv?ErILFEGnTUOKqXZv>q@c>wES*N zjwBW2YyuqDi8pN6RY0M9ECR2sH9!`57ZoTz`iPPZ#A(00IRqF@xApz_OVP`s2+1YxJXY48@=z~L5y2K0q^JC8 z$O}ykU2A3=d*uR^eEV=-zq@uV+`tJxny#}yDT!W3E4t@G1jJG&0pG(NKG3=d3&29#_~Q*FgR~puM-7&$-OqF z?Wx=4M?fbMcf^#T!jqakbrub$;%5sl2woUu|B2RaiKB6(9AVys7q<~(yU1?xz#GTM z1IBiN?ri3>qMO`a^;yDo2N>tYtav+jl?kqjyFmss|82a`3E2N{uX123y2HrV<{#^k zPl)$7A0Gpn<(zn}*FG{p&nxpj&`s=jX;hHQ9v~N5{2n~)NKo4w(*8v z{%-WAh??y&#*%1uq;qDQA~w+sqz6xC18_6Fg*+wZT?1Mh(uG%A_C@04duAdToHhv8 zK9!q6j_R~bp@jaRHuTMQrmJk-NjTBO!m@;$15X83UwoU}`;)P*jO;Z0qhsf|997m4 zxMreCw&y=D&5`qe+P5YNPPpBX!hUXqpb<0I)|lHn=_-9JH!D-5y#ySysBWx9eU^~g zET&xgP?BxfCmQix0?C^(mi?(EuJvQsn=7~jxps{^bZhm%%?ZH_ZsYNB&A2j53?~vS zsbCFmPTKRQw+owFE>_0dYlQX(Yi&xa8ZT=E`#eXqGS3ubH{cr5p({b}mD*#C((X%1 ztZ1ebh1dn)wl#ilwf3H@(rr%ErFPYI;1n9AIy zjeT2_s;rZiq9nACOLAAzv0;gtvVL5aGmHC1OZ^^!LndbbP!8UZuDgoTt=eM;xjv zwKA;a6Ke&0VaQDkM8|)(H+y5{yR7RX#WOGSsEa4*kv{nIrgJ?d{Oj(`a`LL=#}K6I z0|oFrlsSI4FhKdLC~d_^XrAfom7N@wATVo8-UviIqa4?Fd1pl!|{k8RFf zksJH3&eM`%tgY0&!Y5=K@AusYMVG#Hn5zg}nd#J55FHCo`TYzaHkI>@tlY^JA@T#~sPM z&)9F>2^Vcu7s6clzE^X8mHYZCujJg9hQbMmfo{*ggmrkj!wIJvh0Po}xBl4mGeqiO zd55o+IK6}_;)>6H_BgjP2Ak@%@xD9(?JkEQvn%K~_YGz2bSArCSyI*cQDIa?SKvH! z8H4xu{u*nocZMUHOBv818IczxiXOLk7$_({oMhF5spZ-H!e}_XQ4W>5``{4 zZM((X5k@Y^WN&^@FUIPUPYi6xp8ok=QNdtBs!40inOH}Cif4N6?PJ3ZXI}POplT~# zQ23n#jcBK*g(~wD_J%Y5+&~+>*>!I-dmTMi8xG~L!EC<2@m>Rxwcpj|-t#WQe2jXl z6NTbvIVL~=<}CzZ3bi~sGP$U*+yNM=_OHya-XzxsnGvQ1$P%g z=4IGkm_gtiT1b@9-<;kI(e_HXSB?bHXiNPU| zwjxG?T{-KO2ytBlkG&~|MFTxUjF?^xsX?@}f=MABw0Z%Q%1o6LrYxl7qH8{TCBkF_3sK)!QlJz&m=X3vHr>TP9eleyQm$-{!d*`JGFexaCV_9E_9%af_|z%EY> zDH)M&`$+V_lzEO>LL5E?_&M_d5gpstMLSmYqWap6!DIF=MHAHk`5Y?);Tm@7Mez%A zYUx1xDrxQJHF3dy?kEGKUyz`Qy}r0Q?c#FO&x#npYy9}!R}KF%YPtIHW=tyYO87t1 z@HMs;DQfwR^})x%Es(=!@7q0J?p@@0v=#GQnhNjd6)ulcDhlA#w|Lo4gUR}+V9tt} zuq31~k$;&*S8&OA|6MCVJ?GoaO7CvvVB7=V!P4_Lwv7e|nPK$5TWG14GGofE`E=Bl zqidpgQ5*Bg%V=!@f zJ+9(&-vqa~o)i_O1BpA3g!ITjPvLDu2xMd#-O-a4{HX?RuS+b1E7#UcT`g9_3OG-n z9V?HxOUFEW@3+kI5~rZ78ZC{r53fIf4fo(AT_(qOjUS%260l-JjDiwv)jY{lySv6X zcC$oWpRWj3<~5m&1%JT7i~UGgz!7fcEXP`nN}LecvT`8XKtPi)vHlB8p~D8AAU00M zt~XN}9$j8)Lr(4Juh7dogmTyBaAfIWjj2DV_>P2SzRuCdV7p|gA%Q8Pe5tIg?XGbV zz|7XcaIhu;OZ9(f>44o2`QOJl%Ft1Y6XN~fwuIu8`Mj+g(24@GAKmx1cstw?L67t0pV}My6&h)6=bZFXE%_CT1hSEZ^aA-%VN5A^o!rYF;c|P zy)OwMu6JzUa#6SaWnPjOtu7w1xuQqRq}x}f%8Q;VNAKi(Rws?HY7>y^TMT@K4nG^L z=6|R+x^B=T~R{A3IsqXQt z;AHNGsCak8P-!%#{#1y3Z-d z$J#1nD&-hEB2Ov2mqtz@@De)Q=hC^@P_ouy-t95fJcDR(p1B<5>C>uLsdY~S+UP(! z9z-8h6p=ne0prV#+rX#6`<;FA`u}u!QHWH8paAGn(^9evdS=MkJ$7;vn-9Qnlqb2^ zxG(*igU^W1*Qdkbgr97LT?Syit7s40wdjp(yAQlfa})l z2*q7}eTV^PR9H9f$M3!@@G~FpKa!qcp3k`DuS`6m_T9g8&n$4Ih>R%`B9CZ)Qck{Q zy3}(CP2}wWQ3_SJwV!hbVc8#*d;+t5 zPh$Da_T7Q8bq@nf3`bcfoQw%Q7$V+Jzrfx979Z566@ZG4gImv1#B%>dOYhEvL58p* zTku4Cx~J^^k5)HuT*QfXEG*+^Xyr|KJ1-T^NBMW#QURH8g6@xr@;#oBHNP#iCM}Fg zWmN!37)YS=yDfP}7lJL0{{4JK!*@Kdb9UYULa%ZNx3k}%p|q0q%~oGg;@bxfAZ#X8 ztuKi7E$~p^tR-l6!6H8CqpnBh{4QtGVm|aSYG*Mp7KPNE!WLGJ{yte?Ygp$x32j2> zH{;yALQ$!ZFFRSEGr{Su%3!r`+-$<`ZF;T@RrEdyjJ2~C@HWsGYw1L2J_nTvAj{sGN=A?5B{Lz)$|A@}n5^*C1&AkOHJ^AnRoTLc&vicgaM(`H596cesD z02jT_EZ9fX#5;xW;l>oba|W2qXk>y%O1oVc)`U93WYxNLex1ij2ZV!PyBRs7kETlN zaKb|b-lH7r^Oc0aajCE1QPT#J+>)%}yPBvhfbe9@4x@eR4sI#2Xa#I;dJ0E21sS_n za&uvz1)Cy+fq_1*lM3fNk!ghD06Kw}kEd`+^)#Mwx_5M;0GwaUcTF;0ufNuZ7 zh`iwXPP3Wnli;0qg>u>ILCy^P_FwTbB4?FYqZXj+bPUJ~I^7?bc< zr-^oCrOy;ImFwzou#dM$u;qUBb!-H~*M2}+*U@Ua)DFRG#J9x@D=>nDz{)v@Yk|w& z2Iq+0Qx{ifwd9)nz4hfgQ$(6*D@WfS>VN0q`oK%=xiHEfj)SA0-jnxUbnIvsQ;s9n z$gnFxWuly};cK=0?>&KJ#ZbzN*Q>npA9PQG>Mmslzb3p^*Rq__a(IU(FG&y;4yWgP zqv{U+G28+m><`>&JX{Djv!QPNV4u73fgOaNS0&qISV-|Y+b8MqW2Jp@S1Yf(5^rQG zvSsq{ffm5hus;HYB- zJQ3%NSq>EL^_7uLugL(t($x_Dv;{S)E}<;Tr3l?h8e4+}d27Ry99~8&y0MB3Sx3ig zt3f~Je=ya5B-jfzQv|gxs(jhwdz`O$f!o|EvSo_)>fzY9&Y41|f+yzGCJwxmAK3(& zjIF_X1P26t9{eq3A9za6PUSSV#(PgP5$rTbH`L#4s>!s=6bP3wgP?jUZA02K;)7q# zoy27j_JpI-7F(khU|JM+u+Lc-aM#dPi_MXckkH5Vte_oW2pwu*c_c^PQ8m6d{!bxz zoPusKb5X|_CKYlTe3yKwoZ*`4WFFBal^CyH6=i&T_^Mk@C682VI|nf@|Og zQY$kiSVQZ)A$qNKQ@q#fA0KwGe;bm;l5Umrw=zN@JJ&&3V#}q~e>dHxs)D#~-Ae`h z!Pwg;^Oo=x%HI_Y4~xuwJ{2fd=8Rn?wzxI%l)Uh#sS1ot`yM zC5cj=JV&ErWPG(Tp~3UChKg@_Y zGZmCB8$rVE6i+8@rwhWik6HMY>~h2LVk&u*^<&TCIWz>FvSr$IWB8f+f2-03SQ(@I zQCO)z4L%pUG z_&QK6-;2Y&5_;BU5Z5{RLl@h%10SF}64_7tpYd%hgOFleVxKf!R6=c5!qqETmw9ac zag%798*X)a@5MONGZE+}M6sME!b7;9uu96$q~TT$o`}OOQqoiF7W<(i>FEaCx3(}4 z4cpXwNpY8|obWz@FsE6zEvA6{_ebv+i)}A_Z$gglF8sc*L~L&Oe>`@1z-?$T%!Ss` zV>Z*vH^Lx`35aCwbds?%P`s&wHR0eG8QK6dpNGB_hf;(3cSw^7@|2{ z^$tcft#Z($a)Ycle4d-)M=%s9#u8n;a#u&pnIOXg1o#JfFy1bFJLTz0tpVQjIT|-8 zDrB{u^H}a2Fpf}#`ed@D{&2Lg@1RjKURw2(Hh5lpdW1YDTBiY3XOCl zCqk_|TrVzghWU2)hOJ>`ysh{5FMf4@>JLmlkhF37+oLRYkyL1kUP_T+jv_CP-4Gl^ zTsEyS(acj1`l{?ZaRbHw|CdIhqdd8UNuAK$H~z!<{qAFF4N2ezkh~ zNiI3!4?-x3?acKZXt=v9NO;HN$F9<4+PgK=+_!A!QGGuA7V>S|SY((-psP1ln`zCl zg=@QG#|&O11FR@tGaouC%t!_{-Pb$Kny1hNDXBCm7i*Ckd#O?BJx2vBV@I}ykcRU7 zSt!&1Pkb$cFXt_eEMvopgOgpMYN749H1snw8}fOEr9-Faj@p+P46E2I^O9xboDK1R zD*S~-+4-gwW>3O0b8L!Efxnd|RHs71g{5hEc1tnN%0k+)fh>hU>QRFAI0Ph6r%J;O zIoDWkgm5~}_ezdlZse+`tY&2p|Gct|g6!G}Y4@!65#z6ehyXNIFFVZojq9R2j9a!Y z+sYk%ab~>no`02H3DrOa?`Z#9QX(fMfWl#dRTO8m3M+D(XEC=dZdE_aOLm(heMgv9 zs6DrJJ35^we#-N7vqfq4)nEL)x1Gd>>W4OSojb3@#k;i`0Zc^~Lk;vcCJF@d(|+Uf z5{oVhz<1j;6ls>9mpHr@Y1lU@ikpwZQ}|`sK7r1sG-{&Am}SuiH5b)_T=v!R8Rz2c z@J^6;1AyxEP18@_!sCV$lEn-=$X_An>=4x!k@p{BP*?6#Ag7(PAGj!-wygt^Y#ID) zX>9k#iQ{z(+5-43sr&gOV`LsfjiQm?<;Ex*`7=RD-bS8x+gvet$iIq=9LkmY8>h0~ zLXA@?HwL8VzvY=ICF@t+jsDnCA>KBtrp8@o(~8Zg-@)gYW{5H4K+ThV@l=j^*)voc zHq=YyDLP+B=#=+L{cbSy@&(Guf!9UCOf{ir(B>}P-&7G;qiIP0KDW+pZVhMMxNMx2 zp04Zem0_iJTH29_&-J(=vuK&USG_fa5P@j0+)8k?;upY9MwYezJ1Rro0S%o*`-e;X4;P5J)m=C428Z3xl& zMu)yl?^(y|(wA3nzj1BFlUs>kSa5o8V22Ntc$)<}>F-(NMk@HST-@dy^Axibv!sJT z1Z+jbRx{oJx|(Buh#bDNJdMz%MR+v9W_Act>uVK=<1nY7W0qDH+%pmJp|o^T+BWyg zSOfMvZCJ04M=1gW+mY!xW{0}&luC50Xmlv;Mo$5?CLZ$J-dS2+_QrU6G=E!(glpj^ zZSQ4<#RJ(PU2ZCW`L>oSU96@qrlq-fJ)ny| z*sP!FX(ShJ{NU*KVPyZ0`4fPRG&+-ot6V63$F~%Xd1`vya@YqO`Fa<9?Lb*+825#H z!i&#uik}73RDj6oomx*9jw-*wPZpZ^-}aE{TLcp{)>ZEHHhP)jhd;KOJKJa$ujb(p ze<#h;jaLk`P}Q&=xtzkyV%fqEQ%Ia7ljb-@PAlZ1i|zA2@H^=qutl+rx&OP}VyZ6# zI-~$<=ggrN6)tBp*FLn)xydvMxWUf$~=`AfClUx%V;KwXjS^8WVxBYq-K->DL zRPYR0E5`K~JtNQTmt$4$);~{70%DMz)6d29u@R>PPuGc^yp7W~5BxOdXzepL#yL8s zS-D8k+VKusDHZsKnGICc@$DJO=bTTVI2H42P5tssZ~$;;gtcY|tDctssN z*`Bw|1PG%iOY*OH1I+2;Xo{#eqK-?9;0vd>B!B<;OMB43I!NHvly1EUGlPcH0q+^| zd^P$#{Bm#zp>|-(eE|9^STWW)3@KIb9|4m)KFYqR~R z!{xX)884-l62)Y#!5q1Vm2-4|IzfK&%lEr?P%F~j^uGhZeEb`o>`&qCrD9WpR~akv zet&*`v1zoN$#IlT_3`oi^t5N8(b$!anFZTw_w)c|CS4T?PnmqZB;xueBS7FA{vvS# zqdwlVv?EmfUqP=K6QtYZ789c|DGd3haSX%hbABg;lhM}HTxARO>3ppr8{nrsWa@9_ z!+h36xJ$se@CiErr1rj30iZRJU<{xBY@~x!u&@pxwZzflZ}Hl;gWp0-CcJx3+-h;f zhj-2fD`IV$@vd+=WbD1ebdMJ8=TB-VPyj^UlJhZ%Hyf8!}wU43#u4We=BCj_j|u6jZ9@SgETAd-H)V5YRT*I zQC2R_*wf6{mdo0Qg)GM85g^7wVV;9z0by{1#*vqOb13NKBi!2HPqB=!48^zG@@mF+ zDq}Y_GrYpqdhxbN;$a?#6{>V%;n(7$>x%JyP96hyQ8-AhG;*87BHUHFJWtv6txaAE zk6Rr3wlv^Bch8=ov>VOqtCCvlv)gc3U_$qdF&Spr!fR7K?Eq$-GK9ZwUMTel1`$p-!t3H=4(<&B1`Q%$9WjllF9rRA=w?p!CZT-W0Wz zW`G)5yXC&vZ#uH`SRGM?$ebNXuvolK3A>|SK~;mvpR%zex1A_;=af5*>XZji;i0pi zunL?agMnvcvBH~O@c8PLf2z-c$7}uX(7!#up|uvHp*$m4Qv&4@ik5tW%RP=W=6Wf~ zimfg0MRN7Is(RW_x4zpTvKo`%Xe{a=Scr9;_=Y;$Rzb1da4R(;vHPHHAzXcIZswea zJXzx9OB7Jbu*lIUker(XM2jf8OfQNX(R@~*asH}s>w1`spHs-x+*HgE651=wMBq16 z;8f@E5!=QtDu{wxGaQQwI{v*k5OB;_fxxp-ky6==O&N;cO;1BJ<)jNcCoA4X=Do%Y zNqUaa9f-^g8IEa!43A*gGHIDqE1jLbj^syj5=(w|^L)!BHA&P;SzU_)JVzg)?FP7Q z{wj4~3AgPuiQa!06#qN22;c4mcz1a>2Lwq>m-1ZegLJ{q9+mF=r(CE(K>HdHhn@WW}l~J&u%4Ofw2WnCE;L=ZR7Z zkvyPr*e#IcrEj!X5g7@_vE>oUW>@QB8q{k{fsimL(B@b{=#j=5UV~vOq{kY|UMagK zL@aE8ikoS6co-QZy&;jcsk<$fRk7~n`N`F`@htu|j^R+sgJjd4#D^l(%G8Rzjf02W zEE9hvkGc1VEfY&+t~ZZ)_1<;HHuNQga-oC-KO&(y$(FlM%sr1`s*7}q`R2wQ5Q<^& zamYvexw-cqDKWv|*23|)gB$8$>zD4xHTKf%uw}VNK-3ZEK=3geXJ!lImwUPomrwNY z-rlfse#7_iYiPN$vWq59l=2mBEj1!0%DBOgq3*$4!b2^cum{{37fVD8aU-jJB6GuC zGi&CKc@xu#@~w75!y}fY(>?}pd7pVzA2p>i)3o(R4-I0zs0a1*w+Ou=ySD%Po4JgD ztNBEJS`dao;qdR=`S5%}Zj-Mv_57KY5q`D@utQkngo@O~#W;#VDpzq+RjN&(A66CK2fdVS`)K)`omml| zHLFa-F(jG9TVq*~+RC5?7CYY=RfxK!@#O-!R_e+x2EO4l=%4AOKisOk@8!0F7ybRS z-jKzAr(GTac8u{W&tJ)PhEZRqgC;vGxJSS*Ci{-#pK` zFN-I|fokxITh?vWR{y5iaJH9Lj<3sozlevWUJWT(9v1KQ9~RVq4QF`5KfCHnPb5KJ z;*-i~d1bJGx-eaSx-Wy*GJxDBC9$U?sv<;8cC2fXagvrqe{E@~U8JE4YKe!80$TBKI=dlc?6Qh@`FVL3%6LscB==bzhqBl|D zFORgAb6Sr8IojDYVhH!B{5i(*J%_P96jmv+xU`fwV_M4^q0}S&BgLAjTFkc9*_k<6}$21HcFy{}jJz0e$zuoNjVv&Ymm%x&(`{1pv5;{LkA2G6^u z&nv~`eeM~m4yfSR*VT_9&$;gWL8o0On#a!JP~^6wu9-#Tz1GAcd=eQ8Ojr63Qjzpw z%Mm{5e`CBiVeJ1_U{6oQ#YXCQ3wpG` zQl2(TKB2n)Jt?>IYy3c)+Hue}r814$stkq}{laVQF`pV^AqFkA--X%s4`1fA^d@1p zVvd9gU<0;YB_s4PFUrxg%~nku@anB0fR z>t`q;pDmZ8Rp=*&UP4=fQ&7Qf* z$Y{j)y;>ydv;zPbO@}$xLg6=>KZV`alZ+LOf2XARSA{&hMq_-2@`bOd*;^j=StEJ1 z_WpiA>s@BO@ArN!?Xk68FJti~{giKcKoS|4HZ9G~`=40P+qz&RrwANY3r-D&TcHxe zO(3C);q7Bfzw6cD;@SJPPBN6^xbZ_G=&ZOiCZ3a!-b%MdyB zTI=`kyx}YLY)JC&up;!1?}mVM@pPx0b%f_VFa(2#IzB$Ap^g4_ykYJ0(O?H4o`&T? zWZpOu(g8B`gBcERgm(@J6VPE_2B|j z8QVK~q_(7HN$SWec-a&33Q4mdUJwn2aICEgdW{ml?{otgOI*7P_{h0^CkkkLh9dOY zYr9`l<}X%RsK8l#_&FN&X5GAS^rUkj!PG@Hc5~X?56FSX=jeSTOC%oHFq+J?{OAR% zJ9MaDa=?N*z}#K?XCDvtN_mgke%bCsvJF3lSSvl<_#gTmLHr{BU6bFS7^vW^mpCV% z>npcyV+Qx)oPKQV$et|ACAs`?I&442y;Eu1GGiSj$;jg0s`6fp?u0Nsfe}74x883B z-sav>ydnMZ(P3P+(LkY|LF>ATUO}I)qb@(<{NvOmSqz8|)`&+)>nZPgHD)ej;e}d_ zW(QwuQxU!)2u?K7)AnO{xKnSt)AH+xK%M$5%lZ+_+eTi5SBT}j132W8HX}ufuQ^gG zZoKw|MS4MpLxqm7f^!NRz9EE&!*SYXgFS){7Op+U7I^BSFJ)k~qw3wk5j`_!nH)xb zmW#8TMqC!B9@rMh@23;(4=Hfvw*Xm3Rw?*ZEyQ%Rfc&I!z$5)@Yw1&=r40vEBrD$) z;a)pm;Tvg%fV6u~`>8>p%ZB%BrtTM;Nl|x?cZdsQ-uJ!4f23IeIvN3GV?i8*SM%5j z&V#n_=FVSSFHb7&!i^hEl07kQyrY{i;MJzz%|ZOiH(80hD^NUZ_y#T4kN*4#O83u% zv&bNaK*jtws!}GBYPZjd)r}$LxdqnNQz2E2YhvO;3XLC9RV8sp&CkO6tMTYqXZy_M zrU-+)I=Ol&L#o^88TG@ysPuRR2fYhMNEebZJmlxVDPPbCn6Q5cSwTd?WXrxo1C!^=a#LGy!xu zf)US!vE3EmTgcd%sd4?b9XY{X7_|*vy{W%X8hr%U_bUgkcUDfrENyA5IyKqehU7!TdYi*8jzKZ-I_10~zP6<-z zbYir2#d%v$Y)rm(OatR+T&9>+(UnIhm!}?jmpGqA3Y0bV*Q{!sFO$FY}CT_E9@k=e~uJoJ4#yyFJX=D38AdbWkwEa zt@Z5R?Vg^n1Z{k=HmRAeu9;Qc_Cul^6!!N)#z&D!IZ7IngRmFdy4^LEX|sjEqLYTN z`-reGs`Ttppc-q$2Yl-oRmYt3z{pKuWQxxUjWgRbQgV5x^Q}0LDp}l`2v_blkFBHO zc@E^n9~zY_2vc1}C??05YZlP~+GyI!3h|0UPv#y!edO&5p@U8ITFI%r+wOe-423N2 z1T{(LkByO7|J8cNV(;`tZ?9`lJ7=7G`mT3k1&2oMI+KUN6X14a5h)sUtV|q=IjV46 zsH~{?!O|cpdL8g2vHahAL`<RYceA!9yE`8QX(P_K^Bwv1=BZS&_P?JG)S zZlh;)F=LYDiy(ITCO95PR)`g4i7Z-%&BjKu0;&TAO@BB&e$cS1l9oNP02$ z9AofKn^LkG>xBXM4cSsSbrJ@gM)Jb&PUl3#BxmPv^1YkJ%(-?VSPbgiRQ&$D&#|Q@ zpUeyi`Pj6Krfd@-kppEJ9WmW6M0d`SpsB>?~0q&*0S;IY`)4)$LxJj zw`+w_&gF8>(UeGWi#7Y%Vd~F^I2aHM5!Q>hzTopo%h;`_?cIt@azYgaP-}%IcaWst{1QLwxr0IbC8gIxy-$zF9hP(X|qVD;+es`z1 z?v1nA22S~k9cNcZJU(Jv_UeVPwD?BEU*tw6b)4vCqtMK1N3h;jyy=d#lsq(-xn+UI zOLIO3Dy2FeNDp==joK{t-Wi@~EYj$bqFizn!MtT&Wd)h#uUmFylDe0ri0D{F3%nFR z<-zxbJ6B0)E$YtgaLhm-4uEPJu5;wU8*7cSLObC}R31^ONjw(ibRG{WuJvH;#%fhZ zA74Sh*(W3et(CLy`9WOfF4@U5rwVs)*7~Vg%z#8$@LZJn=bl8_WLUj1=E?Yyy`ajf zC0^H3gr45}11OeJPonkQh2q;$y;qm@nAjIklkjNOKX_#A&rnpl+kSM~t({|u7I=!x zo((^c7)*Jhak~5ZEEx3-C3;PO%`<+~`ypltdQ%lCbS>zP-+ zx#gC6=A91b=K~ck80}>0_D$K%7o6>O=9c*w|u7z3qH|j9GzC^E-DySVgrOZ4P?{P1+ z4MtXEgbn!x%yA4S9^Z;tNwwga_B0#KSc!jjZKT(LX0)Se<*y~d-kI~wbyrP-$nSsq zu^dBm<<;;sF+A(8y*6udsxwaJpujX^2OlU^N4UmfC{#NrnI|q3fi#dPE7xGNq)AJ8 zZ2+gm+XB2xsV?P{+>~XE0uTOreC1>lgoQ?Bs_kx{Aw_0!L^?Wbd8S_Jre})ozQ6Id z!i+MohZbF~lp+9mNw@X7rG6T>o=JXZeXu-;(v)AdZCVSgW)W;xTO20h5a#!|O6c!= z;pn&RdBE$wbbsdmIJS!{+Qtn2JG*>rLOlrOB$R-j#%`an-v_zr`%UcVa8YWuR4A_q zljYiy6Y){rlFo`m)*Zv{-O;ZUVZWqSSd5ixI-icq8*Tv}o2yf?jAB=(EmLuc9v6^V zu53)6PSo9+%W#K&OZ^3)7w0R#gBvui|u-vtJCD?*z z8E+Xgx)F~Me3=Z!K|$VjiHdHn_o8P1BLzhxb)PN4>5jEvGC>q-yY-2qAJeV8Z{biBmI=kBjTCjP9pJzlR}f>7+S z(1Oy1TpI6eP3Z(zzjsPBdyAY0v_)OiGLYo*H46J$uqIX^)UUrTxR2m?Snm>^I~}oS zIedD~F`-P&^eMBi4Li1}uHCoJ+=DR9();0YJrn}JF4NYkXAE0DTk40T#gHF4JkDZI zTv?u-96ddRAjy^gcThRTbwc1@?G2#7UJ-NxS)rrFAbk+Vb3%i7gj2D6Ps`CXwx z?)Syp`)9&>uixLT4j&^jspvMssD1&!%XHisG9f0QUN@fE7rN8ftRVll)tN!{1Ocdo zvxW4HVxD3QIZ5pOgU@Zk2`CZ#N`}RUY_{ z4=Z1P8+-3MS93_THZONo>@~gmC`Pd86}A(!DnIQ415s(wS5P8L;?Pf+p3+^VaS^?Q zj31KnqR0-Wr_>U&;0II{lnEx%UyvW8EK(o)@BMZ7cc;yjHEd*7AQc@sc{A@{>5A$R zndf;%=K3;P>pPU&t}i2vyji|>*Y@ISWz0P4-5SdxRJ%Wn*TX4#{kcHezrF{G$o49OFA zqZ+bd9_aBNbiJ7#?e{QVfM^4Ev6)H?xy5h5scF$#MV?%JA+g~xATL%ZCm#usQ1RGH z4dX#xR^q;-!{e;lNYAaeL25d}*QCax2D2hQ?Mhi!pYO6_DkMqe=d>bKw8%b}PIJ#& zNQUg#m8{FLAqTx{Y+lBBb>?ZyBfk5eczdh0=PgP?8NFusW^RL>m%ET!7|M0o+*vL6 ze2B`O0l#vQkfK))M_}`SInp|kBBFwbH^XL~^Ol|QrJYLxDYEc%qm@!WcO(wpAa(@K znqvL--YA=xXU^&V)dM-?lA~Ag#lJFR3Tm zAEDiMWDj10*h`t{Q1&ba*|TPzc(5~#ts#DB>D5tGgG$+F@SA$BoJ@Mm62tWvra(Lq zDCC>{@R-!Lob7(I-G=hd_NfR`jLWTC5LvC!-88W3zu?(9 z8*jcfn`GNZv${VIGubu+XW8NAtr=WLcMb++=k{IU&W?KU>)?yO(dIw}uIrOF#^PhU zZV@nKaDl|$tuDFiO(^M2xob^HsZHf$oZsKJG|wV*q~^WGOD&2b`N7E;;=->A(-wD5 z8V|BWJT_h=GkRb8e)O@o>=#aGoAJI{p((f{cf>eBP$f zL-%%fDa*CPbL-EY8H9YQ*grbs!IkP@{UY8&Iqz!RE^Uwrv#&1$=$%JI%d{0gTxq zh%{wnQeV1VO!yJ63QmNw-@}#t!hBn$?YyhqcE=Kmk0r_VNK}2p_5fUejn9LOE4nD% zl(AZB7PW=C(lo}_%UG9jj!k>LWNHDHTR%sN>mZ|2T8=R!MZZeD18kfx%QP!rC?F%& z{3h7@wW}5>Bl7`%fstzs;VE`(_)+YX%g@5otuYd-(?iWQ6qC0(0al;dZ9fW!GLVp)m0By zVT7{LW-_-Ef8IbYK%uay{pl0@B|l$(uu_s@{%ZS7PbVMh8PT3ElNxhbNf#4q(a)_n zkOul6^T}O)yEtA)h^eIrYedX7NT%+(p_#>|OKiDX>L2<3|BMwpjnnx{-$P8!EiWa~ zMh!xrtbM`yO4CC0CnC__rs3TdV?&)`ifs4^p*ihsUV*ts%lG19U}08=;Mp*RWtn#} z-@cPmsR|71wChi_?K=>A(EF*rfUHK1&;-69o7l6`KcgM9j1lz3)tzbZF0DFxrjn&Z zM$uDhz$G8xb$@1O7h0wC9;u3?ALVFmrvZQ_Qq;g?ZTqdTco+oJ!vv*FPUk&(L$iu( z0_pmG)~(Ozui~R&&|Q1VoDZL8=6vStwnNl>((WiD%8KmpFVXbEC*KU}C1K$)F;dPF z2uR0`ti!mbc&Il{1j=<&1OJlT|_J0()7kMbfqY@8ixFy*+2 z@Y=sSy|s~NSd^-CpVUvDIiA5UCDh~cGgpO_7bg|ZuWr} zl~2Y`&G$*?Z2yHAw|*H^5ftL3!%QPa^=0UaH(Q~CAYhLljsvb-h0fvROp+Vu4rA?R z8Vj{?(mI)OW=5POI=2sxJEJSNSNMT4m9C+*C#m6pFoBV-Pp*e|pO8**=fjsOXjzhP zJEs%#-)I62F|@o_jd|BhzDr;jzTz!VF`>kG zG4&@7t5mL4tYsB=x8@&lyIMV`oB>NEaK*e*$RmJ0Uh^8|@tb#slD6v6F4B~gUz@|*KDqt%sNl@0+ zQ6ZpoXge}4K5B@3uB{G-Mw=tts#_(q-rfC2Jl+i%KFy1M&d|lL7nI6%z}`ddx_Jj1 z1dI>MW+?2txKQT;clKX%e$-ksh7Ms9m+7D%J`g@5n^^SrCaPico2$Z?NGxu5I9z^- z0{M zvMt{a%z!W09(y}}8{Z@t+aPQGeP3FnlkI;8pWtBP=rh0XzHH$V@A6zX7zPFC)>4Q_ zvZ+ur*MSQ<+zF2~?(i!pp%8%(z_0(ve@<^?(Wa*J0~sP!U&YJ$k(QKPVje9U-b0^Q zvX*SGNXO74I5CO;@!miX^Wlr;K4i&Rfml>`GacjX`~CziT40H!tXiU*5zCHI+i$jg z8e}SoR|k@_n~!hbm>8#`QFx2Tczkr5LUkmyl4_Zk4eIoaAKH*q{N@c|%cX|>tzb^hpg znAPu00?y1(blkljPHDdU^;=w!a6vqOtdM8n^`z4tCs8;o#8BfpKf3^f0xBhW*y@W* zkp*%|xQzT&wZ9iN=KkhSZ#zv)HFz(BmUqmU_{f`;Ps%Ox7Ufb8hy?T-%3(G?;C-{Q zn{Nw`<7-KBO*{Bw-uxrV#IX&?Van};ZZve?2TNoF!73JJGFk|1zV0u2F8e`lw_q(e zKllz*4^Lx#Noe$|bTTS+)l@ILfBygLva?wmY!;--BH{$YH^ zU0mzvw7FIuaK`#4{+l41)SCEo30)gIJI!|iT)D8iY&WU5yw?bWcVk|w-Wu1~Ot^

    n01=%j+Q$cH@HeVI*BDjUtFx4Yk8QjU3#CLNF!|w;f zLaM385O-kmEmSX)Zn@<;Do2TT-TzF=*j4M?%w&rCVjthqYm^#qLGys7u1}?Ze#5JT`J6I(EQrZe7@dAK25{ zk!T6f{P3)~H#xH>u+RB(&aTn(%^UOi6mRWvp}P>YzRkw%&2UXt5yHr&s#PTu@ec+z zkgz0Y++8jB7Cx|4T-Y`*WBR9^)NdWt{TSDRd}&VCk`axG%y7ytK!KETfL1kJQ?3tK zkIrTGbhRLgobSce6!%)u3+q^f!^gwhCYK2x5fg?K?lhRjWz;8!4t+?uLAg!>F!ld2 z^_D?xhF!NXZ7J?v++AASrFe1o;BKX8(BfVkTC}*kdvSLsxCINY!M;4-dEe)pdoq*B zzk9Oxb!}UFt-|xT@-uCF7z3|3D7viUp$D_8(=HwJ{Ppv2qwBI07h6Fnz)kPWJFtJ1Sh2RaLZn{tGjUAPR<3t-oOC zk#sHcppnM7h2?}nWk>fRrr9R$%Qi1B?DA*7yY-t~2)@4E?MmkYPLRmd4Uf$ zm}&n1XY1qlSMr6K6tm6&QNon{F^%zgf+F(K%+u&VvhkMK(e1mrF6TwaKByYbMl6RXkzk@sR`%Jj-b z+IE!GvEY-l{2IYXg32suKuzrCup=ESI;>Z_A@Z=d`Q`%{>NoXiPowzW{^Q7vz3tDg zup={Ej!@hqE6@0tm2)FG*eGG6!0$kTYpE48y&fko}@z7#hhYr=077g9i(7HsEGr}Tbt+Lks* zgyyd7wi4etV6~~RQf|oc;y-8-%bf<c(Lr6!5BTw^&MH%T%ZA1Uj4-MDezW48$R1 zZ0riv zZdlSuyYq0FIA`Z@4tO~@=!*+@=tGBe+x(Bg;kJ@oVU?)45ZbTx0E}^Wt5e(qCFE&Q z!n=uM((@cF4tLuFE4yF6xKsqhYvTO&$L>{(6+}Bk3Hl(UUtFRO!es6OK))dW##971 zdV^`uVymV}AGq&qIKiTKjGZKzCKnS4likb6%Ro-E{5;eIKARQ>168Bc2De6vm>-(S zgZG$Cnvc8e(fT5Xouvf+mnX26k!2zIwWbXNuu0;lP6$=aVJMA}!;Lwyq>=#eeD66Q z(}9|MC-~3E1(SW&6NW~%9oa7?@ughfDc@p$vBmLBL|77YZLk?haTrNk-cHkHe%uS) ze=ox2X@zTfM~~zaO!RdDJv}Z&t6C9jUe7r=26@}Q*(_Z5G_o+%(T485h@{$Iup=&_ zQ2sV3AO3T7s4_OlFRB<;Kk)M@-g%B|Eao5@05nF=H8=@4ysuO?2u*Pkyk5^bTA_v9 z+6-iDFZOInY5XDG_&nLJzli4^tdwhbuck^RTrCXgXQT7FFaA21V|x`p`X~OoN=6mA z)T3yEsT_I#ITj;>tOkOA9mbJpHD`X!iE}kQTNQ)$w(BuXmc|&O#U#KHjHj*5#s<7e ztF2ZOEIFS=4Y=EHY&1?RfF|zK($e0Znw?KJpKpzwyI{E&w~%d7I4sNfKhHx0tY9Ul zXoYkgiQx~)sTS?g$I(jwa}{rM#@#6)pe~piOM4=Bw*1?gVoIcq^N`-4@cHo~l=>U2)@@6BuxZz-;|ff9p?64dx)uCgZjs zhR*U1iG!m|-jt}m-wDxl2g@3afQb3%Y^2*5icHQ*0?h&sLVr*S49bLT??a=opO#mk zk5~lT)CYwL^TaqJSrdf>%!jt3Z?N?4@O#y5^%M&Q7z0RT7w!&R{99FSPtNV!V=mr( z4->u#7ieg2v(UG@WVNV=$fKChM}0}1TCs?JhH48Rt^^S`D#&bde3LCi`iJTqke;f& z(FKEwq-trX^;L#ZpuI;yUdk3Dx!77;LCuDB;By#?xmm;(xYm>J`Re&bSP%YfSd6vl z7*$B=-z!Kg@&Wd=G`Af3_DTmsYffhUZJ%eMcgm7Iziy{`zVHdL4_t3*W^;Ds6fwdY zwjGL-+=89>pO^f%N_B=LUC3{fl07tmOaZnEBmK1C3YV(A#YmHCR$qVuXLEF&w}G*d z-`fD8vA?g6%cbee)z!;D26SRT`ZD}&JHRI3+4ybgtXS-&G&kUGD#HJU=D%aH$=JF= zm62MrGCx~mW+DucUwb-Mqj3{*kv#5)KU;6CHYKKpU&a!GK9UK){$mr$ddVBD4e$2b z5ze4PS0+&OaJ#Ybg!TVi{x)RQ>$U2+tb7MoG7fK-81Q=ok;rLdyk~F|vQfyNZIX~O zP;=5kT8thb3Sz46un9G@LK_oHTWQ&$M0MfdxqT)4p^eXsjM#A@|CzM+@qkM4Cs&4V z4O2WeZc+Ay3>J24ihn-E3)6;-Nfrw~?z`nF%wNG}@)c`WXzaL>N8G^QX7gbQjO$iw zzFBAd5L$k)Jkc?@ECJ6&ZJBPPORex8FSzS*Gf#t(KRT|?a#VVA;P|MOEs5kGMV)E( znbxn7PodX{AeRuqEE$x>`Y#9TZAbIUS+Dw^8(GY{b6wmJGF6j13CY;R4VhDG z8y{E9p5!Nlu1o!0YFOkkPz%;LYBow6SQxm?7#sKjyu5=D zmCqqt0I5E$?XNs2xjvf;EQKukFlBxcxOA}%4FgRaUQY-;4Q}kI>w@HE3B$} zte3WWiWahNPWO#)^@tUVdxXXZDI=?TO=|!6z>?G;ITd)UqG5Q94SHRBtq7gy;!e(f zW>(fxaHoE6&DblW7a!iU&S!?ejSjXIzh0s<#3ykGCg45C`;c4S;aA8}I^wjCDE;M}_SKAn@TZgB0&EfBy zBb+schuGtv3)oO!KZ?LqMSglNqWK3Wk*XP>lb>Mf#?!RJTYvQKcv^9VP=pS0wqqQw%F2rmDXF->Pd5UP)ohbGn^*LIYSMwU}@_%ejaGjt0sHFeEaZ5 zw7~s8A@L_ykuY1sJ_Dtl^?^XK$Gv1f08ESL^YQyV11H@$N%5y*Ka4xS9?SrWFwuiw z{Mm6M(Fn7ReWYFCos@q!x#IPHV3CDDtVm-$7)~xft)N}c8*7O2C%ts2r&FSx4ghoW zKLclX`6KWwT-i~s(|OTk9Q|Z-y_jcJm8In;F{L8CRL%^rWU&^G*;RzkAKkj5)kc$q z4-4((6!_C1{Xj)2p&i@ncxS5suCVPQ4;_Y$vxy(!h_Ak04-8Hue*boF;{ItmUdH>X zW_-9{;$JM<1nYD?o$$gIXFq!P_y9`geO$a7sxSXqkZDa@D{|}5hj`4!2g!}$+XnYzS^Fpoi+6-Y^K~>fi|u?;>1Z7-_d?!`X#C;GDrv{^ z2mw{1-1O(e)<{-`bi4CR8%#x zwj`YOGlzipbBvqIoTGxA==EPn^W@{3)G{$N<%ZohFJ&sveaw#nt{0Dk6hUo8mjo6X zkDUtLtk2ZyUC@b)JH7zO67luzlCsK8M)xD!Eli>N|2!9N$>5dC-=($@#;_t32~`x;uDpt5d<7~_42_nyJR zG^U0Do=^S)B+@`zdgt@?Uqw+OBfo}C?n8pjJWb8H5&##P$?)E_wgE8PFFV)O}_PcZPwaDc~M2<$v#QP=7S))$);Da{o{+~P9TRPisPE~zt}R!VGs zx{{eXOR-g9nBp_2eR^qnNX%`Pbtbdz*_2WS>; zkV^VQ$L3-8_SrMqd&X565*cx=Yt#aR1hzP?fTG)*97J1+{LWV=5S?>Gp?DMudF^2~ zkjjxoP<|H+BwS32=fBl0tAIve_Gbdw!qjJh6fapE?)vlT+8i2<_pRnq(Q(_L(eaKP zg|{_Q&yAz@0ioUwzu98niX+=9kKZR=DCJ}YCt~4@E~xJjU7xK*1w2x9=-SAWaRe*1 zL$IL4XBzpa_KXq?+qMJdQYWwlAd=q5tS- zucKa?7ty6!#I3156UlAJKKqwaVXx=O+QO{hgw(DijbDzpTy4dg9kyN8m!xgjas6Q` z^dPqk^PKhL6wr02gB6wRuNfE4A$BPP^=_|tO3^j1d>@EjrFy1Gm*o920nVg$KhUx? zIz+#lvDbSgE6Lo;W*^p1Dr6ylYa3?s#_3}XxBu%@S##; zg~qj97GYtf3w=^Uto9Dm8V7IGwIb;7u8eK|PPfsBH=;+&d>f?J_0r%T3nM((5tb#f zHFjS?bjhy8O^pa|JQi0JWq*!1+t@o-`H5MPpN+U>_(&@4t@7;V_)CZ<4&J+O-D>oX z2=bE#|M1f#k<*R^Z4`t8lAnZJ_2^c zbP{wf8x?y9hWIl5FCg&e_4c^r+AnEuTadtym}RsZ#r0}1)S)=Uo1;_ceAx6mSNGG% zj+h15jT;ZX<$2BOL4b%D_+$B6;FI75@-NZjWfCHIye}PzNC&hbN#5f$v+>F#Z~l#r zhc8yro7Fl{Xb(s1rd9s;yo+Fk6fY)bRDCCuwwq`#HtMPp<`_UmjEJpn?;(V74JXZw z@VJl~pCk3S!Y;nJYMor@O)p^$8|)tg>kx?&CN}7Q{&N^Bq#|ntlNYTvjSk~GcTi`S z+u9f_N1|8E2nC!ceUzXmW#}9w*ubE30TjOPJSodV%_+*u{nU^gYM9emcXX?<<#Q&a zGpG{hs*la}4aUlKKL8`Ml?K8@x$gGZhRW-ykFV`^eQtj@ub0WGdqz66 zsZD^~edcR0gy88%jYK%LV{qHCG&{S}2PFk+5fAKo_jhOvos`U3z4hE!yujp-D@s1i&@cB}! ze^Xi7n-`_MvsN!9OjQ4EG*uLe)_vRlR-sq@`h3@ZAMgk4O07!pCayATmOeo!!qj(<-Is;)**6k!puhnP8viMLdK=3%#enf_AI&ypDSVY_Q{e z(ngbQ$(HKIY~uH(zjrt!lI5BiB)qtOaJDe-|1+RTl8b@|kY)q6MqA@GHh zPG|&#x(mHiZ6En{wW5l3(E7l9&Nrg~u$6*^Pi50Df@<;|VeOn=h=kSN$I`<6HChIA zxhTzDN{x4r;>v>FqwR41DNM7Hy#{|J^`A?B?x zZ2it?qY2B#Ik~MHVJ`tztQHDY#F)-28M;wdAl?7g-k9|Lyx4WWcp#$p#I?x_jcx}m z82dAJzm#`dz3N@AhdXaNH&Zk>H)p)9bG*zxVmkkCn1yp&q;eXH@kX3%+=4A#TqgF1 zP7P2YFH4>+`Ca=Q?R5M*`-gr`Z$e%`RxEf1cK3}VvmR0E23q@o_Jxb5cMok%cTRm< zNRf*-u6yBdL6q}z@@@1O)Gj2#A`R&4j(lxvPS5r%3cGU=uqu7O9nLwcuxw@8%>KyC z@yPE#@Rc&kuahjjBKF@Pp^90FVL?NpBqw2eMk9%lvm(cU;;OALc6itSUZ!GK>d`;g z!2Rsk@OfBEJD5K468W-^EFbFQFWrf$hILSA32I=bCRC|TY{JVht3;W|GDnYNsV1(Q zR<-hh-X?mJxXOw1HNMS1Jx}jWC6rFxPJ>b5;LM9cW`S9W90J1n5eFw3rEN^js6PyG z4q~ro;v3CecUbE450PM7@=`>~A6;zcc^51twOX}i1{MV!O+NNely4c1kwB7oa*br> zc~r~;%}N#hImS;1AQ4w+n+gSdj^(P+AHMs?JcUeF-tV*uQXzTluJwPq~++KN_p>i$Rp1k!)gqR;FyZDZXXC_h#79uUvkj6Ch1h^A*Ote` zj4Yt8lk6ad*)Gkir=)Je(|%aXogZPNo-L<=D~;XJlM6_kURAx|VR4isyF|~P=YeHF zlYL&G)Nl#;Ta@Av@66Vy4D#k|mFoyaEXi+tPR4ST{?w9750XmT7JeDPlY=D;dSq((~8(^n~sVa&F3);5*;k z^lx_pou_$vmP3Z(PB39CD*q3zZ2Kc{8W$i3F1ZsPA2AXwp3LiKn#~!CN1ljYg1%^+ zaG<*0c-lJYhGpMfU2no6>aEY)wqtZGf3c~P63VgQBdYhApdYIY7}~`}$3P+{`MSEb zKo!>HXrN!puhIc_JktJ;8kyZbV&-BM@;1_oDN8Fe^1$}o2$4qX7q?mzQ>Ouz95g4R zp`-trQXaMX+Qau_4NfTp)M1W*w~Yt;jMrcactBq7$Kawn}_T8DKgk`fm8O z{l;7V${RMtQ@kn_Vh5$J%9@*QWJY*b?F(I)NJ%6!yg%o;rM{ddziP6nhq=I3Cy$q_ z{~|fE!R=_#3m8C+dbr(@_r`@~EM3&0 z4_dj|y#Kjo-e!r)z6CU>x9X&eSY~lo?UiWr3^h8r##ND}?oWcet~uIjaZ~k*GD)SZ zlUU(~)h+KCrT4KbPl`fHdEx9zdnWyI8C4{Le7Nelw z!pMBR5t<~&5TXs3tELXvCpa*d+W;EV=BPe`&hr=2p%iEHp6G&8TWdL+4Zg z|208`ZRjr(Vh2SxYyU}hTjGZvf~1-=WI*z>T?u!}NvrBzzJ<)p7G`R>LG7{LG@ku> zkqcc%k-bt3>ZYw^$wv9JS1lHLN3nl8^dvLJ)`9Jd^MPmZ!bu-4(uwZxJMWCW06l+p z6MroY!C3Pxxf5E-(}zGZw>-uEEN3i_lTH?2Mc#@ptO~EtKlR~w2Kki_I52aH8OOhr zpF~5as;k-GcJlOJ8=3};`I+DHUM^mX&)OIGD7qf4ZeQcxmf2u^u-9!&f4D&M{|WRz z3Hwm74kzxYJ17UU=noM#rn-Qqaqj1UYpi4Q&GKR@iU#@Wb-2-%K4(lT-t*G_?fa!4 z7rz_5bC9{E=}7D?=#T-mWRdX!$hI`FIGyMBTZH(h-HRE@mEISoO3#1zqMZ> zl@$F@6Jq>bo|(7xN|mQ3$HU49*43~e;ozg#q>E+=BDHkNRHSX;uk#Fj+*ko6{-3)j z-iR^$`!kEdRa^^u$MMPuX1y;&>uO2+*XsVf)sIW)aQtX0HcTGJp{x^oN%T{svaS5~ zfYOAg*OAJ)#kxQIDyIn%*Fmx!hqc3?vm^Ax;Tf(NJdX~P2(mkyC%DE`gpdN!yZ*w}lBGz_*a5REnh={17Efb_%xVk81{0sf}omMP(VnQP%$MA)mC zjf>oO(hn|;Jb9jOtYCLyw~LUR2&1?ql2>3-IE8wj}EAnKbV{BN$9 z$!ATzvpDX2@WED;u0H=?>DHmx@3*z0FjlXF7LD_5d&2z*^!rSZr{lfrR?mT9CSL%0 zy-!QPNC0rKs7eaCm_!&YRPHC$S_Km2+4I&Mq8QSxTJI`!-<&iVN5zW;U;5!48*Wr# zuts7=2+obYB}oTmX>mv1^k+5VJk_t_j{(uWvvpYKz{&2^EIt}B2Wh&G3E2hqw8rF7 z*9buoofKfHAv^ymK{{z|!b=PFbh5W6Luku8IO_>fm%CH*<*wklD#YK4T;7er2^EYd zTfdbT4JK zFhYG4?C>!c`K>e>s-^3bt;wP@1lb%;WXX4+?@#Gda>vR}PYnS96sgQ=eV*_HR^~U7X#GUFDZu3;mbUq&wF6kKItucySGs z_+{6LGO6*=i!x)8m%=sGd5vq~Ad^;X#V`OKZVSl2ZTc$V7se4=;RITl?4xxJ|1}3* zQ6dH1t{3{#C5g;{Z|(W!xGfJD1%V6cLXBM9`XT1dW@~Ib5Vrcqrlx}_1&z0M*!`o@ z)zmyX$_5kGzfmyoICvkHc)GTz>t!HhGySBr8isd3YGB z=>9qOe1V@0sUz%(n-8sPOfzTOVJZ{3Pf)&qFmE_4u#^{>CLK%td#9tDi5*#=kfYyf zW!MjDd~oaGKrSkxebBUXd9c+lg4f@uIVz^Srr(E)E1!YRi*%iAFF#X|9-iT}3pb*r zGIdHKzScRo{f>6G`qKUy#VN4f=|jQgH_Sc6NCz0!LFV}Yn@MT7Tb!r3wXj|C(+K)8 zcKSw}2)zsZ6l3Hrsl_}>a4y|L;FvG6YA0v##(aX;Ths2v#?FkVShnmqEEZyfsbl%) z=0S<17n4{6;Y+A-8Bv%>$xt_d=%6-NOFPyIit3&LQ!}(}d^vV~=N2#J+ifwee5IZEwpIjrAfvUhKKPkU8ArCxR@T1E;;+L>8gSlL(ly%2eSz~?Fl zq>G!vbf-0g8!qNfhPeRFYi!T+)%U>PgVdig)s}arSBiUXt}SX1cL~>`qrC0WE8sn#n$IdjdaYw^b+>CG~C4I%G@Rbay?#MNMG{J>qGP5n!^mtS|8QjB;L$K-sXglS-1(Z?Pd~}NtVObnV_{rWDzno7wZvSj;61F>+L;@6ZDvi#xEODn=CvLDvI`0RHTh78ATsO$Sy=@u34et@+Pyzn& z1;AHr+6VC_8pX`FrS^cRKK1(k`l%C+vSzZz92QWEzCEz5RxmWvTWNo<8~LjLueNf% z$&hV?gqmZ9@v&y@Ze;esG4E&wJGdfh-KE)fRRj5jJPNn60$&=aIgXTQJL!+sT_5~H zA_C{>=L8WZin&jHTneC+;Y%5e&$l(?8V2yVyB`n>oU^TZ{^@BR8q4=&7~8qY7>FJV zfUlv?Nib5wlm4F%InQIhrZYn5}r0_6hv-tpVFi=KD`HGP;r3OS&ABAI3X;hKSCAFf;`!kz&Nd zmen_X13vG8gvd3Im3ISA>}yw3QTUmuA6c{VnZY+rKm=59j2&8oErRXm{$P2WwXcfS zjU2Y!ww|d7C;fDhT_*Z=FlW3v%4Op^3OjJSuXcBO`~CBKi!bA3{fOvtA71`}3wJIj zzI4RrJOXUs1Si5Nyc^MJMzgS50paX3_Q!-EmGH40lwg9AQpp6YAI%Wqh}*njjy`3Z znN+e8oef5cIJ0{vd5Tre7d#@-fg8Vg^RZI4pBZ^7lw?BulR0=f53Bd&{pTkgDn{nV ztMBHK&x;zpgU_jzyEgipWLG7`dj@rF?+x2c7ruW34f=)Msn)2)qQC!sW67Ogsc!S{ zK^wdKqust`5h>$6hh)}XEa(^h6RklmaTJ1d!4L<_imLlyy$MyL(C$>tk_UT{b#&Xc z{Aa8)NRakwRGu(nk$qQIH%K(yEP!jdn#yPQw=dyN8&|>CAMX$OhTG(UR0}IP{0|f9 zS_lX4YX#gl19GrC+3HTy(&9UTS$$8=1S=~`T^W_o4*PFR|2@^C`TGgQEq=o`)n~hs zSwHU)H|#E}X#E0vMsV|`;-w-?7?LBdM~SOOao9&u*w?`+1+I3qjgH8tEnjUuOU>-g zHw;F9(PiDvKdH5uk_~M6aRQzcSoqE@dP9x+V{SFO&*b}cD&`nau@ zIb@5ZSCJM@(^F8Fc36{)M2j;7FyM$=_{Q$UCS^}$gbn?e$D2{fvyI4f1$k< zeYzb{eS%Bk6jlU4k9J%Y1PxHl48HlRMRsH{1(UV81uxS$p~`D6wZ;Bra4hYgG+E}v z2nk#(+D=PA0}q%C~I#!feQe6 zN$Vrw*>#0spPtsYc_e~M9@4;JzqouX9>)&Eja2!(>j70vf6S$4-p{i8t}h9w_pvO^ z?6NZYd4ZNz7JdX*wHI;CL#0ksVsVugtH*I7T3(p}BzVegl0 zJ)!$6G=G&yHiZ$jU!c)Ja-+T97G4j{<;Y>WFye}t@r2!bCQ75SUivemM|f-?dhdnD zc@I`YuNZ~Q)cG{D^T$QU>b%ou93H0B-yi*CClPAngEX+y28uQtAj-0Ei_3D8Wui;Bx0nz>>>`3BH#Gc(vj zlbtAC9ErXrzQW;44wH}Z#S^W?b-GrNrJi(sTMok;Y~#h~9u7$y%^F!33}y107lsq- zmT^9Z3x*&E3ECn8pLRU)_qOJR1Yj@F%=e^Av-Vl#$qi2$XhV8z>r<08V&`l}-{@z$ zPR)`h9B1EJLo}teBOnpENDPb|R@eIZ=#|Ol@2mCuT&3}8czb85_M3z+IJh!b|GxMHb&GWc;UlmM&dnvAnC?|SF_F!y= zE~?+3{&kN!5}?_hd&T5L*QgPL*OPGlbv~cg4qKdg5|vpn*s&Kz#>7z}6}1&0jeb$f zynWji66)f_oFuP_Odg>oxr>yGO0 z7u>RNK&{%;%hU-kkv^e}y6_06Y2&3{O&SJD;Hiak$l`J<3JBpH6#{c~PfdnpD^0#+ zqkGVL-dS#kjX!WVcer?@uf*SDqsAw>KFwOeoiy79@ zqf6vGv*{2UD|%~_^4Y3PtIEJ6$jShG*NyW|V8mOApSxlDZ0HkbWP5nzbWH%ptXyy@ zK5=D}kO)nfD=N%$$thiLH627wFK*rP{1mJ|i`^;Am!ca6LJU9Jx5^ON|DJ0DKhmsX-NPbmEP+XMMI{OzPG|C?+H>*54% zNdEW&lhAptr>&kEA&GE|@ zM9`|w407hnopi`?2xj#^?rSVot#_n=&I(<ave5gU^mLSgO^?MT%mLXBZ<(4SxstU5Uud)@Sv-`RoYIzdH3K@BfFiytfh0hFey zzM2qIgKp zAG#1dr5td*p9b!RK4*+=5-^m%!FB-{Ce9`PZ&sB}F7fw%T9CBZ5Ez%Mk?fIKER5EW z|6=<6`UK1PAePC*;9VecjwvvPd5=sT0FNyVtYi#I--^FdJ2#u}BqC-U{alkl*KlNQ zS?n*Nh|4%usS;<<`s3ncmW{@?JaoZ`EaR4hszsL zsINnj{MS7h1$uQCiS#&JA%(q-KF7l0p`ayBXA?bZYJF=af#!?~sXre#BXD-ZJA?12 z2N1Gh#MXr0Le_zD4m*$xfR;nXraJbB6Q^WLakn z%$3sSr~fb=n!kJ4-v9AH;gPsI*`Ek#Yb`MT4<8;oRS( z!B13CP7El@tabyyS)C(#I~dG{o}EP5)1dK7gl^RRtU!rw#n5C;ekh5B&_~u7Pm2M^ zLR-`!Y;KeKp|etG3qI_2fnP?!`>o4U&xU-d70gDRqyAZH!hr4weo2C82HrG8Iz;{v zPE7^M+w@W1d%Xr-0g$|%We)h;%!_V8+Q@?>zz-3W{XEJwx5OS|Q&-At&NwS49dsn{ z#~b5pd}a=t3SFrp-O!R;a9VIw!vxHd6}1Dm%ILvg@&wus_LD2qzsgDB`fTZ?W{VHd zWH!GMCebMOv~{&aI;T|QFtjI>=7{>Iq;B#}0jq0}gHk>tob&IvAK$&D-hS+|9CDkE zLWj<#2P(p(><{$RxIEpg-Zy0dIY?`-b_icnT4^3fwp3*;tb`dSeP}fW+kJ_;-nlpP zbD%3^tK*;Yn7KAg*~AM;8{7dRtbE$LIqTo+?%*Ea$YCRJ?$+;mxHw5;0KXv-EQLA? zt~cELH}XYY{T-2LrDGoV@wH)i?laX`jaly^p;;a%5hKu$fR~WpxYP_)AvnlNvFA6a z-l}7jrmU@E(KWaqIZ<^}1lAgzd{i)7Z8T4g*vD!w+|xiEoNs=82tGwc`K(OAo`h93hTm?Qcv(;-;09ElH=YO2_LXyTCtu?SBx>0ZZ*A;i?) zNYp5g$@9THdlKl|kZ8h2Fiy!r^xz7o{DH@zLzcYf7vXn()c=Z#P1l}CMqT$xMcfWw zDo+RJpZJd4_-5W>Rk3V94@U@2bDC88nN1dD5K zNFTj1ORqHtfSyA}0(KOV;3roXb&4x}6P5mH_!$W|sam41dHA*bdCc1thCNKEH)~#c z;fKIRgURq-!+6@k6qmZy49)yNR(p90X90GOl=VQ0JfI!c%+WK)+ zDpmLpmL=e0I-dzAKl6{Jgg?zMg}%axP~HgI7U5^BI_cxi7U3~+vg%3|Sfr6&QAR5u zrmsN4XOwEcK3dR`p!C=C-09%=BkRXjOO{pRCluA_G1AR%^yJnfigOf`S68}}m84q0 zyIRw~`y?IsiDP(8a4~`?(@_ZnK;%^8EMwEq3~>mkQ%lIk0Y+g`c?X;ias|LipCWHr zEMgevf0l9q;B^fQSFRmw@nRI$ciMR!O2LK$t|v>o9-2$X2~Aka$v>e4BeLp_bU?>3 zMwE6}KI=dk_<&X_-40NJ6qxdj_u$FL?`#A(DXr7Nkczl>rejtoR1kvNdqbjdUto0 zwGaEz1DE&RBBIc~YU7UQSJ3m`E=+8y{PeH{x(E}Oagxo$Z~xyGQqR};rYcAIBEWrP(#`W9d1xC@jFHHg=t0q;-mb=ln`3_V*!zu-EGIK79 zGK+Fye=rh0R$B?)vIZbV;mZv0Xl$1T=Ta)RE8Jzki6t^|k4EWxK}3CCNK)BP;i(=A zfjuP**~}kHDf>v$EHiDx;pXUIE6yuYftn>O9-`Mf!e!Wa58^2A=A;HCnebJ z%R3WAOIeU=`6-ixNm3s)>m9g}E)C?I_#n%VLLJUHC>bIUi9i=n3}&Dfu}gY4diR(_ z!(7{GV4wqTf5||Q4r#6uuq&Uc&Q_2T;TZpGgIKG8-7iZkPKDxv}<+V9o$A<(9g`CT{ULD6yc0PEQ3MbeLZ@7?9in zhd(aPGJN78lWTaS`0IhJYdY$-!^reY%l<+7Q{Ua?a>|%K%8~s#r~F4_g=7(ypq>J< z5A!lhCs{e$^Z$yR2*9>k`HZ7naMlco2On<1Jtlx>_FG5IQ_&>;(kuC8ZuABB_2pIV zGt{NjsOWv_r-%KKk*8{7|GR_eq+PyEQnt<4B7XmS_ar}IK;`5cNbK$UxLV4-YUcXC z=%!Mc(;$O*#q7z&C)CVqZ-SlXU z1^YGNas3}%UU-2Ql&e~%IAp_(A!`=3f`A&$v^lY;zNjOM zo;~x6$73*r_S>rD5~WRtc=Z-z!{m+uMqs9Qr+mWt;KJ@E?5L6j}}DP>fxBplTW|UhCts4 znP7v9y$&>AO(*Mo2PIAH6_oUY(MpfN8h!(!>&u19ks)U>AK;y}u`lqhcx7Zjp+$cs ze`-`@0O;-ce{Hwb#?h>rS`BPm29=24KYNg+)znQ2lM-kaDkbMTPTGRX z%TB}Ua1zL)X<3Ex71IZ+K|1HIi}k6=Hkuwcohj7bONu z4|Yr)8i1ccYtpH1t#>vhA)n-v{AP5d=9kgi5;j{rOuxHatzo@q8;1}o*+Zza+davb^4E_N5@0MIYUj>Qjt`e7@m5$j|5M1wB6Or)nX!N z>f9<+rB+(0Mgof((g?bRv261gb+axL{=1d-rFG=8L;vcP!br^6MCG_@-~__LqYn-p z$sJ)N!jEKP*{|?gZCqlWlYh zbv%RP>KQ_~G7?S*2S#Ghc_XcT|KI#d8c4tQmlO^nqMqD`<&E3y=Agl1ahU8u!SwSnR{OVbp8k z(bpMqswJ|YQj?OueuD?l>0IDND00ozQvbCHd1M={5?2|u3gk&o4)yf@GJD6MhcPr6 zX!+yAm=vW%WHpvKE$SgEop)YGPbTAhpSA^TNf0uRoC^z8re$TgK!XxQy2>^ZU98$D zwP=1v;M_kgqdu*^U_u!fv=LnkiKS+&2^Cp^Sqe*_326aq_vhiBl$n z&U{t#*nxy)bSvWd%OA?0jKjrMW}JuW)y4a3P$^$VpWG%evddr8N5)W6q$#0w$cG1P z=SqbzYLTB$9V_~gYpM+*NX`s*vd3;%+nzK#-*GZrS00AfM5D?HqpPL(&+YS@OPyj$vtq%BucjPdu09~#{TLbZi?;rPRk)vTR~%PkgU*O7?j`CMupoN{s!Db z*bilKTKcov=8=8Nv`FPAf@}@hFUe${)kqGH^Qhj)Hsz7A)tqmIvNdv!fY&6u%A@lc z<6vfg(>hz_{iv=*Bs>;%YOXvWon=jd!Y$U#PVjb7HvINVbQ%ZL^BZ2YF0N*|zT`0O z68`Z2*j}bYTtzK8Tmlry?-8Zg+UJ`p%3*F2jwKsqGGnm*U5c7zvba3)BhcSOZNt*2 z*Ii?T(>|j{y07}F=_m{8bNZxQXdzd5mK#fnN2qQLkKL)OhP9ogwdgn{tHfD_Mk+Fu z448ItwAXD9q#-7=mZARS@*7FNg_;22S6@}0SD&mA$|UDisgo_`%JK~_cM*%JVhZY< zewR`Sg#zro*9WWlet~(dxn?znz+`J;z`@0Idf*khT$s1%4c^raD%ugRG+j z?zZ_8F)>Ea`KC&U(P%Ge-zns&#qInXPvJ@0>mY(B>7efIC3b16P0s{dy68m4)5tjI zIWjom<_D{0i$X8HTjMVTgW;B5*;NdjL4EcO?W%FSf67xL;(M&C%XafZI$N#kE^$eYJ=OlhT9^gc(CAZ z#R7%mF2yCdJH;iq7K%e~r??a?P~4%o6(}yj-6`(y=Q-p3&vV8%MlN!bo9w-p%r)m+ zg#y^(2SieG7j&Tu5CLCOK39@WludJIk(`1iWElM$cdaka5sVup-Ia{P>^1PL99#KGON+ zw;N^yCh589no~?UaXN9H{7TpdYHQCdgvbIWo%gLSiOu679Dlv41Asaw{hZo6&4tvo z5lj>BE@_ixoCecpL7{PmXxk1iU#04!TF!Om4U2)QUhZ3EAH@VUTOdu zZQJcv`-IrPx?xssc0s1PVu9*b0Tm@hB!|lAL3|`^ioEG)P8~*T@rK@A_RbW#SkSxq*RCYw8*~2~LDFa=px%<*rIS z*Y@YdQh@XF2y73CkG+@sTVV|_S0c>oP~7jvrjdHpJlrUKBoutHuumGe2QDPIL#mVN z5#x`%I6EOsMk$m^c$1Y-Y1wvf;lQ(qTH)uBfV=;XFSXB)<})Q~rQ)(Ql5%R%kzn3NN~kB^j*x!CQ4eEHgOTC?B7FXlPu@=USCU!vfl>G(W(bz+;uAY=POdZ&BtmqG)EpNM{Gij$~A61By zoj0hV8ZK7?$;#`n@@LIrx_cp%6BFZ+D zwJ^~62+`}Ag!j5JE$*%L`_h!>jeF{Ypu?K z6KD;voD-dInavVzEjezX^L{h1w3R7n?tewo(eE1M=HS_ckOiAn?2~?OTKP%H5fhKn z+XI#V@|PL{!+ZjIxAg4EC4D-UAVfhfc>0y6>S*qnd$W=h8NYIzTHW;V2Y>C3duYtnm_?~uQ z)BLcCCB$9NLbI?D?5SjLu{w6L$WeVl57@s$$A3I2xwOIWv++{b_rJcM=^Ftu>{dl4 z)&dpXzW93k=~y~FovgN(R<3q7zTB@qlBoRKaqWhpUczCC-$IuPo72Jtv#*Nh5|aGH z27d*d}ki zTM*FN>6>0ZUwS6ODDPYKZBnJ?j2C{RUlAk(IgG(Y)VrI=jvg^T=QYj2|xJU)l12 z5T=|C#Ax25aNN8{;d{keOotaQIUhp`yc@SR=|$wii;JyN^uTDaXK&U$820&9Qtf{) zC=OXMgvGj@-&Q0UWV~C}Y#7hT9MAvzSO4VD-b!t;Qd}2SUl(n|a|{!;2oGJ1a}>}% zlK#^}R2#^p&kdGSusP7oOhv7FAW1DkT`=dntE(R?qLh}hgcxS`#2bYFG8i^_(i%3F zkFGm>to}>PG0BUh7e>M=@6A^Hd5w+PL5zgQV<N z|F-9Yr-z*?FA2DD{Qr=(#xefM^&dvbJW@8cc&}A2WVtbpByl)4#7W`@1H!2*vk(sQ zb$g`nwj( z-?2G`kW}6&l+1k^hi-~@{@`^R_Q8NEo`qvkpBLDvEo|1bjw}u79T{4zFF#-o1|Ge*(s|XdwVPK7_cr~ z>5duvZk4o8btcJPYQN~kv>NVk#X8@_$5f%PD_MaF-3P#g743UK4^7?=-;C5z5jyMC zhoSQIa309p>V<6zFnlN*h z$Zlk43N4~!H-!j3Bg(<% zoVn3>Jh7~^=)J>xjAF5RA$=Y@L&<55je3i(xW)Wq|7>fn#=rkChz?;{e1NdbJ}$>K_bs0FSRc}R`ePFrwdpt5k2j<;>kJ>ZZ6RC zQL95CZE}j^U(Yll(!0D+qroJUrPEI2{myH;QuZUU#LJhsWM%iRxga zaRdq>5U1}+lxwDQcm$zDH@Z4DL8x}Gt}hs znQ5YOVoiX9UllihSJsspuvBeOn#WEVZ_vk=>eJdYHTI6-aKp+c4Y`9%KdkbVWYGB= zbgpw={-XC2MsT(~#gR}zB0boCD@{OTx7UtAFohxZUB}xX?9_} zfqg6*PRX`E__YlK6?~yN^s~}7qG$kYFh`Advl?NaO9;XId?a@Y@&A)8yCQP1VETp- zS~ox;)Pr~EHx=_x@EL5lxhN!<{C1t3WZY(*X7}~1@sC>3=vdUfD#f}=lO8I%?p_3PAVmuxe{+wnE2 zQR8{uLHdOyZQiN(W8^fWcB-+yo!5SNXY;DHQ{=_}3F@zb<$h0?v-aO=0-nMD(;N!B z#**bmaJDl{_v~%F0c4xpk|eIjOGZ;t)Q3x99|f1mYez6vrCbJDg#S<}2GIN?NYU66 zO>>X7KLjm-5wRZyxaPSj%y46L@*hIXEaS-qrYn~?oDhF~cTpirM>pI-YTI#bJP}~v z4x{G$DH*?4k15C}5>6$GRPV^IrmaM1#uVM>MS_;2)a`V2U3h|g!mA9QsYQw<3mD)& zwAj*OW~@j$3P4C12>Orv#3XTMrKdJs4-eUssOtHPJEQjpGiZmg6_XMq3+Jj_3V5rk zz6DIg$6y9~(`=rir#x()0n#ZY?>4Qx?Re&Aon3#S!UNiNMXh-BRXjo#(RutOB|vA* zH96ac$!C+jUii9-xyS`s`eTOw^9cr8|Kug6IL2c8Io!lzytlD^#O#hLtr{fZ^vqm) zIEe`(*1WPq(9Q(XStc=7-GzLo{{)Ga_$j2pjNVAS0kzL7B~JZ39LJUv`!_5B`-iE3 zci`PJ8xGy-K*K2TCN>VT<+KUoty%4cO)&B&skb|na5NBBWMVH==8d`cw}bu1YeT-_ z1Z;+uE5f*IN~6Ck={MGE^MrA2tpS~~?3PkF zZBZ{nxr~u`=$N{qU<`E0?46f2XLt7=YTa*g<`Om z;ZiE%cE)?zGzY);i8w(KL0x11i6|RIvHa0m0K~9_+4qMXB>6bWV-vmLv@vFaeT%;~ z^?|i*aY+qz+P^sP1NgeZ8!K|-xS=$sK#__nc5he_5_y4{Qi%6~lPcaeuIMp^$#9Cw zI3TtFe>Z!6anFs5Ov+IkJ*RB8*q|!NxWf5by4P+NYXbA*x_~{CD5+#=Zrq?7uYV1x z+ST>-u1X<>sjz~Sw+U;+$?zK?OEtRhzL+0dAeZ~wBwC*%^bsQ<_9FeJEsTme%r*?K z_EX3Gv84MjrAWv26_>HVc_=mnJkD}j0-VLMz;_+DQLVeslW?mGtCM=DvEj|hBH)`OxXx9R3j05hB4F9X6!X^-X3W} zyF33910ddd4m8cz;GJVKC`PImro1KeQC{0OvtQb+=FdAMiQwXiugk$DG7ELSwEwQ}R9nMJ=kI`;-0VUw$iU7-eC|A^FTlUJ44UA+N8?`g0q%w^3EkNQs zjVgydpc+@?peo@XY+AdcGj|6ABF_d-u$yS%x_{3f^*=#j5V?5To?njPk@E>@$k2QL zfe~d+@?$`SC)}mrBg>b#>H3d9B$!|t8uFKI^^#*3n5CiOT$H`N79y+|q{+?=4?k~K zAh6nnF~tkv_0UtZjZN{n_Mr*#Cb=E!9$6&C@ciBWVI0)P%iw}N$grL$Uqk;r2E?^} z(U?SP961#zZp1ZzQkf`Qx7)DG4%^F`c5s2G3P1$AF|Hp#QiiWd`D#XUD$AL5*%oi9 zz7)xfSS%vbQUXy6lz<)IwBPHyZ(^MP2^wz((Oik|XMSsf|gsNi$2; z)}qYluJFZ9jQae{*vKP)-29@nba@Na>u4OuPoMO~kn-d;KnMLs0BM%vKB#>nNeaK3 z|FnP&m_Y`7{BC-n{{Ag)j_gOJiMWj>1^WzBPf^Z+xGxQx1_d(1BSyP}Uo*E-K6-~Y z{}vg3I*WW2FXf${;jrZGV8FMca`SCP*viJzK#ap6yj^No=s!__0Fv!&b+0_mTl-1x zA|(FOg2*T*LGXnHwZ0uG;`Vq4COA?VbN=|)XL@&b0R*jf4AwUC8FY>+jjtq^Pd+`} z9Xz(ix?MG{@}yc?#-0r+{tGc+#-Lta2f7n#B}oqkZ|A>^QJ`MvWcauyGKT82oeAr^{npNUv{B*DhpSUfW zsr8n&7nv;X-tpVwpG>SgguJ@Q(jPYJeRZ#vn15wqI8Ti^oW<4lR05G5`-xSJ{!o?r zK^ht2D|<6$Td+duWL4C>8cTSUo8LNZmS$^yTiQA(WW@{GTz0ZwFa}D+gsgGQFn6Za zIdkt0*GJ3~80dho9rc9_Qr;-w>9zaHKF8_}KV*ln4wOW}VRN z5y=*eRnc!dbLc->1>M_?MT56h1s{tUIAkZ@{KL@k~%@d(PyJsiFeehM>G=bZj_t*iCm zR=c2QTjsns16^l@)a_j>x>SwxNC&FRJKUcvx0BlY)0qzKxuH~yVblzu+_hU`(ouXr zgaX#*UnfV-qOEBmu*~e9{DUZ;ZJivO_VE+6B@8svhRjv_qvmH>FF}N_P=s`2_ z87Zi1;+wYl?pvDc2%3W#cK~&Gt0v98XNB*N%yR;L*iY_h)b+b2Fg?E_3bn(}`#<%& zaKc!$GlgKNjpAt#EU)M=yK7-V=FBZud;E3X0)0!F!4cSZA#rtdNQc28qpYE_xWZb$ zQQZY2t$ozx@q`!j{CE3o;-=H<>>vyj6Wi(kZsErNF~k36#QzTTZ1L^^sDBDK(*3{c za(k%YO?&&q^Bbw=j|j(N0wH3BZ#&ffBmg^P`Nbd|w@rXA|||S*h5;yR<3ROiTWlYl2~?AvcJ1V@;0rC zYE#B%qmNU?oTzQs#dAMY{ByI{$wQ{QN$7HZbI2{vw^5DL5%aIpk2v4{=#u40otkB8m23rye6?-MZM26*D5n-cw&7Uh@%5 zhO?;l+{X$U-t3agU<;B;>G==~zT{P16CWD@PlZQ+s_yJy4aeahmveP?42RcP`X)|c zUL-LR3lu^g$`tMWIiw0A)rT+ptVb2f=SyrGf#U^EJz)e`d{uro6s4@0hjUEAt%!|Z=hSJ8E4^5ksU*jkZFVG8Q8ZSF?a$M=z_RaYA{5sy^*FoSJ*yrxNgixsWqm+KTJe{12aHz|*fTn{b~n$fvAMm&>l%`Onr zFgddeclR?!gODFW#d?*%aoNbH0VE%q7^cf_g1vqNH7Uv+2K)>jOpt2!B>~I84w$&LLD?qPGR7em2MtdJFI*vjY<$TO%MrcpF1XI^Pl6)iX=zIR&e`rhXZZ zbrc5hH1|Dlv&|n`F)WfLqMt3v25a6FvlHQw@(DKn+~NjjKcv=`Tz{|ca*jVHX}Nxk z(G%gR`NZX6E;q8q^O4WU>)YPPFYHlAqrV*L-KnQj89~d4@!7W1gj#$&l|2<~%r{kS zfkk|J7T0FYKSVz3Jg<9t`QGA-PGWN}cqIK+*Fo_|&*}OeZvAICuAw{|L~a8zq@kEzpHP zs1}3hn2m^y9?$iS-7_yc1POXshR)_fu$Sy)0CX}(H|LWJZtwQo#YHv=r)W9RGE$c_ z{oL!-bVfJ;;R)URhbl1mt5~>B%fLY4>1qmeEcWALA3^Af+FsM zvKbCB#4fK73zWUHs@s$hu{Qn5+%8(R-%QMi3uv{b_!>c5!wTKzi#FaDb~&UWpeok# zkieZp`xKx3b&L4QZc9ZBC1at4JzZPbOIPsv(AyttHa0QL)sLa9*pDc3(@7#ZH7(4T z+e!U9WSJSPvv3_3yP+F8Sj3X%!27yc68q-3=r&m72e+B4aB%aiiq;>$Uav+IUz--L zBjH+*Y@uK^{cNMEHWxK@J4?{_?Qm}-7QRSt0z|LqSS09*XOB$!N^LtzL0rw##_tz* zN8*)hzB~h~abWu_7N*_9%H(ryFlBg(#a8+6+Zu)%NM662)JNu$Lo};zQ{UEtY#-V@ zG}Z@LdZ1>xhjYSz4qqFxs{Z>*i=n8O?&3ahYf&~?eTE2>SCW5K{z3Wb8ZsvvFacXj zYejrnl*RZ-CGgVfb(+i{c1D1AC1aBw!+uf~vWJdP3cl`Zgb*|A0aD`KCfxR7X^0@XuPFD5I8WMF8Yl@+l_rQMBUD~$eD>VA~URqD`)x`nuo?Pvp|-~@;CSc z^$ZN_^T4U&D3`xeoq?0(Ua8-`Abh8AdC#ImkQC&J6&4e?t+NaaPHMm|*okior!BSr zemv#ZpPEb?Xp6nOU|z-HXYYAajE^wvshX|%ARNvm&r5K$z81VRn{=fFDe08T+>J?( z%Ax8OP%2UqR`ont6qDz1a0#SoJer?{*P<#9s;UymOm)<{g@0I*!kb9YNDb47iN_7C zc@%rHM{?M8{Y8u}7yV87%Q?%wvZrTAGDJs{1H{zucH#@0K0dZ7H#zr6Vcu4YU#wJI z%BO6OBduj1&EG(4_}o4o&s5t|`&N1c{FjTFZzqZ5?Ni`~5$SBZxa9o@`uEouUBq7+ zag;y}?6nG#7-Fq13!N@6o$e44wnJ4!9Ma}+wa%2aEVYl92(*{fZ?2>^^boi zL7`9LM{%`X5y8U2i28g3Q#uACHTY+IrBa!L)NM-vyhWPs`(tzBz0`cf?4fYiC=dqi z3I9T}wFgNEV}`!N_o5a+z6$6 zIBg)9p={4iFDjgC(th)4t|aY~wA>h3C|-vNomKQ3cky^)+V*7Np9`kUlgJRSkJ8ol z#$DVpF|{dspQ6v)BS?tttev;IC~75JrGibS^9{yPlo+kA|NMd9Hx~<%zSB2 zN)SszV&@Zg>IOFCDQT7-D6Gh}9DV)eVjS6z(1%h%riTL%&fxZAFE{8{#?-=RhhD$@ z@QWptSIK+}9z+|;RyB=xrf0MDZ@+ja{mSTH$MS}qcsvubX?_Ib0A zzE3?tZ&{g^a-c<;{;*6Xo#jMCG&CMQyS%GIPtr+xR2*>nyD&B|#w3e4 zi;bjAeG)$3)m>l9!Sbi|A1u{0@tbi$CYfnDKB>XcqoWh{XuX!<;ixu<-AXQT{`3 z+Cz`yfxAQA#xMvdzklT#@`vDn75bnc8Nq?GR+NoJoJ4Wc+-W&B@YkT&6&vsltzC!B z^wF{_hdXi8rC62)dz@L0!X#D?%u*xWpyq2BB{E>xYsDbvWR-n}_5A9pQ8V?Qs_RC= z_Dy%KAH!sU;WD&R*Zga?&lg7({=Kd3g5f8jQEY$V;qz1FnA#i;PLbAqBSY46k>~5Z zZ3=&jGM-K$HV|l4pZn!Wq^;Wjs&!T4|2cj&yzRsQA!)q&_~rQub-g%OMN%SDeARdN zR#F-=j(V~!uwicd;D~<5y2h}TT^0O!@i4bHjyMO$6KG`1pK$tyyhd$y?-KADS;(n` z-92K6X)vpCcZ0ptEpa$vLoi7dP1lQzc#wY7D)f4$A5nCToJ9fm0CnK}$*Dgty<4ZG z2X2~h#4Z74bOW8Z?`dE4afmqYq^BX~f+Ql|O*?p2RHmA(VGxZ@6JD(8%?a0#!^)VJ zNsuS_`k%ys)f>1oiGJWdQDlH5QFW#S3}4Edqee|Xq|ckEn6!@3G!6;0et9_9?PM8m zn^fZ6OZ_frY~gMDkFQ|t@OfYYtw6TmtIV{De8KIB+*tY8jM5UvpnL1N8&_2m=NlpP z*PD+}J`L=hyUPQ&pAylwZ@u*3VSY&Z&koSXw0G(Yq`FxB6wwhfK6G!=HEmLqqt^I$ zjJlmnN##@!8L2Q6bUKl!hG%w>XfACD7z3HDm ztc|z#NLLp4QFSydArOT3viDtx(3|Nr_T)~e&b_-<s1+@?O{vxiIHL*HG<`c zpns=6+iDxH?z3;3;Pdtjv~Rqs_UO1OK=^UL+)?=@(eb6m_3E-RcB}Q9{D0dmDX)b8 zpmqWlOpD?VvurY=!DD9yi%Wz`y#GMsHOr^9ev^4b{u7> z?;ULORWeZ9E?S21V$Y*6PEQT8`7UP(&vKQ9N{r|9 zc$80uhjUpkdlmA28jbv+I5=(M9P^sVJfVl;peRbfdf%QD&PNdH)))e=6N7SDS8E-EpkfHse1c;1w-!M!`ni)}< zUxkXJrPYa%)U%Z?9HEvmVo@xz8&RZ^lfn-2xMx@u1d+x=R*1RuXr0NCNX&yUPy_$6 zMH=Eoy%nIXDEf<@gPQ$TAT66bskSlc-tF*l_+qI}xSvQ*E{Ww7b>Nt|fhTj)J$}1G zL$(>^QZ7RPmNhb>7+jypSkqCzAF{m`9eze~O+Df#={2nAiDP+2--*=jN8Z5h2zwm( zwbagyM`=b4$8mpevY_?P)TRsStIcTZE`+k#Pi1~=_R4wPAuwEfW7Nj$^-^Bd@px;Q z(=O<*!#!uTxI@1o=x3_+-x@pn<3CibZ9@Ps*_GIo*(UB%0Vf(oyf^>T7S%XJbVNjx2m8~lf_-d?OAS-vNCXLW43bH$cmX3)p8T(99)@FOsOM2? z??PPzb&x?&Bo@rur{L-C92k#hOJGgH&T)CHfh=Y>^Xu;A) zs)vQ(b!}1ZDDB>OnJT*aTxI6L3mZd%S!EjFP>1`w&P(I)2)|PN{XT?<_g0(U_K|DG z4B8u%0E50ROR2+O8wtO&l9T6w2=K+TSCqxnzZVQc;zD%h%d8taN`v+KrNzbJ+tvjm zTQ;pZHKMTwXiC#qK27wz|9a8uL4)&CW>LJ-K2g%)>N?Cmwp^>iUTVWMY_PLLa)`Ty zzuguITvpd}2Ep7Ne|J4O@z5j%`NS9&VG_$70sDwHH&$Ia8l)ZYZo^6GVPsdXQg)PE z`bWyV6L~FFAUSkufgCVK=6_#$)LS^L>NO^a3RzJznSK@7U)rh5FiArpH14+}8C@;{ zdOezcNW$;pCw&S`dvZgrsb-(h_l|VmjY)D$>1q=YCY1)&}^BC>As^B*M~FT)OMNY-{8?skSo|5wZJ&nc-*sYdfrk*MY|}QRG$zBw=dEAl`Gz&Ls1w`K*2e zb{hAAdWMO5zXMd3MamBh)wb2|-d~4r+=~KQU@Q_a{l!+*>9t~_>vBEG%{cCX*|i;6nr^>^$o51eci#znHhzR&!qyTp+GH$ z(-r;aQ^RK{@_*keoL-0a9|G;JYt~{%A~u~}Ol+1!Ka^}3d)t@}vlNxBOjXib%VEvy z=!b5t+VE^mwqgOF=*GLlXoeA=KU;f@wEe~O?*%+cxW(kHdg>%6TzZ-Xc$!_-Ag5OQ zMa;W(n@aPWf)@ZfUX9s68he(^i{W1YFB3%QC5tBmzGHL&NqSRfkSCS*TX+xW%AR~-YH&>|)csN7cCK@ZXZoiek2%`mI-dqn?DO0_9U#vS&+0x&!KqN;?{>`5o zU$gEafl=0=m)1^MS0Tc%(dhDmuZ&rGO2T8sE?Vr>$}NgCbsWlWL_wRl2&>tWqm9qb z?|VEfoti?%@gRolAHV~e(l^!c1z0odHA?xA73~QuL&iw=V56G#y*2zs58@comAW2$ z>9GRj+3D{s74HWxv;&Z{?1LsewN4DZ689%O@s1}RO_rirdxp-hQs}vRL_Pd?9kL+} z-yxj9II$Fq51pu9duD}izy5+kGHhg;xTr`{{SpK%3ap+<*ExZaw zP9O8(;0PUpFp!=?*S$TtMFEt0t{j9KDW&u&gK9S(9D#Q?t7&~$MjQ7CDGM_%XEWuf zMx86PW3WH3|7FfGj+6Xzwv&8`8(gHAqzc9|eghNe<|(&gnTd$4GTwC3Y^Gl&31@NM zR|0l56y7&YVM1VXYU1s*ZN0_U1Cr8USO{^im!S1lEHJrg;$t!0I!|u7+}Pjhp|u~{ zzYbZ#zGozo5NvNdWlCG-zQd8d0Z#R5f8{%!R|?4%#D;f6%~)2(fAVQied_g#MK2~U zea%&44AsMAyiLRGmW%MWP<$}lNWN<-#4&Mtw`Maf1yy3g%0!TtbCuFkE3uEk#q*nc z%Ab0%GshatTf4c3vJ%q>(#Gv$grf=2x{DEM)QY6(a3T|&H{aF?Z0$eu7gO(h-OuG^ zF_2Arm;wACIUbr~4Dy&Q2`*j$Dqs%9l^r zP_Fqh8%yo$#c?m)d8|&&v)|WBBiRf;OJlm z?!7V&Po+;ATiXL5B?5{Lo3hx>4hJO@q}`YOmjeo|m-qjUrz4%!{=R z;H9l zn9`l1qV_Z!;*C$rf>tn{ZQhx$s2N9(bFY37vaR08hv$VM)dOPQuDmD@{Y@A_NUpYp z^L-p)nkYLP&>QiFX*^!hqiKaGHs_(n26lqq)^&cu$FJB=&Z1Q(jTgL3McT0a%suBJ zsi8PFmNd5V{ z2qh8yb86$65?9|QLhpo9k?C7_BVK*A-wKb+=dH4)*_SerB;ixa6fcVYTk97~f|~MW z#Z=8>SX7WPri*cmlY^>4fWmOXFQQ$}hDc70cnv!9Vpt=omHK2KBsUkxC74OJs#2=9U+ zA|ys3k_z88wc+XWoS810G|B8Q)+yMpXbYm1W(hxiW;;6=1o4^T)*avl7u@x@0CwRD zK$jAIl9CS}S)381M!SV*xZC5Wti0W=bZ;v@eOegvn{FFsU2uv&xc~~&-L)S-GhjuF zV-dqJ4h#pkbg?ShR3yx^;;Hmn_|JwZvw=Eau5GFX9}Z?lYFB-q@9r8$`nHGet`0y- z%JPzJL#&k|X#f9-;YrD=e9g`mbP@lQqsMuKUD)Ld>PLVS{**vm*x%ZzCUl&cc7g** z23qU2DJEp9XmXc=mlN)uf8%3SrH9xih@HIM1(cqGyx612%pO6Jms@ZX+Y--8GYx7{ zfb@h*B1IPG0pm!aL<4||R{Zk^?av{;H-mhYrjf7Q6|z)j&7KO|YpdI_5IcBUH?K^68<8;eDFNdZzE^pou8j`v0v{P%rd;e^pmqq=yn70emZ zWG>0^M7Z!_DDsRmh33ekjJU9C*Xc1&H0a$o`;Pd+qF8H(yl8ZMN$80=OJ;>mOM_C@ z?$|6S0F~MF(d{JU)-LG47*_B~b#fVQQMw7OWaQk-I_JGhij56hx=A8pKgWspr<#fb z?h{xa%(jEGQ9|gS$Cwz$2Dc}N&ScuIN1Ru$L*b# zBC8S;Bq==Mx93|qlG(Sg*r7l>e(n6{T_>`mXhD?4e5iL(GwS5;n2H; z1_smL>9=}=gR!E4YmnYqXp1{so&@(?=x}$37PLAaz~~nW3MUZuqh$34tQ zn<+@;aj}NXMzTq(VMFjTM=X9eoqVZ%u}6=I-s&R1weri;h{W_Fz5gYPXcspA@B)sd z@`o>_BlVCN&bj4e5N$m_Rzl?ReFDK4w}x22c%UEnFeryS;$ic760H)BN@L6Bdk>^? zL~o~B+LbW$0aQR=$0$K;b}0s3@j?RmN5?!~&y7YbHJv^S^At+6R~c~kh12pf@6N|5 z5uvQ`?BX|q|32L2*Iu296=czo=Rb1KXq8x2sy@rK9T4UVAg%`j_p5_C2zGIx6qN_4 zY$N#kN#D^kQ<4kzDzr)0XPK$!jjycve7(g;5yyKX#3wIl>2SGfPlED65e4ps9={a@ zc?7lcg{qgjy1g_cV!jtz>c4$U0VR#itVPv1+M`$I9iSxm`D#@s1C^G)ORB|@@COHy zBB?|Tx|$Re{)CUyz9d|Y-786k9=GT-q=^02mu1q6(cO~5(W7`;}*W4dueAsW3g6T zK)B{`S)oL}Jg656OocR#@-~Mw8yXIQFacAaAHcl|TgOD+Kyp}ag6}ss5^kHsIA`7x zTu4nDPcy>FdB*~o&C5paC_$=4ZxEa1nuBR& zvwceb$Vob9q)^(GXN2%H9rI+3Fx->eUp9_2Y@0j=CWVc$ohF?qV(->dLn6TyK|j+E z1roT{;QniDz>&TIY97mxwp*vnZ4rNq-&p>pk*A%(N5y^HVOT&*OSop}>F(uu{P_p+ zzt;ea*-aUk?On$$3kT<9<56e4YYXH{I}aMZy~aJ0D9?jhYv1*F4m;i`ETm!d> zD|>#HY14w`7h$^8e?7rQEOWe8uN_#xdbzyfxC1Z7YOtcHO^NTf7sSAazvP+z=G$Xb z(yPD9P&aT8LWb5fssjoH!7Xhty|-GnLF}b>`STgx1zm{OHcesY!9qqA z%Aoxn%v7HVSrR2Cg#j1RW82Yl!Sm8UzUZIk=8_ap_C{fTlcD%ncEGxs2j-?>@vs8T znYU`oUv_blv7mfGEcfKdC8fzL!L-VVNsmz7W*1-C_vs*8y&U9BDR0uzMHq!8l$a!c z+Y4-n52v$cO5+HDKGMoW*ylTR5+(&C()FcFboX5OADJDxuj;*cGJZUOFG1eyE(vzs zO+-rY3NMo8ljT}+UPrpM*WuG`t)Sa(Y5RePcsq@jo|a+>EEk5j^45|c*X8FkDu*BY z*|yHa<0|hAiQ6Fgm;w)UYglBClXtHsS!O}8DOy#A9fE#-u8-?8HJ%SGMLapFGp(85 zu(qXK8t!k;4qCS%@BVc}$|sF#Tg|mB;wN#Ovu>@DH(s@0Rs`-;8c;``59a1&6wp*4 zTtj{qMkK3RcJRjV`jrKDR~yP89~D;7nZ8Clhr2mf^Hv4B89>bQT2 zKfg;P4JH?PSUG->L&(0avhE;A*T#C-{|xzSL9h#RZ#;eOkm0VG~>4p@|kwB0-7ftN~;*BKNS~?&W3Z@9Tdh^5w

    DucAh8iBg?Iqn|_ldH20s|)j9E76Vl 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�O8MzJt}uAes(=5`|K2rH}sB;I)g0(udlxz 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%0Ax&Fuh@E>+i@n+FNMMXu$7sb?cBc4@f(=iOn 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

    kcMX#Mv7IsVsHR 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 z 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ℑ&;N3|o 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

  • 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

    #y$Xk6VEo|6NwIni|FDEzR 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 { List> branches = []; + late ApiService apiService; int? selectedIndex; final tokenStorage = TokenStorageService(); @override void initState() { super.initState(); + apiService = ApiService(context); _loadBranches(); } @@ -42,7 +45,7 @@ class _BranchSelectionPageState extends State { Future _handleNext() async { if (selectedIndex == null) { ScaffoldMessenger.of(context).showSnackBar( - SnackBar( + const SnackBar( content: Text('Please select a branch'), backgroundColor: Colors.orange, ), @@ -52,110 +55,72 @@ class _BranchSelectionPageState extends State { final selectedBranch = branches[selectedIndex!]; - - // Save selected branch and decode token + // Save selected branch & decode token securely await tokenStorage.saveSelectedBranch(selectedBranch); - // Debug: Print decoded token final decodedToken = tokenStorage.getDecodedToken(); - print('Selected Branch: $selectedBranch'); - print('Decoded Token: $decodedToken'); + final token = tokenStorage.getCurrentToken(); - - - // Navigate to home - if (mounted) { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - - //Post Token Decode Details - final empClientBranchId = decodedToken?['post_branch_id']; - await prefs.setString('empClientBranchId', empClientBranchId); - - final empPrimaryId = decodedToken?['post_hr_id']; - await prefs.setString('empPrimaryId', empPrimaryId); - - final empClientId = decodedToken?['post_client_id']; - await prefs.setString('empClientId', empClientId); - - final empHrId = decodedToken?['post_hr_id']; - await prefs.setString('empHrId', empHrId); - - dynamic allowedModules = decodedToken?['allowed_modules']; - -// If it's a String, decode it again - if (allowedModules is String) { - allowedModules = jsonDecode(allowedModules); - } - - final empAllowedModules = allowedModules['post']; - - await prefs.setString( - 'empAllowed_modules', jsonEncode(empAllowedModules)); - - // final empAllowed_modules = decodedToken?['allowed_modules'][0]['post']; - // await prefs.setString('empAllowed_modules', jsonEncode(empAllowed_modules)); - - //Pre Token Decode Details - final enrollmentEmpClientBranchId = decodedToken?['pre_branch_id']; - await prefs.setString( - 'enrollmentEmpClientBranchId', enrollmentEmpClientBranchId); - - final enrollmentEmpPrimaryId = decodedToken?['pre_hr_id']; - await prefs.setString('enrollmentEmpPrimaryId', enrollmentEmpPrimaryId); - - final enrollmentClient_id = decodedToken?['pre_client_id']; - await prefs.setString('enrollmentClient_id', enrollmentClient_id); - - final enrollmentHrId = decodedToken?['pre_hr_id']; - await prefs.setString('enrollmentHrId', enrollmentHrId); - - final enrollmentAllowedModules = allowedModules['pre']; - - await prefs.setString( - 'enrollmentAllowed_modules', jsonEncode(enrollmentAllowedModules)); - - // final enrollmentAllowed_modules = decodedToken?['allowed_modules'][1]['pre']; - // await prefs.setString('enrollmentAllowed_modules', jsonEncode(enrollmentAllowed_modules)); - - final token = await tokenStorage.getCurrentToken(); - print('tokenbranch - $token'); - await prefs.setString('token', token!); - ToastHelper.showSuccessToast(context, 'Successfully Login'); - Navigator.pushReplacementNamed(context, 'hrDashboard'); + if (decodedToken == null || token == null) { + ToastHelper.showErrorToast(context, 'Invalid token data'); + return; } - // final branch = branches[selectedIndex!]; - // // ===================== - // // POST (HR) - // // ===================== - // WebSession.postClientId = branch['client_id']?.toString(); - // WebSession.postBranchId = - // branch['post_branch_id']?.toString() ?? - // branch['client_branch_id']?.toString(); - // WebSession.postHrId = branch['id']?.toString(); - // WebSession.postModules = - // branch['allowed_modules']?['post'] ?? []; - // - // // ===================== - // // PRE (Enrollment) - // // ===================== - // WebSession.preClientId = branch['client_id']?.toString(); - // WebSession.preBranchId = - // branch['pre_branch_id']?.toString() ?? - // branch['client_branch_id']?.toString(); - // WebSession.preHrId = branch['id']?.toString(); - // WebSession.preModules = - // branch['allowed_modules']?['pre'] ?? []; - // + // 🔐 Save decoded values securely + await tokenStorage.saveDecodedSessionData(decodedToken, token); + // ToastHelper.showSuccessToast(context, 'Successfully Login'); - // - // if (!mounted) return; - // Navigator.pushReplacementNamed(context, 'hrDashboard'); + + if (!mounted) return; + Navigator.pushReplacementNamed(context, 'policies'); + } + + Future _showLogoutDialog() async { + return await showDialog( + context: context, + barrierDismissible: false, + builder: (context) => AlertDialog( + title: Text("Confirm Logout"), + content: Text("Do you want to logout?"), + actions: [ + TextButton( + onPressed: () => Navigator.of(context).pop(false), + child: Text("Cancel"), + ), + TextButton( + onPressed: () => apiService.logout(), + child: Text("Logout"), + ), + ], + ), + ) ?? + false; } @override Widget build(BuildContext context) { + return BaseLayout( + child: PopScope( + canPop: false, // 🚫 block default back + onPopInvoked: (didPop) async { + bool logout = await _showLogoutDialog(); + if (logout) { + await apiService.logout(); + if (!mounted) return; + Navigator.pushNamedAndRemoveUntil( + context, + 'hrLogin', + (route) => false, + ); + } + }, + child: _buildContent(context), + ), + ); + } + + Widget _buildContent(BuildContext context) { final screenHeight = MediaQuery.of(context).size.height; final screenWidth = MediaQuery.of(context).size.width; @@ -189,8 +154,7 @@ class _BranchSelectionPageState extends State { childAspectRatio = 4; } return Scaffold( - backgroundColor: Color(0xFFEFF3F6), - appBar: CustomAppBar(), + backgroundColor: Color(0xFFF5F7F7), body: Column( children: [ Expanded( @@ -232,36 +196,36 @@ class _BranchSelectionPageState extends State { height: gridHeight, // Shows approximately 3 rows child: branches.isEmpty ? Center( - child: Text( - 'No branches available', - style: TextStyle( - fontSize: 16, color: Colors.grey), - ), - ) + child: Text( + 'No branches available', + style: TextStyle( + fontSize: 16, color: Colors.grey), + ), + ) : GridView.builder( - // Enable scrolling if content exceeds height - physics: ClampingScrollPhysics(), - padding: EdgeInsets.zero, - gridDelegate: - SliverGridDelegateWithFixedCrossAxisCount( - crossAxisCount: crossAxisCount, - childAspectRatio: childAspectRatio, - crossAxisSpacing: 15, - mainAxisSpacing: 15, - ), - itemCount: branches.length, - itemBuilder: (context, index) { - final branch = branches[index]; - return BranchCard( - clientName: branch['client_name'] ?? - 'Unknown Client', - branchName: branch['branch_name'] ?? - 'Unknown Branch', - isSelected: selectedIndex == index, - onTap: () => _selectBranch(index), - ); - }, - ), + // Enable scrolling if content exceeds height + physics: ClampingScrollPhysics(), + padding: EdgeInsets.zero, + gridDelegate: + SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: crossAxisCount, + childAspectRatio: childAspectRatio, + crossAxisSpacing: 15, + mainAxisSpacing: 15, + ), + itemCount: branches.length, + itemBuilder: (context, index) { + final branch = branches[index]; + return BranchCard( + clientName: branch['client_name'] ?? + 'Unknown Client', + branchName: branch['branch_name'] ?? + 'Unknown Branch', + isSelected: selectedIndex == index, + onTap: () => _selectBranch(index), + ); + }, + ), ), SizedBox(height: 24), Center( @@ -294,10 +258,6 @@ class _BranchSelectionPageState extends State { ), ), ), - Container( - width: double.infinity, - child: CustomFooter(), - ), ], ), ); diff --git a/lib/claimshistory.dart b/lib/claimshistory.dart deleted file mode 100755 index 681d18d..0000000 --- a/lib/claimshistory.dart +++ /dev/null @@ -1,656 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:nhancepolicy/service/api_service.dart'; - -class ClaimHistoryPopup extends StatefulWidget { - final String ticket_id; - final String empName; - final String empCode; - final String policyType; - final String clientPolicyNo; - final String claimAmount; - final String claimNo; - final String postToken; - - const ClaimHistoryPopup({ - Key? key, - required this.ticket_id, - required this.empName, - required this.empCode, - required this.policyType, - required this.clientPolicyNo, - required this.claimAmount, - required this.claimNo, - required this.postToken, - }) : super(key: key); - - @override - State createState() => _ClaimHistoryPopupState(); -} - -class _ClaimHistoryPopupState extends State { - late ApiService apiService; - List> getClaimsHistoryList = []; - List stepKeys = []; - late Map stepMap; - int _index = 4; - bool isLoading = false; - - @override - void initState() { - super.initState(); - apiService = ApiService(context); - print(widget.postToken); - print(widget.claimAmount); - print(widget.claimNo); - print(widget.clientPolicyNo); - print(widget.empCode); - print(widget.policyType); - print(widget.ticket_id); - getClaimsHistoryDetails(); - } - - @override - void dispose() { - super.dispose(); - } - - Future getClaimsHistoryDetails() async { - setState(() { - isLoading = true; - }); - try { - print('10'); - // final ticketID = widget.ticket_id; - // if (ticketID != '' || ticketID != null) { - // return; - // } - final response = await apiService.getClaimsHistoryToApi( - widget.ticket_id, widget.postToken); - if (response['status'] == 'success') { - setState(() { - isLoading = false; - }); - setState(() { - getClaimsHistoryList = [ - Map.from(response['data']['ticket_data']) - ]; - stepMap = getClaimsHistoryList[0]; - stepKeys = stepMap.keys.toList(); - print('Claims History List $getClaimsHistoryList'); - // originalData = getCDPolicies; - // filteredData = List.from(originalData); - // print('filteredData'); - // print(filteredData); - }); - } else { - setState(() { - isLoading = false; - }); - - // ToastHelper.showWarningToast( - // context, 'Request failed with status: ${response.statusCode}'); - print('Request failed with status: ${response['code']}'); - } - } catch (e) { - setState(() { - isLoading = false; - }); - print('Exception occurred: $e'); - } finally { - setState(() { - isLoading = false; - }); - } - } - - @override - Widget build(BuildContext context) { - // if (getClaimsHistoryList.isEmpty) { - // return SizedBox( - // height: 50, - // child: Center(child: Text('No available Claims')), - // ); - // } - return Container( - constraints: BoxConstraints(maxWidth: 800, maxHeight: 800), - padding: EdgeInsets.all(20), - decoration: BoxDecoration( - color: Colors.white, - borderRadius: BorderRadius.circular(12), - ), - child: SingleChildScrollView( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: [ - Expanded( - child: Align( - alignment: Alignment.centerLeft, - child: Text( - 'Claim History', - style: GoogleFonts.poppins( - fontSize: 20, - fontWeight: FontWeight.w500, - color: Color(0xFF101010), - ), - ), - ), - ), - MouseRegion( - cursor: SystemMouseCursors.click, // Show pointer cursor - child: GestureDetector( - onTap: () => Navigator.of(context).pop(), - child: Container( - height: 30, - width: 30, - decoration: BoxDecoration( - color: Colors.white, - border: Border.all(color: Color(0xFFBCBCBC)), - borderRadius: BorderRadius.circular(6), - ), - child: const Icon( - Icons.close, - size: 25, - color: Color(0xFFBCBCBC), - ), - ), - ), - ) - ], - ), - SizedBox(height: 10), - Container( - margin: const EdgeInsets.symmetric(horizontal: 16, vertical: 20), - decoration: BoxDecoration( - color: Color(0xFFFFFFFF), // White background - borderRadius: BorderRadius.circular(12), - boxShadow: const [ - BoxShadow( - color: Color(0xFFEBEBEB), // Shadow color - blurRadius: 14, // How soft the shadow is - spreadRadius: 2, // How much it spreads - offset: Offset(0, 1), // X and Y offset - ), - ], - ), - padding: const EdgeInsets.all(16), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: [ - Expanded( - child: _buildKeyValue('Name', - '${widget.empName ?? ''} (${widget.empCode ?? ''})'), - ), - SizedBox(width: 16), - Expanded( - child: _buildKeyValue('Policy Name', - '${widget.policyType ?? ''} - ${widget.clientPolicyNo ?? ''}')), - ], - ), - SizedBox(height: 16), - Row( - children: [ - Expanded( - child: _buildKeyValue( - 'Claim Amount', '₹${widget.claimAmount ?? ''}'), - ), - SizedBox(width: 16), - Expanded( - child: _buildKeyValue( - 'Claim Number', widget.claimNo ?? ''), - ), - ], - ), - ], - ), - ), - SizedBox(height: 10), - // Container( - // padding: const EdgeInsets.all(16), - // child: Stepper( - // currentStep: _index, - // onStepCancel: () { - // if (_index > 0) { - // setState(() { - // _index -= 1; - // }); - // } - // }, - // onStepContinue: () { - // if (_index < 4) { - // setState(() { - // _index += 1; - // }); - // } - // }, - // onStepTapped: (int index) { - // setState(() { - // _index = index; - // }); - // }, - // steps: [ - // Step( - // title: Text('Step 1: PAYMENT INITIATED'), - // content: Text('Pay Initiate Date: 05-05-2025'), - // isActive: true, - // state: StepState.complete, - // ), - // Step( - // title: Text('Step 2: INFORMATION REQUIRED'), - // content: Text('Raised Date: 05-05-2025'), - // isActive: true, - // state: StepState.complete, - // ), - // Step( - // title: Text('Step 3: CLAIM NO. UPDATION'), - // content: Column( - // crossAxisAlignment: CrossAxisAlignment.start, - // children: [ - // Text('Claim Number: 4315440'), - // Text('Registration Date: 05-05-2025'), - // ], - // ), - // isActive: true, - // state: StepState.complete, - // ), - // Step( - // title: Text('Step 4: QUERY DOCUMENT REQUIRED'), - // content: Text('Query Received Date: 05-05-2025'), - // isActive: true, - // state: StepState.complete, - // ), - // Step( - // title: Text('Step 5: APPROVED'), - // content: Column( - // crossAxisAlignment: CrossAxisAlignment.start, - // children: [ - // Text('Approved Amount: 4315440'), - // Text('Approved Date: 05-05-2025'), - // Text('Approved Letter: Lorem ipsum...'), - // Text('Description: Lorem ipsum...'), - // ], - // ), - // isActive: true, - // state: StepState.complete, - // ), - // ], - // ), - // ) - // Column( - // crossAxisAlignment: CrossAxisAlignment.start, - // children: List.generate(5, (index) { - // return _buildStep( - // stepNumber: index + 1, - // title: _getStepTitle(index), - // content: _getStepContent(index), - // isLast: index == 4, - // ); - // }), - // ) - - isLoading - ? Container( - // color: Color(0x98FFFCE5), // Semi-transparent background - child: Center( - child: // Your GIF loader widget - Image.asset( - height: 60, - width: 60, - 'assets/nhance-loader.gif'), // Adjust path to your GIF loader - ), - ) - : Container( - child: getClaimsHistoryList.isNotEmpty - ? Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: List.generate(stepKeys.length, (index) { - String stepTitleKey = stepKeys[index]; - Map stepData = - stepMap[stepTitleKey]; - - print('stepTitleKey'); - print(stepTitleKey); - print('stepData'); - print(stepData); - - Widget content = _getStepContentFromApi(stepData); - print('check'); - print(context); - - // // 🟡 Skip step if there's no valid content (e.g., ID NOT GENERATED case) - // if ((content as Column).children.isEmpty) { - // print( - // "Skipping step $stepTitleKey due to no valid content"); - // content = Text("No content available", - // style: TextStyle(color: Colors.grey)); - // // or `return Container()` - // } - - // if (content == null) { - // print( - // "Skipping step: $stepTitleKey due to no valid content"); - // return const SizedBox(); // Completely skip step - // } - - return _buildStep( - stepNumber: index + 1, - title: _getStepTitleFromApi( - stepTitleKey, stepData), - content: content, - - // content: _getStepContentFromApi(stepData), - isLast: index == stepKeys.length - 1, - ); - }), - ) - : Container( - height: MediaQuery.of(context).size.height * 0.4, - // color: Colors.red, - child: Center( - child: Column( - children: [ - Image.asset( - 'assets/claimsData.png', // Replace 'default_image.png' with your default image asset path - width: 350, - height: 350, - fit: BoxFit.cover, - ), - const Text( - 'No Available Claims', - style: TextStyle( - fontWeight: FontWeight.w500, - fontSize: 15), - ), - ], - )), - ), - ) - ], - ), - ), - ); - } - - Widget _buildStep({ - required int stepNumber, - // required String title, - required Widget title, - required Widget content, - bool isLast = false, - }) { - print(title); - print("contentss - $content"); - final noContent; - if ((content as Column).children.isEmpty) { - noContent = 0; - } else { - noContent = 1; - } - - return Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - // Left Column with circle + line - Column( - children: [ - // Add top spacing before circle - SizedBox(height: stepNumber == 1 ? 0 : 4), - - // Step number circle - Container( - height: 28, - width: 28, - decoration: BoxDecoration( - color: Color(0xFF00A5A8), - shape: BoxShape.circle, - ), - alignment: Alignment.center, - child: Text( - '$stepNumber', - style: TextStyle( - color: Colors.white, - fontSize: 13, - fontWeight: FontWeight.w600, - ), - ), - ), - - // Dotted line below circle (except for last step) - if (!isLast) - Container( - height: noContent == 1 ? 70 : 25, // increase to extend line - width: 2, - margin: EdgeInsets.only(top: 4, bottom: 4), - child: CustomPaint( - painter: DottedLinePainter(), - ), - ), - ], - ), - - SizedBox(width: 12), - - // Right Side: Step title and content - - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - title, - if (noContent == 1) SizedBox(height: noContent == 0 ? 0 : 8), - if (noContent == 1) - Container( - width: double.infinity, - padding: EdgeInsets.all(12), - decoration: BoxDecoration( - color: Color(0xFFF7F7F7), - borderRadius: BorderRadius.circular(8), - border: Border.all(color: Color(0xFFE0E0E0)), - ), - child: content, - ), - if (noContent == 1) SizedBox(height: isLast ? 0 : 16), - ], - ), - ), - ], - ); - } - - // String _getStepTitleFromApi(String status, Map data) { - // final modifiedBy = data['modified_by'] ?? ''; - // final modifiedAt = data['modified_at'] ?? ''; - // return '$status ($modifiedBy – $modifiedAt)'; - // } - - Widget _getStepTitleFromApi(String status, Map data) { - final modifiedBy = data['modified_by'] ?? ''; - final modifiedAt = data['modified_at'] ?? ''; - final symbol = (data['modified_by'] != null && data['modified_by'] != '') ? ' - ' : ''; - - return RichText( - text: TextSpan( - children: [ - TextSpan( - text: status, - style: GoogleFonts.poppins( - fontSize: 15, - fontWeight: FontWeight.w500, - color: Color(0xFF212120), // Status color - ), - ), - TextSpan( - text: ' ($modifiedBy$symbol$modifiedAt)', - style: GoogleFonts.poppins( - fontSize: 14, - fontWeight: FontWeight.w400, - color: Color(0xFF565656), // Subtitle color - ), - ), - ], - ), - ); - } - - Widget _getStepContentFromApi(Map data) { - List rows = []; - - print("data - $data"); - - // bool hasDisplayFields(Map map) { - // for (var entry in map.entries) { - // if (entry.value is Map) { - // final innerMap = entry.value as Map; - // if (innerMap.containsKey('display_name') || - // innerMap.containsKey('display_value')) { - // print("display fields found"); - // return true; - // } - // } - // } - // return false; - // } - // - // if (!hasDisplayFields(data)) { - // print("❌ Skipping because no display fields found"); - // return SizedBox.shrink(); // or return an empty Container/Spacer if needed - // } - - data.forEach((key, value) { - // Skip metadata - if (key == 'modified_by' || key == 'modified_at') return; - - if (value is Map) { - final displayName = value['display_name']; - final displayValue = value['display_value']; - - if (displayName != null && displayValue != null) { - print("✅ displayName - $displayName, displayValue - $displayValue"); - rows.add(_buildHistoryListData(displayName, displayValue)); - rows.add(SizedBox(height: 6)); - } - } - }); - - // data.forEach((key, value) { - // // Skip metadata fields - // if (key == 'modified_by' || key == 'modified_at') return; - // print("ContentKey - $key"); - // print("Content - $value"); - // String displayName = value['display_name'] ?? key; - // String displayValue = value['display_value'] ?? 'N/A'; - // - // print("displayName - $displayName"); - // print("displayValue - $displayValue"); - // if (displayName == 'N/A' || displayValue == 'N/A') return; - // - // rows.add(_buildHistoryListData(displayName, displayValue)); - // rows.add(SizedBox(height: 6)); - // }); - - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: rows, - ); - } - - Widget _buildKeyValue(String title, String value) { - final displayValue = - (value == null || value.trim().isEmpty) ? 'N/A' : value; - return Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - title, - style: GoogleFonts.poppins( - color: Color(0xFF747474), - fontWeight: FontWeight.w400, - fontSize: 16, - ), - ), - SizedBox(height: 4), - Text( - displayValue, - style: GoogleFonts.poppins( - color: Color(0xFF000000), - fontWeight: FontWeight.w500, - fontSize: 16, - ), - ), - ], - ); - } - - Widget _buildHistoryListData(String title, String value) { - print("_buildHistoryListData"); - final displayValue = - (value == null || value.trim().isEmpty) ? 'N/A' : value; - - return Padding( - padding: const EdgeInsets.symmetric(vertical: 6), // optional spacing - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - // Title - Align to center left - Expanded( - child: Align( - alignment: Alignment.centerLeft, - child: Text( - title, - style: GoogleFonts.poppins( - color: const Color(0xFF747474), - fontWeight: FontWeight.w400, - fontSize: 14, - ), - ), - ), - ), - - // Value - Align to center right - Expanded( - child: Align( - alignment: Alignment.centerRight, - child: Text( - displayValue, - style: GoogleFonts.poppins( - color: const Color(0xFF000000), - fontWeight: FontWeight.w400, - fontSize: 14, - ), - ), - ), - ), - ], - ), - ); - } -} - -class DottedLinePainter extends CustomPainter { - @override - void paint(Canvas canvas, Size size) { - const dashHeight = 2.0; - const dashSpace = 3.0; - double startY = 0; - final paint = Paint() - ..color = Colors.grey.shade400 - ..strokeWidth = 1; - - while (startY < size.height) { - canvas.drawLine( - Offset(0, startY), - Offset(0, startY + dashHeight), - paint, - ); - startY += dashHeight + dashSpace; - } - } - - @override - bool shouldRepaint(CustomPainter oldDelegate) => false; -} diff --git a/lib/customAppBar/base_layout.dart b/lib/customAppBar/base_layout.dart new file mode 100644 index 0000000..9dae729 --- /dev/null +++ b/lib/customAppBar/base_layout.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; +import 'top_app_bar.dart'; +import 'side_bar.dart'; + +class BaseLayout extends StatelessWidget { + final Widget child; + + const BaseLayout({super.key, required this.child}); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: const NhanceTopBar(), + body: Row( + children: [ + const NhanceSideBar(), + Expanded( + child: Container( + color: const Color(0xFFF5F7F7), + padding: const EdgeInsets.all(16), + child: child, + ), + ), + ], + ), + ); + } +} + diff --git a/lib/customAppBar/customAppBar.dart b/lib/customAppBar/customAppBar.dart index 768fc9b..dab3841 100755 --- a/lib/customAppBar/customAppBar.dart +++ b/lib/customAppBar/customAppBar.dart @@ -1,11 +1,12 @@ import 'package:flutter/material.dart'; import 'package:adaptive_navbar/adaptive_navbar.dart'; +import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:nhancepolicy/customAppBar/toastHelper.dart'; import 'package:nhancepolicy/responsive.dart'; -import 'package:shared_preferences/shared_preferences.dart'; import 'package:nhancepolicy/responsive.dart'; import '../service/api_service.dart'; +import '../service/token_storage_service.dart'; class CustomAppBar extends StatefulWidget implements PreferredSizeWidget { @override @@ -18,6 +19,9 @@ class CustomAppBar extends StatefulWidget implements PreferredSizeWidget { class _CustomAppBarState extends State { bool showBackToHR = false; late ApiService apiService; + final tokenService = TokenStorageService(); + // 🔐 Secure storage instance + static const FlutterSecureStorage _secureStorage = FlutterSecureStorage(); // bool isLoading = true; // Add a loading state // bool hideInactiveStatus = true; @@ -38,6 +42,7 @@ class _CustomAppBarState extends State { // Navigator.pushNamed(context, 'hrLogin'); } + @override Widget build(BuildContext context) { final sw = MediaQuery.of(context).size.width; @@ -89,24 +94,14 @@ class _CustomAppBarState extends State { NavBarItem( text: "Change Branch", onTap: () async { - final prefs = await SharedPreferences.getInstance(); - await prefs.remove('selected_branch'); - await prefs.remove('decoded_token'); - await prefs.remove('clientLogo'); - await prefs.remove('clientName'); - await prefs.remove('empAllowed_modules'); - await prefs.remove('empClientBranchId'); - await prefs.remove('empClientId'); - await prefs.remove('empEmail'); - await prefs.remove('empHrId'); - await prefs.remove('empPrimaryId'); - await prefs.remove('enrollmentAllowed_modules'); - await prefs.remove('enrollmentClient_id'); - await prefs.remove('enrollmentEmpClientBranchId'); - await prefs.remove('enrollmentEmpPrimaryId'); - await prefs.remove('enrollmentHrId'); - await prefs.remove('token'); - Navigator.pushNamed(context, 'branchSelection'); + await tokenService.clearBranchSession(); + + if (!mounted) return; + Navigator.pushNamedAndRemoveUntil( + context, + 'branchSelection', + (route) => false, + ); }, ), const SizedBox(width: 8), diff --git a/lib/customAppBar/side_bar.dart b/lib/customAppBar/side_bar.dart new file mode 100644 index 0000000..3a4d987 --- /dev/null +++ b/lib/customAppBar/side_bar.dart @@ -0,0 +1,306 @@ +import 'dart:convert'; + +import 'package:flutter/material.dart'; +import 'package:flutter_svg/svg.dart'; +import 'package:nhancepolicy/service/api_service.dart'; +import 'package:nhancepolicy/service/svg_service.dart'; +import 'package:nhancepolicy/service/token_storage_service.dart'; + +class NhanceSideBar extends StatefulWidget { + const NhanceSideBar({super.key}); + + @override + State createState() => _NhanceSideBarState(); +} + +class _NhanceSideBarState extends State { + String? activeRoute; + late ApiService apiService; + // bool isLoading = true; // Add a loading state + // bool hideInactiveStatus = true; + final tokenService = TokenStorageService(); + // dynamic enrollmentModules = []; + // dynamic postModules = []; + + List> sideMenuItems = []; + + + @override + void initState() { + super.initState(); + apiService = ApiService(context); + _buildSideMenu(); + // _checkTokens(); + } + + + + + Future _buildSideMenu() async { + final enrollmentRaw = + await tokenService.readValue('enrollmentAllowed_modules'); // "[1]" + final postRaw = + await tokenService.readValue('empAllowed_modules'); // "[2,3,4]" + + print('enrollmentRaw $enrollmentRaw'); + print('postRaw $postRaw'); + + // ✅ Decode safely + final List enrollmentModules = + enrollmentRaw != null && enrollmentRaw.isNotEmpty + ? List.from(jsonDecode(enrollmentRaw)) + : []; + + final List postModules = + postRaw != null && postRaw.isNotEmpty + ? List.from(jsonDecode(postRaw)) + : []; + + print('enrollmentModules $enrollmentModules'); + print('postModules $postModules'); + + final List> items = []; + + // ✅ POLICIES (1 OR 2) + if (enrollmentModules.contains(1) || postModules.contains(2)) { + items.add({ + 'route': 'policies', + 'label': 'Policies', + 'icon': 'policies', + }); + } + + // CD + if (postModules.contains(3)) { + items.add({ + 'route': 'CdPoliciesList', + 'label': 'CD', + 'icon': 'cd', + }); + } + + // CLAIMS + if (postModules.contains(4)) { + items.add({ + 'route': 'ClaimsPolicies', + 'label': 'Claims', + 'icon': 'claims', + }); + } + + setState(() { + sideMenuItems = items; + }); + } + + + Future logout(BuildContext context) async { + // final prefs = await SharedPreferences.getInstance(); + // final String? hrtoken = prefs.getString('_postToken'); + // final String? token = prefs.getString('enrollToken'); + // prefs.clear(); + print('LocalStorage Cleared'); + apiService.logout(); + // Navigator.pushNamed(context, 'hrLogin'); + } + + @override + void didChangeDependencies() { + super.didChangeDependencies(); + activeRoute = ModalRoute.of(context)?.settings.name; + } + + void _navigate(String routeName) { + if (activeRoute == routeName) return; + + setState(() { + activeRoute = routeName; + }); + + Navigator.pushReplacementNamed(context, routeName); + } + + @override + Widget build(BuildContext context) { + return Container( + width: 70, + color: const Color(0xFF009E9E), + child: Column( + children: [ + // const SizedBox(height: 12), + + // + // _SideItem( + // // icon: Icons.policy, + // icon: SvgPicture.string( + // SvgService.getSvg('policies'), + // width: 35, + // height: 35, + // colorFilter: const ColorFilter.mode( + // Colors.white, + // BlendMode.srcIn, + // ), + // ), + // label: "Policies", + // isActive: activeRoute == 'oldPolicy', // or correct policy route + // onTap: () => _navigate('oldPolicy'), + // ), + // + // _SideItem( + // // icon: Icons.credit_card, + // icon: SvgPicture.string( + // SvgService.getSvg('cd'), + // width: 35, + // height: 35, + // colorFilter: const ColorFilter.mode( + // Colors.white, + // BlendMode.srcIn, + // ), + // ), + // label: "CD", + // isActive: activeRoute == 'cdTransactionDetails', + // onTap: () => _navigate('cdTransactionDetails'), + // ), + // + // _SideItem( + // // icon: Icons.assignment, + // icon: SvgPicture.string( + // SvgService.getSvg('claims'), + // width: 35, + // height: 35, + // colorFilter: const ColorFilter.mode( + // Colors.white, + // BlendMode.srcIn, + // ), + // ), + // label: "Claims", + // isActive: activeRoute == 'claims', // claims tab inside dashboard + // onTap: () => _navigate('claims'), + // ), + // + // const Spacer(), + // + // _SideItem( + // // icon: Icons.logout, + // icon: SvgPicture.string( + // SvgService.getSvg('logout'), + // width: 35, + // height: 35, + // colorFilter: const ColorFilter.mode( + // Colors.white, + // BlendMode.srcIn, + // ), + // ), + // label: "Logout", + // onTap: () { + // logout(context); + // }, + // ), + + ...sideMenuItems.map((item) { + return _SideItem( + icon: SvgPicture.string( + SvgService.getSvg(item['icon']), + width: 35, + height: 35, + colorFilter: const ColorFilter.mode( + Colors.white, + BlendMode.srcIn, + ), + ), + label: item['label'], + isActive: activeRoute == item['route'], + onTap: () => _navigate(item['route']), + ); + }).toList(), + + if(activeRoute == 'CdPoliciesList' || activeRoute == 'ClaimsPolicies' || activeRoute == 'policies' || activeRoute == 'hrDashboard') + _SideItem( + // icon: Icons.dashboard, + icon: SvgPicture.string( + SvgService.getSvg('dashboard'), + width: 35, + height: 35, + colorFilter: const ColorFilter.mode( + Colors.white, + BlendMode.srcIn, + ), + ), + label: "Insights", + isActive: activeRoute == 'hrDashboard', + onTap: () => _navigate('hrDashboard'), + ), + + const Spacer(), + + _SideItem( + icon: SvgPicture.string( + SvgService.getSvg('logout'), + width: 35, + height: 35, + colorFilter: const ColorFilter.mode( + Colors.white, + BlendMode.srcIn, + ), + ), + label: "Logout", + onTap: () => logout(context), + ), + + // const SizedBox(height: 10), + ], + ), + ); + } +} + + +class _SideItem extends StatelessWidget { + // final IconData icon; + final Widget icon; // 👈 changed + final String label; + final bool isActive; + final VoidCallback? onTap; + + const _SideItem({ + required this.icon, + required this.label, + this.isActive = false, + this.onTap, + }); + + @override + Widget build(BuildContext context) { + return InkWell( + onTap: onTap, + child: Container( + width: double.infinity, + margin: const EdgeInsets.symmetric(vertical: 6), + padding: const EdgeInsets.symmetric(vertical: 10), + decoration: BoxDecoration( + color: isActive + ? const Color(0xFF065D61) // ✅ ACTIVE like your screenshot + : Colors.transparent, + ), + child: Column( + children: [ + // 👇 SVG or Icon widget + icon, + // Icon(icon, color: Colors.white, size: 22), + const SizedBox(height: 6), + Text( + label, + style: const TextStyle( + color: Colors.white, + fontSize: 11, + fontWeight: FontWeight.w500, + ), + ), + ], + ), + ), + ); + } +} + + diff --git a/lib/customAppBar/toastHelper.dart b/lib/customAppBar/toastHelper.dart index 926cac8..05e1cea 100755 --- a/lib/customAppBar/toastHelper.dart +++ b/lib/customAppBar/toastHelper.dart @@ -9,7 +9,12 @@ class ToastHelper { type: ToastificationType.success, style: ToastificationStyle.flatColored, autoCloseDuration: const Duration(seconds: 2), - title: Text(message), + title: Text( + message, + maxLines: 3, // ✅ allow wrapping + overflow: TextOverflow.visible, + softWrap: true, + ), // you can also use RichText widget for title and description parameters // description: RichText( // text: const TextSpan(text: 'This is a sample toast message. ')), diff --git a/lib/customAppBar/top_app_bar.dart b/lib/customAppBar/top_app_bar.dart new file mode 100644 index 0000000..cb57038 --- /dev/null +++ b/lib/customAppBar/top_app_bar.dart @@ -0,0 +1,177 @@ +import 'package:flutter/material.dart'; +import '../service/token_storage_service.dart'; + +class NhanceTopBar extends StatefulWidget implements PreferredSizeWidget { + const NhanceTopBar({super.key}); + + @override + Size get preferredSize => const Size.fromHeight(64); + + @override + State createState() => _NhanceTopBarState(); +} + +class _NhanceTopBarState extends State { + final tokenStorage = TokenStorageService(); + + List> branches = []; + Map? selectedBranch; + + @override + void initState() { + super.initState(); + _loadBranches(); + } + + void _loadBranches() { + branches = tokenStorage.getCombinedBranches(); + selectedBranch = tokenStorage.getSelectedBranch(); + setState(() {}); + } + + Future _onBranchSelected(Map branch) async { + final tokenStorage = TokenStorageService(); + + await tokenStorage.resetSessionAndSwitchBranch(branch); + + if (!mounted) return; + + // 🔄 Refresh CURRENT PAGE only + final route = ModalRoute.of(context)?.settings.name ?? 'hrDashboard'; + + Navigator.pushReplacementNamed(context, route); + } + + + @override + Widget build(BuildContext context) { + return AppBar( + automaticallyImplyLeading: false, + backgroundColor: const Color(0xFFBFEFEF), + elevation: 0, + title: Row( + children: [ + Image.asset('assets/nhance_client_logo.png', height: 36), + const Spacer(), + + if (selectedBranch != null) + _BranchPopup( + clientName: selectedBranch!['client_name'], + branchName: selectedBranch!['branch_name'], + branches: branches, + onSelected: _onBranchSelected, + ), + ], + ), + ); + } +} +class _BranchPopup extends StatelessWidget { + final String clientName; + final String branchName; + final List> branches; + final Function(Map) onSelected; + + const _BranchPopup({ + required this.clientName, + required this.branchName, + required this.branches, + required this.onSelected, + }); + + @override + Widget build(BuildContext context) { + return PopupMenuButton>( + tooltip: '', + offset: const Offset(0, 48), + onSelected: onSelected, + + itemBuilder: (context) { + return branches.map((branch) { + return PopupMenuItem>( + value: branch, + child: Row( + children: [ + Expanded( + child: Text( + branch['client_name'], + style: const TextStyle(fontSize: 13), + overflow: TextOverflow.ellipsis, + ), + ), + const SizedBox(width: 10), + const Icon(Icons.location_on, size: 14, color: Colors.grey), + const SizedBox(width: 4), + Text( + branch['branch_name'], + style: const TextStyle( + fontSize: 12, + color: Colors.grey, + ), + ), + ], + ), + ); + }).toList(); + }, + + child: Container( + height: 40, + padding: const EdgeInsets.symmetric(horizontal: 16), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(22), + boxShadow: [ + BoxShadow( + color: Colors.black.withOpacity(0.08), + blurRadius: 8, + offset: const Offset(0, 2), + ), + ], + ), + child: Row( + children: [ + // CLIENT NAME + Text( + clientName, + style: const TextStyle( + fontSize: 14, + fontWeight: FontWeight.w500, + ), + ), + + const SizedBox(width: 8), + + // 📍 BRANCH NAME (SELECTED) + Row( + children: [ + const Icon( + Icons.location_on, + size: 14, + color: Colors.grey, + ), + const SizedBox(width: 4), + Text( + branchName, + style: const TextStyle( + fontSize: 12, + color: Colors.grey, + ), + ), + ], + ), + + const SizedBox(width: 6), + + // DROPDOWN ARROW + const Icon( + Icons.keyboard_arrow_down, + size: 20, + color: Colors.orange, + ), + ], + ), + ), + ); + } +} diff --git a/lib/email_verify.dart b/lib/email_verify.dart index 16b1661..3f469cb 100755 --- a/lib/email_verify.dart +++ b/lib/email_verify.dart @@ -129,7 +129,7 @@ class _MyEmailVerifyState extends State { if (mainStatus != 'success' && postStatus != 'success') { ToastHelper.showErrorToast( context, - postEnrollment1['message'] ?? 'User not found', + postEnrollment1['message'], ); return; } @@ -430,33 +430,7 @@ class _MyEmailVerifyState extends State { @override Widget build(BuildContext context) { - // Retrieve the passed mobile number value - // final String mobileNumber = - // ModalRoute.of(context)!.settings.arguments as String; - Size _size = MediaQuery.of(context).size; - EdgeInsets marginInsets = EdgeInsets.zero; - if (Responsive.isDesktop(context)) { - marginInsets = const EdgeInsets.only( - left: 0, - right: 0, - bottom: 0, - top: 0, - ); - } else if (Responsive.isMobile(context)) { - marginInsets = const EdgeInsets.only( - left: 25, // Example value for mobile - right: 25, // Example value for mobile - bottom: 0, // Example value for mobile - top: 0, // Example value for mobile - ); - } else if (Responsive.isTablet(context)) { - marginInsets = const EdgeInsets.only( - left: 25, // Example value for mobile - right: 25, // Example value for mobile - bottom: 0, // Example value for mobile - top: 0, // Example value for mobile - ); - } + final Size _size = MediaQuery.of(context).size; final defaultPinTheme = PinTheme( width: 56, height: 56, @@ -482,495 +456,263 @@ class _MyEmailVerifyState extends State { ), ); - return WillPopScope( - onWillPop: () async { - Navigator.pushReplacementNamed(context, 'login'); - return false; - }, - child: Scaffold( - body: SingleChildScrollView( - keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, - child: Container( - height: _size.height, - color: Colors.white, - child: Stack( - children: [ - // Visibility( - // visible: _size.width <= 1100, - // child: ClipRRect( - // borderRadius: BorderRadius.only( - // bottomLeft: Radius.circular(30), - // bottomRight: Radius.circular(30), - // ), - // child: Container( - // height: _size.height / 3, - // width: double.infinity, - // color: Color(0xFFFFFCE5), - // child: Stack( - // children: [ - // Column( - // children: [ - // SizedBox( - // height: _size.height / - // 6.4), // Adjust the spacing between the rows - // Row( - // mainAxisAlignment: MainAxisAlignment - // .center, // Align to the center - // children: [ - // Expanded( - // flex: Responsive.isDesktop(context) - // ? 10 - // : 12, - // child: Align( - // alignment: Responsive.isDesktop(context) - // ? Alignment.centerLeft - // : Alignment.bottomCenter, - // child: Image.asset( - // 'assets/nhance_app_logo.png', - // width: 150, - // height: 150, - // ), - // ), - // ), - // if (!Responsive.isMobile(context) && - // !Responsive.isTablet(context)) - // Expanded( - // flex: 2, - // child: MouseRegion( - // cursor: SystemMouseCursors.click, - // child: GestureDetector( - // onTap: () { - // // Add your navigation logic here - // // For example, you can use Navigator.push to navigate to another page - // Navigator.pushNamed( - // context, 'hrLogin'); - // }, - // child: Row( - // mainAxisAlignment: MainAxisAlignment - // .end, // Align to the end (right) - // children: [ - // Text( - // 'HR Login', - // style: GoogleFonts.poppins( - // color: Color( - // 0xFF000000), // Text color - // // Add other text styles as needed - // ), - // ), - // SizedBox(width: 5), - // Icon( - // Icons - // .east, // Icon for customer login - // color: Colors - // .black, // Adjust color as needed - // ), - // ], - // ), - // ), - // ), - // ), - // ], - // ), - // ], - // ), - // ], - // ), - // ), - // ), - // ), - Container( - margin: marginInsets, - alignment: Alignment.bottomCenter, - child: SingleChildScrollView( - child: Form( - key: _formKey, - child: Column( - children: [ - Row( - children: [ - if (_size.width > 1100) - Expanded( - flex: _size.width < 1100 ? 6 : 12, - child: LayoutBuilder( - builder: (BuildContext context, - BoxConstraints constraints) { - if (constraints.maxWidth > 600) { - return Image.asset( - 'assets/hrLogin.jpg', - height: _size.height, - fit: BoxFit.cover, - ); - } else { - return SizedBox(); - } - }, - ), - ), - Expanded( - flex: _size.width < 1100 ? 6 : 12, - child: Container( - margin: _size.width > 1100 - ? EdgeInsets.only(left: 20, right: 20) - : EdgeInsets.only(left: 0, right: 0), - child: Column( - mainAxisAlignment: - MainAxisAlignment.center, - children: [ - if (!Responsive.isMobile(context) && - !Responsive.isTablet(context)) - Row( - children: [ - Expanded( - flex: 10, - child: Align( - alignment: Responsive - .isDesktop(context) - ? Alignment.center - : Alignment - .bottomCenter, // Align to the start - child: _size.width <= 1100 - ? Image.asset( - 'assets/Nhance-Logo-Final 1.png', - width: 150, - height: 150, - ) - : _size.width > 1100 - ? Image.asset( - 'assets/Nhance-Logo-Final 1.png', - width: 150, - height: 150, - ) - : Image.asset( - 'assets/Nhance-Logo-Final 1.png', - width: 150, - height: 150, - ), - )), - ], - ), - SizedBox(height: 10), - // SizedBox( - // height: Responsive.isDesktop(context) - // ? _size.height * 0.1 - // : 10, - // ), - Container( - margin: Responsive.isDesktop(context) - ? EdgeInsets.symmetric( - horizontal: 150) - : EdgeInsets.symmetric( - horizontal: 0), - child: Row( - mainAxisAlignment: - MainAxisAlignment.center, - children: [ - Text( - "Welcome to Nhance", - style: GoogleFonts.poppins( - fontSize: 16, - fontWeight: FontWeight.bold, - ), - ), - ], - ), - ), - SizedBox(height: 10), - Container( - margin: Responsive.isDesktop(context) - ? EdgeInsets.symmetric( - horizontal: 150) - : EdgeInsets.symmetric( - horizontal: 0), - child: RichText( - textAlign: TextAlign.center, - text: TextSpan( - text: - "Please enter the one-time usage code sent to your ", - style: TextStyle( - fontSize: 12, - height: 1.5, - color: Color(0xFF000000)), - children: [ - TextSpan( - text: widget.type == 'mobile' ? 'mobile number ${widget.value}' : 'Email Id ${widget.value}', - ), - TextSpan( - text: widget.type == 'mobile' ? ' (Change Mobile)' : ' (Change Email)', - style: TextStyle( - fontSize: 12, - color: Color( - 0xFFE26728)), // Change color as desired - recognizer: - TapGestureRecognizer() - ..onTap = () { - // Navigate to the page where the user can change the phone number - Navigator.pushNamed( - context, - 'hrLogin'); - }, - ), - ], - ), - ), - ), - SizedBox(height: 15), - Container( - margin: Responsive.isDesktop(context) - ? EdgeInsets.symmetric( - horizontal: 150) - : EdgeInsets.symmetric( - horizontal: 0), - child: Pinput( - length: 6, - // defaultPinTheme: defaultPinTheme, - // focusedPinTheme: focusedPinTheme, - // submittedPinTheme: submittedPinTheme, - showCursor: true, - controller: _otpController, - ), - ), - SizedBox(height: 10), - Container( - margin: Responsive.isDesktop(context) - ? EdgeInsets.symmetric( - horizontal: 150) - : EdgeInsets.symmetric( - horizontal: 0), - child: Row( - mainAxisAlignment: MainAxisAlignment - .end, // Align text to the right - children: [ - _isTimerRunning - ? Text( - "Resend OTP in $_secondsRemaining seconds", - style: - GoogleFonts.poppins( - color: - Colors.black), - ) - : InkWell( - onTap: () { - _resendOTP(); - }, - child: Text( - "Resend OTP", - style: - GoogleFonts.poppins( - color: Colors - .blue), - ), - ), - ], - ), - ), - SizedBox(height: 10), - Container( - margin: Responsive.isDesktop(context) - ? EdgeInsets.symmetric( - horizontal: 150) - : EdgeInsets.symmetric( - horizontal: 0), - child: SizedBox( - width: double.infinity, - height: 45, - child: ElevatedButton( - style: ElevatedButton.styleFrom( - backgroundColor: - Color(0xFF00989E), - shape: RoundedRectangleBorder( - borderRadius: - BorderRadius.circular(10), - ), - ), - onPressed: () { - if (_formKey.currentState! - .validate()) { - _formKey.currentState! - .save(); // Save form fields before calling verifyOTP - verifyOTP( - _otpController.text); - } - }, - child: Text( - "Submit", - style: GoogleFonts.poppins( - color: Color(0xFFFFFFFF)), - ), - ), - ), - ), - // _size.width > 1100 - // ? Container( - // margin: EdgeInsets.symmetric( - // horizontal: 150), - // child: Column( - // children: [ - // SizedBox(height: 20), - // Text( - // "Benefits of Login", - // style: - // GoogleFonts.poppins( - // fontSize: 20, - // fontWeight: - // FontWeight.bold, - // ), - // ), - // SizedBox(height: 15), - // ], - // )) - // : SizedBox(), - // _size.width > 1100 - // ? Container( - // margin: EdgeInsets.symmetric( - // horizontal: 150), - // child: Row( - // mainAxisAlignment: - // MainAxisAlignment.center, - // children: [ - // Expanded( - // flex: 6, - // child: Container( - // padding: EdgeInsets - // .symmetric( - // vertical: 8), - // child: Row( - // mainAxisAlignment: - // MainAxisAlignment - // .center, - // children: [ - // Expanded( - // child: Container( - // padding: EdgeInsets - // .symmetric( - // vertical: - // 12), - // decoration: - // BoxDecoration( - // border: - // Border( - // right: - // BorderSide( - // width: 1, - // color: Colors - // .black, - // ), - // ), - // ), - // child: Column( - // children: [ - // Icon( - // Icons - // .policy, - // color: Color( - // 0xFFE26728)), - // SizedBox( - // height: - // 10), - // Text( - // "View Policy", - // style: GoogleFonts - // .poppins()), - // ], - // ), - // ), - // ), - // Expanded( - // child: Container( - // padding: EdgeInsets - // .symmetric( - // vertical: - // 12), - // child: Column( - // children: [ - // Icon( - // Icons - // .edit, - // color: Color( - // 0xFFE26728)), - // SizedBox( - // height: - // 10), - // Text( - // "Manage Claims", - // style: GoogleFonts - // .poppins()), - // ], - // ), - // ), - // ), - // ], - // ), - // ), - // ), - // ], - // ), - // ) - // : SizedBox( - // height: Responsive.isDesktop( - // context) - // ? _size.height * 0.1 - // : _size.height * 0.2, - // ), - SizedBox( - height: Responsive.isDesktop(context) - ? _size.height * 0.3 - : _size.height * 0.2, - ), - // SizedBox( - // height: _size.height * 0.1, - // ), - Container( - alignment: Alignment.bottomCenter, - padding: - EdgeInsets.symmetric(vertical: 8), - child: RichText( - textAlign: TextAlign.center, - text: TextSpan( - text: - 'By continuing, you agree with our ', - style: GoogleFonts.poppins( - color: Colors.black, - fontSize: 9, - ), - children: [ - TextSpan( - text: 'privacy policy ', - style: GoogleFonts.poppins( - color: Color(0xFF00989E), - fontSize: 9, - ), - ), - TextSpan( - text: 'and ', - style: GoogleFonts.poppins( - color: Colors.black, - fontSize: 9, - ), - ), - TextSpan( - text: 'terms of use', - style: GoogleFonts.poppins( - color: Color(0xFF00989E), - fontSize: 9, - ), - ), - ], - ), - ), - ), - ], - ), - ), - ), - ], - ), - ], + return Scaffold( + body: Container( + width: double.infinity, + height: _size.height, + decoration: const BoxDecoration( + gradient: LinearGradient( + begin: Alignment.topRight, + end: Alignment.bottomLeft, + colors: [ + Color(0xFF00B6AC), + Color(0xFF83E0DE), + Color(0xFF01B4A8), + ], + ), + ), + + child: Center( + child: Container( + width: double.infinity, // ✅ fixed web width + height: _size.height, // ✅ fixed web height (IMPORTANT) + margin: const EdgeInsets.all(60), + clipBehavior: Clip.hardEdge, + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.all(Radius.circular(40)), + ), + child: Row( + children: [ + // ================= LEFT IMAGE ================= + Expanded( + flex: 5, + child: ClipRRect( + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(40), + bottomLeft: Radius.circular(40), + ), + child: Image.asset( + 'assets/hrLogin.png', + width: double.infinity, + height: double.infinity, + fit: BoxFit.cover, ), ), ), - ), - ], - )), - ))); + + // ================= RIGHT FORM ================= + Expanded( + flex: 7, + child: Padding( + padding: const EdgeInsets.symmetric(horizontal: 40), + child: Form( + key: _formKey, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image.asset( + 'assets/Nhance-Logo-Final 1.png', + width: 300, + height: 100, + ), + SizedBox(height: 15), + Container( + margin: Responsive.isDesktop(context) + ? EdgeInsets.symmetric( + horizontal: 150) + : EdgeInsets.symmetric( + horizontal: 0), + child: Row( + mainAxisAlignment: + MainAxisAlignment.center, + children: [ + Text( + "Welcome to Nhance", + style: GoogleFonts.poppins( + fontSize: 16, + fontWeight: FontWeight.bold, + ), + ), + ], + ), + ), + SizedBox(height: 15), + Container( + margin: Responsive.isDesktop(context) + ? EdgeInsets.symmetric( + horizontal: 150) + : EdgeInsets.symmetric( + horizontal: 0), + child: RichText( + textAlign: TextAlign.center, + text: TextSpan( + text: + "Please enter the one-time usage code sent to your ", + style: TextStyle( + fontSize: 12, + height: 1.5, + color: Color(0xFF000000)), + children: [ + TextSpan( + text: widget.type == 'mobile' ? 'mobile number ${widget.value}' : 'Email Id ${widget.value}', + ), + TextSpan( + text: widget.type == 'mobile' ? ' (Change Mobile)' : ' (Change Email)', + style: TextStyle( + fontSize: 12, + color: Color( + 0xFFE26728)), // Change color as desired + recognizer: + TapGestureRecognizer() + ..onTap = () { + // Navigate to the page where the user can change the phone number + Navigator.pushNamed( + context, + 'hrLogin'); + }, + ), + ], + ), + ), + ), + SizedBox(height: 15), + Container( + margin: Responsive.isDesktop(context) + ? EdgeInsets.symmetric( + horizontal: 150) + : EdgeInsets.symmetric( + horizontal: 0), + child: Pinput( + length: 6, + // defaultPinTheme: defaultPinTheme, + // focusedPinTheme: focusedPinTheme, + // submittedPinTheme: submittedPinTheme, + showCursor: true, + controller: _otpController, + ), + ), + SizedBox(height: 15), + Container( + margin: Responsive.isDesktop(context) + ? EdgeInsets.symmetric( + horizontal: 150) + : EdgeInsets.symmetric( + horizontal: 0), + child: Row( + mainAxisAlignment: MainAxisAlignment + .end, // Align text to the right + children: [ + _isTimerRunning + ? Text( + "Resend OTP in $_secondsRemaining seconds", + style: + GoogleFonts.poppins( + color: + Colors.black), + ) + : InkWell( + onTap: () { + _resendOTP(); + }, + child: Text( + "Resend OTP", + style: + GoogleFonts.poppins( + color: Colors + .blue), + ), + ), + ], + ), + ), + SizedBox(height: 15), + Container( + margin: Responsive.isDesktop(context) + ? EdgeInsets.symmetric( + horizontal: 150) + : EdgeInsets.symmetric( + horizontal: 0), + child: SizedBox( + width: double.infinity, + height: 45, + child: ElevatedButton( + style: ElevatedButton.styleFrom( + backgroundColor: + Color(0xFF00989E), + shape: RoundedRectangleBorder( + borderRadius: + BorderRadius.circular(10), + ), + ), + onPressed: () { + if (_formKey.currentState! + .validate()) { + _formKey.currentState! + .save(); // Save form fields before calling verifyOTP + verifyOTP( + _otpController.text); + } + }, + child: Text( + "Submit", + style: GoogleFonts.poppins( + color: Color(0xFFFFFFFF)), + ), + ), + ), + ), + SizedBox(height: 15), + Container( + alignment: Alignment.bottomCenter, + padding: + EdgeInsets.symmetric(vertical: 8), + child: RichText( + textAlign: TextAlign.center, + text: TextSpan( + text: + 'By continuing, you agree with our ', + style: GoogleFonts.poppins( + color: Colors.black, + fontSize: 9, + ), + children: [ + TextSpan( + text: 'privacy policy ', + style: GoogleFonts.poppins( + color: Color(0xFF00989E), + fontSize: 9, + ), + ), + TextSpan( + text: 'and ', + style: GoogleFonts.poppins( + color: Colors.black, + fontSize: 9, + ), + ), + TextSpan( + text: 'terms of use', + style: GoogleFonts.poppins( + color: Color(0xFF00989E), + fontSize: 9, + ), + ), + ], + ), + ), + ), + ], + ), + ), + ), + ), + ], + ), + ), + ) + + ) + ); } } diff --git a/lib/excel_verification.dart b/lib/excel_verification.dart deleted file mode 100755 index 4efad7a..0000000 --- a/lib/excel_verification.dart +++ /dev/null @@ -1,1434 +0,0 @@ -import 'dart:typed_data'; -import 'package:flutter/material.dart'; -import 'package:font_awesome_flutter/font_awesome_flutter.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:jwt_decode/jwt_decode.dart'; -import 'package:nhancepolicy/customAppBar/customAppBar.dart'; -import 'dart:convert'; -import 'dart:async'; -import 'package:http/http.dart' as http; -import 'package:nhancepolicy/customAppBar/toastHelper.dart'; -import 'package:nhancepolicy/hrPolicyDetails.dart'; -import 'package:nhancepolicy/service/api_service.dart'; -import 'package:shared_preferences/shared_preferences.dart'; -import 'package:universal_html/html.dart' as html; -import 'package:flutter/foundation.dart' show kIsWeb; -import 'package:excel/excel.dart'; -import 'dart:io'; -import 'package:intl/intl.dart'; -import 'package:csv/csv.dart'; - -import 'package:spreadsheet_decoder/spreadsheet_decoder.dart'; -import 'package:url_launcher/url_launcher.dart'; - -import 'config/environment.dart'; -import 'customAppBar/customFooter.dart'; - -class excelVerify extends StatefulWidget { - final String ClientId; - final String policyTypeId; - final String ClientPoliyId; - final String clientBranchId; - final String Token; - final String TokenType; - final String cardType; - final String cardPolicyNo; - final String cardInsurer_name; - final String cardPolicy_name; - final String cardPolicy_ExpDate; - const excelVerify( - {Key? key, - required this.ClientId, - required this.policyTypeId, - required this.ClientPoliyId, - required this.clientBranchId, - required this.Token, - required this.TokenType, - required this.cardType, - required this.cardPolicyNo, - required this.cardInsurer_name, - required this.cardPolicy_name, - required this.cardPolicy_ExpDate}) - : super(key: key); - - @override - State createState() => _excelVerifyState(); -} - -class _excelVerifyState extends State { - Uint8List? fileBytes; - Uint8List? fileBytes2; - late String _token; - dynamic getPolicyNo; - bool _isLoading = false; - dynamic getPolicyNameDetails; - dynamic clintID; - String? fileName; - int _currentStep = 0; // Step index tracker - List dataPolicy = []; - dynamic validationArray = []; - dynamic missingColumnErrorMsg = 0; - dynamic columnIndexMismatchCount = 0; - dynamic columnMissingCount = 0; - List> extractedData = []; - dynamic argumentsData; - List> originalData = []; // Original data source - List> filteredData = []; // Filtered data source - List> tableData = []; // Filtered data source - - List> nonExcelFilteredData = []; - dynamic invalidRelationships = 0; - dynamic dobAgeCheckCount = 0; - dynamic empRefId; - List excelHeader = []; - List>> excelData = []; - late int excelValidationStaus = 1; - bool isSuccess = false; - String successContent = ''; - bool isLoading = false; - late ApiService apiService; - - @override - void initState() { - super.initState(); - apiService = ApiService(context); - _loadToken(); - } - - @override - void dispose() { - super.dispose(); - html.window.localStorage.remove('fileBytes'); - } - - Future _loadToken() async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - // final token = prefs.getString('hrtoken'); - final token = widget.Token; - if (token != null && token.isNotEmpty) { - setState(() { - _token = token; - }); - Map? decodedToken = Jwt.parseJwt(token); - print('decodedToken $decodedToken'); - } else { - // Token is empty or null, handle accordingly (e.g., navigate to login screen) - // For now, let's navigate to the login screen - ToastHelper.showErrorToast(context, 'Session Out'); - Navigator.pushReplacementNamed(context, 'hrLogin'); - } - } - - // Future getPolicyDetails() async { - // setState(() { - // clientPolicyId = argumentsData['client_policy_id']; - // clientId = argumentsData['client_id']; - // policyType = argumentsData['type']; - // policy_name = argumentsData['policy_name']; - // }); - // } - - // Future _uploadFile1(importPolicyName) async { - // FilePickerResult? result = await FilePicker.platform.pickFiles( - // type: FileType.custom, - // allowedExtensions: ['xlsx', 'xls', 'csv'], - // ); - // - // if (result != null) { - // PlatformFile file = result.files.first; - // Uint8List fileBytes = file.bytes!; - // // Use the fileBytes as needed - // print('File name: ${file.name}'); - // print('File size: ${file.size}'); - // print('File bytes: $fileBytes'); - // _processExcelData(fileBytes); - // } else { - // // User canceled the picker - // } - // } - - void _uploadFile(importPolicyName) async { - print('Test'); - if (kIsWeb) { - print('kIsWeb'); - final input = html.FileUploadInputElement(); - input.accept = '.xlsx,.xls,.csv'; - input.click(); - input.onChange.listen((event) async { - final file = input.files!.first; - final reader = html.FileReader(); - reader.readAsArrayBuffer(file); - await reader.onLoadEnd.first; // Wait for the file to be loaded - if (reader.readyState == html.FileReader.DONE) { - Uint8List? fileBytes = reader.result as Uint8List?; - if (fileBytes != null) { - setState(() { - fileName = file.name; - }); - // Save fileBytes to local storage - final jsonString = json.encode(fileBytes); - html.window.localStorage['fileBytes'] = jsonString; - print('File Name: $fileName'); - print('File Bytes: $fileBytes'); - sendExcelFIleTOAPI(fileBytes, fileName); - // Call the function to process Excel data here - // _processExcelData(fileBytes, fileName); - } - } - }); - } else { - // Handle non-web platforms here (e.g., show an error message) - print('File upload is only supported on web platforms.'); - } - } - - void _processExcelData(Uint8List fileBytes, fileName) { - List> dataArray; - if (fileName.endsWith('.xlsx')) { - dataArray = decodeExcelData(fileBytes); - } else if (fileName.endsWith('.xls')) { - dataArray = decodeXLSData(fileBytes); - } else if (fileName.endsWith('.csv')) { - print('csv'); - dataArray = decodeCSVData(fileBytes); - } else { - throw UnsupportedError('Unsupported file format: $fileName'); - } - - print('_processExcelData'); - // Decode the Excel file and extract relevant data - // Assuming dataArray is your array containing Excel data - // List> dataArray = decodeExcelData(fileBytes); - print(dataArray); - // print(dataArray[0].toString()); - // Extract Name, Age, and City from the array - print(dataArray[0].length); - - if (dataArray[0].length == 11) { - for (int i = 0; i < dataArray.length; i++) { - Map dataMap = { - "Sno": dataArray[i][0].value, - "Emp_Code": dataArray[i][1].value, - "Name": dataArray[i][2].value, - "DOJ": dataArray[i][3].value, - "Gender": dataArray[i][4].value, - "Relation": dataArray[i][5].value, - "DOB": dataArray[i][6].value, - "Mail": dataArray[i][7].value, - "Mobile": dataArray[i][8].value, - "SI": dataArray[i][9].value, - "Grade": dataArray[i][10].value, - }; - if (i == 0) { - // print(dataMap); - validationArray.add(dataMap); - } else { - // print(dataMap); - extractedData.add(dataMap); - } - } - // Do something with extracted data (e.g., display in UI) - originalData = extractedData; - filteredData = List.from(originalData); - print('filteredData'); - print(filteredData); - print(validationArray); - - validationArray[0].forEach((key, value) { - print(key); - print(value); - if (key.toString().trim().toLowerCase() != - value.toString().trim().toLowerCase()) { - // If key and value are not equal, increment mismatch count - columnIndexMismatchCount++; - print('columnIndexMismatchCount: $value'); - } - if (value.toString() == 'null') { - // If value is null, increment missing count - columnMissingCount++; - print('Value: $value'); - } - }); - - print('columnIndexMismatchCount: $columnIndexMismatchCount'); - print('columnMissingCount: $columnMissingCount'); - - nonExcelFilteredData = filteredData.where((item) { - final relation = item['Relation']; - return relation != null && - relation.toString().trim().toLowerCase() != 'self'; - }).toList(); - print('nonExcelFilteredData'); - - print(nonExcelFilteredData); - print(nonExcelFilteredData.length); - if (argumentsData['type'] == 'GPA') { - if (nonExcelFilteredData.length > 0) { - print('nonSelf'); - invalidRelationships = nonExcelFilteredData.length; - } else { - print('Self'); - invalidRelationships = nonExcelFilteredData.length; - } - print('invalidRelationships: $invalidRelationships'); - } else { - invalidRelationships = 0; - } - - int invalidDobCount = countInvalidDobs(filteredData); - - print('Number of invalid DOBs: $invalidDobCount'); - - dobAgeCheckCount = invalidDobCount; - } else { - print('Some Column is Missing'); - var columnMissingCount = 11 - dataArray[0].length; - missingColumnErrorMsg = columnMissingCount; - print(missingColumnErrorMsg); - } - } - - // bool checkAllSelf(List> dataList) { - // // Check if any value of 'Relation' key is not 'Self' - // bool allSelf = dataList.every((data) => data['Relation'] == 'Self'); - // // If all values are 'Self', return true; otherwise, return false - // return allSelf; - // } - - // Placeholder function for decoding Excel data - List> decodeExcelData(Uint8List fileBytes) { - print('decodeExcelData'); - - // Create an Excel instance from the fileBytes - final excel = Excel.decodeBytes(fileBytes); - print('decodeExcelData'); - print(excel); - - // Assuming there's only one sheet in the Excel file - final sheet = excel.tables.keys.first; - final table = excel.tables[sheet]!; - - // Convert Excel table to a List> - // Convert Excel table to a List> - List> dataArray = []; - for (int rowIdx = 0; rowIdx < table.rows.length; rowIdx++) { - List rowData = []; - for (int colIdx = 0; colIdx < table.rows[rowIdx].length; colIdx++) { - var value = table.rows[rowIdx][colIdx]?.value; - rowData.add(Data(value, rowIdx, colIdx, sheet)); - } - dataArray.add(rowData); - } - return dataArray; - } - - List> decodeXLSData(Uint8List fileBytes) { - final Excel excelData = Excel.decodeBytes(fileBytes); - final sheet = excelData.tables.keys.first; - final table = excelData.tables[sheet]!; - List> dataArray = []; - for (int rowIdx = 0; rowIdx < table.rows.length; rowIdx++) { - List rowData = []; - for (int colIdx = 0; colIdx < table.rows[rowIdx].length; colIdx++) { - var value = table.rows[rowIdx][colIdx]?.value; - rowData.add(Data(value, rowIdx, colIdx, sheet)); - } - dataArray.add(rowData); - } - return dataArray; - } - - List> decodeCSVData(Uint8List fileBytes) { - String csvString = utf8.decode(fileBytes); - List> csvData = const CsvToListConverter().convert(csvString); - List> dataArray = []; - - // Skip the header row (if it exists) and start from index 1 - for (int i = 1; i < csvData.length; i++) { - List rowData = []; - for (int j = 0; j < csvData[i].length; j++) { - // Assuming the CSV data is of type String - rowData.add(Data(csvData[i][j].toString(), i, j, 'Sheet1')); - } - dataArray.add(rowData); - } - return dataArray; - } - - int countInvalidDobs(List> data) { - int invalidCount = 0; - - for (var entry in data) { - DateTime dob; - - // if (entry['DOB'] is String) { - dob = DateTime.parse(entry['DOB'].toString()); - // } else if (entry['DOB'] is DateTime) { - // dob = entry['DOB']; - // } else { - // // Invalid DOB format, skip this entry - // continue; - // } - print(entry['Relation']); - if ((entry['Relation'].toString() == 'Son' || - entry['Relation'].toString() == 'Daughter')) { - if (DateTime.now().difference(dob).inDays > 25 * 365) { - print('child $dob'); - invalidCount++; - } - } else if ((entry['Relation'] != 'Son' && - entry['Relation'] != 'Daughter')) { - if (DateTime.now().difference(dob).inDays < 18 * 365) { - print('others $dob'); - invalidCount++; - } - } - } - - return invalidCount; - } - - void _dragAndDropFile(html.File file) async { - print('file'); - print(file); - // Prepare form data - final formData = html.FormData(); - formData.appendBlob('file', file); - - // Send formData to API endpoint - final response = await html.HttpRequest.request( - 'your_api_endpoint_here', - method: 'POST', - sendData: formData, - ); - - // Handle response as needed - print(response.responseText); - } - - void _retrieveAndUploadFile() { - final jsonString = html.window.localStorage['fileBytes']; - if (jsonString != null) { - final decodedBytes = json.decode(jsonString); - if (decodedBytes is List) { - setState(() { - fileName = fileName ?? - 'Retrieved File'; // Provide a default name if fileName is null - }); - sendExcelFIleTOAPI( - Uint8List.fromList(decodedBytes.cast()), - fileName!, - ); - } - } - } - - Future sendExcelFIleTOAPI(Uint8List fileBytes, fileName) async { - // Future.delayed(Duration(seconds: 3), () { - // setState(() { - isLoading = true; - // }); - // }); - print('submit'); - print(fileBytes); - if (fileBytes == null) { - print('return'); - return; // No file selected - } else { - print('else'); - // // Prepare form data - // final formData = html.FormData(); - // formData.appendBlob('file', html.Blob([fileBytes]), fileName); - - // URL of the API where you want to send the file - final apiUrl = Environment.apiUrl + 'employeeUpload'; - print('else'); - // Create a multipart request - final request = http.MultipartRequest('POST', Uri.parse(apiUrl)); - print('else'); - // Attach the file to the request - // Set authorization token in headers - request.headers['APP-SIGNATURE'] = 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y'; - request.headers['Authorization'] = 'Bearer $_token'; - // request.files.add(http.MultipartFile.fromBytes('file', fileBytes, - // filename: fileName)); - print('Filename: $fileName'); - request.files.add(http.MultipartFile.fromBytes( - 'file', - fileBytes, - filename: fileName ?? 'default_filename.xlsx', - )); - print('clintID: $clintID'); - request.fields['client_id'] = widget.ClientId; - // if (policyFirstPart == 'GPA') { - request.fields['policy_id'] = widget.ClientPoliyId; - request.fields['client_branch_id'] = widget.clientBranchId; - // } else { - // request.fields['policy_id'] = '3'; - // } - print('request : $request'); - // Send the request - final response = await request.send(); - print('else'); - // Read response stream as a string - final responseString = await response.stream.bytesToString(); - print('else'); - // Check the status code of the response - if (response.statusCode == 200) { - isLoading = false; - Map data = json.decode(responseString); - if (data['status'] == 'success') { - ToastHelper.showSuccessToast(context, data['message']); - print('Table'); - - setState(() { - isSuccess = true; - successContent = data['message']; - excelValidationStaus = 0; - // excelHeader = List.from(data['data']['excel_header']); - // print('excelHeader : $excelHeader'); - // excelData = (data['data']['excel_data'] as List) - // .map>>((row) => row - // .map>( - // (cell) => Map.from(cell)) - // .toList()) - // .toList(); - // print('excelHeader : $excelHeader'); - }); - handleImportAction(); - } else { - setState(() { - isLoading = false; - }); - ToastHelper.showErrorToast2(context,"",data['message']); - // ToastHelper.showErrorToast(context, data['message']); - print('Table'); - - setState(() { - isSuccess = false; - excelValidationStaus = 1; - excelHeader = List.from(data['data']['excel_header']); - print('excelHeader : $excelHeader'); - excelData = (data['data']['excel_data'] as List) - .map>>((row) => row - .map>( - (cell) => Map.from(cell)) - .toList()) - .toList(); - print('excelData : $excelData'); - print('excelHeader : $excelHeader'); - }); - } - } else { - setState(() { - isLoading = false; - }); - // ToastHelper.showSuccessToast( - // context, 'Failed to upload file: ${response.reasonPhrase}'); - ToastHelper.showErrorToast(context, 'Something went wrong'); - print('Failed to upload file: ${response.reasonPhrase}'); - } - } - } - - Future handleImportAction() async { - print('handleImportAction'); - - final SharedPreferences prefs = await SharedPreferences.getInstance(); - final postId = prefs.getString('empHrId'); - final preId = prefs.getString('enrollmentEmpPrimaryId'); - var activity = "import_enrollempdata"; - - dynamic response; - - print('postId - $postId'); - print('preId - $preId'); - print('activity - $activity'); - - try { - print('10'); - - response = await apiService.getImportLogHrActivity( - postId!, preId!, widget.Token, activity); - - if (response['status'] == 'success') { - print('Request success'); - } else { - // ToastHelper.showWarningToast( - // context, 'Request failed with status: ${response.statusCode}'); - print('Request failed with status: ${response['code']}'); - } - } catch (e) { - print('Exception occurred: $e'); - } - } - - void search(String query) { - setState(() { - if (query.isEmpty) { - // If search query is empty, show all data - filteredData = List.from(originalData); - } else { - // Filter the data based on the search query - filteredData = originalData.where((item) { - // Implement your filter logic here, for example: - return item['Emp_Code'].toLowerCase().contains(query.toLowerCase()); - }).toList(); - } - }); - } - - downloadSampleFile() { - final anchor = html.AnchorElement(href: 'assets/assets/Template_File.xlsx'); - anchor.download = 'Template_File.xlsx'; // Set the filename - anchor.click(); // Trigger a click on the anchor element - } - - // Future downloadSampleFile() async { - // - // final response = await apiService.getSampleFileDownload(widget.Token); - // print('check 1'); - // if (response['status'] == 'success') { - // final url = response['data']; - // _launchURL(url); - // } else { - // ToastHelper.showErrorToast(context, '⚠️ Unknown response format'); - // print('⚠️ Unknown response format'); - // } - // } - // - // Future _launchURL(String url) async { - // print('url $url'); - // try { - // final Uri uri = Uri.parse(url); - // await launchUrl(uri, mode: LaunchMode.externalApplication); - // } catch (e) { - // print('Could not launch URL: $e'); - // } - // } - - resetErrorCount() { - setState(() { - fileBytes = null; - fileName = null; - _currentStep = 0; - excelHeader.clear(); - excelData.clear(); - - // extractedData = []; - // originalData = []; - // filteredData = []; - // validationArray = []; - // nonExcelFilteredData = []; - // print('filteredData'); - // print(filteredData); - // print(validationArray); - // - // missingColumnErrorMsg = 0; - // print(missingColumnErrorMsg); - // columnMissingCount = 0; - // print(columnMissingCount); - // columnIndexMismatchCount = 0; - // print(columnIndexMismatchCount); - // invalidRelationships = 0; - // dobAgeCheckCount = 0; - // - // html.window.localStorage.remove('fileBytes'); - }); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: CustomAppBar(), - body: Stack(children: [ - SafeArea( - child: Theme( - data: ThemeData( - canvasColor: Color(0xFFF4F7FE), - colorScheme: Theme.of(context).colorScheme.copyWith( - primary: Color(0xFF00999E), - background: Colors.red, - secondary: Color(0xFF00999E), - ), - ), - child: Container( - padding: const EdgeInsets.all(20), - color: Color(0xFFEFF3F6), - child: Card( - elevation: 0, - color: Colors.white, - child: Column( - children: [ - Expanded( - child: Stepper( - type: StepperType.horizontal, - currentStep: _currentStep, - controlsBuilder: - (BuildContext context, ControlsDetails controls) { - return Container( - alignment: Alignment.bottomCenter, - padding: const EdgeInsets.all(16.0), - child: Row( - mainAxisAlignment: - MainAxisAlignment.spaceBetween, - children: [ - ElevatedButton( - onPressed: () { - html.window.localStorage - .remove('fileBytes'); - fileBytes = null; - fileName = null; - _currentStep = 0; - excelHeader.clear(); - excelData.clear(); - // missingColumnErrorMsg = 0; - // columnIndexMismatchCount = 0; - // columnMissingCount = 0; - // invalidRelationships = 0; - // dobAgeCheckCount = 0; - // nonExcelFilteredData = []; - // Navigator.pushNamed( - // context, 'hrPolicyDetails', - // arguments: argumentsData); - - Navigator.pop(context); - }, - child: Text( - 'Close', - style: - TextStyle(color: Color(0xFFE26728)), - ), - style: ElevatedButton.styleFrom( - backgroundColor: Colors.white, - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(5), - side: BorderSide( - color: Color(0xFFE26728)), - ), - ), - ), - // SizedBox(width: 10), - // if (fileName != null) - // ElevatedButton( - // onPressed: () { - // // Reset localStorage and fileBytes - // setState(() { - // html.window.localStorage - // .remove('fileBytes'); - // fileBytes = null; - // fileName = null; - // _currentStep = 0; - // }); - // }, - // child: Text( - // 'Reselect File', - // style: TextStyle(color: Color(0xFFE26728)), - // ), - // style: ElevatedButton.styleFrom( - // backgroundColor: Colors.white, - // shape: RoundedRectangleBorder( - // borderRadius: BorderRadius.circular(5), - // side: - // BorderSide(color: Color(0xFFE26728)), - // ), - // ), - // ), - Spacer(), - SizedBox( - width: - 10), // This pushes the buttons to the right - if (_currentStep != 0) - ElevatedButton( - onPressed: () { - controls.onStepCancel!(); - }, - child: Text( - 'Previous', - style: - TextStyle(color: Color(0xFFE26728)), - ), - style: ElevatedButton.styleFrom( - backgroundColor: Colors.white, - shape: RoundedRectangleBorder( - borderRadius: - BorderRadius.circular(5), - side: BorderSide( - color: Color(0xFFE26728)), - ), - ), - ), - SizedBox(width: 10), - ElevatedButton( - child: const Text( - 'NEXT', - style: TextStyle(color: Colors.white), - ), - style: ElevatedButton.styleFrom( - backgroundColor: Color(0xFFE26728), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(5), - ), - ), - // Disable button if excelValidationStatus is 1 - // Use ternary operator to conditionally set onPressed to null - onPressed: (_currentStep == 0 && - fileName == null) || - (_currentStep == 1 && - excelValidationStaus == 1) - ? null - : () { - if (_currentStep == 0) { - // For Step 0: Enable continue if fileName is not null - if (fileName != null) { - controls.onStepContinue!(); - } - } else if (_currentStep == 1) { - // For Step 1: Check excelValidationStatus - if (excelValidationStaus == 0) { - // Navigate to hrPolicyDetails page - // Navigator.pushNamed( - // context, 'hrPolicyDetails', - // arguments: argumentsData); - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => - hrPolicyDetails( - ClientId: widget - .ClientId, - policyTypeId: widget - .policyTypeId, // <-- from map - ClientPoliyId: - widget.ClientPoliyId, - clientBranchId: - widget.clientBranchId, - Token: widget.Token, - TokenType: - widget.TokenType, - cardType: widget.cardType, - cardPolicyNo: - widget.cardPolicyNo, - cardInsurer_name: widget - .cardInsurer_name, - cardPolicy_name: widget - .cardPolicy_name, - cardPolicy_ExpDate: widget - .cardPolicy_ExpDate, - - // Token: widget.Token, - // ClientId: widget.ClientId, - // ClientPolicyId : widget.ClientPoliyId, - // PolicyName: widget.cardPolicy_name, - // PolicyNo: widget.cardPolicyNo, - // ClientBranchId: widget.HrId, - // PolicyType: widget.cardType, - ), - ), - ); - } - // If excelValidationStatus is 1, button will be disabled (do nothing) - } - }, - ), - SizedBox(width: 10), - // if (_currentStep == 2) - // ElevatedButton( - // onPressed: () { - // _retrieveAndUploadFile(); - // }, - // child: Text( - // 'Submit', - // style: TextStyle(color: Colors.white), - // ), - // style: ElevatedButton.styleFrom( - // backgroundColor: Color(0xFFE26728), - // shape: RoundedRectangleBorder( - // borderRadius: BorderRadius.circular(5), - // ), - // ), - // ), - ], - ), - ); - }, - onStepContinue: _currentStep == 2 - ? null - : () { - if (_currentStep == 0) { - // For the first step, allow continue if fileName is not null - if (fileName != null) { - setState(() { - _currentStep += 1; - }); - } - } else if (_currentStep == 1) { - // For the second step, allow continue if both errors are 0 - if (missingColumnErrorMsg == 0 && - columnIndexMismatchCount == 0 && - invalidRelationships == 0 && - dobAgeCheckCount == 0) { - setState(() { - _currentStep += 1; - }); - } - } - // setState(() { - // // Increment the current step when the user clicks continue - // if (_currentStep < 2) { - // _currentStep += 1; - // } - // }); - }, - onStepCancel: () { - setState(() { - // Decrement the current step when the user clicks cancel - if (_currentStep > 0) { - _currentStep -= 1; - } - }); - }, - steps: [ - Step( - title: Container( - child: Text( - 'Import Excel', - style: GoogleFonts.poppins( - color: Color(0xFF00999E), - ), - ), - ), - content: Container( - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Expanded( - flex: 12, - child: Column( - children: [ - Row( - mainAxisAlignment: - MainAxisAlignment.center, - children: [ - Expanded( - child: Text( - '${widget.cardPolicy_name} - (${widget.cardType})', - textAlign: TextAlign.center, - style: const TextStyle( - fontSize: 20, - fontWeight: FontWeight - .w600, // Adjust the font size as needed - color: Color( - 0xFF181818), // Adjust the text color as needed - ), - ), - ) - ], - ), - SizedBox(height: 20), - Row( - mainAxisAlignment: - MainAxisAlignment.center, - children: [ - Expanded( - child: Container( - margin: EdgeInsets.symmetric( - horizontal: 150), - alignment: Alignment.center, - color: Colors.grey[200], - height: - 250, // Adjust height as needed - child: DragTarget( - onAccept: (html.File - droppedFile) { - setState(() { - fileName = - droppedFile.name; - }); - _dragAndDropFile( - droppedFile); - }, - builder: - (BuildContext context, - List - candidateData, - List - rejectedData) { - return Container( - alignment: - Alignment.center, - child: Column( - mainAxisAlignment: - MainAxisAlignment - .center, - children: [ - // if (fileName == null) - // ElevatedButton( - // onPressed: () => {}, - // child: Icon( - // Icons.download, - // color: Colors - // .grey), // You can replace the Icon with your custom button child - // style: - // ElevatedButton - // .styleFrom( - // shape: - // CircleBorder(), // Makes the button round - // padding: - // EdgeInsets.all( - // 18), // Change the button color as needed - // ), - // ), - // SizedBox(height: 20), - // if (fileName == null) - // Text( - // 'Drag and drop file to import', - // style: TextStyle( - // fontSize: 16, - // fontWeight: - // FontWeight - // .w600), - // ), // Add spacing between texts - // SizedBox(height: 20), - fileName != null - ? Column( - mainAxisAlignment: - MainAxisAlignment - .center, - children: [ - Icon( - Icons - .upload_file, // Choose the appropriate icon - size: - 35, - color: Color( - 0xFFE26728), // Adjust the size as needed - ), - SizedBox( - height: - 15), // Add some space between the icon and text - Text( - '$fileName', - style: TextStyle( - fontSize: - 16), - ), - SizedBox( - height: - 25), // Add some space between the icon and text - MouseRegion( - cursor: - SystemMouseCursors.click, // Set cursor to pointer on hover - child: - GestureDetector( - onTap: - () { - resetErrorCount(); - }, - child: - const Row( - mainAxisAlignment: - MainAxisAlignment.center, - children: [ - Icon( - Icons.delete_forever, // Choose the remove icon - size: 20, // Adjust the size as needed - color: Colors.red, // Set the color of the remove icon - ), - SizedBox(width: 1), // Add some space between the icon and text - Text( - 'Remove', - style: TextStyle(fontSize: 13, color: Color(0xFF727272)), - ), - ], - ), - ), - ) - ], - ) - : ElevatedButton( - onPressed: () => _uploadFile('Policy Name'), - child: Text( - 'Select File', - style: TextStyle( - color: - Colors.white), - ), - style: ElevatedButton - .styleFrom( - backgroundColor: - Color( - 0xFFE26728), - ), - ), - SizedBox( - height: 20), - if (fileName == - null) - Text( - 'Supported Files : XLSX') - // Add more Text widgets for additional lines of text - ], - ), - ); - }, - ), - ), - ), - ], - ), - Row( - mainAxisAlignment: - MainAxisAlignment.start, - children: [ - Expanded( - child: Column( - mainAxisAlignment: - MainAxisAlignment - .start, - children: [ - Text( - 'Ensure that the import file is in the correct format by comparing it with our template file.', - textAlign: - TextAlign.center, - style: TextStyle( - fontSize: 16, - fontWeight: - FontWeight.w400, - )), - MouseRegion( - cursor: SystemMouseCursors - .click, - child: GestureDetector( - onTap: () { - downloadSampleFile(); - }, - child: Text( - 'Template File', - style: TextStyle( - fontSize: 15, - color: Color( - 0xFF00999E), // Add underline decoration - ), - ), - ), - ) - ])) - ], - ) - ], - ), - ), - ], - ), - ), - isActive: _currentStep == 0, - ), - - Step( - title: Text( - 'Excel Validation', - style: TextStyle(color: Color(0xFF00999E)), - ), - content: isSuccess - ? Center( - child: Text( - successContent, - style: TextStyle( - fontSize: 20, color: Colors.green), - ), - ) - : excelHeader.isNotEmpty && - excelData.isNotEmpty - ? SingleChildScrollView( - scrollDirection: Axis.vertical, - child: SingleChildScrollView( - scrollDirection: Axis.horizontal, - child: DataTable( - columns: excelHeader - .map((header) => DataColumn( - label: Text(header))) - .toList(), - rows: excelData - .map((row) => DataRow( - cells: row - .map( - (cell) => - DataCell( - cell.containsKey( - 'error') - ? Row( - children: [ - Text(cell['value'] ?? ''), - SizedBox(width: 5), - IconButton( - icon: Icon( - Icons.error_outline, - color: Colors.red, - size: 16, - ), - onPressed: () { - showDialog( - context: context, - builder: (context) { - return AlertDialog( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(30.0), - ), - elevation: 0, - backgroundColor: Colors.white, - title: Text('Error Details'), - content: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.start, - children: (cell['error'] as List).map((e) => Text(e)).toList(), - ), - actions: [ - TextButton( - onPressed: () { - Navigator.of(context).pop(); - }, - child: Text('OK'), - ), - ], - ); - }, - ); - }, - ), - ], - ) - : Text(cell['value'] ?? - ''), - )) - .toList(), - )) - .toList(), - ), - ), - ) - : Center( - child: CircularProgressIndicator()), - isActive: _currentStep == 1, - ), - // Step( - // title: Text( - // 'Preview', - // style: TextStyle(color: Color(0xFFE26728)), - // ), - // content: Column( - // children: [ - // Row( - // children: [ - // Expanded( - // flex: 10, - // child: Container( - // alignment: Alignment.centerLeft, - // child: Container( - // width: - // 350, // Set your desired width here - // height: - // 40, // Set your desired height here - // decoration: BoxDecoration( - // boxShadow: [ - // BoxShadow( - // color: Color.fromRGBO( - // 255, - // 255, - // 255, - // 0.5), // Shadow color with opacity - // offset: Offset(5, - // 5), // Shadow position (horizontal, vertical) - // blurRadius: 10, // Blur radius - // spreadRadius: - // 0, // Spread radius - // ), - // ], - // borderRadius: - // BorderRadius.circular(5), - // ), - // child: TextField( - // textAlignVertical: TextAlignVertical - // .center, // Center the text vertically - // decoration: InputDecoration( - // hintText: 'Search', - // suffixIcon: Icon(Icons.search), - // contentPadding: EdgeInsets.all( - // 10), // Adjust the horizontal padding - // border: OutlineInputBorder( - // borderSide: BorderSide( - // color: Color( - // 0xFFf5f5f7)), // Set border color to gray - // ), - // ), - // onChanged: - // search, // Call the search method on text change - // ), - // )), - // ), - // ], - // ), - // SizedBox(height: 20), - // Row( - // children: [ - // Expanded( - // child: SingleChildScrollView( - // child: _buildDataTable(), - // ), - // ) - // ], - // ), - // ], - // ), - // isActive: _currentStep == 2, - // ), - ], - ), - ), - // SizedBox(height: 20), - // if (_currentStep == 2) - // Align( - // alignment: Alignment.bottomRight, - // child: ElevatedButton( - // onPressed: () { - // sendExcelFIleTOAPI(); - // }, - // child: Text( - // 'Complete', - // style: TextStyle(color: Colors.white), - // ), - // style: ElevatedButton.styleFrom( - // backgroundColor: Color(0xFFE26728), - // ), - // ), - // ), - // SizedBox(height: 20), - ], - ), - ), - ), - ), - ), - if (isLoading) - Container( - color: Color(0x98FFFCE5), // Semi-transparent background - child: Center( - child: // Your GIF loader widget - Image.asset( - height: 60, - width: 60, - 'assets/nhance-loader.gif'), // Adjust path to your GIF loader - ), - ), - Align( - alignment: Alignment.bottomCenter, - child: Container( - width: double.infinity, // Make the footer full width - child: CustomFooter(), - ), - ), - ])); - } - - Widget _buildDataTable() { - if (filteredData.isEmpty) { - SizedBox(height: 25); - return Text('No available data'); - } else { - return Card( - elevation: 0, // Set elevation to 0 for no shadow - child: PaginatedDataTable( - rowsPerPage: 25, // Adjust rows per page as needed - columns: [ - DataColumn(label: Text('S.No')), - DataColumn(label: Text('Employee ID')), - DataColumn(label: Text('Name')), - DataColumn(label: Text('Date of Joining')), - DataColumn(label: Text('Gender')), - DataColumn(label: Text('Relationship')), - DataColumn(label: Text('Date of Birth')), - DataColumn(label: Text('Mail')), - DataColumn(label: Text('Mobile No')), - DataColumn(label: Text('SI')), - DataColumn(label: Text('Grade')), - ], - source: _DependenceDataSource0(filteredData), - ), - ); - } - } - - Widget _buildRowWithIcon(IconData iconData, String text, - {Color iconColor = Colors.black}) { - return Row( - children: [ - Icon( - iconData, - color: iconColor, // Set color based on the parameter - ), - SizedBox(width: 8), // Add some space between icon and text - Text(text), // Text widget - ], - ); - } -} - -class Data { - final dynamic value; - final int row; - final int column; - final String sheet; - - Data(this.value, this.row, this.column, this.sheet); -} - -class _DependenceDataSource0 extends DataTableSource { - final List> _data; - _DependenceDataSource0(this._data); - - @override - DataRow getRow(int index) { - final row = _data[index]; - - String dob = row['DOB'] != null ? formatDate(row['DOB']) : 'N/A'; - String doj = row['DOJ'] != null ? formatDate(row['DOJ']) : 'N/A'; - - return DataRow(cells: [ - DataCell(Text(row['Sno'].toString())), - DataCell(Text(row['Emp_Code'].toString())), - DataCell(Text(row['Name'].toString())), - DataCell(Text(doj)), - DataCell(Text(row['Gender']?.toString() ?? 'N/A')), - DataCell(Text(row['Relation']?.toString() ?? 'N/A')), - DataCell(Text(dob)), - DataCell(Text(row['Mail']?.toString() ?? 'N/A')), - DataCell(Text(row['Mobile']?.toString() ?? 'N/A')), - DataCell(Text(row['SI']?.toString() ?? 'N/A')), - DataCell(Text(row['Grade']?.toString() ?? 'N/A')), - ]); - } - - @override - bool get isRowCountApproximate => false; - - @override - int get rowCount => _data.length; - - @override - int get selectedRowCount => 0; - - String formatDate(dynamic dateValue) { - if (dateValue is String) { - // If the date is already in string format - DateTime dateTime = DateTime.parse(dateValue); - return DateFormat('dd-MM-yyyy').format(dateTime); - } else if (dateValue is DateCellValue) { - // If dateValue is an instance of DateCellValue - return DateFormat('dd-MM-yyyy') - .format(DateTime.parse(dateValue.toString())); - } else { - // Handle other cases or null values - return 'N/A'; - } - } -} diff --git a/lib/hrDashboard.dart b/lib/hrDashboard.dart deleted file mode 100755 index 8ce04ec..0000000 --- a/lib/hrDashboard.dart +++ /dev/null @@ -1,979 +0,0 @@ -import 'dart:convert'; -import 'package:flutter/cupertino.dart'; -import 'package:flutter/gestures.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:jwt_decode/jwt_decode.dart'; -import 'package:nhancepolicy/responsive.dart'; -import 'package:nhancepolicy/service/api_service.dart'; -import 'package:nhancepolicy/service/hrDashboardTabs/activePolicies.dart'; -import 'package:nhancepolicy/service/hrDashboardTabs/cd.dart'; -import 'package:nhancepolicy/service/hrDashboardTabs/claims.dart'; -import 'package:nhancepolicy/service/hrDashboardTabs/preEnrollment.dart'; -import 'package:nhancepolicy/service/token_storage_service.dart'; -import 'package:shared_preferences/shared_preferences.dart'; -import 'package:http/http.dart' as http; -import 'config/environment.dart'; -import 'customAppBar/customAppBar.dart'; -import 'customAppBar/customFooter.dart'; -import 'customAppBar/toastHelper.dart'; -import 'package:universal_html/html.dart' as html; -import 'package:intl/intl.dart'; - -class hrDashboard extends StatefulWidget { - final int selectedIndex; - late final int isHrcode; - final String empCodeFromHrPolicy; - - hrDashboard({ - Key? key, - required this.selectedIndex, - required this.isHrcode, - required this.empCodeFromHrPolicy, - }) : super(key: key); - - @override - State createState() => _hrDashboardState(); -} - -class _hrDashboardState extends State - with SingleTickerProviderStateMixin { - late ApiService apiService; - late TabController _tabController; - bool isLoading = false; - int isHrcode = 0; - - String? enrollToken = ''; - String? _postToken = ''; - late String _token; - dynamic getPolicyNo; - dynamic branchName; - // bool _isLoading = false; - dynamic getPolicyNameDetails; - dynamic enrollmentClient_id; - dynamic policy_name; - dynamic getCardArrays = []; - List empAllowed_modules = []; - - List visibleTabs = []; - List tabViews = []; - dynamic clientName; - dynamic clientLogo; - dynamic empClientBranchId; - dynamic empHrId; - List enrollmentAllowed_modules = []; - List> tabData = []; - dynamic enrollmentEmpClientBranchId; - dynamic enrollmentHrId; - dynamic empClientId; - String empCodeFromHrPolcy = ''; - - final List cardColors = [ - Color(0xFFFFE3D9), - Color(0xFFFFD9EE), - Color(0xFFDBFFDE), - Color(0xFFE4DFFF), - ]; - ScrollController _scrollController = ScrollController(); - int selectedIndex = 0; - final tokenService = TokenStorageService(); - - @override - void initState() { - super.initState(); - apiService = ApiService(context); // Initialize ApiService here - checkToken(); - empCodeFromHrPolcy = widget.empCodeFromHrPolicy; - - // _tabController = TabController(length: 4, vsync: this); - // _tabController.addListener(() { - // setState(() { - // selectedIndex = _tabController.index; - // }); - // }); - // Future.delayed(Duration(seconds: 3), () { - // setState(() { - // isLoading = false; - // }); - // }); - - } - - @override - void dispose() { - super.dispose(); - _tabController.dispose(); - } - - checkToken() async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - // enrollToken = prefs.getString('pre_enrollment_data'); - // _postToken = prefs.getString('post_enrollment_data'); - - // Get the current token - final token = await tokenService.getCurrentToken(); - print('token - $token'); - - print('token check in'); - if((token != null && token!.isNotEmpty)){ - print('token check done'); - _loadToken(); - } else { - print('token check reject'); - ToastHelper.showErrorToast(context, 'Session Out'); - Navigator.pushReplacementNamed(context, 'hrLogin'); - } - } - - Future _loadToken() async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - enrollToken = await tokenService.getCurrentToken(); - _postToken = await tokenService.getCurrentToken(); - print(enrollToken); - print(_postToken); - branchName = prefs.getString('branchName') ?? ''; - - if (enrollToken != null && enrollToken!.isNotEmpty) { - // Map? decodedToken = Jwt.parseJwt(enrollToken!); - // enrollmentClient_id = decodedToken['client_id'].toString(); - enrollmentClient_id = prefs.getString('enrollmentClient_id'); - enrollmentEmpClientBranchId = - prefs.getString('enrollmentEmpClientBranchId'); - enrollmentHrId = prefs.getString('enrollmentHrId'); - - // print("Pre decodedToken - $decodedToken"); - print("Pre enrollmentClient_id - $enrollmentClient_id"); - print("Pre enrollmentEmpClientBranchId - $enrollmentEmpClientBranchId"); - print("Pre enrollmentHrId - $enrollmentHrId"); - - String? modulesString = prefs.getString('enrollmentAllowed_modules'); - if (modulesString != null) { - enrollmentAllowed_modules = jsonDecode(modulesString); - print( - "enrollmentAllowed_modules - $enrollmentAllowed_modules"); // [2, 3, 4] - - if (enrollmentAllowed_modules.contains(1)) { - tabData.add({ - 'icon': Icons.grid_view, - 'label': 'Pre Enrollment', - }); - print("getCardArrays.length = ${getCardArrays.length}"); - - // tabViews.add( - // PreEnrollment( - // enrollmentClientId: enrollmentClient_id, - // enrollmentClientBranchId: enrollmentEmpClientBranchId, - // enrollmentHrId: enrollmentHrId, - // enrollToken: enrollToken, - // ), - // ); - } - } - - if (prefs.containsKey('clientLogo') && prefs.containsKey('clientName')) { - clientLogo = prefs.getString('clientLogo'); - clientName = prefs.getString('clientName'); - } else { - empClientId = prefs.getString('empClientId'); - empClientBranchId = prefs.getString('empClientBranchId'); - getClientLogoAndDetails(empClientId,empClientBranchId, - enrollmentEmpClientBranchId, enrollmentClient_id, enrollToken); - } - getCashDepositDetails(enrollmentEmpClientBranchId, enrollmentClient_id, - enrollmentHrId, enrollToken); - } - - if (_postToken != null && _postToken!.isNotEmpty) { - // Map? postdecodedToken = Jwt.parseJwt(_postToken!); - - // empClientId = postdecodedToken['client_id'].toString(); - empClientId = prefs.getString('empClientId'); - empClientBranchId = prefs.getString('empClientBranchId'); - empHrId = prefs.getString('empHrId'); - - print('post empHrId- $empHrId'); - // print('postdecodedToken- $postdecodedToken'); - print('post empClientId- $empClientId'); - print('post empClientBranchId- $empClientBranchId'); - - print('allowed_modules'); - String? modulesString = prefs.getString('empAllowed_modules'); - - // String? enrollmodulesString = - // prefs.getString('enrollmentAllowed_modules'); - if (modulesString != null) { - empAllowed_modules = jsonDecode(modulesString); - // enrollmentAllowed_modules = jsonDecode(enrollmodulesString!); - print("empAllowed_modules - $empAllowed_modules"); // [2, 3, 4] - // print( - // "enrollmentAllowed_modules - $enrollmentAllowed_modules"); // [2, 3, 4] - - if (empAllowed_modules.contains(2)) { - print("visibleTabs.length2"); - print(visibleTabs.length); - - tabData.add({ - 'icon': Icons.verified_user, - 'label': 'Active Policies', - }); - // tabViews.add( - // ActivePolicies( - // empClientId: empClientId, - // empClientBranchId: empClientBranchId, - // empHrId: empHrId, - // postToken: _postToken, - // ), - // ); - } - if (empAllowed_modules.contains(3)) { - print("visibleTabs.length3"); - print(visibleTabs.length); - - tabData.add({ - 'icon': Icons.desktop_windows, - 'label': 'CD', - }); - - // tabViews.add(CdPolicies( - // empClientId: empClientId, - // empClientBranchId: empClientBranchId, - // empHrId: empHrId, - // postToken: _postToken, - // )); - } - print('333'); - if (empAllowed_modules.contains(4)) { - tabData.add({ - 'icon': Icons.receipt_long, - 'label': 'Claims', // Label Name Integrated with code (dont change) - }); - // tabViews.add(ClaimsPolicies( - // empClientId: empClientId, - // empClientBranchId: empClientBranchId, - // empHrId: empHrId, - // postToken: _postToken, - // isHrcode: widget.isHrcode == 1 ? 1 : 0, - // empCodeHrPolicy: empCodeFromHrPolcy - // // empCodeHrPolicy: widget.empCodeFromHrPolicy - // )); - } - } - // getCashDepositDetails( - // empClientBranchId, empClientId, empHrId, _postToken); - if (prefs.containsKey('clientLogo') && prefs.containsKey('clientName')) { - clientLogo = prefs.getString('clientLogo'); - clientName = prefs.getString('clientName'); - } else { - empClientId = prefs.getString('empClientId'); - empClientBranchId = prefs.getString('empClientBranchId'); - getClientLogoAndDetails(empClientId,empClientBranchId, - enrollmentEmpClientBranchId, enrollmentClient_id, _postToken); - } - print("getCashDepositDetails"); - } - - _tabController = TabController(length: tabData.length, vsync: this); - - print('selectedIndex ${widget.selectedIndex}'); - // var isHrcode; - print('111'); - if (widget.selectedIndex == 3) { - print("Process1"); - print("ProcessTAb - $tabData"); - - final claimsIndex = tabData.indexWhere((tab) => tab['label'] == 'Claims'); - print('Claims tab index: $claimsIndex'); - _tabController.index = claimsIndex; - // _tabController.index = 3; - setState(() { - selectedIndex = claimsIndex; - // selectedIndex = 3; - isHrcode = 1; - empCodeFromHrPolcy = widget.empCodeFromHrPolicy; - }); - print("tabIndexConti11- $selectedIndex - ${_tabController.index}"); - // print("tabIndexCode11- $isHrcode - ${widget.isHrempcode}"); - } - - print('222'); - _tabController.addListener(() { - int newIndex = _tabController.index; - - setState(() { - selectedIndex = newIndex; - if (newIndex != 3 && empCodeFromHrPolcy.isNotEmpty) { - empCodeFromHrPolcy = ''; // ✅ clear only once - } - - // selectedIndex = _tabController.index; - // empCodeFromHrPolcy = ''; - - print("Process2"); - print("tabIndexConti- $selectedIndex - ${_tabController.index}"); - - // print("tabIndexCode11- $isHrcode "); - }); - }); - - setState(() {}); - - isLoading = false; - } - - List getTabViews() { - return tabData.map((tab) { - final label = tab['label']; - - switch (label) { - case 'Claims': - return ClaimsPolicies( - empClientId: empClientId, - empClientBranchId: empClientBranchId, - empHrId: empHrId, - postToken: _postToken!, - isHrcode: widget.isHrcode == 1 ? 1 : 0, - empCodeHrPolicy: empCodeFromHrPolcy, - ); - case 'CD': - return CdPolicies( - empClientId: empClientId, - empClientBranchId: empClientBranchId, - empHrId: empHrId, - postToken: _postToken!, - ); - case 'Active Policies': - return ActivePolicies( - empClientId: empClientId, - empClientBranchId: empClientBranchId, - empHrId: empHrId, - postToken: _postToken!, - ); - case 'Pre Enrollment': - return PreEnrollment( - enrollmentClientId: enrollmentClient_id, - enrollmentClientBranchId: enrollmentEmpClientBranchId, - enrollmentHrId: enrollmentHrId, - enrollToken: enrollToken!, - ); - default: - return Center(child: Text('Unknown tab')); - } - }).toList(); - } - - Future getClientLogoAndDetails(post_client_id, post_client_branch_id, - pre_client_branch_id, pre_client_id, token) async { - var url = Uri.parse(Environment.apiUrl + - 'getClientDetails?post_client_id=$post_client_id&post_branch_id=$post_client_branch_id&pre_client_id=$pre_client_id&pre_branch_id=$pre_client_branch_id'); - try { - var response = await http.get( - url, - headers: { - 'APP-SIGNATURE': 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y', - 'Authorization': - 'Bearer $token', // Add token to the Authorization header - }, - ); - if (response.statusCode == 200) { - print('response.statusCode == 200'); - Map data = json.decode(response.body); - print(data); - - if (data.containsKey('data')) { - dynamic clientDetails = data['data']; - final SharedPreferences prefs = await SharedPreferences.getInstance(); - prefs.setString('clientLogo', clientDetails['client']['client_logo']); - prefs.setString('clientName', clientDetails['client']['client_name']); - setState(() { - // dynamic clientDetails = data['data']; - // print(clientDetails); - clientName = clientDetails['client']['client_name']; - print(clientName); - clientLogo = clientDetails['client']['client_logo']; - print(clientLogo); - }); - } else { - // Handle other status messages if needed - // ToastHelper.showErrorToast( - // context, 'API request failed with status: ${data['status']}'); - print('API request failed with status: ${data['status']}'); - } - } else { - // Handle other status codes - // ToastHelper.showErrorToast( - // context, 'Request failed with status: ${response.statusCode}'); - print('Request failed with status: ${response.statusCode}'); - } - } catch (e) { - // Handle exceptions - print('Exception occurred: $e'); - } - } - - Future getCashDepositDetails( - clintBranchId, clintID, hr_id, token) async { - print('IN'); - print("clintBranchId -$clintBranchId"); - print("clintID -$clintID"); - print("hr_id -$hr_id"); - print("token -$token"); - - isLoading = true; - // setState(() { - // _isLoading = true; - // }); - try { - if (clintBranchId == null || clintID == null) { - return; - } - final response = await apiService.getCashDepositDetailsToApi( - clintID!, clintBranchId!, hr_id, token); - - // final response = await apiService.getCashDepositDetailsToApi( - // clintID!, clintBranchId!, hr_id, token); - print('IN1'); - if (response['status'] == 'success') { - isLoading = false; - setState(() { - print('response'); - print(response['data']); - getCardArrays = List>.from(response['data']); - print('getCardArrays'); - print(getCardArrays); - }); - - print('IN2'); - } else { - print('API request failed with status'); - } - } catch (e) { - print('Exception occurred: $e'); - } - } - - Future downloadExcel(clintId, insurerId, insurerName) async { - // API endpoint to download the Excel file - - // Send GET request to the API - var url = Uri.parse(Environment.apiUrl + - 'exportCashDepositData?client_id=$clintId&insurer_id=$insurerId'); - - var response = await http.get( - url, - headers: { - 'APP-SIGNATURE': 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y', - 'Authorization': 'Bearer $_token', - }, - ); - - // Check if the request was successful (status code 200) - // Check if the request was successful (status code 200) - // Check if the request was successful (status code 200) - if (response.statusCode == 200) { - // Create a blob from the response body - final blob = html.Blob([response.bodyBytes]); - - // Generate a download URL for the blob - final url = html.Url.createObjectUrlFromBlob(blob); - - // Create a link element to trigger the download - final anchor = html.AnchorElement(href: url) - ..setAttribute('download', '$insurerName.xlsx') - ..click(); - - // Revoke the download URL to free up resources - html.Url.revokeObjectUrl(url); - } else { - // Handle error - print('Failed to download Excel file: ${response.statusCode}'); - } - } - - final List> policies = List.generate(10, (index) { - return { - "policyNo": index % 2 == 0 - ? "GMC - S70000/48/2025/401" - : "GMC - 4016/X0/351234479/00/000", - "insurer": "ICICI Lombard General Insurance Company Limited", - "draft": "1234", - "enrolled": "4", - "total": "1234", - }; - }); - - Future _showLogoutDialog() async { - return await showDialog( - context: context, - barrierDismissible: false, - builder: (context) => AlertDialog( - title: Text("Confirm Logout"), - content: Text("Do you want to logout?"), - actions: [ - TextButton( - onPressed: () => Navigator.of(context).pop(false), - child: Text("Cancel"), - ), - TextButton( - onPressed: () => apiService.logout(), - child: Text("Logout"), - ), - ], - ), - ) ?? - false; - } - - @override - Widget build(BuildContext context) { - if (getCardArrays == []) { - return PopScope( - canPop: false, // ✅ Prevents automatic back navigation - onPopInvoked: (didPop) async { - // This is triggered when browser back button is pressed - bool logout = await _showLogoutDialog(); - - if (logout) { - // ✅ Clear storage & logout - // Example: - // await storage.clear(); - final prefs = await SharedPreferences.getInstance(); - prefs.clear(); - print('LocalStorage Cleared'); - Navigator.pushNamed(context, 'hrLogin'); - } - }, - child: Scaffold( - appBar: CustomAppBar(), - body: SingleChildScrollView( - child: Container( - color: Color(0xFFEFF3F6), - child: Column( - children: [ - Center( - child: Text('No Data Available'), - ) - ], - ), - ), - ))); - } else { - int numCards = getCardArrays.length; - int numExpanded = numCards < 4 ? numCards : 4; - double cardHeight = MediaQuery.of(context).size.height / 4.5; - double policyHeight = MediaQuery.of(context).size.height / 4.5; - double cardWidth = MediaQuery.of(context).size.width / 6; - - print("visibleTabAll - $visibleTabs"); - print("tabViewsAll - $tabViews"); - return PopScope( - canPop: false, // ✅ Prevents automatic back navigation - onPopInvoked: (didPop) async { - // This is triggered when browser back button is pressed - bool logout = await _showLogoutDialog(); - - if (logout) { - // ✅ Clear storage & logout - // Example: - // await storage.clear(); - final prefs = await SharedPreferences.getInstance(); - prefs.clear(); - print('LocalStorage Cleared'); - Navigator.pushNamed(context, 'hrLogin'); - } - }, - child: Scaffold( - appBar: CustomAppBar(), - body: Stack(children: [ - Container( - padding: const EdgeInsets.only( - top: 20, bottom: 40, left: 40, right: 40), - - // padding: const EdgeInsets.only( - // top: 20, bottom: 20, left: 50, right: 50), - color: const Color(0xFFEFF3F6), - child: Column( - children: [ - Container( - color: Colors.white, - width: double.infinity, - // height: 75, - height: MediaQuery.of(context).size.height * 0.12, - - padding: Responsive.isDesktop(context) - ? const EdgeInsets.only( - top: 10, bottom: 10, left: 20, right: 20) - : EdgeInsets.only( - top: 10, - bottom: 10, - left: 10, - right: 10), // Add padding to the container - child: Row( - children: [ - Expanded( - flex: 6, - child: Container( - width: 150, - height: 80, - alignment: Alignment.centerLeft, - child: Image.network( - Uri.encodeFull(clientLogo ?? ''), - width: 200, - height: 200, - fit: BoxFit.contain, - frameBuilder: (BuildContext context, Widget child, int? frame, bool wasSynchronouslyLoaded) { - if (wasSynchronouslyLoaded) { - return child; - } - return AnimatedOpacity( - opacity: frame == null ? 0 : 1, - duration: const Duration(milliseconds: 500), - curve: Curves.easeOut, - child: child, - ); - }, - loadingBuilder: (BuildContext context, Widget child, ImageChunkEvent? loadingProgress) { - if (loadingProgress == null) { - return child; - } - return Center( - child: SizedBox( - width: 30, - height: 30, - child: CircularProgressIndicator( - strokeWidth: 2, - valueColor: AlwaysStoppedAnimation(Colors.grey), - value: loadingProgress.expectedTotalBytes != null - ? loadingProgress.cumulativeBytesLoaded / - (loadingProgress.expectedTotalBytes ?? 1) - : null, - ), - ), - ); - }, - errorBuilder: (BuildContext context, Object error, StackTrace? stackTrace) { - return Text(''); - // Image.asset( - // 'assets/Solid_gray.png', - // width: 80, - // height: 60, - // fit: BoxFit.cover, - // ); - }, - ), - ), - ), - Expanded( - flex: 9, - child: Column( - crossAxisAlignment: CrossAxisAlignment.end, // right aligned - mainAxisAlignment: MainAxisAlignment.center, - children: [ - // ⭐ Client Name - Text( - clientName ?? '', - textAlign: TextAlign.right, - style: GoogleFonts.poppins( - fontSize: Responsive.isDesktop(context) ? 20 : 18, - fontWeight: FontWeight.w600, - ), - ), - - const SizedBox(height: 20), - - // ⭐ Branch Name (new line) - Text( - 'Branch: ${branchName}' ?? '', - textAlign: TextAlign.right, - style: GoogleFonts.poppins( - fontSize: Responsive.isDesktop(context) ? 16 : 14, - fontWeight: FontWeight.w400, - color: Colors.grey[700], - ), - ), - ], - ), - ) - - ], - ), - ), - - SizedBox(height: 8), - - tabData.isNotEmpty - ? Container( - // padding: const EdgeInsets.all(5), - // height: MediaQuery.of(context).size.height * 0.08, - decoration: BoxDecoration( - color: Color( - 0xFFC4E3E6), // 🔹 Background behind the TabBar - borderRadius: BorderRadius.circular(12), - border: Border.all(color: Colors.transparent), - boxShadow: [ - BoxShadow( - color: Colors.black.withOpacity(0.15), - blurRadius: 4, - offset: const Offset(0, 4), - ), - ], - ), - child: Row( - // mainAxisAlignment: MainAxisAlignment.center, - // mainAxisSize: MainAxisSize.min, - children: [ - TabBar( - controller: _tabController, - isScrollable: true, - labelPadding: EdgeInsets.zero, - dividerColor: Colors.transparent, - indicatorColor: Colors.transparent, - indicatorPadding: EdgeInsets.zero, - labelColor: Colors.white, - unselectedLabelColor: const Color(0xFF828282), - // tabs: visibleTabs, - tabs: List.generate(tabData.length, (index) { - final data = tabData[index]; - return CustomTab( - icon: data['icon'], - label: data['label'], - isSelected: selectedIndex == index, - ); - }), - ), - ], - ), - ) - : Container( - height: MediaQuery.of(context).size.height * 0.6, - // color: Colors.white, - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image.asset( - 'assets/claimsData.png', // Replace 'default_image.png' with your default image asset path - width: 300, - height: 300, - fit: BoxFit.cover, - ), - const Text("No Data Available"), - ], - ), - ), - - SizedBox(height: 16), - // Expanded TabBarView - Expanded( - child: Padding( - padding: const EdgeInsets.symmetric(horizontal: 5), - child: TabBarView( - controller: _tabController, - children: getTabViews(), - // children: tabViews, - ), - ), - ), - ], - ), - ), - if (isLoading) - Container( - color: Color(0x98FFFCE5), // Semi-transparent background - child: Center( - child: // Your GIF loader widget - Image.asset( - height: 60, - width: 60, - 'assets/nhance-loader.gif'), // Adjust path to your GIF loader - ), - ), - Align( - alignment: Alignment.bottomCenter, - child: Container( - width: double.infinity, // Make the footer full width - child: CustomFooter(), - ), - ), - ])) - ); - - - } - } - - Widget buildPolicyCard(Map policy) { - print("buildPolicyCard - $policy"); - return SizedBox( - height: 50, - child: Card( - elevation: 3, - shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), - child: Padding( - padding: const EdgeInsets.all(12), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - policy['type'] ?? '', - style: const TextStyle( - fontWeight: FontWeight.w600, - fontSize: 14, - ), - ), - const SizedBox(height: 4), - Text( - policy['policy_name'] ?? '', - style: const TextStyle( - fontSize: 12, - color: Colors.grey, - ), - ), - const SizedBox(height: 16), - Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - _buildCountBox( - policy['membersCountOfDraft'].toString(), "Draft"), - _buildCountBox( - policy['membersCountOfEnrolled'].toString(), "Enrolled"), - _buildCountBox( - policy['totalMembersCount'].toString(), "Total"), - ], - ), - ], - ), - ), - ), - ); - } - - Widget _buildCountBox(String count, String label) { - return Column( - children: [ - Container( - width: 50, - height: 40, - alignment: Alignment.center, - decoration: BoxDecoration( - color: const Color(0xFFDFF1F3), - borderRadius: BorderRadius.circular(8), - ), - child: Text( - count, - style: const TextStyle(fontSize: 16, fontWeight: FontWeight.w600), - ), - ), - const SizedBox(height: 6), - Text(label, - style: const TextStyle(fontSize: 12, color: Colors.black87)), - ], - ); - } -} - -class CustomTab extends StatelessWidget { - final IconData icon; - final String label; - final bool isSelected; - - const CustomTab({ - required this.icon, - required this.label, - required this.isSelected, - }); - - @override - Widget build(BuildContext context) { - print("isSelected - $isSelected"); - return Tab( - child: Container( - // margin: const EdgeInsets.symmetric(horizontal: 6), - margin: const EdgeInsets.only(right: 6), - padding: const EdgeInsets.symmetric(horizontal: 10, vertical: 10), - decoration: BoxDecoration( - color: isSelected ? const Color(0xFF00999E) : Colors.white, - borderRadius: BorderRadius.circular(12), - boxShadow: [ - if (isSelected) - BoxShadow( - color: Colors.black.withOpacity(0.2), - blurRadius: 4, - offset: const Offset(0, 2), - ) - else - BoxShadow( - color: Colors.grey.withOpacity(0.2), - blurRadius: 2, - offset: const Offset(0, 1), - ), - ], - ), - child: Row( - // mainAxisAlignment: MainAxisAlignment.start, - mainAxisSize: MainAxisSize.min, - children: [ - Icon(icon, - size: 18, - color: isSelected ? Colors.white : const Color(0xFF828282)), - const SizedBox(width: 6), - Text( - label, - style: TextStyle( - fontWeight: FontWeight.w600, - color: isSelected ? Colors.white : const Color(0xFF828282), - ), - ), - ], - ), - ), - ); - } -} - -class PolicyCard extends StatelessWidget { - final Map policy; - - const PolicyCard({required this.policy}); - - @override - Widget build(BuildContext context) { - return Card( - elevation: 4, - shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), - child: Padding( - padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 12), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text(policy["policyNo"], - style: const TextStyle(fontWeight: FontWeight.bold)), - const SizedBox(height: 4), - Text(policy["insurer"], - style: const TextStyle(fontSize: 11, color: Colors.grey)), - const Spacer(), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - _buildStatusBox("Draft", policy["draft"]), - _buildStatusBox("Enrolled", policy["enrolled"]), - _buildStatusBox("Total", policy["total"]), - ], - ) - ], - ), - ), - ); - } - - Widget _buildStatusBox(String label, String value) { - return Column( - children: [ - Text(value, - style: const TextStyle( - fontWeight: FontWeight.bold, color: Colors.teal)), - const SizedBox(height: 2), - Text(label, style: const TextStyle(fontSize: 11, color: Colors.grey)), - ], - ); - } -} \ No newline at end of file diff --git a/lib/hrHome.dart b/lib/hrHome.dart index ad6de60..8465391 100755 --- a/lib/hrHome.dart +++ b/lib/hrHome.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; import 'package:nhancepolicy/customAppBar/customAppBar.dart'; -import 'package:nhancepolicy/excel_verification.dart'; +import 'package:nhancepolicy/presentation/preFileUpload.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:jwt_decode/jwt_decode.dart'; import 'dart:convert'; @@ -353,7 +353,7 @@ class _MyHrHomeState extends State with TickerProviderStateMixin { // argumentDetails = 'Dependent-AddOn'; // } - Navigator.pushNamed(context, 'excelVerify', arguments: argumentDetails); + Navigator.pushNamed(context, 'preFileUpload', arguments: argumentDetails); return; if (kIsWeb) { final input = html.FileUploadInputElement(); diff --git a/lib/hrLogin.dart b/lib/hrLogin.dart index 8662031..80bfa97 100755 --- a/lib/hrLogin.dart +++ b/lib/hrLogin.dart @@ -9,9 +9,9 @@ import 'package:nhancepolicy/hrVerify.dart'; import 'dart:convert'; import 'dart:io'; import 'package:nhancepolicy/responsive.dart'; -import 'package:shared_preferences/shared_preferences.dart'; import 'package:google_fonts/google_fonts.dart'; import 'package:flutter_animated_button/flutter_animated_button.dart'; +import 'package:nhancepolicy/service/token_storage_service.dart'; import 'config/environment.dart'; import 'email_verify.dart'; @@ -39,6 +39,7 @@ class _MyPhoneState extends State { int? _resendToken; bool _isLoading = false; bool isEmailFieldVisible = false; + final tokenService = TokenStorageService(); @override void initState() { @@ -48,17 +49,18 @@ class _MyPhoneState extends State { clearLocalStorageWhenStarts('initState'); } + clearLocalStorageWhenStarts(fromData) async { print(fromData); - // if(kIsWeb) { - print('vndbbcbdskbvkj3'); - final SharedPreferences prefs = await SharedPreferences.getInstance(); - prefs.clear(); - print('Local Storage Clear'); - // } + print('Clearing secure storage on app start'); + + await tokenService.clearAll(); + + print('Secure Storage Cleared'); } + void toggleField() { setState(() { isEmailFieldVisible = !isEmailFieldVisible; @@ -66,8 +68,7 @@ class _MyPhoneState extends State { } Future verifyMobileAndEmailNumber() async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - prefs.clear(); + await tokenService.clearAll(); print('verifyMobileAndEmailNumber :- Local Storage Clear'); try { if (_formKey.currentState!.validate()) { @@ -115,14 +116,16 @@ class _MyPhoneState extends State { bool userVerification = data['data']['user_verification']; String message = data['data']['message']; if (userVerification) { - final SharedPreferences prefs = - await SharedPreferences.getInstance(); if (isEmailFieldVisible) { print('isEmailFieldVisible $isEmailFieldVisible'); - prefs.setString('empEmail', emailMobileController.text); - print('${emailMobileController.text}'); - ToastHelper.showSuccessToast( - context, 'Verification code sent to ${emailMobileController.text}'); + await tokenService.writeValue( + 'empEmail', + emailMobileController.text, + ); + + // print('${emailMobileController.text}'); + // final message = 'Verification code sent to ${emailMobileController.text}'; + ToastHelper.showSuccessToast(context, 'Verification code sent to ${emailMobileController.text}'); Navigator.push( context, MaterialPageRoute( @@ -133,8 +136,8 @@ class _MyPhoneState extends State { ), ); } else { - ToastHelper.showSuccessToast( - context, 'Verification code sent to ${emailMobileController.text}'); + // final message = 'Verification code sent to ${emailMobileController.text}'; + ToastHelper.showSuccessToast(context, 'Verification code sent to ${emailMobileController.text}'); Navigator.push( context, MaterialPageRoute( @@ -154,6 +157,13 @@ class _MyPhoneState extends State { ToastHelper.showErrorToast(context, message); print('Invalid mobile number'); } + } else if (response.statusCode == 429) { + setState(() { + _isLoading = false; + }); + Map data = json.decode(response.body); + final message = data['message']; + ToastHelper.showErrorToast(context, message); } else { setState(() { _isLoading = false; @@ -297,606 +307,267 @@ class _MyPhoneState extends State { @override Widget build(BuildContext context) { - Size _size = MediaQuery.of(context).size; - EdgeInsets marginInsets = EdgeInsets.zero; + final Size _size = MediaQuery.of(context).size; - if (Responsive.isDesktop(context)) { - marginInsets = const EdgeInsets.only( - left: 0, - right: 0, - bottom: 0, - top: 0, - ); - } else if (Responsive.isMobile(context)) { - marginInsets = const EdgeInsets.only( - left: 25, // Example value for mobile - right: 25, // Example value for mobile - bottom: 0, // Example value for mobile - top: 0, // Example value for mobile - ); - } else if (Responsive.isTablet(context)) { - marginInsets = const EdgeInsets.only( - left: 25, // Example value for mobile - right: 25, // Example value for mobile - bottom: 0, // Example value for mobile - top: 0, // Example value for mobile - ); - } return Scaffold( - body: SingleChildScrollView( - keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior.onDrag, - child: Container( - height: _size.height, - color: Colors.white, - child: Stack( - children: [ - Visibility( - visible: _size.width <= 1100, - child: ClipRRect( - borderRadius: BorderRadius.only( - bottomLeft: Radius.circular(30), - bottomRight: Radius.circular(30), - ), - child: Container( - height: _size.height / 3, - width: double.infinity, - color: Color(0xFF00989E), - child: Stack( - children: [ - Positioned( - top: 40, // Adjust top position as needed - left: 10, // Align to the right - child: MouseRegion( - cursor: SystemMouseCursors.click, - child: MouseRegion( - cursor: SystemMouseCursors.click, - child: GestureDetector( - onTap: () { - // Add your navigation logic here - // For example, you can use Navigator.push to navigate to another page - Navigator.pushNamed(context, 'hrLogin'); - }, + body: Container( + width: double.infinity, + height: _size.height, + decoration: const BoxDecoration( + gradient: LinearGradient( + begin: Alignment.topRight, + end: Alignment.bottomLeft, + colors: [ + Color(0xFF00B6AC), + Color(0xFF83E0DE), + Color(0xFF01B4A8), + ], + ), + ), + + child: Center( + child: Container( + width: double.infinity, // ✅ fixed web width + height: _size.height, // ✅ fixed web height (IMPORTANT) + margin: const EdgeInsets.all(60), + clipBehavior: Clip.hardEdge, + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.all(Radius.circular(40)), + ), + child: Row( + children: [ + // ================= LEFT IMAGE ================= + Expanded( + flex: 5, + child: ClipRRect( + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(40), + bottomLeft: Radius.circular(40), + ), + child: Image.asset( + 'assets/hrLogin.png', + width: double.infinity, + height: double.infinity, + fit: BoxFit.cover, + ), + ), + ), + + // ================= RIGHT FORM ================= + Expanded( + flex: 7, + child: Padding( + padding: const EdgeInsets.symmetric(horizontal: 40), + child: Form( + key: _formKey, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image.asset( + 'assets/Nhance-Logo-Final 1.png', + width: 300, + height: 100, + ), + SizedBox(height: 25), + Container( + margin: EdgeInsets.symmetric( + horizontal: 150), child: Row( + mainAxisAlignment: + MainAxisAlignment.center, children: [ - Icon( - Icons.west, // Icon for customer login - color: Colors - .black, // Adjust color as needed - ), - SizedBox(width: 5), - Text( - 'Member Login', - style: TextStyle( - color: Color(0xFF000000), // Text color - // Add other text styles as needed + Expanded( + child: Text( + "Login with your ${isEmailFieldVisible ? 'email' : 'mobile number'} and OTP to review and enroll for exciting health benefits for you and your family", + style: GoogleFonts.poppins( + fontSize: 12, + color: Color(0xFF000000)), + textAlign: TextAlign.center, ), - ), + ) ], ), ), - ), - ), - ), - Column( - children: [ - SizedBox( - height: _size.height / - 6.4), // Adjust the spacing between the rows - Row( - mainAxisAlignment: MainAxisAlignment - .center, // Align to the center - children: [ - Expanded( - flex: Responsive.isDesktop(context) ? 10 : 12, - child: Align( - alignment: Responsive.isDesktop(context) - ? Alignment.centerLeft - : Alignment.bottomCenter, - child: Image.asset( - _size.width <= 1100 - ? 'assets/mobileViewLogo.png' - : 'assets/Nhance-Logo-Final 1.png', - width: 150, - height: 150, - ), - ), + SizedBox(height: 20), + Container( + height: 55, + margin: const EdgeInsets.symmetric(horizontal: 150) , + decoration: BoxDecoration( + border: Border.all(width: 1, color: Colors.grey), + borderRadius: BorderRadius.circular(10), ), - if (!Responsive.isMobile(context) && - !Responsive.isTablet(context)) - Expanded( - flex: 2, - child: MouseRegion( - cursor: SystemMouseCursors.click, - child: GestureDetector( - onTap: () { - // Add your navigation logic here - // For example, you can use Navigator.push to navigate to another page - Navigator.pushNamed( - context, 'hrLogin'); - }, - child: Row( - mainAxisAlignment: MainAxisAlignment - .end, // Align to the end (right) - children: [ - Text( - 'HR Login', - style: TextStyle( - color: Color( - 0xFF000000), // Text color - // Add other text styles as needed - ), - ), - SizedBox(width: 5), - Icon( - Icons - .east, // Icon for customer login - color: Colors - .black, // Adjust color as needed - ), - ], - ), - ), + child: TextFormField( + controller: emailMobileController, + keyboardType: TextInputType.text, + decoration: const InputDecoration( + border: InputBorder.none, + hintText: "Email / Mobile Number ", + contentPadding: EdgeInsets.symmetric(horizontal: 10), ), - ), - ], - ), - ], - ), - ], - ), - ), - ), - ), - Container( - margin: marginInsets, - alignment: Alignment.bottomCenter, - child: SingleChildScrollView( - child: Form( - key: _formKey, - child: Column( - children: [ - Row( - children: [ - if (_size.width > 1100) - Expanded( - flex: _size.width < 1100 ? 6 : 12, - child: LayoutBuilder( - builder: (BuildContext context, - BoxConstraints constraints) { - if (constraints.maxWidth > 600) { - return Image.asset( - 'assets/hrLogin.jpg', - height: _size.height, - fit: BoxFit.cover, - ); - } else { - return SizedBox(); + validator: (value) { + if (value == null || value.trim().isEmpty) { + return "Please enter email or mobile number"; + } + + String input = value.trim(); + + // ❌ Reject all spaces + if (input.contains(' ')) { + return "No spaces allowed"; + } + + final emailRegex = RegExp(r'^[^@]+@[^@]+\.[^@]+$'); + final mobileRegex = RegExp(r'^[0-9]{10}$'); + + bool isEmailFormat = emailRegex.hasMatch(input); + bool isMobileFormat = mobileRegex.hasMatch(input); + + // --------------------------- + // 🛑 MOBILE VALIDATION + // --------------------------- + if (RegExp(r'^[0-9]+$').hasMatch(input)) { + if (input.length != 10) { + return "Mobile number must be exactly 10 digits"; + } + } + + // --------------------------- + // 🛑 EMAIL VALIDATION + // --------------------------- + + // Reject anything that has '@' but is NOT a valid email format + if (input.contains('@') && !isEmailFormat) { + return "Enter a valid email address"; + } + + // Reject email with extra digits at the end + if (input.contains('@') && RegExp(r'\d+$').hasMatch(input)) { + return "Email cannot contain extra numbers"; + } + + // Reject email+mobile combination + if (input.contains('@') && RegExp(r'\d{10}$').hasMatch(input)) { + return "Enter only email OR mobile number"; + } + + // --------------------------- + // 🛑 MIXED CONTENT (letters + digits but NOT email) + // --------------------------- + bool hasLetters = RegExp(r'[A-Za-z]').hasMatch(input); + bool hasDigits = RegExp(r'[0-9]').hasMatch(input); + + if ((hasLetters && hasDigits) && !input.contains('@')) { + return "Enter only email OR 10-digit mobile number"; + } + + // --------------------------- + // 🟢 FINAL CHECK + // --------------------------- + if (!isEmailFormat && !isMobileFormat) { + return "Enter a valid email or 10-digit mobile number"; + } + + return null; } - }, + ), ), - Expanded( - flex: _size.width < 1100 ? 6 : 12, - child: Container( - margin: _size.width > 1100 - ? EdgeInsets.only(left: 20, right: 20) - : EdgeInsets.only(left: 0, right: 0), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - if (!Responsive.isMobile(context) && - !Responsive.isTablet(context)) - Row( - children: [ - // Expanded( - // flex: 4, - // child: Align( - // alignment: Alignment.centerLeft, - // child: AnimatedButton( - // animatedOn: - // AnimatedOn.onHover, - // onPress: () { - // Navigator.pushNamed( - // context, 'phone'); - // }, - // onChanges: (change) {}, - // height: 30, - // width: 150, - // text: 'Member Login', - // isReverse: true, - // selectedTextColor: - // Colors.black, - // transitionType: TransitionType - // .RIGHT_CENTER_ROUNDER, - // textStyle: - // GoogleFonts.poppins( - // fontSize: 16, - // letterSpacing: 0, - // color: Color(0xFF00989E), - // fontWeight: FontWeight.w300, - // ), - // backgroundColor: Colors.white, - // selectedBackgroundColor: - // Color(0xFF00989E), - // borderColor: - // Color(0xFF00989E), - // borderWidth: 1, - // ), - // )), - Expanded( - flex: 8, - child: Align( - alignment: Alignment.center, // Align to the start - child: _size.width <= 1100 - ? Image.asset( - 'assets/Nhance-Logo-Final-mobile.png', - width: 150, - height: 70, - ) - : _size.width > 1100 - ? Image.asset( - 'assets/Nhance-Logo-Final 1.png', - width: 150, - height: 70, - ) - : Image.asset( - 'assets/Nhance-Logo-Final 1.png', - width: 150, - height: 70, - ), - )), - ], - ), - SizedBox(height: 80), - Container( - margin: Responsive.isDesktop(context) - ? EdgeInsets.symmetric( - horizontal: 150) - : EdgeInsets.symmetric(horizontal: 0), - child: Row( - mainAxisAlignment: - MainAxisAlignment.center, - children: [ - Expanded( - child: Text( - "Login with your ${isEmailFieldVisible ? 'email' : 'mobile number'} and OTP to review and enroll for exciting health benefits for you and your family", - style: GoogleFonts.poppins( - fontSize: 12, - color: Color(0xFF000000)), - textAlign: TextAlign.center, - ), - ) - ], + SizedBox(height: 20), + Container( + margin: EdgeInsets.symmetric( + horizontal: 150), + child: SizedBox( + width: double.infinity, + height: 45, + child: ElevatedButton( + style: ElevatedButton + .styleFrom( + backgroundColor: + Color(0xFF00989E), + shape: + RoundedRectangleBorder( + borderRadius: + BorderRadius + .circular(10), ), ), - SizedBox( - height: 20, + onPressed: _isLoading + ? null + : verifyMobileAndEmailNumber, + child: _isLoading + ? const CircularProgressIndicator( + valueColor: + AlwaysStoppedAnimation< + Color>( + Color(0xFF00989E), + ), + ) + : Text( "Login with Email / Mobile OTP", + style: GoogleFonts + .poppins( + color: const Color( + 0xFFFFFFFF), + ), ), - Column( - children: [ - Container( - height: 55, - margin: Responsive.isDesktop(context) - ? const EdgeInsets.symmetric(horizontal: 150) - : const EdgeInsets.symmetric(horizontal: 0), - decoration: BoxDecoration( - border: Border.all(width: 1, color: Colors.grey), - borderRadius: BorderRadius.circular(10), - ), - child: TextFormField( - controller: emailMobileController, - keyboardType: TextInputType.text, - decoration: const InputDecoration( - border: InputBorder.none, - hintText: "Email / Mobile Number ", - contentPadding: EdgeInsets.symmetric(horizontal: 10), - ), - validator: (value) { - if (value == null || value.trim().isEmpty) { - return "Please enter email or mobile number"; - } - - String input = value.trim(); - - // ❌ Reject all spaces - if (input.contains(' ')) { - return "No spaces allowed"; - } - - final emailRegex = RegExp(r'^[^@]+@[^@]+\.[^@]+$'); - final mobileRegex = RegExp(r'^[0-9]{10}$'); - - bool isEmailFormat = emailRegex.hasMatch(input); - bool isMobileFormat = mobileRegex.hasMatch(input); - - // --------------------------- - // 🛑 MOBILE VALIDATION - // --------------------------- - if (RegExp(r'^[0-9]+$').hasMatch(input)) { - if (input.length != 10) { - return "Mobile number must be exactly 10 digits"; - } - } - - // --------------------------- - // 🛑 EMAIL VALIDATION - // --------------------------- - - // Reject anything that has '@' but is NOT a valid email format - if (input.contains('@') && !isEmailFormat) { - return "Enter a valid email address"; - } - - // Reject email with extra digits at the end - if (input.contains('@') && RegExp(r'\d+$').hasMatch(input)) { - return "Email cannot contain extra numbers"; - } - - // Reject email+mobile combination - if (input.contains('@') && RegExp(r'\d{10}$').hasMatch(input)) { - return "Enter only email OR mobile number"; - } - - // --------------------------- - // 🛑 MIXED CONTENT (letters + digits but NOT email) - // --------------------------- - bool hasLetters = RegExp(r'[A-Za-z]').hasMatch(input); - bool hasDigits = RegExp(r'[0-9]').hasMatch(input); - - if ((hasLetters && hasDigits) && !input.contains('@')) { - return "Enter only email OR 10-digit mobile number"; - } - - // --------------------------- - // 🟢 FINAL CHECK - // --------------------------- - if (!isEmailFormat && !isMobileFormat) { - return "Enter a valid email or 10-digit mobile number"; - } - - return null; - } - + ), + ), + ), + SizedBox(height: 20), + Container( + width: double + .infinity, // Make the footer full width + child: Container( + alignment: Alignment.bottomCenter, + padding: + EdgeInsets.symmetric(vertical: 8), + child: RichText( + textAlign: TextAlign.center, + text: TextSpan( + text: + 'By continuing, you agree with our ', + style: GoogleFonts.poppins( + color: Colors.black, + fontSize: 9, + ), + children: [ + TextSpan( + text: 'privacy policy ', + style: GoogleFonts.poppins( + color: Color(0xFFE26828), + fontSize: 9, ), ), - SizedBox(height: 15), - Container( - margin: Responsive.isDesktop( - context) - ? EdgeInsets.symmetric( - horizontal: 150) - : EdgeInsets.symmetric( - horizontal: 0), - child: SizedBox( - width: double.infinity, - height: 45, - child: ElevatedButton( - style: ElevatedButton - .styleFrom( - backgroundColor: - Color(0xFF00989E), - shape: - RoundedRectangleBorder( - borderRadius: - BorderRadius - .circular(10), - ), - ), - onPressed: _isLoading - ? null - : verifyMobileAndEmailNumber, - child: _isLoading - ? CircularProgressIndicator( - valueColor: - AlwaysStoppedAnimation< - Color>( - Color(0xFF00989E), - ), - ) - : Text( "Login with Email / Mobile OTP", - style: GoogleFonts - .poppins( - color: Color( - 0xFFFFFFFF), - ), - ), - ), + TextSpan( + text: 'and ', + style: GoogleFonts.poppins( + color: Colors.black, + fontSize: 9, + ), + ), + TextSpan( + text: 'terms of use', + style: GoogleFonts.poppins( + color: Color(0xFFE26828), + fontSize: 9, ), ), - SizedBox(height: 15), - // MouseRegion( - // cursor: SystemMouseCursors.click, - // child: GestureDetector( - // onTap: toggleField, - // child: Text( - // isEmailFieldVisible - // ? "Login with Mobile No" - // : "Login with Email", - // style: TextStyle( - // color: Color(0xFF00989E), - // ), - // ), - // ), - // ), ], ), - SizedBox( - height: _size.width <= 1100 ? 0 : 0, - ), - SizedBox( - height: _size.width <= 1100 ? 0 : 0, - ), - SizedBox( - height: _size.width <= 1100 ? 0 : 0, - ), - // _size.width > 1100 - // ? Container( - // margin: EdgeInsets.symmetric( - // horizontal: 150), - // child: Column( - // children: [ - // SizedBox(height: 30), - // Text( - // "Benefits of Login", - // style: TextStyle( - // fontSize: 20, - // fontWeight: FontWeight.bold, - // ), - // ), - // SizedBox(height: 15), - // ], - // )) - // : SizedBox(), - // _size.width > 1100 - // ? Container( - // margin: EdgeInsets.symmetric( - // horizontal: 150), - // child: Row( - // mainAxisAlignment: - // MainAxisAlignment.center, - // children: [ - // Expanded( - // flex: 6, - // child: Container( - // padding: - // EdgeInsets.symmetric( - // vertical: 8), - // child: Row( - // mainAxisAlignment: - // MainAxisAlignment - // .center, - // children: [ - // Expanded( - // child: Container( - // padding: EdgeInsets - // .symmetric( - // vertical: - // 12), - // decoration: - // BoxDecoration( - // border: Border( - // right: - // BorderSide( - // width: 1, - // color: Colors - // .black, - // ), - // ), - // ), - // child: Column( - // children: [ - // Icon( - // Icons - // .policy, - // color: Color( - // 0xFFE26728)), - // SizedBox( - // height: 10), - // Text( - // "View Policy"), - // ], - // ), - // ), - // ), - // Expanded( - // child: Container( - // padding: EdgeInsets - // .symmetric( - // vertical: - // 12), - // child: Column( - // children: [ - // Icon(Icons.edit, - // color: Color( - // 0xFFE26728)), - // SizedBox( - // height: 10), - // Text( - // "Manage Claims"), - // ], - // ), - // ), - // ), - // ], - // ), - // ), - // ), - // ], - // ), - // ) - // : SizedBox( - // height: - // Responsive.isDesktop(context) - // ? _size.height * 0.1 - // : _size.height * 0.2, - // ), - SizedBox( - height: Responsive.isDesktop(context) - ? _size.height * 0.3 - : _size.height * 0.2, - ), - // SizedBox( - // height: _size.height * 0.1, - // ), - Align( - alignment: Alignment.bottomCenter, - child: Container( - width: double - .infinity, // Make the footer full width - child: Container( - alignment: Alignment.bottomCenter, - padding: - EdgeInsets.symmetric(vertical: 8), - child: RichText( - textAlign: TextAlign.center, - text: TextSpan( - text: - 'By continuing, you agree with our ', - style: GoogleFonts.poppins( - color: Colors.black, - fontSize: 9, - ), - children: [ - TextSpan( - text: 'privacy policy ', - style: GoogleFonts.poppins( - color: Color(0xFF00989E), - fontSize: 9, - ), - ), - TextSpan( - text: 'and ', - style: GoogleFonts.poppins( - color: Colors.black, - fontSize: 9, - ), - ), - TextSpan( - text: 'terms of use', - style: GoogleFonts.poppins( - color: Color(0xFF00989E), - fontSize: 9, - ), - ), - ], - ), - ), - ), - ), - ), - ], + ), ), ), - ), - ], + ], + ), ), - ], + ), ), - ), + ], ), ), - ], - )), - )); + ) + + ) + ); } } diff --git a/lib/main.dart b/lib/main.dart index 618a560..7a928b0 100755 --- a/lib/main.dart +++ b/lib/main.dart @@ -5,23 +5,27 @@ import 'package:nhancepolicy/addons.dart'; import 'package:nhancepolicy/branch/branch_selection_page.dart'; import 'package:nhancepolicy/empReview.dart'; import 'package:nhancepolicy/empDetails.dart'; -import 'package:nhancepolicy/excel_verification.dart'; +import 'package:nhancepolicy/presentation/preFileUpload.dart'; import 'package:nhancepolicy/hrHome.dart'; import 'package:nhancepolicy/hrVerify.dart'; import 'package:nhancepolicy/phone.dart'; -import 'package:nhancepolicy/postFileUpload.dart'; +import 'package:nhancepolicy/presentation/excelVerification.dart'; +import 'package:nhancepolicy/presentation/postFileUpload.dart'; +import 'package:nhancepolicy/presentation/cdList.dart'; +import 'package:nhancepolicy/presentation/claims.dart'; +import 'package:nhancepolicy/presentation/policies.dart'; import 'package:nhancepolicy/service/session/session_service.dart'; import 'package:nhancepolicy/service/token_storage_service.dart'; import 'package:nhancepolicy/verify.dart'; import 'package:nhancepolicy/home.dart'; -import 'package:nhancepolicy/hrDashboard.dart'; +import 'package:nhancepolicy/presentation/hrDashboard.dart'; import 'package:flutter_dotenv/flutter_dotenv.dart'; import 'package:nhancepolicy/hrLogin.dart'; -import 'package:nhancepolicy/hrPolicyDetails.dart'; +import 'package:nhancepolicy/presentation/hrPolicyDetails.dart'; import 'package:nhancepolicy/oldPolicy.dart'; import 'package:firebase_core/firebase_core.dart'; -import 'cdTransactionDetails.dart'; +import 'presentation/cdTransactionDetails.dart'; import 'config/environment.dart'; import 'email_verify.dart'; @@ -96,7 +100,7 @@ Future startApp() async { // onResendCode: (String, int) {}, // ), 'hrHome': (context) => MyHrHome(), - 'excelVerify': (context) => const excelVerify( + 'preFileUpload': (context) => const preFileUpload( ClientId: '', policyTypeId: '', ClientPoliyId: '', @@ -108,6 +112,7 @@ Future startApp() async { cardInsurer_name: '', cardPolicy_name: '', cardPolicy_ExpDate: '', + total_premium: '', ), 'postFileUpload': (context) => const postFileUpload( ClientId: '', @@ -121,23 +126,22 @@ Future startApp() async { cardInsurer_name: '', cardPolicy_name: '', cardPolicy_ExpDate: '', + total_premium: '', + ), + 'excelErrorScreen': (context) => const excelErrorScreen( + ClientId: '', + policy_no: '', + action: '', + created_at: '', + clientBranchId: '', + Token: '', + TokenType: '', + id: '' ), 'empDetails': (context) => empDetails(), 'addOnsDetails': (context) => addOnsDetails(), 'empReviewDetails': (context) => empReviewDetails(), - 'hrDashboard': (context) => hrDashboard( - selectedIndex: 0, - isHrcode: 0, - empCodeFromHrPolicy: '', - ), - 'cdTransactionDetails': (context) => cdTransactionDetails( - insurerName: '', - cdMasterAccountNo: '', - insurerId: '', - cd_ac_pk: '', - empClientId: '', - postToken: '', - ), + 'hrDashboard': (context) => hrDashboard(), 'hrPolicyDetails': (context) => hrPolicyDetails( ClientId: '', policyTypeId: '', @@ -150,9 +154,21 @@ Future startApp() async { cardInsurer_name: '', cardPolicy_name: '', cardPolicy_ExpDate: '', + total_premium: '', + is_ecard_bulk_download_for_employee: 0, ), 'oldPolicy': (context) => oldPolicy(), 'branchSelection': (context) => BranchSelectionPage(), + 'policies': (context) => policies(), + 'CdPoliciesList': (context) => CdPoliciesList(), + 'ClaimsPolicies': (context) => ClaimsPolicies(), + 'cdTransactionDetails': (context) => cdTransactionDetails( + insurerName: '', + cdMasterAccountNo: '', + insurerId: '', + cd_ac_pk: '', + empClientId: '', + ), }, )); } diff --git a/lib/postFileUpload.dart b/lib/postFileUpload.dart deleted file mode 100755 index 3aa7ae7..0000000 --- a/lib/postFileUpload.dart +++ /dev/null @@ -1,1262 +0,0 @@ -import 'dart:typed_data'; -import 'package:flutter/material.dart'; -import 'package:font_awesome_flutter/font_awesome_flutter.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:jwt_decode/jwt_decode.dart'; -import 'package:nhancepolicy/customAppBar/customAppBar.dart'; -import 'dart:convert'; -import 'dart:async'; -import 'package:http/http.dart' as http; -import 'package:nhancepolicy/customAppBar/toastHelper.dart'; -import 'package:nhancepolicy/hrPolicyDetails.dart'; -import 'package:nhancepolicy/service/api_service.dart'; -import 'package:shared_preferences/shared_preferences.dart'; -import 'package:universal_html/html.dart' as html; -import 'package:flutter/foundation.dart' show kIsWeb; -import 'dart:io'; -import 'package:intl/intl.dart'; -import 'package:csv/csv.dart'; - -import 'package:spreadsheet_decoder/spreadsheet_decoder.dart'; -import 'package:url_launcher/url_launcher.dart'; - -import 'config/environment.dart'; -import 'customAppBar/customFooter.dart'; - -class postFileUpload extends StatefulWidget { - final String ClientId; - final String policyTypeId; - final String ClientPoliyId; - final String clientBranchId; - final String Token; - final String TokenType; - final String cardType; - final String cardPolicyNo; - final String cardInsurer_name; - final String cardPolicy_name; - final String cardPolicy_ExpDate; - const postFileUpload( - {Key? key, - required this.ClientId, - required this.policyTypeId, - required this.ClientPoliyId, - required this.clientBranchId, - required this.Token, - required this.TokenType, - required this.cardType, - required this.cardPolicyNo, - required this.cardInsurer_name, - required this.cardPolicy_name, - required this.cardPolicy_ExpDate}) - : super(key: key); - - @override - State createState() => _postFileUploadState(); -} - -class _postFileUploadState extends State { - Uint8List? fileBytes; - Uint8List? fileBytes2; - late String _token; - dynamic getPolicyNo; - bool _isLoading = false; - dynamic getPolicyNameDetails; - dynamic clintID; - String? fileName; - int _currentStep = 0; // Step index tracker - List dataPolicy = []; - dynamic validationArray = []; - dynamic missingColumnErrorMsg = 0; - dynamic columnIndexMismatchCount = 0; - dynamic columnMissingCount = 0; - List> extractedData = []; - dynamic argumentsData; - List> originalData = []; // Original data source - List> filteredData = []; // Filtered data source - List> tableData = []; // Filtered data source - - List> nonExcelFilteredData = []; - dynamic invalidRelationships = 0; - dynamic dobAgeCheckCount = 0; - dynamic empRefId; - dynamic empPrimaryId; - List> getFileUploadMasterList = []; - dynamic getThrFileList = []; - late int excelValidationStaus = 1; - bool isSuccess = false; - String successContent = ''; - bool isLoading = false; - late ApiService apiService; - TextEditingController searchController = TextEditingController(); - String? _selectedOption; - - int _currentPage = 1; - int _rowsPerPage = 5; - - List get _paginatedData { - final startIndex = (_currentPage - 1) * _rowsPerPage; - final endIndex = - (_currentPage * _rowsPerPage).clamp(0, filteredData.length); - return filteredData.sublist(startIndex, endIndex); - } - - final List> serviceList = [ - {"id": 1, "name": "Sales"}, - {"id": 2, "name": "Service"}, - ]; - - String? selectedKey; - String? selectedValue; - String? _selectedAction; - - @override - void initState() { - super.initState(); - apiService = ApiService(context); - _loadToken(); - getFileUploadMasterDetails(); - getFileListDetails(); - } - - @override - void dispose() { - super.dispose(); - html.window.localStorage.remove('fileBytes'); - } - - Future _loadToken() async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - // final token = prefs.getString('hrtoken'); - final token = widget.Token; - if (token != null && token.isNotEmpty) { - setState(() { - _token = token; - }); - Map? decodedToken = Jwt.parseJwt(token); - print('decodedToken $decodedToken'); - } else { - // Token is empty or null, handle accordingly (e.g., navigate to login screen) - // For now, let's navigate to the login screen - ToastHelper.showErrorToast(context, 'Session Out'); - Navigator.pushReplacementNamed(context, 'hrLogin'); - } - } - - // Future getPolicyDetails() async { - // setState(() { - // clientPolicyId = argumentsData['client_policy_id']; - // clientId = argumentsData['client_id']; - // policyType = argumentsData['type']; - // policy_name = argumentsData['policy_name']; - // }); - // } - - // Future _uploadFile1(importPolicyName) async { - // FilePickerResult? result = await FilePicker.platform.pickFiles( - // type: FileType.custom, - // allowedExtensions: ['xlsx', 'xls', 'csv'], - // ); - // - // if (result != null) { - // PlatformFile file = result.files.first; - // Uint8List fileBytes = file.bytes!; - // // Use the fileBytes as needed - // print('File name: ${file.name}'); - // print('File size: ${file.size}'); - // print('File bytes: $fileBytes'); - // _processExcelData(fileBytes); - // } else { - // // User canceled the picker - // } - // } - - Future getFileUploadMasterDetails() async { - print('9'); - try { - final response = await apiService.getFileUploadMastersToApi(widget.Token); - - if (response['status'] == true) { - print('getFileUploadMasterList1'); - setState(() { - final actions = Map.from(response['data']['actions']); - setState(() { - getFileUploadMasterList = actions.entries - .map((e) => {"key": e.key, "value": e.value}) - .toList(); - print('getFileUploadMasterList: $getFileUploadMasterList'); - }); - print('getFileUploadMasterList'); - print(getFileUploadMasterList); - }); - } else { - print('Request failed with status: ${response['code']}'); - } - } catch (e) { - setState(() { - isLoading = false; - }); - print('Exception occurred: $e'); - } finally { - setState(() { - // _isLoading = false; - }); - } - } - - Future getFileListDetails() async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - empPrimaryId = prefs.getString('empPrimaryId'); - print('9'); - try { - final response = await apiService.getFileListToApi( - empPrimaryId, widget.cardPolicyNo, widget.Token); - - if (response['status'] == 'success') { - print('getThrFileList'); - setState(() { - getThrFileList = List>.from(response['data']); - originalData = getThrFileList; - filteredData = List.from(originalData); - print('filteredData'); - print(filteredData); - }); - } else { - print('Request failed with status: ${response['code']}'); - } - } catch (e) { - setState(() { - isLoading = false; - }); - print('Exception occurred: $e'); - } finally { - setState(() { - // _isLoading = false; - }); - } - } - - Future getHrFileDownload(id, file_name) async { - // final http.Response response = await apiService.getHrFileDownloadToApi(id, widget.Token); - final apiurl = Environment.apiUrlPost; - final String url = '$apiurl/hrFileDownload?id=$id'; - final token = widget.Token; - - final response = await http.get( - Uri.parse(url), - headers: { - 'APP-SIGNATURE': 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y', - 'Authorization': 'Bearer $token', - 'Content-Type': 'application/json', - // 'app-signature': 'ts-traveltool-2025-signature-123456', - }, - ); - - if (response.statusCode == 200) { - try { - print("PDF Downloaded"); - - // ✅ Create a blob from the response body bytes - final blob = html.Blob([response.bodyBytes]); - - // ✅ Generate a download URL - final url = html.Url.createObjectUrlFromBlob(blob); - - // ✅ Trigger file download automatically - final anchor = html.AnchorElement(href: url) - ..setAttribute('download', '$file_name') - ..click(); - - // ✅ Revoke the URL to free memory - html.Url.revokeObjectUrl(url); - } catch (e) { - throw Exception('Error parsing response: $e'); - } - } else { - print("Download failed with status: ${response.statusCode}"); - } - } - - void _uploadFile() async { - print('Test'); - if (kIsWeb) { - print('kIsWeb'); - final input = html.FileUploadInputElement(); - input.accept = '.xlsx,.xls,.csv'; - input.click(); - input.onChange.listen((event) async { - final file = input.files!.first; - final reader = html.FileReader(); - reader.readAsArrayBuffer(file); - await reader.onLoadEnd.first; // Wait for the file to be loaded - if (reader.readyState == html.FileReader.DONE) { - Uint8List? fileBytes = reader.result as Uint8List?; - if (fileBytes != null) { - setState(() { - fileName = file.name; - }); - // Save fileBytes to local storage - final jsonString = json.encode(fileBytes); - html.window.localStorage['fileBytes'] = jsonString; - print('File Name: $fileName'); - print('File Bytes: $fileBytes'); - sendExcelFIleTOAPI(fileBytes, fileName); - // Call the function to process Excel data here - // _processExcelData(fileBytes, fileName); - } - } - }); - } else { - // Handle non-web platforms here (e.g., show an error message) - print('File upload is only supported on web platforms.'); - } - } - - int countInvalidDobs(List> data) { - int invalidCount = 0; - - for (var entry in data) { - DateTime dob; - - // if (entry['DOB'] is String) { - dob = DateTime.parse(entry['DOB'].toString()); - // } else if (entry['DOB'] is DateTime) { - // dob = entry['DOB']; - // } else { - // // Invalid DOB format, skip this entry - // continue; - // } - print(entry['Relation']); - if ((entry['Relation'].toString() == 'Son' || - entry['Relation'].toString() == 'Daughter')) { - if (DateTime.now().difference(dob).inDays > 25 * 365) { - print('child $dob'); - invalidCount++; - } - } else if ((entry['Relation'] != 'Son' && - entry['Relation'] != 'Daughter')) { - if (DateTime.now().difference(dob).inDays < 18 * 365) { - print('others $dob'); - invalidCount++; - } - } - } - - return invalidCount; - } - - void _dragAndDropFile(html.File file) async { - print('file'); - print(file); - // Prepare form data - final formData = html.FormData(); - formData.appendBlob('file', file); - - // Send formData to API endpoint - final response = await html.HttpRequest.request( - 'your_api_endpoint_here', - method: 'POST', - sendData: formData, - ); - - // Handle response as needed - print(response.responseText); - } - - Future sendExcelFIleTOAPI(Uint8List fileBytes, fileName) async { - final SharedPreferences prefs = await SharedPreferences.getInstance(); - empPrimaryId = prefs.getString('empPrimaryId'); - // Future.delayed(Duration(seconds: 3), () { - setState(() { - isLoading = true; - }); - // }); - print('submit'); - print(fileBytes); - if (fileBytes == null) { - ToastHelper.showErrorToast(context, 'Please upload file'); - print('return'); - return; // No file selected - } else { - print('else'); - // // Prepare form data - // final formData = html.FormData(); - // formData.appendBlob('file', html.Blob([fileBytes]), fileName); - - // URL of the API where you want to send the file - final apiUrl = Environment.apiUrlPost + 'hrFileUpload'; - print('else'); - // Create a multipart request - final request = http.MultipartRequest('POST', Uri.parse(apiUrl)); - print('else'); - // Attach the file to the request - // Set authorization token in headers - request.headers['APP-SIGNATURE'] = 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y'; - request.headers['Authorization'] = 'Bearer $_token'; - // request.files.add(http.MultipartFile.fromBytes('file', fileBytes, - // filename: fileName)); - print('Filename: $fileName'); - // request.files.add(http.MultipartFile.fromBytes( - // 'file', - // fileBytes, - // filename: fileName ?? 'default_filename.xlsx', - // )); - request.files.add(http.MultipartFile.fromBytes( - 'file_name', - fileBytes, - filename: fileName ?? 'default_filename.xlsx', - )); - print('clintID: $clintID'); - - request.fields['client_id'] = widget.ClientId; - request.fields['policy_no'] = widget.cardPolicyNo; - request.fields['client_branch_id'] = widget.clientBranchId; - request.fields['file_action'] = selectedKey!; - // request.fields['status'] = selectedKey!; - request.fields['created_by'] = empPrimaryId; - request.fields['policy_id'] = widget.ClientPoliyId; - // "client_id": 1, - // "client_branch_id": 2, - // "policy_no": "POL123456", - // "file_action": , - // "status": "inception", - // "created_by": 10 - - print('request : $request'); - // Send the request - final response = await request.send(); - print('else'); - // Read response stream as a string - final responseString = await response.stream.bytesToString(); - print(responseString); - Map data = json.decode(responseString); - if (data['status'] == true) { - print('upload success'); - setState(() { - isLoading = false; - }); - ToastHelper.showSuccessToast(context, data['message']); - getFileListDetails(); - setState(() { - selectedValue = null; - selectedKey = null; - resetErrorCount(); - }); - } else { - setState(() { - isLoading = false; - }); - ToastHelper.showErrorToast(context, data['message']); - } - } - } - - resetErrorCount() { - setState(() { - fileBytes = null; - fileName = null; - }); - } - - void search(String query) { - print(query); - // Check if the query is empty - if (query.isEmpty) { - // If search query is empty, show all data - setState(() { - filteredData = List.from(originalData); - }); - } else { - // Filter the original data based on the search query - setState(() { - filteredData = originalData.where((row) { - // Implement your filter logic here - // For example, check if any field in the row contains the query - // Adjust this logic based on your data structure - return row['file_name'] - .toString() - .toLowerCase() - .contains(query.toLowerCase()) || - row['file_action'] - .toString() - .toLowerCase() - .contains(query.toLowerCase()) || - row['created_at'] - .toString() - .toLowerCase() - .contains(query.toLowerCase()); - }).toList(); - }); - } - print(filteredData.length); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: CustomAppBar(), - backgroundColor: Color(0xFFEFF3F6), - body: Stack(children: [ - // color: Color(0xFFEFF3F6), - - // padding: const EdgeInsets.symmetric(vertical: 20, horizontal: 40), - SingleChildScrollView( - scrollDirection: Axis.vertical, - child: Container( - padding: EdgeInsets.only(top: 30, bottom: 200, left: 50, right: 50), - child: Column( - children: [ - Container( - child: Row( - mainAxisAlignment: MainAxisAlignment.start, - crossAxisAlignment: - CrossAxisAlignment.center, // 👈 fix alignment - children: [ - Expanded( - flex: 8, - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - // back button + texts - Row( - children: [ - IconButton( - padding: EdgeInsets.zero, - constraints: BoxConstraints(), - onPressed: () { - Navigator.pop(context); - }, - icon: Icon( - Icons.arrow_back_ios, - color: Colors.grey, - size: 17, - ), - ), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - "${widget.cardType} - ${widget.cardPolicyNo}", - style: GoogleFonts.poppins( - color: Colors.black, - fontSize: 14, - fontWeight: FontWeight.w500, - ), - ), - Text( - widget.TokenType == 'pre' - ? "${widget.cardPolicy_name} (${widget.cardPolicy_ExpDate})" - : "${widget.cardInsurer_name} - ${widget.cardPolicy_name} (${widget.cardPolicy_ExpDate})", - style: GoogleFonts.poppins( - color: Colors.grey, - fontSize: 12, - fontWeight: FontWeight.w400, - ), - ), - ], - ) - ], - ), - ], - ), - ), - Expanded( - flex: 4, - child: Container( - padding: const EdgeInsets.only(top: 4), - child: getFileUploadMasterList.isEmpty - ? const SizedBox() // 👈 avoid crash on first build - : buildDropdownField( - 'File Action', - (value) { - setState(() { - selectedKey = value; - selectedValue = getFileUploadMasterList - .firstWhere((item) => - item['key'] == value)['value']; - }); - debugPrint("Selected Key: $selectedKey"); - debugPrint( - "Selected Value: $selectedValue"); - }, - false, - getFileUploadMasterList, - 'value', - selectedKey, - valueKey: 'key', - ), - ), - ), - ], - ), - ), - SizedBox( - height: 20, - ), - Container( - decoration: BoxDecoration( - color: Colors.white, - borderRadius: - BorderRadius.circular(10), // 👈 set your desired radius - ), - // height: 400, - // margin: const EdgeInsets.only(left: 40.0, right: 40.0), - padding: const EdgeInsets.all(16.0), - child: Column( - children: [ - Container( - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Expanded( - flex: 12, - child: Column( - children: [ - // Row( - // mainAxisAlignment: - // MainAxisAlignment.center, - // children: [ - // Expanded( - // child: Text( - // '${widget.cardPolicy_name} - (${widget.cardType})', - // textAlign: TextAlign.center, - // style: const TextStyle( - // fontSize: 20, - // fontWeight: FontWeight - // .w600, // Adjust the font size as needed - // color: Color( - // 0xFF181818), // Adjust the text color as needed - // ), - // ), - // ) - // ], - // ), - SizedBox(height: 20), - Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Expanded( - child: Container( - margin: EdgeInsets.symmetric( - horizontal: 150), - alignment: Alignment.center, - color: Colors.grey[200], - height: 180, - child: DragTarget( - onAccept: (html.File droppedFile) { - setState(() { - fileName = droppedFile.name; - }); - _dragAndDropFile(droppedFile); - }, - builder: (BuildContext context, - List candidateData, - List rejectedData) { - return Container( - alignment: Alignment.center, - child: Column( - mainAxisAlignment: - MainAxisAlignment.center, - children: [ - fileName != null - ? Column( - mainAxisAlignment: - MainAxisAlignment - .center, - children: [ - Icon( - Icons - .upload_file, // Choose the appropriate icon - size: 35, - color: Color( - 0xFFE26728), // Adjust the size as needed - ), - SizedBox( - height: - 15), // Add some space between the icon and text - Text( - '$fileName', - style: TextStyle( - fontSize: - 16), - ), - SizedBox( - height: - 25), // Add some space between the icon and text - MouseRegion( - cursor: SystemMouseCursors - .click, // Set cursor to pointer on hover - child: - GestureDetector( - onTap: () { - resetErrorCount(); - }, - child: - const Row( - mainAxisAlignment: - MainAxisAlignment - .center, - children: [ - Icon( - Icons - .delete_forever, // Choose the remove icon - size: - 20, // Adjust the size as needed - color: Colors - .red, // Set the color of the remove icon - ), - SizedBox( - width: - 1), // Add some space between the icon and text - Text( - 'Remove', - style: TextStyle( - fontSize: - 13, - color: - Color(0xFF727272)), - ), - ], - ), - ), - ) - ], - ) - : ElevatedButton( - onPressed: () => { - print( - 'selectedValue $selectedValue'), - if (selectedValue != - null) - { - _uploadFile(), - } - else - { - ToastHelper - .showErrorToast( - context, - 'Please select file action') - } - }, - child: Text( - 'Select File', - style: TextStyle( - color: Colors - .white), - ), - style: - ElevatedButton - .styleFrom( - backgroundColor: - Color( - 0xFFE26728), - ), - ), - SizedBox(height: 20), - if (fileName == null) - Text( - 'Supported Files : XLSX') - // Add more Text widgets for additional lines of text - ], - ), - ); - }, - ), - ), - ), - ], - ), - ], - ), - ), - ], - ), - ), - ], - ), - ), - SizedBox(height: 10), - Container( - decoration: BoxDecoration( - color: Colors.white, - borderRadius: - BorderRadius.circular(10), // 👈 set your desired radius - ), - // width: double.infinity, // take full width - // height: MediaQuery.of(context).size.height * 0.8, // 80% of screen height - padding: const EdgeInsets.all(16.0), - child: Column( - children: [ - Row( - children: [ - Expanded( - flex: 4, - child: Align( - alignment: Alignment.centerLeft, - child: Container( - width: 400, - height: 37, - decoration: BoxDecoration( - color: Color(0xFFF0F0F0), - borderRadius: BorderRadius.circular(8), - ), - child: TextField( - decoration: InputDecoration( - hintText: 'Search', - prefixIcon: Icon(Icons.search, size: 18), - contentPadding: EdgeInsets.symmetric( - horizontal: 12, vertical: 8), - border: InputBorder - .none, // No border since Container handles it - ), - controller: searchController, - onChanged: search, - style: TextStyle(fontSize: 14), - ), - ), - ), - ), - ], - ), - SizedBox(height: 20), - Row( - children: [ - Expanded( - child: _buildFileUploadedListTable(context), - ) - ], - ), - ], - ), - ), - ], - ), - ), - ), - - if (isLoading) - Container( - color: Color(0x98FFFCE5), // Semi-transparent background - child: Center( - child: // Your GIF loader widget - Image.asset( - height: 60, - width: 60, - 'assets/nhance-loader.gif'), // Adjust path to your GIF loader - ), - ), - Align( - alignment: Alignment.bottomCenter, - child: Container( - width: double.infinity, // Make the footer full width - child: CustomFooter(), - ), - ), - ]), - ); - } - - Widget buildDropdownField( - String label, - void Function(T?) onChanged, - bool readOnly, - List> itemsList, - String displayField, - T? selectedValue, { - String valueKey = 'id', - }) { - return DropdownButtonFormField( - value: selectedValue, - decoration: InputDecoration(labelText: label), - items: itemsList.map>((item) { - return DropdownMenuItem( - value: item[valueKey] as T, // ✅ cast to generic type - child: - Text(item[displayField].toString()), // always display as String - ); - }).toList(), - onChanged: readOnly ? null : onChanged, - validator: (value) { - if (value == null) { - return 'Please select a $label'; - } - return null; - }, - ); - } - - Widget _buildFileUploadedListTable(BuildContext context) { - // Loader overlay - - if (filteredData.isEmpty) { - return const SizedBox( - height: 50, - child: Center(child: Text('No available data')), - ); - } - - print('filteredData12345 $filteredData'); - - return ListView.builder( - shrinkWrap: true, // important for nested lists - physics: const AlwaysScrollableScrollPhysics(), - itemCount: _paginatedData.length + 2, - itemBuilder: (context, index) { - if (index == 0) return _buildHeader(); - if (index == _paginatedData.length + 1) - return _buildPagination(context); - - final item = _paginatedData[index - 1]; - return _buildDataRow(item); - }, - ); - - // return Column( - // crossAxisAlignment: CrossAxisAlignment.start, - // children: [ - // // Header row - // Container( - // decoration: BoxDecoration( - // color: Color(0xFF00A6A6), - // borderRadius: BorderRadius.circular(6), - // ), - // padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16), - // child: Row( - // children: [ - // Expanded( - // flex: 4, - // child: Text( - // 'Insurer Name', - // style: GoogleFonts.poppins( - // color: Colors.white, fontWeight: FontWeight.bold), - // ), - // ), - // Expanded( - // flex: 3, - // child: Text( - // 'CD Account number', - // style: GoogleFonts.poppins( - // color: Colors.white, fontWeight: FontWeight.bold), - // ), - // ), - // Expanded( - // flex: 2, - // child: Text( - // 'Current Balance', - // style: GoogleFonts.poppins( - // color: Colors.white, fontWeight: FontWeight.bold), - // ), - // ), - // Expanded( - // flex: 1, - // child: Text( - // 'Action', - // textAlign: TextAlign.center, - // style: GoogleFonts.poppins( - // color: Colors.white, fontWeight: FontWeight.bold), - // ), - // ), - // ], - // ), - // ), - // - // const SizedBox(height: 6), - // - // // Table body rows - // ..._paginatedData.mapIndexed((index, item) { - // return Container( - // margin: const EdgeInsets.only(bottom: 8), - // padding: const EdgeInsets.symmetric(vertical: 5, horizontal: 16), - // decoration: BoxDecoration( - // color: index % 2 == 0 ? Color(0xFFE6FAFB) : Colors.white, - // borderRadius: BorderRadius.circular(6), - // ), - // child: Row( - // children: [ - // Expanded( - // flex: 4, - // child: Text( - // item['insurer_name'] ?? '-', - // style: GoogleFonts.poppins(color: Color(0xFF000000)), - // ), - // ), - // Expanded( - // flex: 3, - // child: Text( - // item['cd_master_account_no'] ?? '-', - // style: GoogleFonts.poppins(color: Color(0xFF000000)), - // ), - // ), - // Expanded( - // flex: 2, - // child: Text( - // "₹${item['balance'] ?? '0'}", - // style: GoogleFonts.poppins(color: Color(0xFF000000)), - // ), - // ), - // Expanded( - // flex: 1, - // child: Center( - // child: IconButton( - // icon: const Icon(Icons.remove_red_eye_outlined), - // onPressed: () { - // Navigator.push( - // context, - // MaterialPageRoute( - // builder: (context) => cdTransactionDetails( - // insurerName: item['insurer_name'], - // cdMasterAccountNo: item['cd_master_account_no'], - // insurerId: item['insurer_id'], - // cd_ac_pk: item['cd_ac_pk'], - // empClientId: widget.empClientId, - // postToken: widget.postToken), - // ), - // ); - // }, - // ), - // ), - // ), - // ], - // ), - // ); - // }).toList(), - // - // - // ], - // ); - } - - Widget _buildDataRow(Map item) { - print('item $item'); - return Container( - padding: const EdgeInsets.symmetric(vertical: 6, horizontal: 16), - margin: const EdgeInsets.only(top: 10), - decoration: BoxDecoration( - color: Color(0xFFE0F7F9), - border: const Border( - bottom: BorderSide(color: Color(0xFFD7E9EB), width: 1), - ), - borderRadius: BorderRadius.circular(8), - ), - child: Row( - children: [ - Expanded( - flex: 4, - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - MouseRegion( - cursor: SystemMouseCursors.click, // 👆 Pointer cursor - child: Tooltip( - message: "Click to Download", // 📝 Tooltip text - child: GestureDetector( - onTap: () { - getHrFileDownload( - item['id'], - item[ - 'file_name']); // ✅ Call your API/download logic - }, - child: Text( - item['file_name'] ?? '-', - style: _dataBold.copyWith( - color: Colors.blue, // 🔗 Make it look like a link - decoration: TextDecoration.underline, - ), - ), - ), - ), - ), - ], - ), - ), - Expanded( - flex: 3, - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text(item['file_action'] ?? '-', style: _dataBold), - ], - ), - ), - Expanded( - flex: 2, - child: Text(formatDate(item['created_at']), style: _dataBold), - ), - Expanded( - flex: 2, - child: Text(item['status'], style: _dataBold), - ), - ], - ), - ); - } - - Widget _buildHeader() { - return Container( - decoration: BoxDecoration( - color: Color(0xFF00A6A6), - borderRadius: BorderRadius.circular(6), - ), - padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16), - child: const Row( - children: [ - Expanded(flex: 4, child: Text('File Name', style: _headerStyle)), - Expanded(flex: 3, child: Text('File Action', style: _headerStyle)), - Expanded(flex: 2, child: Text('Created At', style: _headerStyle)), - Expanded(flex: 2, child: Text('Status', style: _headerStyle)) - ], - ), - ); - } - - static final _dataBold = GoogleFonts.poppins( - fontSize: 12, - fontWeight: FontWeight.w400, - color: Color(0xFF000000), - ); - - static final _dataSub = GoogleFonts.poppins( - fontSize: 10, - fontWeight: FontWeight.w300, - color: Color(0xFF585757), - ); - - static const _headerStyle = TextStyle( - color: Colors.white, - fontWeight: FontWeight.bold, - ); - - Widget _buildPagination(BuildContext context) { - final totalPages = (filteredData.length / _rowsPerPage).ceil(); - const visiblePageCount = 5; - - List getVisiblePages() { - if (totalPages <= visiblePageCount) { - return List.generate(totalPages, (i) => i + 1); - } - - if (_currentPage <= 3) { - return [1, 2, 3, 4, 5]; - } else if (_currentPage >= totalPages - 2) { - return [ - totalPages - 4, - totalPages - 3, - totalPages - 2, - totalPages - 1, - totalPages - ]; - } else { - return [ - _currentPage - 2, - _currentPage - 1, - _currentPage, - _currentPage + 1, - _currentPage + 2, - ]; - } - } - - List visiblePages = getVisiblePages(); - - return Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - Padding( - padding: const EdgeInsets.symmetric(vertical: 12), - child: Row( - children: [ - // Dropdown for rows per page - DropdownButton( - value: _rowsPerPage, - items: [5, 10, 15, 20, 50].map((int value) { - return DropdownMenuItem( - value: value, - child: Text(' $value ', - style: GoogleFonts.poppins(fontSize: 15)), - ); - }).toList(), - onChanged: (newValue) { - setState(() { - _rowsPerPage = newValue!; - _currentPage = 1; - }); - }, - ), - - // Previous button - IconButton( - onPressed: _currentPage > 1 - ? () => setState(() => _currentPage--) - : null, - icon: const Icon(Icons.chevron_left), - ), - - // First page + left ellipsis - if (!visiblePages.contains(1)) - Row(children: [ - _buildPageButton(1), - const Padding( - padding: EdgeInsets.symmetric(horizontal: 4), - child: Text("..."), - ), - ]), - - // Visible page buttons - for (int page in visiblePages) _buildPageButton(page), - - // Right ellipsis + last page - if (!visiblePages.contains(totalPages)) - Row(children: [ - const Padding( - padding: EdgeInsets.symmetric(horizontal: 4), - child: Text("..."), - ), - _buildPageButton(totalPages), - ]), - - // Next button - IconButton( - onPressed: _currentPage < totalPages - ? () => setState(() => _currentPage++) - : null, - icon: const Icon(Icons.chevron_right), - ), - ], - ), - ), - ], - ); - } - - Widget _buildPageButton(int page) { - return Padding( - padding: const EdgeInsets.symmetric(horizontal: 4), - child: ElevatedButton( - style: ElevatedButton.styleFrom( - backgroundColor: - _currentPage == page ? const Color(0xFF00A6A6) : Colors.grey[300], - foregroundColor: _currentPage == page ? Colors.white : Colors.black, - minimumSize: const Size(36, 36), - padding: EdgeInsets.zero, - ), - onPressed: () { - setState(() { - _currentPage = page; - }); - }, - child: Text(page.toString()), - ), - ); - } - - String formatDate(String? dateString) { - if (dateString == null || dateString.isEmpty) return '-'; - - try { - DateTime parsedDate = DateTime.parse(dateString); - return DateFormat('dd-MM-yyyy hh:mm a').format(parsedDate); - } catch (e) { - return '-'; - } - } -} diff --git a/lib/presentation/RaiseClaimForm.dart b/lib/presentation/RaiseClaimForm.dart new file mode 100644 index 0000000..60c8775 --- /dev/null +++ b/lib/presentation/RaiseClaimForm.dart @@ -0,0 +1,1494 @@ +import 'dart:convert'; + +import 'package:dropdown_button2/dropdown_button2.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:google_fonts/google_fonts.dart'; +import 'package:intl/intl.dart'; + +import '../config/environment.dart'; +import '../customAppBar/toastHelper.dart'; +import '../responsive.dart'; +import '../service/api_service.dart'; +import '../service/file_upload_service.dart'; +import 'package:http/http.dart' as http; + +import 'package:file_picker/file_picker.dart'; + +import '../service/multi_file_upload_widget.dart'; +import '../service/token_storage_service.dart'; +import 'package:pdf/widgets.dart' as pw; + +class RaiseClaimDialog extends StatefulWidget { + final BuildContext parentContext; + final VoidCallback onSuccess; + + const RaiseClaimDialog({Key? key, required this.parentContext, required this.onSuccess,}) + : super(key: key); + + @override + State createState() => _RaiseClaimDialogState(); +} + +class _RaiseClaimDialogState extends State { + // const RaiseClaimDialog({super.key}); + late ApiService apiService; + bool isLoading = false; + dynamic empPrimaryId; + dynamic empClientId; + dynamic empClientBranchId; + dynamic empHrId; + final tokenService = TokenStorageService(); + String? _postPreToken = ''; + List> policyList = []; + dynamic policyDataIsEmpty = 1; + dynamic policyHeading; + dynamic policyName; + dynamic EmployeePolicy; + List> employeeDetails = []; + dynamic argumentsData; + dynamic claimsDetails; + int? fromClaimsPage; + dynamic decodedToken; + List> departmentList = []; + List> policyNumberList = []; + int? serviceId; + String? serviceName; + int? policyNumberId; + int? selectedMemberId; + String? selectedMemberName; + String? selectedServiceName; + String? selectedPolicyNo; + dynamic claimsDepartmentId; + dynamic claimSubject; + dynamic rawPolicyStartDate; + dynamic rawPolicyEndDate; + dynamic claimsPolicyNo; + dynamic client_branch_id; + dynamic mobileNo; + dynamic client_policy_id; + dynamic selfDetails; + dynamic emailId; + List> employeePolicyList = []; + String? selectedFileNames; + // html.File? uploadedFile; + // List uploadedFiles = []; + List uploadedFiles = []; + final fileService = FileUploadService(); + bool isSubmitting = false; + dynamic getPostCardArrays = []; + List> activePoliciesList = []; + int stausVal = 1; + Map getClaimPoliciesApi = {}; + int? selectedPolicyTypeId; + int? selectedClientPolicyId; + + Map? selectedMemberObject; + + // Declare subjectController and bodyController as instance variables + late TextEditingController subjectController; + late TextEditingController messageController; + late TextEditingController accidentDetailsController; + late TextEditingController hospitalNameController; + late TextEditingController hospitalAddressController; + late TextEditingController hospitalCityController; + late TextEditingController hospitalStateController; + late TextEditingController hospitalPinCodeController; + late TextEditingController hospitalPhoneNoController; + late TextEditingController claimAmountController; + late TextEditingController sumInsuredController; + late TextEditingController admitDateController; + late TextEditingController dischargeDateController; + + DateTime? accidentDate; + DateTime? deathDate; + DateTime? intimationDate; + DateTime? birthDate; + DateTime? admitDate; + DateTime? dischargeDate; + + DateTime? parsedPolicyStartDate; + DateTime? parsedPolicyEndDate; + + Map selectedDates = { + "Accident Date": null, + "Date of Death": null, + }; + + final Map> servicePolicyTypeMap = { + 1: [2, 3, 4, 5], + 2: [1], + 3: [6], + 4: [7], + }; + + List> filteredPoliciesList = []; + + // Create a unique form key for each accordion section + final GlobalKey formKey = GlobalKey(); + + bool isServiceValid = true; + bool isPolicyValid = true; + bool isMemberValid = true; + bool isSubjectValid = true; + bool isHospitalNameValid = true; + bool isHospitalAddressValid = true; + bool isHospitalCityValid = true; + bool isHospitalStateValid = true; + bool isHospitalPincodeValid = true; + bool isHospitalPhoneNoValid = true; + bool isAdmitDischargeValid = true; + bool isClaimAmountValid = true; + bool isAccidentDateValid = true; + bool isIntimationDateValid = true; + bool isAdmitDateValid = true; + bool isDischargeDateValid = true; + + @override + void initState() { + super.initState(); + fileService.clearAll(); + subjectController = TextEditingController(); + messageController = TextEditingController(); + accidentDetailsController = TextEditingController(); + hospitalNameController = TextEditingController(); + hospitalAddressController = TextEditingController(); + hospitalCityController = TextEditingController(); + hospitalStateController = TextEditingController(); + hospitalPinCodeController = TextEditingController(); + hospitalPhoneNoController = TextEditingController(); + claimAmountController = TextEditingController(); + sumInsuredController = TextEditingController(); + admitDateController = TextEditingController(); + dischargeDateController = TextEditingController(); + apiService = ApiService(context); // Initialize ApiService here + _loadToken(); + // Check if fromClaimsPage is 0 and set serviceId to 'Claims' (id is 2) + // if (fromClaimsPage == 0) { + // setInitialServiceId(); + // } + } + + @override + void dispose() { + // Dispose the controllers to avoid memory leaks + subjectController.dispose(); + messageController.dispose(); + accidentDetailsController.dispose(); + hospitalNameController.dispose(); + hospitalAddressController.dispose(); + hospitalCityController.dispose(); + hospitalStateController.dispose(); + hospitalPinCodeController.dispose(); + hospitalPhoneNoController.dispose(); + claimAmountController.dispose(); + sumInsuredController.dispose(); + admitDateController.dispose(); + dischargeDateController.dispose(); + serviceId = null; + departmentList.clear(); + super.dispose(); + fileService.clearAll(); + } + + Future _loadToken() async { + _postPreToken = tokenService.getCurrentToken(); + empClientId = await tokenService.readValue('empClientId'); + empClientBranchId = await tokenService.readValue('empClientBranchId'); + empHrId = await tokenService.readValue('empHrId'); + getClaimsPoliciesDetails(); + await getPostCashDepositDetails( + empClientBranchId, empClientId, empHrId, _postPreToken); + } + + Future getClaimsPoliciesDetails() async { + print('9'); + setState(() { + isLoading = true; + }); + try { + print('10'); + final response = await apiService.getClaimPoliciesToApi(_postPreToken!); + if (response['status'] == 'success') { + setState(() { + isLoading = false; + }); + setState(() { + getClaimPoliciesApi = Map.from(response['data']); + departmentList = (getClaimPoliciesApi['ticket_type'] as List) + .map>((item) => { + 'id': int.parse(item['ticket_type'].toString()), + 'name': item['type_name'].toString(), + }) + .toList(); + }); + } else { + setState(() { + isLoading = false; + }); + + // ToastHelper.showWarningToast( + // context, 'Request failed with status: ${response.statusCode}'); + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + setState(() { + // isLoading = false; + }); + print('Exception occurred: $e'); + } finally { + setState(() { + // _isLoading = false; + }); + } + } + + Future getPostCashDepositDetails( + empClientBranchId, empClientId, empHrId, _postPreToken) async { + print('IN'); + print("clintBranchId -$empClientBranchId"); + print("clintID -$empClientId"); + print("hr_id -$empHrId"); + print("token -$_postPreToken"); + + isLoading = true; + // setState(() { + // _isLoading = true; + // }); + try { + if (empClientBranchId == null || empClientId == null) { + return; + } + final response = await apiService.getActiveCashDepositDetailsToApi( + empClientId!, empClientBranchId!, empHrId, _postPreToken, stausVal); + + // final response = await apiService.getCashDepositDetailsToApi( + // clintID!, clintBranchId!, hr_id, token); + print('IN1'); + if (response['status'] == 'success') { + isLoading = false; + setState(() { + print('response'); + print(response['data']); + getPostCardArrays = List>.from(response['data']); + print('getPostCardArrays'); + print(getPostCardArrays); + + activePoliciesList = getPostCardArrays; + }); + + print('IN2'); + } else { + isLoading = false; + print('API request failed with status'); + setState(() { + activePoliciesList = []; + }); + print('API request failed with status'); + } + } catch (e) { + print('Exception occurred: $e'); + } + } + + void filterPoliciesByService(int serviceTicketType) { + final allowedPolicyTypes = servicePolicyTypeMap[serviceTicketType] ?? []; + + final filtered = activePoliciesList.where((policy) { + final policyTypeId = int.tryParse( + policy['policy_type_id'].toString(), + ); + return allowedPolicyTypes.contains(policyTypeId); + }).toList(); + + setState(() { + policyNumberId = null; + + policyNumberList = filtered.map>((policy) { + return { + // ✅ VALUE (what gets sent) + 'id': int.parse(policy['client_policy_id'].toString()), + + // ✅ DISPLAY (what user sees) + 'label': '${policy['type']} - ${policy['policy_no']}', + + // keep extras if needed + 'policy_type_id': int.parse(policy['policy_type_id'].toString()), + }; + }).toList(); + + + isPolicyValid = true; + }); + } + + Future getCDPoliciesDetails() async { + print('9'); + setState(() { + isLoading = true; + }); + try { + print('10'); + + final response = await apiService.getEmployeeAndDependenceToApi( + empClientId, selectedClientPolicyId, empClientBranchId, _postPreToken!); + + if (response['status'] == 'success') { + final List> members = + List>.from(response['data']); + + setState(() { + employeePolicyList = members.map((m) { + return { + 'id': int.parse(m['id'].toString()), // ✅ UNIQUE + 'name': m['name'], // ✅ DISPLAY + 'client_policy_id': m['client_policy_id'] ?? '', + 'emp_id': m['self_employee_id'] ?? '', + 'insured_emp_id': m['employee_id'] ?? '', + 'emp_code': m['emp_code'] ?? '', + 'mobile': m['mobile'] ?? ' ', + 'empEmailCorporate': m['email_corporate'] ?? '', + 'relationship': m['relationship'], + 'gender': m['gender'], + 'dob': m['dob'], + 'policy_name': serviceId == 1 + ? null + : m['policy_name'], + }; + }).toList(); + }); + } + } catch (e) { + setState(() { + isLoading = false; + }); + print('Exception occurred: $e'); + } finally { + setState(() { + isLoading = false; + }); + } + } + + Future sendFormDataToApi() async { + + setState(() { + isServiceValid = serviceId != null; + isPolicyValid = selectedClientPolicyId != null; + isMemberValid = selectedMemberId != null; + // isSubjectValid = subjectController.text.trim().isNotEmpty; + // 🏥 GMC / Topup + final isGmc = serviceId == 1 || serviceId == 4; + isHospitalNameValid = !isGmc || hospitalNameController.text.trim().isNotEmpty; + isHospitalAddressValid = !isGmc || hospitalAddressController.text.trim().isNotEmpty; + isHospitalCityValid = !isGmc || hospitalCityController.text.trim().isNotEmpty; + isHospitalStateValid = !isGmc || hospitalStateController.text.trim().isNotEmpty; + isHospitalPincodeValid = !isGmc || hospitalPinCodeController.text.trim().isNotEmpty; + isHospitalPhoneNoValid = !isGmc || hospitalPhoneNoController.text.trim().isNotEmpty; + + isAdmitDateValid = !isGmc || admitDate != null; + isDischargeDateValid = !isGmc || dischargeDate != null; + + isClaimAmountValid = !isGmc || claimAmountController.text.trim().isNotEmpty; + + // ☠ Accident / Death + final isAccident = [2, 3, 4].contains(serviceId); + + isAccidentDateValid = !isAccident || accidentDate != null; + isIntimationDateValid = !isAccident || intimationDate != null; + }); + + if (isServiceValid && + isPolicyValid && + isMemberValid && + // isSubjectValid && + isHospitalNameValid && + isHospitalAddressValid && + isHospitalStateValid && + isHospitalCityValid && + isHospitalPincodeValid && + isHospitalPhoneNoValid && + isAdmitDateValid && + isDischargeDateValid && + isClaimAmountValid && + isAccidentDateValid && + isIntimationDateValid) { + if (FileUploadService().files.isEmpty) { + setState(() { + MultiFileUploadWidget.hasFiles = false; + }); + ToastHelper.showErrorToast(context, 'Please upload at least one document'); + return; + } + // Proceed to submit + } else { + ToastHelper.showErrorToast(context, 'Please Fill Required Fields'); + return; + } + setState(() => isSubmitting = true); // 🔥 start loader + setState(() { + isLoading = true; + }); + + try { + print('Check One'); + Map fields = { + 'client_policy_id': selectedClientPolicyId, + // 'policy_type_id': selectedPolicyTypeId, + + 'emp_id': selectedMemberObject?['emp_id'], + 'ticket_type_id': serviceId, + 'subject': serviceName, + 'message': messageController.text, + + 'emp_code': selectedMemberObject?['emp_code'] ?? '', + 'mobile_number': selectedMemberObject?['mobile'] ?? ' ', + 'email': selectedMemberObject?['empEmailCorporate'] ?? '', + 'fullname': selectedMemberObject?['name'] ?? '', + 'client_id': empClientId, + 'relationship': selectedMemberObject?['relationship'], + 'gender': selectedMemberObject?['gender'], + 'age': selectedMemberObject?['dob'], + 'policy_name': serviceId == 1 + ? null + : selectedMemberObject?['policy_name'], + + }; + + + if (serviceId == 1 || serviceId == 72) { + String formattedAdmitDate = DateFormat('yyyy-MM-dd').format(admitDate!); + String formattedDischargeDate = DateFormat('yyyy-MM-dd').format(dischargeDate!); + fields['hospital_name'] = hospitalNameController.text; + fields['hospital_address'] = hospitalAddressController.text; + fields['hospital_city'] = hospitalCityController.text; + fields['hospital_state'] = hospitalStateController.text; + fields['hospital_pin_code'] = hospitalPinCodeController.text; + fields['hospital_phone_no'] = hospitalPhoneNoController.text; + fields['doa'] = formattedAdmitDate; + fields['dod'] = formattedDischargeDate; + fields['claim_amount'] = claimAmountController.text; + fields['policyholder_name'] = employeePolicyList[0]['name']; + fields['member_name'] = selectedMemberObject?['name']; + fields['insured_emp_id'] = selectedMemberObject?['insured_emp_id']; + } else { + String formattedAccidentDate = + DateFormat('yyyy-MM-dd').format(accidentDate!); + String formattedDeathDate = DateFormat('yyyy-MM-dd').format(deathDate!); + String formattedBirthDate = DateFormat('yyyy-MM-dd').format(birthDate!); + String formattedIntimationDate = + DateFormat('yyyy-MM-dd').format(intimationDate!); + fields['date_of_accident'] = formattedAccidentDate; + fields['dob'] = formattedBirthDate; + fields['date_of_intimat'] = formattedIntimationDate; + fields['date_of_death'] = formattedDeathDate; + fields['si_amt'] = sumInsuredController.text; + fields['policyholder_name'] = employeePolicyList[0]['name']; + fields['member_name'] = selectedMemberName; + fields['insured_emp_id'] = selectedMemberObject?['insured_emp_id']; + } + + + final request = http.MultipartRequest('POST', Uri.parse('${Environment.apiUrlPost}initiateClaim')); + request.headers['Authorization'] = 'Bearer $_postPreToken'; + request.headers['APP-SIGNATURE'] = 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y'; + final stringFields = fields.map((key, value) => MapEntry(key, value?.toString() ?? '')); + request.fields.addAll(stringFields); + + // get uploaded files + final uploadedFiles = FileUploadService().files; + print("📁 Total uploaded files: ${uploadedFiles.length}"); + print("📂 File list (original names): ${uploadedFiles.map((f) => f.file.name).toList()}"); + +// Validate all labels present (optional but recommended) + for (final uf in uploadedFiles) { + print("📝 Checking label for file: ${uf.file.name}, current label: '${uf.label}'"); + if ((uf.label ?? '').trim().isEmpty) { + ToastHelper.showErrorToast(context, 'Please enter name for all uploaded documents'); + setState(() => isLoading = false); + return; + } + } + + // ✅ NEW VALIDATION: At least one PDF must be uploaded + // bool hasPdf = uploadedFiles.any((uf) { + // final ext = uf.file.extension?.toLowerCase() ?? ''; + // return ext == 'pdf'; + // }); + // + // if (!hasPdf) { + // ToastHelper.showErrorToast(context, 'Please upload at least one PDF document'); + // setState(() => isLoading = false); + // return; + // } + + // Add files + // for (var uf in uploadedFiles) { + // final pf = uf.file; + // if (pf.bytes != null) { + // request.files.add(http.MultipartFile.fromBytes( + // 'claim_docs[]', + // pf.bytes!, + // filename: pf.name, + // )); + // } + // } + + // Add files — convert images to PDF if needed + for (var uf in uploadedFiles) { + final pf = uf.file; + final ext = pf.extension?.toLowerCase() ?? ''; + + if (pf.bytes != null) { + Uint8List fileBytes = pf.bytes!; + + if (['jpg', 'jpeg', 'png', 'heic'].contains(ext)) { + // ✅ Convert image → PDF + final pdf = pw.Document(); + final image = pw.MemoryImage(fileBytes); + + pdf.addPage( + pw.Page( + build: (pw.Context context) => pw.Center( + child: pw.Image(image, fit: pw.BoxFit.contain), + ), + ), + ); + + fileBytes = await pdf.save(); // converted PDF bytes + + // replace file name with .pdf extension + final pdfFileName = pf.name.replaceAll(RegExp(r'\.\w+$'), '.pdf'); + + print('📄 Converted image ${pf.name} → PDF ($pdfFileName)'); + request.files.add(http.MultipartFile.fromBytes( + 'claim_docs[]', + fileBytes, + filename: pdfFileName, + )); + } else { + // ✅ Already a PDF + request.files.add(http.MultipartFile.fromBytes( + 'claim_docs[]', + fileBytes, + filename: pf.name, + )); + } + } + } + + +// ✅ Combine all names into a JSON array string + final claimDocNames = uploadedFiles.map((uf) => uf.label.trim()).toList(); + final encodedNames = jsonEncode(claimDocNames); + request.fields['claim_doc_names'] = encodedNames; + +// ✅ Debug print + print("Payload being sent:"); + print("Files: ${uploadedFiles.map((f) => f.file.name).toList()}"); + print("Names (JSON): $encodedNames"); + + + final response = await request.send(); + final responseBody = await response.stream.bytesToString(); + + final decoded = jsonDecode(responseBody); + if (decoded['status'] == true) { + // 1️⃣ Close dialog first + Navigator.pop(context); + + // 2️⃣ Call parent page function + widget.onSuccess(); + + ToastHelper.showSuccessToast(context, decoded['message']); + serviceId = null; + departmentList.clear(); + setState(() { + isLoading = false; + }); + // context.go('/claims', extra: 2); + print('Form data submitted successfully'); + fileService.clearAll(); + } else { + setState(() { + isLoading = false; + }); + Navigator.pop(context); + ToastHelper.showErrorToast(context, "Failed: ${decoded['message']}"); + } + + + } catch (e) { + setState(() { + isLoading = false; + }); + print('Error submitting form data: $e'); + } finally { + setState(() => isSubmitting = false); // 🔥 stop loader + } + } + + Future _pickDate(BuildContext context, String label) async { + final DateTime? pickedDate = await showDatePicker( + context: context, + initialDate: selectedDates[label] ?? DateTime.now(), + firstDate: DateTime(2000), + lastDate: DateTime.now(), + ); + + if (pickedDate != null && pickedDate != selectedDates[label]) { + setState(() { + selectedDates[label] = pickedDate; + }); + } + } + + Future _pickFromToDate(BuildContext context) async { + // Define the policy date range + final DateTime policyStartDate = + DateFormat('dd-MMM-yyyy').parse(rawPolicyStartDate); + final DateTime policyEndDate = + DateFormat('dd-MMM-yyyy').parse(rawPolicyEndDate); + + // Show the date range picker within the policy date limits + final DateTimeRange? pickedDateRange = await showDateRangePicker( + context: context, + firstDate: policyStartDate, + lastDate: policyEndDate, + initialDateRange: admitDate != null && dischargeDate != null + ? DateTimeRange(start: admitDate!, end: dischargeDate!) + : null, + ); + + // Update values if a valid date range is picked + if (pickedDateRange != null) { + setState(() { + admitDate = pickedDateRange.start; + dischargeDate = pickedDateRange.end; + admitDateController.text = DateFormat('dd-MM-yyyy').format(admitDate!); + dischargeDateController.text = + DateFormat('dd-MM-yyyy').format(dischargeDate!); + }); + } + } + + // Future _pickFromToDate(BuildContext context) async { + // final DateTimeRange? pickedDateRange = await showDateRangePicker( + // context: context, + // firstDate: DateTime(2000), + // lastDate: DateTime(2100), + // initialDateRange: admitDate != null && dischargeDate != null + // ? DateTimeRange(start: admitDate!, end: dischargeDate!) + // : null, + // ); + // + // if (pickedDateRange != null) { + // setState(() { + // admitDate = pickedDateRange.start; + // dischargeDate = pickedDateRange.end; + // admitDateController.text = DateFormat('yyyy-MM-dd').format(admitDate!); + // dischargeDateController.text = + // DateFormat('yyyy-MM-dd').format(dischargeDate!); + // }); + // } + // } + + int calculateAge(String dob) { + DateTime birthDate = DateTime.parse(dob); // Parse the dob string + DateTime currentDate = DateTime.now(); + + int age = currentDate.year - birthDate.year; + + // Adjust age if the birthday has not occurred yet this year + if (currentDate.month < birthDate.month || + (currentDate.month == birthDate.month && + currentDate.day < birthDate.day)) { + age--; + } + + return age; + } + + @override + Widget build(BuildContext context) { + return Dialog( + backgroundColor: Colors.white, // ✅ PURE WHITE popup + insetPadding: const EdgeInsets.all(20), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16), + ), + child: ClipRRect( + borderRadius: BorderRadius.circular(16), + child: SizedBox( + width: MediaQuery.of(context).size.width * 0.75, // Desktop popup width + // height: MediaQuery.of(context).size.height * 0.85, + child: Stack( + children: [ + /// MAIN CONTENT (YOUR EXISTING UI) + SingleChildScrollView( + child: Container( + padding: EdgeInsets.all(20), + color: Colors.white, + child: Column( + children: [ + /// 🔹 HEADER ROW (Title + Close) + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text( + "Raise Insurance Claim", + style: GoogleFonts.poppins( + fontSize: 20, + fontWeight: FontWeight.w600, + ), + ), + IconButton( + icon: const Icon(Icons.close), + onPressed: () => Navigator.pop(context), + ), + ], + ), + + const SizedBox(height: 16), + + Form( + key: formKey, + child: Column( + children: [ + _row([ + buildDropdownField( + 'Service', + (value) { + final selectedItem = departmentList.firstWhere( + (item) => item['id'] == value, + orElse: () => {}, + ); + setState(() { + serviceId = value; + serviceName = selectedItem['name']; + policyNumberId = null; + isServiceValid = true; + }); + print('🔥 serviceId set to $serviceId'); + filterPoliciesByService(value!); + }, + departmentList, + 'name', + serviceId, + ), + buildDropdownField( + 'Select Policy', + (value) { + final selectedPolicy = + policyNumberList.firstWhere((p) => p['id'] == value); + + setState(() { + // ✅ THIS is what you send to API + selectedClientPolicyId = selectedPolicy['id']; + + // optional + selectedPolicyTypeId = selectedPolicy['policy_type_id']; + policyNumberId = value; + + isPolicyValid = true; + }); + + getCDPoliciesDetails(); + }, + policyNumberList, + 'label', // 👈 DISPLAY FIELD + policyNumberId, + ), + + buildDropdownFieldSearch( + 'Member Name', + (value) { + final member = employeePolicyList.firstWhere( + (m) => m['id'] == value, + ); + + setState(() { + selectedMemberId = value; + selectedMemberObject = member; // ✅ FULL OBJECT + selectedMemberName = member['name']; + isMemberValid = true; + print('selectedMemberObject $selectedMemberObject'); + }); + }, + employeePolicyList, + 'name', + selectedMemberId, + ), + + ]), + _row([ + buildTextField('Message', messageController), + if (serviceId == 1 || serviceId == 72)...[ + buildTextField('Hospital Name', hospitalNameController), + buildTextField('Hospital Address', hospitalAddressController), + ] + ]), + + if (serviceId == 1 || serviceId == 72) + _row([ + buildTextField('Hospital City', hospitalCityController), + buildTextField('Hospital State', hospitalStateController), + buildTextField( + 'Hospital Pincode', + hospitalPinCodeController, + keyboardType: TextInputType.number, + inputFormatters: [ + FilteringTextInputFormatter.digitsOnly, + LengthLimitingTextInputFormatter(6), + ], + ), + ]), + if (serviceId == 1 || serviceId == 72) + _row([ + buildTextField( + 'Hospital Phone No', + hospitalPhoneNoController, + keyboardType: TextInputType.number, + inputFormatters: [ + FilteringTextInputFormatter.digitsOnly, + LengthLimitingTextInputFormatter(10), + ], + ), + buildDatePickerField( + label: 'Admit Date', + selectedDate: admitDate, + allowFuture: false, + onDateSelected: (d) { + setState(() { + admitDate = d; + dischargeDate = null; + }); + }, + ), + buildDatePickerField( + label: 'Discharge Date', + selectedDate: dischargeDate, + allowFuture: true, + minDate: admitDate?.add(const Duration(days: 1)), + onDateSelected: (d) => setState(() => dischargeDate = d), + ), + buildTextField( + 'Claims Amount', + claimAmountController, + keyboardType: TextInputType.number, + inputFormatters: [FilteringTextInputFormatter.digitsOnly], + ), + ]), + + if ([2, 3, 4].contains(serviceId)) + _row([ + buildDatePickerField( + label: 'Date of Birth', + selectedDate: birthDate, + allowFuture: false, + onDateSelected: (d) => setState(() => birthDate = d), + ), + buildDatePickerField( + label: 'Accident Date', + selectedDate: accidentDate, + allowFuture: false, + onDateSelected: (d) { + setState(() { + accidentDate = d; + deathDate = null; + intimationDate = null; + }); + }, + ), + buildDatePickerField( + label: 'Date of Death', + selectedDate: deathDate, + allowFuture: false, + onDateSelected: (d) => setState(() => deathDate = d), + ), + ]), + if ([2, 3, 4].contains(serviceId)) + _row([ + buildDatePickerField( + label: 'Date of Intimation', + selectedDate: intimationDate, + allowFuture: false, + onDateSelected: (d) => setState(() => intimationDate = d), + ), + buildTextField( + 'Sum Insured', + sumInsuredController, + keyboardType: TextInputType.number, + inputFormatters: [FilteringTextInputFormatter.digitsOnly], + ), + const SizedBox(), + ]), + + _row([ + MultiFileUploadWidget(), + ]), + Align( + alignment: Alignment.centerRight, + child: SizedBox( + width: 120, + height: 42, + child: ElevatedButton( + onPressed: isSubmitting ? null : sendFormDataToApi, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE26728), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + ), + child: isSubmitting + ? const SizedBox( + height: 18, + width: 18, + child: CircularProgressIndicator( + strokeWidth: 2, + color: Colors.white, + ), + ) + : const Text( + 'Send', + style: TextStyle(color: Colors.white, + fontWeight: FontWeight.w600), + ), + ), + ), + ), + ], + ), + ), + ], + ), + ), + ), + + /// 🔄 LOADER OVERLAY (UNCHANGED) + if (isLoading) + Container( + color: const Color(0x98FFFCE5), + child: Center( + child: Image.asset( + 'assets/nhance-loader.gif', + height: 60, + width: 60, + ), + ), + ), + ], + ), + ), + ) + + ); + } + + /// ---------- HELPERS ---------- + + Widget _row(List children) { + return Padding( + padding: const EdgeInsets.only(bottom: 14), + child: Row( + children: children + .map((e) => Expanded( + child: Padding( + padding: const EdgeInsets.only(right: 12), + child: e, + ))) + .toList(), + ), + ); + } + + Widget buildTextField( + String label, + TextEditingController controller, { + TextInputType keyboardType = TextInputType.text, + List? inputFormatters, + }) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + fieldLabel(label), + formBox( + child: TextField( + controller: controller, + keyboardType: keyboardType, + inputFormatters: inputFormatters, + decoration: const InputDecoration( + isDense: true, + border: InputBorder.none, + ), + ), + ), + ], + ); + } + + Widget buildTextAreaField(String label, TextEditingController controller) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + fieldLabel(label), + Container( + padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 8), + decoration: BoxDecoration( + color: const Color(0xFFF1F1F1), + borderRadius: BorderRadius.circular(8), + ), + child: TextField( + controller: controller, + maxLines: 3, + decoration: const InputDecoration( + isDense: true, + border: InputBorder.none, + ), + ), + ), + ], + ); + } + + Widget buildDropdownField( + String label, + void Function(int?) onChanged, + List> itemsList, + String displayField, + int? selectedValue, + ) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + fieldLabel(label), + formBox( + child: DropdownButtonHideUnderline( + child: DropdownButton( + isExpanded: true, + value: selectedValue, + hint: const Text('Select'), + icon: const Icon(Icons.keyboard_arrow_down), + items: itemsList.map>((item) { + return DropdownMenuItem( + value: item['id'], + child: Text(item[displayField]), + ); + }).toList(), + onChanged: onChanged, + ), + ), + ), + ], + ); + } + + + Widget buildDropdownFieldSearch( + String label, + void Function(int?) onChanged, + List> itemsList, + String displayField, + int? selectedValue, + ) { + final TextEditingController searchController = TextEditingController(); + + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + fieldLabel(label), + formBox( + child: DropdownButtonHideUnderline( + child: DropdownButton2( + isExpanded: true, + value: selectedValue, + hint: const Text('Select'), + iconStyleData: const IconStyleData( + icon: Icon(Icons.keyboard_arrow_down), + ), + + // 🔹 SEARCH CONFIG + dropdownSearchData: DropdownSearchData( + searchController: searchController, + searchInnerWidgetHeight: 50, + searchInnerWidget: Padding( + padding: const EdgeInsets.all(8), + child: TextField( + controller: searchController, + decoration: InputDecoration( + hintText: 'Search...', + border: OutlineInputBorder( + borderRadius: BorderRadius.circular(8), + ), + isDense: true, + ), + ), + ), + searchMatchFn: (item, searchValue) { + return item.value + .toString() + .toLowerCase() + .contains(searchValue.toLowerCase()) || + item.child + .toString() + .toLowerCase() + .contains(searchValue.toLowerCase()); + }, + ), + + // 🔹 CLEAR SEARCH WHEN CLOSED + onMenuStateChange: (isOpen) { + if (!isOpen) searchController.clear(); + }, + + items: itemsList.map((item) { + return DropdownMenuItem( + value: item['id'], + child: Text( + item[displayField], + overflow: TextOverflow.ellipsis, + ), + ); + }).toList(), + + onChanged: onChanged, + ), + ), + ), + ], + ); + } + + + Widget buildDatePickerField({ + required String label, + required DateTime? selectedDate, + required bool allowFuture, + required ValueChanged onDateSelected, + DateTime? minDate, + DateTime? maxDate, + }) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + fieldLabel(label), + formBox( + child: InkWell( + onTap: () async { + final DateTime now = DateTime.now(); + final DateTime first = minDate ?? DateTime(1980); + final DateTime last = + allowFuture ? (maxDate ?? DateTime(2100)) : now; + + final DateTime initialDate = + selectedDate ?? (first.isAfter(now) ? first : now); + + final picked = await showDatePicker( + context: context, + initialDate: initialDate, + firstDate: first, + lastDate: last, + ); + + if (picked != null) { + onDateSelected(picked); + } + }, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text( + selectedDate != null + ? DateFormat('dd-MM-yyyy').format(selectedDate) + : 'Select', + style: const TextStyle(color: Colors.black), + ), + const Icon(Icons.calendar_today, size: 18), + ], + ), + ), + ), + ], + ); + } + + // Widget uploadBox() { + // return Column( + // crossAxisAlignment: CrossAxisAlignment.start, + // children: [ + // fieldLabel('Upload Documents'), + // Container( + // height: 120, + // width: double.infinity, + // decoration: BoxDecoration( + // color: const Color(0xFFF9F9F9), + // borderRadius: BorderRadius.circular(10), + // border: Border.all( + // color: const Color(0xFF00A6A6), + // width: 1, + // ), + // ), + // child: const MultiFileUploadWidget(), + // ), + // ], + // ); + // } + + Widget formBox({required Widget child}) { + return Container( + height: 42, + padding: const EdgeInsets.symmetric(horizontal: 12), + decoration: BoxDecoration( + color: const Color(0xFFF1F1F1), // 👈 light grey + borderRadius: BorderRadius.circular(8), + ), + child: Center(child: child), + ); + } + + Widget fieldLabel(String text) { + return Padding( + padding: const EdgeInsets.only(bottom: 6), + child: Text( + text, + style: GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + ), + ); + } +} + +// class RaiseClaimDialog extends StatelessWidget { +// const RaiseClaimDialog({super.key}); +// +// @override +// Widget build(BuildContext context) { +// return Dialog( +// backgroundColor: Colors.white, // 👈 THIS +// insetPadding: const EdgeInsets.all(24), +// shape: RoundedRectangleBorder( +// borderRadius: BorderRadius.circular(16), +// ), +// child: Container( +// width: MediaQuery.of(context).size.width * 0.75, +// padding: const EdgeInsets.all(24), +// child: Column( +// mainAxisSize: MainAxisSize.min, +// crossAxisAlignment: CrossAxisAlignment.start, +// children: [ +// /// HEADER +// Row( +// mainAxisAlignment: MainAxisAlignment.spaceBetween, +// children: [ +// Text( +// 'Raise Insurance Claim', +// style: GoogleFonts.poppins( +// fontSize: 20, +// fontWeight: FontWeight.w600, +// ), +// ), +// IconButton( +// icon: const Icon(Icons.close), +// onPressed: () => Navigator.pop(context), +// ), +// ], +// ), +// +// const SizedBox(height: 20), +// +// /// FORM +// Expanded( +// child: SingleChildScrollView( +// child: Column( +// children: [ +// _row([ +// _dropdown('Select Policy*'), +// _dropdown('Member Name'), +// _input('Hospital Name'), +// ]), +// _row([ +// _input('Hospital Address'), +// _input('Hospital City'), +// _input('Hospital State'), +// ]), +// _row([ +// _input('Hospital Pincode'), +// _input('Hospital Phone Number'), +// _date('Admit Date'), +// ]), +// _row([ +// _date('Discharge Date'), +// _input('Claim Amount'), +// _input('Message'), +// ]), +// +// const SizedBox(height: 20), +// +// /// UPLOAD +// _uploadBox(), +// ], +// ), +// ), +// ), +// +// const SizedBox(height: 20), +// +// /// FOOTER +// Align( +// alignment: Alignment.centerRight, +// child: SizedBox( +// width: 120, +// height: 42, +// child: ElevatedButton( +// onPressed: () {}, +// style: ElevatedButton.styleFrom( +// backgroundColor: const Color(0xFFE26728), +// shape: RoundedRectangleBorder( +// borderRadius: BorderRadius.circular(10), +// ), +// ), +// child: const Text( +// 'Send', +// style: TextStyle(fontWeight: FontWeight.w600), +// ), +// ), +// ), +// ), +// ], +// ), +// ), +// ); +// } +// +// /// ---------- HELPERS ---------- +// +// Widget _row(List children) { +// return Padding( +// padding: const EdgeInsets.only(bottom: 14), +// child: Row( +// children: children +// .map((e) => Expanded(child: Padding( +// padding: const EdgeInsets.only(right: 12), +// child: e, +// ))) +// .toList(), +// ), +// ); +// } +// +// Widget _input(String label) { +// return Column( +// crossAxisAlignment: CrossAxisAlignment.start, +// children: [ +// Text(label, style: _labelStyle), +// const SizedBox(height: 6), +// _box( +// TextField( +// decoration: const InputDecoration( +// border: InputBorder.none, +// ), +// ), +// ), +// ], +// ); +// } +// +// Widget _dropdown(String label) { +// return Column( +// crossAxisAlignment: CrossAxisAlignment.start, +// children: [ +// Text(label, style: _labelStyle), +// const SizedBox(height: 6), +// _box( +// DropdownButtonHideUnderline( +// child: DropdownButton( +// isExpanded: true, +// hint: const Text('Select'), +// items: const [], +// onChanged: (_) {}, +// ), +// ), +// ), +// ], +// ); +// } +// +// Widget _date(String label) { +// return Column( +// crossAxisAlignment: CrossAxisAlignment.start, +// children: [ +// Text(label, style: _labelStyle), +// const SizedBox(height: 6), +// _box( +// TextField( +// readOnly: true, +// decoration: const InputDecoration( +// suffixIcon: Icon(Icons.calendar_today, size: 18), +// border: InputBorder.none, +// ), +// ), +// ), +// ], +// ); +// } +// +// Widget _box(Widget child) { +// return Container( +// height: 42, +// padding: const EdgeInsets.symmetric(horizontal: 12), +// decoration: BoxDecoration( +// color: const Color(0xFFF1F1F1), +// borderRadius: BorderRadius.circular(8), +// ), +// child: Center(child: child), +// ); +// } +// +// Widget _uploadBox() { +// return Column( +// crossAxisAlignment: CrossAxisAlignment.start, +// children: [ +// Text('Upload Documents', style: _labelStyle), +// const SizedBox(height: 8), +// Container( +// height: 120, +// width: double.infinity, +// decoration: BoxDecoration( +// borderRadius: BorderRadius.circular(10), +// border: Border.all( +// color: const Color(0xFF00A6A6), +// style: BorderStyle.solid, +// ), +// color: const Color(0xFFF9F9F9), +// ), +// child: Column( +// mainAxisAlignment: MainAxisAlignment.center, +// children: const [ +// Icon(Icons.insert_drive_file, +// size: 36, color: Color(0xFF00A6A6)), +// SizedBox(height: 6), +// Text( +// 'Sample_file.PDF', +// style: TextStyle(fontWeight: FontWeight.w500), +// ), +// SizedBox(height: 4), +// Text( +// '(Supported formats: PDF, PNG, JPG, JPEG, HEIC)', +// style: TextStyle(fontSize: 11, color: Colors.grey), +// ), +// ], +// ), +// ), +// ], +// ); +// } +// } + +/// ---------- STYLES ---------- +final _labelStyle = GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w500, +); diff --git a/lib/presentation/cdList.dart b/lib/presentation/cdList.dart new file mode 100644 index 0000000..2812e42 --- /dev/null +++ b/lib/presentation/cdList.dart @@ -0,0 +1,496 @@ +import 'dart:convert'; + +import 'package:csv/csv.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:google_fonts/google_fonts.dart'; +import 'package:http/http.dart' as http; +import 'package:universal_html/html.dart' as html; + +import 'cdTransactionDetails.dart'; +import 'package:collection/collection.dart'; + +import '../customAppBar/base_layout.dart'; +import '../service/api_service.dart'; +import '../service/token_storage_service.dart'; + + +class CdPoliciesList extends StatefulWidget { + const CdPoliciesList({Key? key}) : super(key: key); + + @override + State createState() => _CdPoliciesListState(); +} + + +class _CdPoliciesListState extends State { + final tokenService = TokenStorageService(); + Uint8List? fileBytes; + List> getCDPolicies = []; + bool isLoading = false; + bool _isLoading = false; + dynamic empClientId; + dynamic empClientBranchId; + dynamic empHrId; + String? _postPreToken = ''; + List reversedDataPolicy = []; + List> originalData = []; // Original data source + List> filteredData = []; // Filtered data source + dynamic argumentsData; + dynamic policyType; + dynamic policyName; + dynamic clientPolicyId; + dynamic clientId; + dynamic empRefId; + int inceptionType = 0; + TextEditingController searchController = TextEditingController(); + late ApiService apiService; + int _currentPage = 1; + int _rowsPerPage = 5; + + List get _paginatedData { + final startIndex = (_currentPage - 1) * _rowsPerPage; + final endIndex = + (_currentPage * _rowsPerPage).clamp(0, filteredData.length); + return filteredData.sublist(startIndex, endIndex); + } + + @override + void initState() { + super.initState(); + apiService = ApiService(context); // Initialize ApiService here + checkIds(); + } + + @override + void dispose() { + super.dispose(); + } + + Future checkIds() async { + _postPreToken = await tokenService.getCurrentToken(); + empClientId = await tokenService.readValue('empClientId'); + // empClientBranchId = await tokenService.readValue('empClientBranchId'); + empHrId = await tokenService.readValue('empHrId'); + + await getCDPoliciesDetails(empClientId, empHrId, _postPreToken); + } + + Future getCDPoliciesDetails(empClientId, empHrId, _postPreToken) async { + print('9'); + setState(() { + isLoading = true; + }); + try { + print('10'); + final response = await apiService.getCDPoliciesToApi(empClientId, empHrId, _postPreToken); + if (response['status'] == 'success') { + setState(() { + isLoading = false; + }); + setState(() { + getCDPolicies = List>.from(response['data']); + originalData = getCDPolicies; + filteredData = List.from(originalData); + print('filteredData'); + print(filteredData); + }); + } else { + setState(() { + isLoading = false; + }); + + // ToastHelper.showWarningToast( + // context, 'Request failed with status: ${response.statusCode}'); + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + setState(() { + isLoading = false; + }); + print('Exception occurred: $e'); + } finally { + setState(() { + _isLoading = false; + }); + } + } + + void search(String query) { + print(query); + // Check if the query is empty + if (query.isEmpty) { + // If search query is empty, show all data + setState(() { + filteredData = List.from(originalData); + }); + } else { + // Filter the original data based on the search query + setState(() { + filteredData = originalData.where((row) { + // Implement your filter logic here + // For example, check if any field in the row contains the query + // Adjust this logic based on your data structure + return row['insurer_name'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['cd_master_account_no'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['balance'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()); + }).toList(); + }); + } + print(filteredData.length); + } + + void exportToCsv(List> data) { + List> rows = []; + + // Header + rows.add(['Insurer Name', 'CD Account Number', 'Current Balance']); + + // Data rows + for (var item in data) { + rows.add([ + item['insurer_name'] ?? '', + item['cd_master_account_no'] ?? '', + '₹${item['balance'] ?? '0'}', + ]); + } + + // Convert to CSV string + String csvData = const ListToCsvConverter().convert(rows); + + // For Web: Create download + final bytes = utf8.encode(csvData); + final blob = html.Blob([bytes]); + final url = html.Url.createObjectUrlFromBlob(blob); + final anchor = html.AnchorElement(href: url) + ..setAttribute("download", "CD_Policies.csv") + ..click(); + html.Url.revokeObjectUrl(url); + handleExportAction(); + } + + Future handleExportAction() async { + print('handleExportAction'); + _postPreToken = await tokenService.getCurrentToken(); + final postId = await tokenService.readValue('empHrId'); + final preId = await tokenService.readValue('enrollmentEmpPrimaryId'); + var activity = "export_cddata"; + + print('postId - $postId'); + print('preId - $preId'); + print('activity - $activity'); + + try { + print('10'); + final response = await apiService.getPostLogHrActivity( + postId!, preId!, _postPreToken!, activity); + if (response['status'] == 'success') { + print('Request success'); + } else { + // ToastHelper.showWarningToast( + // context, 'Request failed with status: ${response.statusCode}'); + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + print('Exception occurred: $e'); + } + } + + Future _showLogoutDialog() async { + return await showDialog( + context: context, + barrierDismissible: false, + builder: (context) => AlertDialog( + title: Text("Confirm Logout"), + content: Text("Do you want to logout?"), + actions: [ + TextButton( + onPressed: () => Navigator.of(context).pop(false), + child: Text("Cancel"), + ), + TextButton( + onPressed: () => apiService.logout(), + child: Text("Logout"), + ), + ], + ), + ) ?? + false; + } + + @override + Widget build(BuildContext context) { + return BaseLayout( + child: PopScope( + canPop: false, // 🚫 block default back + onPopInvoked: (didPop) async { + bool logout = await _showLogoutDialog(); + if (logout) { + await apiService.logout(); + if (!mounted) return; + Navigator.pushNamedAndRemoveUntil( + context, + 'hrLogin', + (route) => false, + ); + } + }, + child: _buildContent(context), + ), + ); + } + + Widget _buildContent(BuildContext context) { + return Container( + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(10), // 👈 set your desired radius + ), + // height: 400, + padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + /// 🔙 Back + Title (LEFT) + Row( + children: [ + IconButton( + onPressed: () => {}, + icon: const Icon( + Icons.arrow_back_ios, + size: 18, + color: Colors.black, + ), + padding: EdgeInsets.zero, + constraints: const BoxConstraints(), + ), + const SizedBox(width: 6), + Text( + 'CD', + style: GoogleFonts.poppins( + fontSize: 22, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + ), + ], + ), + + /// Push right content to end + const Spacer(), + + /// 🔍 Search Box + Container( + width: 380, + height: 37, + decoration: BoxDecoration( + color: const Color(0xFFF0F0F0), + borderRadius: BorderRadius.circular(8), + ), + child: TextField( + controller: searchController, + onChanged: search, + style: GoogleFonts.poppins(fontSize: 14), + decoration: const InputDecoration( + hintText: 'Search', + prefixIcon: Icon(Icons.search, size: 18), + border: InputBorder.none, + contentPadding: + EdgeInsets.symmetric(horizontal: 12, vertical: 8), + ), + ), + ), + + const SizedBox(width: 12), + + /// ⬇️ Export Button + SizedBox( + width: 116, + height: 37, + child: ElevatedButton( + onPressed: () => exportToCsv(filteredData), + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE26728), + elevation: 0, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + ), + child: Text( + 'Export', + style: GoogleFonts.poppins( + fontSize: 16, + fontWeight: FontWeight.w700, + color: Colors.white, + letterSpacing: 1, + ), + ), + ), + ), + ], + ), + SizedBox(height: 20), + isLoading + ? Expanded( + // color: Color(0x98FFFCE5), // semi-transparent overlay + child: Center( + child: Image.asset( + 'assets/nhance-loader.gif', + height: 60, + width: 60, + ), + ), + ) + : Expanded( + child: _buildCDGrid(), + ) + ], + ), + ); + } + + Widget _buildCDGrid() { + if (filteredData.isEmpty) { + return const Center( + child: Text('No CD Account Mapped'), + ); + } + + return GridView.builder( + itemCount: filteredData.length, + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 4, // desktop + crossAxisSpacing: 16, + mainAxisSpacing: 16, + childAspectRatio: 3.8, // 🔥 matches image + ), + itemBuilder: (context, index) { + return InkWell( + borderRadius: BorderRadius.circular(12), + onTap: () async { + + Navigator.push( + context, + MaterialPageRoute( + builder: (_) => cdTransactionDetails( + insurerName: filteredData[index]['insurer_name'], + cdMasterAccountNo: filteredData[index]['cd_master_account_no'], + insurerId: filteredData[index]['insurer_id'], + cd_ac_pk: filteredData[index]['cd_ac_pk'], + empClientId: empClientId, + ), + ), + ); + }, + child: _CDPolicyCard(data: filteredData[index]), + ); + + }, + ); + } + + +} + +class _CDPolicyCard extends StatelessWidget { + final Map data; + + const _CDPolicyCard({required this.data}); + + @override + Widget build(BuildContext context) { + final balance = double.tryParse(data['balance'].toString()) ?? 0; + + final Color amountColor = balance < 0 + ? Colors.red + : balance < 50000 + ? Colors.orange + : Colors.green; + + return Container( + padding: const EdgeInsets.all(14), + decoration: BoxDecoration( + color: const Color(0xFFEAFAFA), + borderRadius: BorderRadius.circular(12), + border: Border.all(color: const Color(0xFFA0D1D3)), + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Expanded( + flex: 7, + child: Text( + data['insurer_name'] ?? '', + maxLines: 2, + overflow: TextOverflow.ellipsis, + style: GoogleFonts.poppins( + fontSize: 14, + fontWeight: FontWeight.w500, + color: Color(0xFF000000) + ), + ), + ), + Expanded( + flex: 5, + child: Text( + "₹${balance.toStringAsFixed(0)}", + textAlign: TextAlign.right, + style: GoogleFonts.poppins( + fontSize: 14, + fontWeight: FontWeight.w600, + color: amountColor, + ), + ), + ) + ], + ), + + /// Top row (amount + arrow) + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + /// Account number + Text( + 'CD Account Number: ${data['cd_master_account_no']}', + style: GoogleFonts.poppins( + fontSize: 13, + fontWeight: FontWeight.w400, + color: Color(0xFF000000), + ), + ), + Container( + padding: const EdgeInsets.all(6), + decoration: BoxDecoration( + color: const Color(0xFF009195), + borderRadius: BorderRadius.circular(6), + ), + child: const Icon( + Icons.open_in_new, + color: Colors.white, + size: 14, + ), + ) + ], + ), + ], + ), + ); + } +} + diff --git a/lib/cdTransactionDetails.dart b/lib/presentation/cdTransactionDetails.dart similarity index 62% rename from lib/cdTransactionDetails.dart rename to lib/presentation/cdTransactionDetails.dart index 8646cf6..87b297b 100755 --- a/lib/cdTransactionDetails.dart +++ b/lib/presentation/cdTransactionDetails.dart @@ -8,14 +8,17 @@ import 'package:flutter/services.dart'; import 'package:google_fonts/google_fonts.dart'; import 'package:http/http.dart' as http; import 'package:intl/intl.dart'; +import 'package:nhancepolicy/customAppBar/toastHelper.dart'; import 'package:nhancepolicy/service/api_service.dart'; -import 'package:shared_preferences/shared_preferences.dart'; +import 'package:nhancepolicy/service/token_storage_service.dart'; import 'package:universal_html/html.dart' as html; import 'package:collection/collection.dart'; +import 'package:url_launcher/url_launcher.dart'; -import 'customAppBar/customAppBar.dart'; -import 'customAppBar/customFooter.dart'; +import '../customAppBar/base_layout.dart'; +import '../customAppBar/customAppBar.dart'; +import '../customAppBar/customFooter.dart'; class cdTransactionDetails extends StatefulWidget { final String insurerName; @@ -23,7 +26,7 @@ class cdTransactionDetails extends StatefulWidget { final String insurerId; final String cd_ac_pk; final String empClientId; - final String postToken; + // final String postToken; const cdTransactionDetails( {Key? key, required this.insurerName, @@ -31,15 +34,18 @@ class cdTransactionDetails extends StatefulWidget { required this.insurerId, required this.cd_ac_pk, required this.empClientId, - required this.postToken}); + // required this.postToken + }); @override State createState() => _cdTransactionDetailsState(); } class _cdTransactionDetailsState extends State { + final tokenService = TokenStorageService(); Uint8List? fileBytes; List> getCDTransData = []; + List> getCDEndorsementData = []; bool isLoading = false; bool _isLoading = false; // dynamic clintID; @@ -47,7 +53,9 @@ class _cdTransactionDetailsState extends State { // List dataPolicy = []; List reversedDataPolicy = []; List> originalData = []; // Original data source + List> originalEndorsementData = []; // Original data source List> filteredData = []; // Filtered data source + List> filteredEndorsementData = []; // Filtered data source List> getCDTransDataAmount = []; // Filtered data source dynamic argumentsData; dynamic policyType; @@ -84,6 +92,9 @@ class _cdTransactionDetailsState extends State { super.dispose(); } + // downloadPolicyFiles?file_id=13 + // getPolicyAndEndorsementFiles?cd_ac_pk=12 + Future getCdTransactionDetails() async { print('9'); setState(() { @@ -91,8 +102,9 @@ class _cdTransactionDetailsState extends State { }); try { print('10'); + final _postPreToken = await tokenService.getCurrentToken(); final response = await apiService.getCdTransactionData(widget.empClientId, - widget.insurerId, widget.cd_ac_pk, widget.postToken); + widget.insurerId, widget.cd_ac_pk, _postPreToken!); if (response['status'] == 'success') { setState(() { isLoading = false; @@ -130,6 +142,148 @@ class _cdTransactionDetailsState extends State { } } + Future _openEndorsementFile(id) async { + print('9'); + try { + print('10'); + final _postPreToken = await tokenService.getCurrentToken(); + final response = await apiService.getOpenEndorsementFileData(id, _postPreToken!); + if (response['status'] == false) { + ToastHelper.showErrorToast(context, response['message']); + } else { + + // ToastHelper.showWarningToast( + // context, 'Request failed with status: ${response.statusCode}'); + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + print('Exception occurred: $e'); + } + } + + Future getCdEndorsementDetails(id) async { + print('9'); + setState(() { + isLoading = true; + }); + try { + print('10'); + final _postPreToken = await tokenService.getCurrentToken(); + final response = await apiService.getCdEndorsementData(id, _postPreToken!); + if (response['status'] == true) { + setState(() { + isLoading = false; + }); + setState(() { + getCDEndorsementData = List>.from(response['data']); + originalEndorsementData = getCDEndorsementData; + filteredEndorsementData = List.from(originalEndorsementData); + _showFileListPopup(filteredEndorsementData); + print('filteredData'); + print(filteredData); + }); + } else { + setState(() { + isLoading = false; + }); + getCDEndorsementData = List>.from(response['data']); + if (getCDEndorsementData == null || getCDEndorsementData.isEmpty || getCDEndorsementData == null || (getCDEndorsementData as List).isEmpty) { + _showEmptyPopup(response['message']); + return; + } + + // ToastHelper.showWarningToast( + // context, 'Request failed with status: ${response.statusCode}'); + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + setState(() { + isLoading = false; + }); + print('Exception occurred: $e'); + } finally { + setState(() { + _isLoading = false; + }); + } + } + + void _showFileListPopup(List> files) { + showDialog( + context: context, + barrierDismissible: true, + builder: (_) { + return AlertDialog( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16), + ), + title: const Text( + 'Files', + style: TextStyle(fontWeight: FontWeight.w600), + ), + content: SizedBox( + width: 400, + child: ListView.separated( + shrinkWrap: true, + itemCount: files.length, + separatorBuilder: (_, __) => const Divider(), + itemBuilder: (context, index) { + final file = files[index]; + + return ListTile( + leading: const Icon( + Icons.picture_as_pdf_outlined, + color: Color(0xFF00999E), + ), + title: Text( + file['file_name'] ?? 'Document', + style: const TextStyle(fontSize: 14), + ), + onTap: () { + // Navigator.pop(context); // close popup + _openEndorsementFile(file['id']); + }, + ); + }, + ), + ), + actions: [ + TextButton( + onPressed: () => Navigator.pop(context), + child: const Text('Close'), + ), + ], + ); + }, + ); + } + + void _showEmptyPopup(String message) { + showDialog( + context: context, + barrierDismissible: false, + builder: (_) { + return AlertDialog( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16), + ), + title: const Text( + 'Message', + style: TextStyle(fontWeight: FontWeight.w600), + ), + content: Text(message), + actions: [ + TextButton( + onPressed: () => Navigator.pop(context), + child: const Text('OK'), + ), + ], + ); + }, + ); + } + + void search(String query) { print(query); // Check if the query is empty @@ -230,7 +384,7 @@ class _cdTransactionDetailsState extends State { ? '${item['policy_type']} - ${item['policy_no']}' : '-', item['endorsement_no'] ?? '', - item['sub_type'] ?? '', + item['sub_type_text'] ?? '', item['transaction_type'] == 'Credit' ? '₹${item['amount']}' : '-', item['transaction_type'] == 'Debit' ? '₹${item['amount']}' : '-', '₹${item['balance'] ?? '0'}', @@ -256,9 +410,9 @@ class _cdTransactionDetailsState extends State { Future handleExportAction() async { print('handleExportAction'); - final SharedPreferences prefs = await SharedPreferences.getInstance(); - final postId = prefs.getString('empHrId'); - final preId = prefs.getString('enrollmentEmpPrimaryId'); + final postId = await tokenService.readValue('empHrId'); + final preId = await tokenService.readValue('enrollmentEmpPrimaryId'); + var activity = "export_cdsummary"; print('postId - $postId'); @@ -267,8 +421,9 @@ class _cdTransactionDetailsState extends State { try { print('10'); + final _postPreToken = await tokenService.getCurrentToken(); final response = await apiService.getPostLogHrActivity( - postId!, preId!, widget.postToken, activity); + postId!, preId!, _postPreToken!, activity); if (response['status'] == 'success') { print('Request success'); } else { @@ -305,182 +460,202 @@ class _cdTransactionDetailsState extends State { } } + Future _launchURL(String url) async { + final Uri uri = Uri.parse(url); // Parse the URL properly + print('_launchURL $uri'); + if (uri != null) { + print('If $uri'); + await launchUrl(uri, mode: LaunchMode.externalApplication); + } else { + ToastHelper.showWarningToast(context, 'File not generated'); + print('else $uri'); + throw 'Could not launch $url'; + } + } + + Future _showLogoutDialog() async { + return await showDialog( + context: context, + barrierDismissible: false, + builder: (context) => AlertDialog( + title: Text("Confirm Logout"), + content: Text("Do you want to logout?"), + actions: [ + TextButton( + onPressed: () => Navigator.of(context).pop(false), + child: Text("Cancel"), + ), + TextButton( + onPressed: () => apiService.logout(), + child: Text("Logout"), + ), + ], + ), + ) ?? + false; + } + @override Widget build(BuildContext context) { - // TODO: implement build - return Scaffold( - appBar: CustomAppBar(), - backgroundColor: Color(0xFFEFF3F6), - body: Stack(children: [ - SingleChildScrollView( - child: Container( - padding: EdgeInsets.only( - top: 30, bottom: 200, left: 50, right: 50), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, + return BaseLayout( + child: PopScope( + canPop: false, // 🚫 block default back + onPopInvoked: (didPop) async { + bool logout = await _showLogoutDialog(); + if (logout) { + await apiService.logout(); + if (!mounted) return; + Navigator.pushNamedAndRemoveUntil( + context, + 'hrLogin', + (route) => false, + ); + } + }, + child: _buildContent(context), + ), + ); + } + + Widget _buildContent(BuildContext context) { + return isLoading ? Container( + color: Color(0x98FFFCE5), // Semi-transparent background + child: Center( + child: // Your GIF loader widget + Image.asset( + height: 60, + width: 60, + 'assets/nhance-loader.gif'), // Adjust path to your GIF loader + ), + ) : Container( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + /// 🔙 Back + Title (LEFT) + Row( + children: [ + IconButton( + onPressed: () => Navigator.pop(context), + icon: const Icon( + Icons.arrow_back_ios, + size: 18, + color: Colors.black, + ), + padding: EdgeInsets.zero, + constraints: const BoxConstraints(), + ), + const SizedBox(width: 6), + Text( + 'Transaction Details - ${widget.insurerName} (${widget.cdMasterAccountNo})', + style: GoogleFonts.poppins( + fontSize: 18, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + ), + ], + ), + + /// Push right content to end + const Spacer(), + + /// 🔍 Search Box + Container( + width: 380, + height: 37, + decoration: BoxDecoration( + color: const Color(0xFFF0F0F0), + borderRadius: BorderRadius.circular(8), + ), + child: TextField( + controller: searchController, + onChanged: search, + style: GoogleFonts.poppins(fontSize: 14), + decoration: const InputDecoration( + hintText: 'Search', + prefixIcon: Icon(Icons.search, size: 18), + border: InputBorder.none, + contentPadding: + EdgeInsets.symmetric(horizontal: 12, vertical: 8), + ), + ), + ), + + const SizedBox(width: 12), + + /// ⬇️ Export Button + SizedBox( + width: 116, + height: 37, + child: ElevatedButton( + onPressed: () => exportToCsv(filteredData), + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE26728), + elevation: 0, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + ), + child: Text( + 'Export', + style: GoogleFonts.poppins( + fontSize: 16, + fontWeight: FontWeight.w700, + color: Colors.white, + letterSpacing: 1, + ), + ), + ), + ), + ], + ), + SizedBox(height: 10), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + _buildInfoCard('Deposits', '₹$total_deposit', + Color(0xFF39D45B), Icons.arrow_upward), + _buildInfoCard('Consumed', '₹$total_consumed', + Color(0xFFED1D24), Icons.arrow_downward), + _buildInfoCard('Refund', '₹$total_refund', + Color(0xFF39D45B), Icons.arrow_upward), + _buildInfoCard('Current Balance', '₹$currect_balance', + Colors.black, null), + ], + ), + SizedBox(height: 16), + Container( + decoration: BoxDecoration( + // color: Colors.white, + borderRadius: BorderRadius.circular( + 10), // 👈 set your desired radius + ), + // height: 400, + // padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + Row( children: [ - MouseRegion( - cursor: SystemMouseCursors - .click, // 👈 shows pointer on hover - child: GestureDetector( - onTap: () { - Navigator.pop(context); // or your desired action - }, - child: Row( - children: [ - Icon(Icons.arrow_back_ios_new_outlined, - color: Color(0xFF707070)), - SizedBox(width: 8), - Expanded( - child: Text( - 'Transaction Details - ${widget.insurerName} (${widget.cdMasterAccountNo})', - style: GoogleFonts.poppins( - fontSize: 14, - fontWeight: FontWeight.w600, - color: Color(0xFF101010), - ), - ), - ), - ], - ), - ), - ), - SizedBox(height: 10), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - _buildInfoCard('Deposits', '₹$total_deposit', - Color(0xFF39D45B), Icons.arrow_upward), - _buildInfoCard('Consumed', '₹$total_consumed', - Color(0xFFED1D24), Icons.arrow_downward), - _buildInfoCard('Refund', '₹$total_refund', - Color(0xFF39D45B), Icons.arrow_upward), - _buildInfoCard('Current Balance', '₹$currect_balance', - Colors.black, null), - ], - ), - SizedBox(height: 16), - Container( - decoration: BoxDecoration( - color: Colors.white, - borderRadius: BorderRadius.circular( - 10), // 👈 set your desired radius - ), - // height: 400, - padding: const EdgeInsets.all(16.0), - child: Column( - children: [ - Row( - children: [ - Expanded( - flex: 4, - child: Align( - alignment: Alignment.centerLeft, - child: Container( - width: 400, - height: 37, - decoration: BoxDecoration( - color: Color(0xFFF0F0F0), - borderRadius: BorderRadius.circular(8), - ), - child: TextField( - decoration: InputDecoration( - hintText: 'Search', - prefixIcon: - Icon(Icons.search, size: 18), - contentPadding: EdgeInsets.symmetric( - horizontal: 12, vertical: 8), - border: InputBorder - .none, // No border since Container handles it - ), - controller: searchController, - onChanged: search, - style: - GoogleFonts.poppins(fontSize: 14), - ), - ), - ), - ), - SizedBox(width: 12), - Expanded( - flex: 2, - child: Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - SizedBox( - width: 116, - height: 37, - child: ElevatedButton( - onPressed: () { - exportToCsv(filteredData); - }, - style: ElevatedButton.styleFrom( - backgroundColor: Color(0xFFE26728), - padding: EdgeInsets.all( - 10), // Internal padding - shape: RoundedRectangleBorder( - borderRadius: - BorderRadius.circular( - 10), // Border radius - side: BorderSide( - color: Colors - .transparent, // Optional border color - width: 1, // Border width - ), - ), - elevation: 0, - ), - child: Text( - 'Export', - style: GoogleFonts.poppins( - fontSize: 14, - color: Color(0xFFFFFFFF), - fontWeight: FontWeight.w700, - letterSpacing: 1), - ), - ), - ), - ], - ), - ), - ], - ), - SizedBox(height: 20), - Row( - children: [ - Expanded( - child: SingleChildScrollView( - child: _buildCDDataTable(context), - ), - ) - ], - ), - ], + Expanded( + child: SingleChildScrollView( + child: _buildCDDataTable(context), ), ) ], - ))), - if (isLoading) - Container( - color: Color(0x98FFFCE5), // Semi-transparent background - child: Center( - child: // Your GIF loader widget - Image.asset( - height: 60, - width: 60, - 'assets/nhance-loader.gif'), // Adjust path to your GIF loader + ), + ], ), - ), - Align( - alignment: Alignment.bottomCenter, - child: Container( - width: double.infinity, // Make the footer full width - child: CustomFooter(), - ), - ), - ])); + ) + ], + )); + } + + Widget _buildInfoCard( String label, String value, Color iconColor, IconData? icon) { return Expanded( @@ -548,7 +723,7 @@ class _cdTransactionDetailsState extends State { // Header row Container( decoration: BoxDecoration( - color: Color(0xFFD7E9EB), + color: Color(0xFFD7E9EB), borderRadius: BorderRadius.circular(6), ), padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16), @@ -675,6 +850,19 @@ class _cdTransactionDetailsState extends State { fontWeight: FontWeight.bold), ), ), + Expanded( + flex: 2, + child: Text( + 'Action', + textAlign: TextAlign.center, + style: GoogleFonts.poppins( + fontSize: 12, + color: const Color(0xFF000000), + fontWeight: FontWeight.bold, + ), + ), + ), + ], ), ), @@ -688,11 +876,11 @@ class _cdTransactionDetailsState extends State { padding: const EdgeInsets.symmetric(vertical: 5, horizontal: 16), decoration: BoxDecoration( // color: index % 2 == 0 ? Color(0xFFE6FAFB) : Colors.white, - color: Colors.white, - borderRadius: BorderRadius.circular(6), + // color: Colors.white, + // borderRadius: BorderRadius.circular(6), border: Border( bottom: BorderSide( - color: Color(0xFFD7E9EB), // 👈 Bottom border color + color: Color(0xFFA9D9DE), // 👈 Bottom border color width: 1, // 👈 Optional: thickness ), ), @@ -765,7 +953,7 @@ class _cdTransactionDetailsState extends State { Expanded( flex: 2, child: Text( - item['sub_type'] ?? '-', + item['sub_type_text'] ?? '-', textAlign: TextAlign.left, style: GoogleFonts.poppins( color: Color(0xFF000000), @@ -832,6 +1020,35 @@ class _cdTransactionDetailsState extends State { ), ), ), + Expanded( + flex: 2, + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + _ActionIconButton( + icon: Icons.picture_as_pdf_outlined, + onTap: () { + getCdEndorsementDetails(item['id']); + }, + subType: item['sub_type'] + ), + const SizedBox(width: 8), + _ActionIconButton( + icon: Icons.folder_open_outlined, + onTap: () { + if (item['split_up_url'] != null && item['split_up_url'].toString().trim().isNotEmpty){ + _launchURL(item['split_up_url']); + } else{ + ToastHelper.showWarningToast(context, 'File not generated'); + } + + }, + subType: item['sub_type'] + ), + ], + ), + ), + ], ), ); @@ -917,6 +1134,41 @@ class _cdTransactionDetailsState extends State { } } +class _ActionIconButton extends StatelessWidget { + final IconData icon; + final VoidCallback onTap; + final String? subType; + + + const _ActionIconButton({ + required this.icon, + required this.onTap, + required this.subType, + }); + + @override + Widget build(BuildContext context) { + return SizedBox( + width: 36, + height: 36, + child: Material( + color: const Color(0xFFDFF4F5), // light teal bg + borderRadius: BorderRadius.circular(10), + child: InkWell( + borderRadius: BorderRadius.circular(10), + onTap: (subType == '3' || subType == '4') ? onTap : null, + child: Icon( + icon, + size: 22, + color: Colors.black, + ), + ), + ), + ); + } +} + + // Sample Data class representing each element in the array class Data { final dynamic value; diff --git a/lib/service/hrDashboardTabs/claims.dart b/lib/presentation/claims.dart similarity index 70% rename from lib/service/hrDashboardTabs/claims.dart rename to lib/presentation/claims.dart index af237cd..00999f6 100755 --- a/lib/service/hrDashboardTabs/claims.dart +++ b/lib/presentation/claims.dart @@ -1,3 +1,6 @@ +import 'dart:convert'; + +import 'package:csv/csv.dart'; import 'package:dropdown_search/dropdown_search.dart'; import 'package:firebase_auth/firebase_auth.dart'; import 'package:flutter/cupertino.dart'; @@ -7,46 +10,31 @@ import 'package:google_fonts/google_fonts.dart'; import 'package:http/http.dart' as http; import 'package:collection/collection.dart'; import 'package:jwt_decode/jwt_decode.dart'; +import 'package:universal_html/html.dart' as html; -import '../../claimshistory.dart'; -import '../api_service.dart'; +import 'claimshistory.dart'; +import '../customAppBar/base_layout.dart'; +import '../service/api_service.dart'; +import '../service/token_storage_service.dart'; +import 'RaiseClaimForm.dart'; class ClaimsPolicies extends StatefulWidget { - final String empClientId; - final String empClientBranchId; - final String empHrId; - final String postToken; - final String empCodeHrPolicy; - - final int isHrcode; - - const ClaimsPolicies( - {Key? key, - required this.empClientId, - required this.empClientBranchId, - required this.empHrId, - required this.postToken, - required this.empCodeHrPolicy, - required this.isHrcode}); + const ClaimsPolicies({Key? key}) : super(key: key); @override State createState() => _ClaimsPolicieState(); } -class _ClaimsPolicieState extends State { - List tabHeader = ['name', 'empCode', 'from', 'to', 'claimNum']; +class _ClaimsPolicieState extends State { + List tabHeader = ['name', 'empCode', 'from', 'to', 'claimNum','policyNumber']; + final tokenService = TokenStorageService(); List> filteredData = []; // Filtered data source - // List> filteredData = [ - // { - // "client_id": "58", - // "insurer_id": "2", - // "cd_ac_pk": "94", - // "insurer_name": "ICICI Prudential Life Insurance Co. Ltd", - // "cd_master_account_no": "CD-IOCL-887744559966", - // "balance": "10000000.00" - // } - // ]; + dynamic empClientId; + dynamic empClientBranchId; + dynamic empHrId; + String? _postPreToken = ''; + TextEditingController searchController = TextEditingController(); Map controllers = {}; List reversedDataPolicy = []; @@ -56,7 +44,6 @@ class _ClaimsPolicieState extends State { int? selectedPolicyType; int? selectedClaimStatus; - dynamic empClientId; List> getClaimPolicies = []; Map getClaimPoliciesApi = {}; bool isLoading = false; @@ -71,16 +58,41 @@ class _ClaimsPolicieState extends State { return filteredData.sublist(startIndex, endIndex); } + Color getStatusColor(String status) { + switch (status.toLowerCase()) { + case 'claim received': + return const Color(0xFF4A90E2); // blue + case 'under process': + return const Color(0xFFF5A623); // orange + case 'information required': + return const Color(0xFFFF8C42); // amber + case 'approved': + return const Color(0xFF2ECC71); // green + case 'settled': + return const Color(0xFF1ABC9C); // teal-green + case 'rejected': + return const Color(0xFFE74C3C); // red + case 'denial review awaite': + return const Color(0xFF9B59B6); // purple + case 'closed': + return const Color(0xFFB0BEC5); // purple + default: + return const Color(0xFFB0BEC5); // grey fallback + } + } + + Map claim_Detials() { final data = { - "client_id": widget.empClientId, - "emp_code": controllers["empCode"]?.text ?? '', + "client_id": empClientId ?? '', + "client_branch_id": empClientBranchId ?? '', + // "emp_code": controllers["empCode"]?.text ?? '', "from_date": controllers["from"]?.text ?? '', "to_date": controllers["to"]?.text ?? '', - "ticket_type_id": selectedPolicyType ?? '', + // "ticket_type_id": selectedPolicyType ?? '', "claim_status_id": selectedClaimStatus ?? '', - "claim_number": controllers["claimNum"]?.text ?? '', - "emp_name": controllers["name"]?.text ?? '', + "policy_no": controllers["policyNumber"]?.text ?? '', + // "emp_name": controllers["name"]?.text ?? '', }; return data; } @@ -94,43 +106,47 @@ class _ClaimsPolicieState extends State { controllers[field] = TextEditingController(); } - print("TextCXOnte - $controllers"); - if (widget.postToken != null && widget.postToken.isNotEmpty) { - Map? postdecodedToken = Jwt.parseJwt(widget.postToken); + // if (_postPreToken != null && _postPreToken!.isNotEmpty) { + // + // claim_Detials(); + // + // print("Empcoed1- ${widget.empCodeHrPolicy}"); + // print("EmpisHrcode- ${empHrId}"); + // if (widget.empCodeHrPolicy != '') { + // print("Empcoedbool- ${widget.isHrcode}"); + // controllers['empCode']!.text = widget.empCodeHrPolicy; + // // if (widget.isHrcode == 0) { + // // controllers['empCode']?.clear(); + // // } else { + // // controllers['empCode']!.text = widget.empCodeHrPolicy; + // // } + // + // print("Empcoed- ${widget.empCodeHrPolicy}"); + // } + // + // // if (widget.empCodeHrPolicy != '' && widget.isHrcode) { + // // print("Empcoedbool- ${widget.isHrcode}"); + // // controllers['empCode']!.text = widget.empCodeHrPolicy; + // // print("Empcoed- ${widget.empCodeHrPolicy}"); + // // } + // + // getClaimList(); + // } - empClientId = postdecodedToken['client_id'].toString(); - print("empClientId - $empClientId"); - claim_Detials(); - - print("Empcoed1- ${widget.empCodeHrPolicy}"); - print("EmpisHrcode- ${widget.isHrcode}"); - if (widget.empCodeHrPolicy != '') { - print("Empcoedbool- ${widget.isHrcode}"); - controllers['empCode']!.text = widget.empCodeHrPolicy; - // if (widget.isHrcode == 0) { - // controllers['empCode']?.clear(); - // } else { - // controllers['empCode']!.text = widget.empCodeHrPolicy; - // } - - print("Empcoed- ${widget.empCodeHrPolicy}"); - } - - // if (widget.empCodeHrPolicy != '' && widget.isHrcode) { - // print("Empcoedbool- ${widget.isHrcode}"); - // controllers['empCode']!.text = widget.empCodeHrPolicy; - // print("Empcoed- ${widget.empCodeHrPolicy}"); - // } - - getClaimList(); - } - - getClaimsPoliciesDetails(); // getApiData(); + _loadIds(); } + Future _loadIds() async { + _postPreToken = tokenService.getCurrentToken(); + empClientId = await tokenService.readValue('empClientId'); + empClientBranchId = await tokenService.readValue('empClientBranchId'); + + getClaimsPoliciesDetails(); + getClaimList(); + } @override void dispose() { for (var controller in controllers.values) { @@ -147,7 +163,7 @@ class _ClaimsPolicieState extends State { }); try { print('10'); - final response = await apiService.getClaimPoliciesToApi(widget.postToken); + final response = await apiService.getClaimPoliciesToApi(_postPreToken!); if (response['status'] == 'success') { setState(() { isLoading = false; @@ -182,12 +198,16 @@ class _ClaimsPolicieState extends State { isLoading = true; }); + /// ✅ Resolve futures FIRST + empClientId ??= await tokenService.readValue('empClientId'); + empClientBranchId ??= await tokenService.readValue('empClientBranchId'); + final requestData = claim_Detials(); print("Request Body: $requestData"); try { final response = await apiService.getClaimPoliciesListDataToApi( - widget.postToken, + _postPreToken!, requestData, ); @@ -216,14 +236,26 @@ class _ClaimsPolicieState extends State { } } - void applyFilter() { + int getStatusCount(String status) { + return filteredData + .where((item) => + (item['status'] ?? '').toString().toLowerCase() == + status.toLowerCase()) + .length; + } + + + Future applyFilter() async { print("Filtersss"); + /// ✅ Resolve futures FIRST + empClientId ??= await tokenService.readValue('empClientId'); + empClientBranchId ??= await tokenService.readValue('empClientBranchId'); final data = claim_Detials(); print("data -- $data"); getClaimList(); } - void reset() { + Future reset() async { setState(() { controllers.forEach((key, controller) { controller.clear(); @@ -238,41 +270,326 @@ class _ClaimsPolicieState extends State { getClaimList(); }); + /// ✅ Resolve futures FIRST + empClientId ??= await tokenService.readValue('empClientId'); + empClientBranchId ??= await tokenService.readValue('empClientBranchId'); + final data = claim_Detials(); print("restdata -- $data"); } + void exportToCsv(List> data) { + List> rows = []; + + // Header + rows.add(['Emp Name', 'Emp Code', 'Policy Type','Client Policy No','claim_no','status','claim_amount','ticket_created_date']); + + // Data rows + for (var item in data) { + rows.add([ + item['emp_name'] ?? '', + item['emp_code'] ?? '', + item['policy_type'] ?? '', + item['client_policy_no'] ?? '', + item['claim_no'] ?? '', + item['cl_type'] ?? '', + item['status'] ?? '', + item['claim_amount'] ?? '', + item['ticket_created_date'] ?? '', + ]); + } + + // Convert to CSV string + String csvData = const ListToCsvConverter().convert(rows); + + // For Web: Create download + final bytes = utf8.encode(csvData); + final blob = html.Blob([bytes]); + final url = html.Url.createObjectUrlFromBlob(blob); + final anchor = html.AnchorElement(href: url) + ..setAttribute("download", "Claims.csv") + ..click(); + html.Url.revokeObjectUrl(url); + handleExportAction(); + } + + Future handleExportAction() async { + print('handleExportAction'); + _postPreToken = await tokenService.getCurrentToken(); + final postId = await tokenService.readValue('empHrId'); + final preId = await tokenService.readValue('enrollmentEmpPrimaryId'); + var activity = "export_cddata"; + + print('postId - $postId'); + print('preId - $preId'); + print('activity - $activity'); + + try { + print('10'); + final response = await apiService.getPostLogHrActivity( + postId!, preId!, _postPreToken!, activity); + if (response['status'] == 'success') { + print('Request success'); + } else { + // ToastHelper.showWarningToast( + // context, 'Request failed with status: ${response.statusCode}'); + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + print('Exception occurred: $e'); + } + } + + void search(String query) { + print(query); + // Check if the query is empty + if (query.isEmpty) { + // If search query is empty, show all data + setState(() { + filteredData = List.from(originalData); + }); + } else { + // Filter the original data based on the search query + setState(() { + filteredData = originalData.where((row) { + // Implement your filter logic here + // For example, check if any field in the row contains the query + // Adjust this logic based on your data structure + return row['emp_name'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['emp_code'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['policy_type'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['client_policy_no'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['claim_no'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['cl_type'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['status'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['claim_amount'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['ticket_created_date'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()); + }).toList(); + }); + } + print(filteredData.length); + } + + Future _showLogoutDialog() async { + return await showDialog( + context: context, + barrierDismissible: false, + builder: (context) => AlertDialog( + title: Text("Confirm Logout"), + content: Text("Do you want to logout?"), + actions: [ + TextButton( + onPressed: () => Navigator.of(context).pop(false), + child: Text("Cancel"), + ), + TextButton( + onPressed: () => apiService.logout(), + child: Text("Logout"), + ), + ], + ), + ) ?? + false; + } + @override Widget build(BuildContext context) { - // TODO: implement build + return BaseLayout( + child: PopScope( + canPop: false, // 🚫 block default back + onPopInvoked: (didPop) async { + bool logout = await _showLogoutDialog(); + if (logout) { + await apiService.logout(); + if (!mounted) return; + Navigator.pushNamedAndRemoveUntil( + context, + 'hrLogin', + (route) => false, + ); + } + }, + child: _buildContent(context), + ), + ); + } + + Widget _buildContent(BuildContext context) { return Container( decoration: BoxDecoration( // color: Colors.red.shade50, - color: Colors.white, + // color: Colors.white, borderRadius: BorderRadius.circular(10), // 👈 set your desired radius ), padding: const EdgeInsets.all(16.0), child: Column( children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + /// 🔙 Back + Title (LEFT) + Row( + children: [ + IconButton( + onPressed: () => {}, + icon: const Icon( + Icons.arrow_back_ios, + size: 18, + color: Colors.black, + ), + padding: EdgeInsets.zero, + constraints: const BoxConstraints(), + ), + const SizedBox(width: 6), + Text( + 'Claims', + style: GoogleFonts.poppins( + fontSize: 22, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + ), + ], + ), + + /// Push right content to end + const Spacer(), + + /// 🔍 Search Box + Container( + width: 380, + height: 37, + decoration: BoxDecoration( + color: const Color(0xFFF0F0F0), + borderRadius: BorderRadius.circular(8), + ), + child: TextField( + controller: searchController, + onChanged: search, + style: GoogleFonts.poppins(fontSize: 14), + decoration: const InputDecoration( + hintText: 'Search', + prefixIcon: Icon(Icons.search, size: 18), + border: InputBorder.none, + contentPadding: + EdgeInsets.symmetric(horizontal: 12, vertical: 8), + ), + ), + ), + + const SizedBox(width: 12), + + /// ⬇️ Export Button + SizedBox( + width: 116, + height: 37, + child: ElevatedButton( + onPressed: () { + exportToCsv(filteredData); + }, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE26728), + elevation: 0, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + ), + child: Text( + 'Export', + style: GoogleFonts.poppins( + fontSize: 16, + fontWeight: FontWeight.w700, + color: Colors.white, + letterSpacing: 1, + ), + ), + ), + ), + const SizedBox(width: 12), + /// ⬇️ Add Button + SizedBox( + width: 100, + height: 37, + child: ElevatedButton( + onPressed: () { + showDialog( + context: context, + barrierDismissible: true, + builder: (_) => RaiseClaimDialog( + parentContext: context, // 👈 pass parent context + onSuccess: _loadIds, + ), + ); + }, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFF00999E), + elevation: 0, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + ), + child: Text( + 'Add', + style: GoogleFonts.poppins( + fontSize: 16, + fontWeight: FontWeight.w700, + color: Colors.white, + letterSpacing: 1, + ), + ), + ), + ), + ], + ), + SizedBox(height: 20), _buildInputFields(context), + const SizedBox(height: 10), + _buildStatusSummary(), SizedBox( height: 10, ), isLoading ? Expanded( - // color: Color(0x98FFFCE5), // Semi-transparent background - child: Center( - child: // Your GIF loader widget - Image.asset( - height: 60, - width: 60, - 'assets/nhance-loader.gif'), // Adjust path to your GIF loader - ), - ) + // color: Color(0x98FFFCE5), // Semi-transparent background + child: Center( + child: // Your GIF loader widget + Image.asset( + height: 60, + width: 60, + 'assets/nhance-loader.gif'), // Adjust path to your GIF loader + ), + ) : Expanded( - child: _buildClaimsDataTable(context), - ), + child: _buildClaimsDataTable(context), + ), // Expanded( // child: Container( // child: Column( @@ -292,32 +609,25 @@ class _ClaimsPolicieState extends State { ); } + + Widget _buildInputFields(BuildContext context) { - return Column( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - _buildName(context), - _buildEmpCode(context), - _buildFrom(context), - _buildTo(context), - ], - ), - const SizedBox( - height: 10, - ), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - _buildPolicyType(context), - _buildClaimStatus(context), - _buildClaimNumber(context), - _buildActions(context), - ], - ) - ], + return SizedBox( + height: 70, // 🔥 controls total height like image + child: Row( + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + _buildFrom(context), + const SizedBox(width: 12), + _buildTo(context), + const SizedBox(width: 12), + _buildPolicyNumber(context), + const SizedBox(width: 12), + _buildClaimStatus(context), + const SizedBox(width: 12), + _buildActions(context), + ], + ), ); } @@ -710,7 +1020,13 @@ class _ClaimsPolicieState extends State { ), Expanded( flex: 3, - child: Text(item['claim_no'] ?? '-', style: _dataBold), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text(item['claim_no'] ?? '-', style: _dataBold), + Text(item['cl_type'] ?? '-', style: _dataColorSub), + ], + ), ), Expanded( flex: 4, @@ -720,13 +1036,12 @@ class _ClaimsPolicieState extends State { mainAxisSize: MainAxisSize.min, children: [ Container( - padding: - const EdgeInsets.symmetric(horizontal: 14, vertical: 4), + padding: EdgeInsets.symmetric(horizontal: 10, vertical: 4), decoration: BoxDecoration( - color: Color(0xFF7BD9B6), - borderRadius: BorderRadius.circular(6), + color: getStatusColor(item['status'] ?? ''), + borderRadius: BorderRadius.circular(10), ), - child: Text(item['status'] ?? '-', style: _dataBold)), + child: Text(item['status'] ?? '-', style: _dataBoldStatus)), ], ), ), @@ -769,7 +1084,7 @@ class _ClaimsPolicieState extends State { clientPolicyNo: item['client_policy_no'] ?? '', claimAmount: item['claim_amount']?.toString() ?? '', claimNo: item['claim_no'] ?? '', - postToken: widget.postToken ?? '', + postToken: _postPreToken ?? '', ), ); }, @@ -800,18 +1115,70 @@ class _ClaimsPolicieState extends State { ); } + Widget _buildStatusSummary() { + final List statusMaster = + getClaimPoliciesApi['claim_status'] ?? []; + + if (statusMaster.isEmpty) return const SizedBox(); + + return SizedBox( + height: 30, + child: ListView.separated( + scrollDirection: Axis.horizontal, + itemCount: statusMaster.length, + separatorBuilder: (_, __) => const SizedBox(width: 10), + itemBuilder: (context, index) { + final statusName = + statusMaster[index]['claim_status']?.toString() ?? ''; + + final count = getStatusCount(statusName); + final color = getStatusColor(statusName); + + return Container( + padding: const EdgeInsets.symmetric(horizontal: 10, vertical: 8), + decoration: BoxDecoration( + color: color, + borderRadius: BorderRadius.circular(6), + ), + child: Text( + '$statusName - $count', + style: GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w500, + color: Colors.white, + ), + ), + ); + }, + ), + ); + } + + static final _dataBold = GoogleFonts.poppins( fontSize: 12, fontWeight: FontWeight.w400, color: Color(0xFF000000), ); + static final _dataBoldStatus = GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w400, + color: Colors.white, + ); + static final _dataSub = GoogleFonts.poppins( fontSize: 10, fontWeight: FontWeight.w300, color: Color(0xFF585757), ); + static final _dataColorSub = GoogleFonts.poppins( + fontSize: 10, + fontWeight: FontWeight.w400, + color: Color(0xFFFF731C), + ); + static const _headerStyle = TextStyle( color: Colors.white, fontWeight: FontWeight.bold, @@ -1038,149 +1405,6 @@ class _ClaimsPolicieState extends State { ); } - Widget _buildFrom(BuildContext context) { - return Container( - width: MediaQuery.of(context).size.width * 0.22, - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const Text( - "From", - style: TextStyle(fontSize: 12), - ), - const SizedBox( - height: 3, - ), - SizedBox( - height: 40, - child: TextField( - controller: controllers['from'], - readOnly: true, - onTap: () async { - FocusScope.of(context) - .requestFocus(FocusNode()); // hide keyboard - DateTime? pickedDate = await showDatePicker( - context: context, - initialDate: DateTime.now(), - firstDate: DateTime(2000), - lastDate: DateTime(2100), - ); - - if (pickedDate != null) { - String formattedDate = - "${pickedDate.day.toString().padLeft(2, '0')}-${pickedDate.month.toString().padLeft(2, '0')}-${pickedDate.year}"; - - print("FomatedFromDAta - $formattedDate"); - setState(() { - controllers['from']?.text = formattedDate; - }); - } - }, - style: const TextStyle( - fontSize: 12, - ), - decoration: InputDecoration( - floatingLabelBehavior: FloatingLabelBehavior.never, - - hintText: 'Select', - filled: true, - fillColor: Color(0xFFD5F5F6), - - border: OutlineInputBorder( - borderSide: BorderSide(color: Colors.transparent), - borderRadius: BorderRadius.circular(8.0), - ), - enabledBorder: OutlineInputBorder( - borderSide: BorderSide(color: Colors.transparent), - borderRadius: BorderRadius.circular(8.0), - ), - focusedBorder: OutlineInputBorder( - borderSide: BorderSide(color: Colors.teal, width: 2.0), - borderRadius: BorderRadius.circular(8.0), - ), - // contentPadding: EdgeInsets.symmetric(horizontal: 12, vertical: 10), - contentPadding: EdgeInsets.fromLTRB(12, 20, 12, 10), - suffixIcon: const Icon(Icons.calendar_today, size: 16), - ), - ), - ), - ], - ), - ); - } - - Widget _buildTo(BuildContext context) { - return Container( - width: MediaQuery.of(context).size.width * 0.22, - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const Text( - "To", - style: TextStyle(fontSize: 12), - ), - const SizedBox( - height: 3, - ), - SizedBox( - height: 40, - child: TextField( - controller: controllers['to'], - readOnly: true, - onTap: () async { - FocusScope.of(context) - .requestFocus(FocusNode()); // hide keyboard - DateTime? pickedDate = await showDatePicker( - context: context, - initialDate: DateTime.now(), - firstDate: DateTime(2000), - lastDate: DateTime(2100), - ); - - if (pickedDate != null) { - String formattedDate = - "${pickedDate.day.toString().padLeft(2, '0')}-${pickedDate.month.toString().padLeft(2, '0')}-${pickedDate.year}"; - - print("FomatedFromDAta - $formattedDate"); - setState(() { - controllers['to']?.text = formattedDate; - }); - } - }, - style: const TextStyle( - fontSize: 12, - ), - decoration: InputDecoration( - floatingLabelBehavior: FloatingLabelBehavior.never, - - hintText: 'Select', - - filled: true, - fillColor: Color(0xFFD5F5F6), - - border: OutlineInputBorder( - borderSide: BorderSide(color: Colors.transparent), - borderRadius: BorderRadius.circular(8.0), - ), - enabledBorder: OutlineInputBorder( - borderSide: BorderSide(color: Colors.transparent), - borderRadius: BorderRadius.circular(8.0), - ), - focusedBorder: OutlineInputBorder( - borderSide: BorderSide(color: Colors.teal, width: 2.0), - borderRadius: BorderRadius.circular(8.0), - ), - // contentPadding: EdgeInsets.symmetric(horizontal: 12, vertical: 10), - contentPadding: EdgeInsets.fromLTRB(12, 20, 12, 10), - suffixIcon: const Icon(Icons.calendar_today, size: 16), - ), - ), - ), - ], - ), - ); - } - Widget _buildPolicyType(BuildContext context) { List ticketTypeList = getClaimPoliciesApi['ticket_type'] ?? []; @@ -1295,6 +1519,175 @@ class _ClaimsPolicieState extends State { ); } + Widget _buildFrom(BuildContext context) { + return Container( + width: MediaQuery.of(context).size.width * 0.15, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text( + "From", + style: TextStyle(fontSize: 12), + ), + const SizedBox( + height: 3, + ), + SizedBox( + height: 40, + child: Container( + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(8), + boxShadow: [ + BoxShadow( + color: Colors.black.withOpacity(0.08), // soft shadow + blurRadius: 8, + offset: const Offset(0, 2), // downward shadow + ), + ], + ), + child: TextField( + controller: controllers['from'], + readOnly: true, + onTap: () async { + FocusScope.of(context) + .requestFocus(FocusNode()); // hide keyboard + DateTime? pickedDate = await showDatePicker( + context: context, + initialDate: DateTime.now(), + firstDate: DateTime(2000), + lastDate: DateTime(2100), + ); + + if (pickedDate != null) { + String formattedDate = + "${pickedDate.day.toString().padLeft(2, '0')}-${pickedDate.month.toString().padLeft(2, '0')}-${pickedDate.year}"; + + print("FomatedFromDAta - $formattedDate"); + setState(() { + controllers['from']?.text = formattedDate; + }); + } + }, + style: const TextStyle( + fontSize: 12, + ), + decoration: InputDecoration( + floatingLabelBehavior: FloatingLabelBehavior.never, + + hintText: 'Select', + filled: true, + fillColor: Colors.white, + + border: OutlineInputBorder( + borderSide: BorderSide(color: Colors.transparent), + borderRadius: BorderRadius.circular(8.0), + ), + enabledBorder: OutlineInputBorder( + borderSide: BorderSide(color: Colors.transparent), + borderRadius: BorderRadius.circular(8.0), + ), + focusedBorder: OutlineInputBorder( + borderSide: BorderSide(color: Colors.teal, width: 2.0), + borderRadius: BorderRadius.circular(8.0), + ), + // contentPadding: EdgeInsets.symmetric(horizontal: 12, vertical: 10), + contentPadding: EdgeInsets.fromLTRB(12, 20, 12, 10), + suffixIcon: const Icon(Icons.calendar_today, size: 16), + ), + ), + ) + ), + ], + ), + ); + } + + Widget _buildTo(BuildContext context) { + return Container( + width: MediaQuery.of(context).size.width * 0.15, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text( + "To", + style: TextStyle(fontSize: 12), + ), + const SizedBox( + height: 3, + ), + SizedBox( + height: 40, + child: Container( + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(8), + boxShadow: [ + BoxShadow( + color: Colors.black.withOpacity(0.08), // soft shadow + blurRadius: 8, + offset: const Offset(0, 2), // downward shadow + ), + ], + ), + child: TextField( + controller: controllers['to'], + readOnly: true, + onTap: () async { + FocusScope.of(context) + .requestFocus(FocusNode()); // hide keyboard + DateTime? pickedDate = await showDatePicker( + context: context, + initialDate: DateTime.now(), + firstDate: DateTime(2000), + lastDate: DateTime(2100), + ); + + if (pickedDate != null) { + String formattedDate = + "${pickedDate.day.toString().padLeft(2, '0')}-${pickedDate.month.toString().padLeft(2, '0')}-${pickedDate.year}"; + + print("FomatedFromDAta - $formattedDate"); + setState(() { + controllers['to']?.text = formattedDate; + }); + } + }, + style: const TextStyle( + fontSize: 12, + ), + decoration: InputDecoration( + floatingLabelBehavior: FloatingLabelBehavior.never, + + hintText: 'Select', + + filled: true, + fillColor: Colors.white, + + border: OutlineInputBorder( + borderSide: BorderSide(color: Colors.transparent), + borderRadius: BorderRadius.circular(8.0), + ), + enabledBorder: OutlineInputBorder( + borderSide: BorderSide(color: Colors.transparent), + borderRadius: BorderRadius.circular(8.0), + ), + focusedBorder: OutlineInputBorder( + borderSide: BorderSide(color: Colors.teal, width: 2.0), + borderRadius: BorderRadius.circular(8.0), + ), + // contentPadding: EdgeInsets.symmetric(horizontal: 12, vertical: 10), + contentPadding: EdgeInsets.fromLTRB(12, 20, 12, 10), + suffixIcon: const Icon(Icons.calendar_today, size: 16), + ), + ), + ) + ), + ], + ), + ); + } + Widget _buildClaimStatus(BuildContext context) { List claimStatusList = getClaimPoliciesApi['claim_status'] ?? []; @@ -1332,7 +1725,7 @@ class _ClaimsPolicieState extends State { } return Container( - width: MediaQuery.of(context).size.width * 0.22, + width: MediaQuery.of(context).size.width * 0.15, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -1345,6 +1738,18 @@ class _ClaimsPolicieState extends State { ), SizedBox( height: 40, + child: Container( + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(8), + boxShadow: [ + BoxShadow( + color: Colors.black.withOpacity(0.08), // soft shadow + blurRadius: 8, + offset: const Offset(0, 2), // downward shadow + ), + ], + ), child: DropdownSearch( selectedItem: selectedClaimStatusName, items: (String? filter, _) { @@ -1374,7 +1779,7 @@ class _ClaimsPolicieState extends State { hintText: "Select Policy Type", hintStyle: TextStyle(fontSize: 12), filled: true, - fillColor: Color(0xFFD5F5F6), + fillColor: Colors.white, border: OutlineInputBorder( borderRadius: BorderRadius.circular(8), borderSide: BorderSide.none, @@ -1408,20 +1813,21 @@ class _ClaimsPolicieState extends State { ), ), ), + ) ), ], ), ); } - Widget _buildClaimNumber(BuildContext context) { + Widget _buildPolicyNumber(BuildContext context) { return Container( - width: MediaQuery.of(context).size.width * 0.22, + width: MediaQuery.of(context).size.width * 0.15, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ const Text( - "Claim Number", + "Policy Number", style: TextStyle(fontSize: 12), ), const SizedBox( @@ -1429,18 +1835,30 @@ class _ClaimsPolicieState extends State { ), SizedBox( height: 40, - child: TextField( - controller: controllers['claimNum'], + child: Container( + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(8), + boxShadow: [ + BoxShadow( + color: Colors.black.withOpacity(0.08), // soft shadow + blurRadius: 8, + offset: const Offset(0, 2), // downward shadow + ), + ], + ), + child: TextField( + controller: controllers['policyNumber'], style: const TextStyle( fontSize: 12, ), decoration: InputDecoration( floatingLabelBehavior: FloatingLabelBehavior.never, - hintText: 'Enter Claim Number', + hintText: 'Policy Number', filled: true, - fillColor: Color(0xFFD5F5F6), + fillColor: Colors.white, border: OutlineInputBorder( borderSide: BorderSide(color: Colors.transparent), @@ -1458,6 +1876,7 @@ class _ClaimsPolicieState extends State { contentPadding: EdgeInsets.fromLTRB(12, 20, 12, 10), ), ), + ) ), ], ), @@ -1465,64 +1884,66 @@ class _ClaimsPolicieState extends State { } Widget _buildActions(BuildContext context) { - return Container( - width: MediaQuery.of(context).size.width * 0.22, - height: 50, - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.end, + return SizedBox( + width: 100, // enough for 2 icons + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.start, children: [ - Expanded( - child: ElevatedButton.icon( - onPressed: () { - applyFilter(); - }, - icon: const Icon(Icons.filter_alt_outlined, - color: Colors.white, size: 18), - label: const Text( - 'Filter', - style: TextStyle( - color: Colors.white, - fontSize: 15, - fontWeight: FontWeight.w500), - ), - style: ElevatedButton.styleFrom( - backgroundColor: Color(0xFFE26728), - padding: EdgeInsets.symmetric(horizontal: 4, vertical: 14), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(8), - ), - ), - ), + /// 🔹 Empty label space (matches "From / To / Policy Number") + const SizedBox( + height: 20, // same height as label text + spacing ), + + /// 🔹 Icon row aligned with input fields SizedBox( - width: 10, - ), - Expanded( - child: ElevatedButton.icon( - onPressed: () { - reset(); - }, - icon: const Icon(Icons.refresh_outlined, - color: Colors.white, size: 18), - label: const Text( - 'Reset', - style: TextStyle( - color: Colors.white, - fontSize: 15, - fontWeight: FontWeight.w500), - ), - style: ElevatedButton.styleFrom( - backgroundColor: Color(0xFFE26728), - padding: EdgeInsets.symmetric(horizontal: 4, vertical: 14), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(8), + height: 40, // EXACT same height as input fields + child: Row( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + _IconActionButton( + icon: Icons.filter_alt_outlined, + onTap: applyFilter, ), - ), + const SizedBox(width: 12), + _IconActionButton( + icon: Icons.refresh_outlined, + onTap: reset, + ), + ], ), ), ], ), ); } + +} + +// ================= ICON BUTTON ================= +class _IconActionButton extends StatelessWidget { + final IconData icon; + final VoidCallback onTap; + + const _IconActionButton({ + required this.icon, + required this.onTap, + }); + + @override + Widget build(BuildContext context) { + return SizedBox( + width: 40, + height: 40, + child: Material( + color: const Color(0xFF00999E), + borderRadius: BorderRadius.circular(10), + child: InkWell( + borderRadius: BorderRadius.circular(10), + onTap: onTap, + child: Icon(icon, color: Colors.white, size: 20), + ), + ), + ); + } } diff --git a/lib/presentation/claimshistory.dart b/lib/presentation/claimshistory.dart new file mode 100755 index 0000000..6038e09 --- /dev/null +++ b/lib/presentation/claimshistory.dart @@ -0,0 +1,1590 @@ +import 'dart:convert'; + +import 'package:flutter/foundation.dart'; +import 'package:flutter/material.dart'; +import 'package:google_fonts/google_fonts.dart'; +import 'package:http/http.dart' as http; +import 'package:nhancepolicy/responsive.dart'; +import 'package:nhancepolicy/service/api_service.dart'; +import 'package:nhancepolicy/service/file_upload_service.dart'; +import 'package:nhancepolicy/service/multi_file_upload_widget.dart'; +import 'package:url_launcher/url_launcher.dart'; +import 'package:file_picker/file_picker.dart'; +import 'package:pdf/widgets.dart' as pw; +import '../../../config/environment.dart'; +import '../../../customAppBar/toastHelper.dart'; + +class ClaimHistoryPopup extends StatefulWidget { + final String ticket_id; + final String empName; + final String empCode; + final String policyType; + final String? clientPolicyNo; + final String? claimAmount; + final String? claimNo; + final String postToken; + + const ClaimHistoryPopup({ + Key? key, + required this.ticket_id, + required this.empName, + required this.empCode, + required this.policyType, + this.clientPolicyNo, + this.claimAmount, + this.claimNo, + required this.postToken, + }) : super(key: key); + + @override + State createState() => _ClaimHistoryPopupState(); +} + +class _ClaimHistoryPopupState extends State + with TickerProviderStateMixin { + late ApiService apiService; + List> getClaimsHistoryList = []; + List stepKeys = []; + late Map stepMap; + bool isLoading = false; + dynamic _token; + + String? selectedFileNames; + // html.File? uploadedFile; + // List uploadedFiles = []; + List uploadedFiles = []; + final FileUploadService fileService = FileUploadService(); + + List claimFiles = []; + List> requiredDocsList = []; + List> requiredDocsListBackup = []; + bool isSubmitting = false; + + bool isActionFreeze = false; + + // IR Docs state + bool showIRDocs = false; + // final List> irDocList = [ + // {"title": "Hospital Bill", "checked": false}, + // {"title": "Discharge Summary", "checked": false}, + // {"title": "Prescription", "checked": false}, + // ]; + final Map _assignedFiles = {}; + + @override + void initState() { + super.initState(); + apiService = ApiService(context); + + // debug prints kept + print("CLAIMHISTORY"); + print(widget.claimAmount); + print(widget.claimNo); + print(widget.clientPolicyNo); + print(widget.empCode); + print(widget.policyType); + print(widget.ticket_id); + getClaimsHistoryDetails(); + } + + @override + void dispose() { + super.dispose(); + } + + // ------------------------- + // File pick (web + mobile) + // ------------------------- + Future pickFile() async { + final result = await FilePicker.platform + .pickFiles(withData: true, allowMultiple: false); + if (result != null && result.files.isNotEmpty) { + return result.files.first; + } + return null; + } + + // ------------------------- + // Assign same picked file to all checked docs + // ------------------------- + Future handleUploadForSelected() async { + final checked = + requiredDocsList.where((d) => d['document_received'] == true).toList(); + if (checked.isEmpty) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text("Please select at least one document"))); + return; + } + + final picked = await pickFile(); + if (picked == null) return; + + setState(() { + for (var d in checked) { + final title = d['document_name'] as String; + _assignedFiles[title] = picked; + } + }); + } + + // ------------------------- + // Remove assignment + // ------------------------- + void removeAssignedFile(String title) { + setState(() { + _assignedFiles[title] = null; + }); + } + + // ------------------------- + // Submit IR Docs (placeholder) + // Replace with real API upload logic + // ------------------------- + Future submitIRDocs() async { + setState(() => isSubmitting = true); // 🔥 start loader + + try { + print('enter'); + + // STEP 1: Must select at least one document type + final selectedDocs = requiredDocsList + .where((d) => d['document_received'] == true) + .toList(); + if (selectedDocs.isEmpty) { + ToastHelper.showErrorToast( + context, "Please select at least one IR document type"); + return; + } + + // STEP 2: Must upload at least one file + if (!MultiFileUploadWidget.hasFiles || fileService.files.isEmpty) { + ToastHelper.showErrorToast( + context, "Please upload at least one document"); + return; + } + + // STEP 3: All uploaded files must have a label + for (final uf in fileService.files) { + if ((uf.label ?? "").trim().isEmpty) { + ToastHelper.showErrorToast( + context, "Please enter name for all uploaded documents"); + return; + } + } + + // STEP 4: Prepare multipart request + final url = Uri.parse("${Environment.apiUrlPost}uploadIRDocs"); + final request = http.MultipartRequest('POST', url); + + request.headers['Authorization'] = "Bearer ${widget.postToken}"; + request.headers['APP-SIGNATURE'] = + 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y'; + + final requiredDocsPayload = { + "is_action_freeze": isActionFreeze, + "docs": requiredDocsList.map((d) { + return { + "document_name": d["document_name"], + "document_received": d["document_received"], + }; + }).toList(), + }; + + request.fields["required_docs"] = jsonEncode(requiredDocsPayload); + + // Add mapped fields if required + request.fields['ticket_id'] = widget.ticket_id; + + // STEP 5: Convert image → PDF and attach files + for (var uf in fileService.files) { + final pf = uf.file; + final ext = pf.extension?.toLowerCase() ?? ""; + + Uint8List fileBytes = pf.bytes!; + + // if (['jpg', 'jpeg', 'png', 'heic'].contains(ext)) { + // final pdf = pw.Document(); + // final image = pw.MemoryImage(fileBytes); + // + // pdf.addPage( + // pw.Page( + // build: (context) => pw.Center(child: pw.Image(image)), + // ), + // ); + // + // fileBytes = await pdf.save(); + // + // final pdfName = pf.name.replaceAll(RegExp(r'\.\w+$'), '.pdf'); + // + // request.files.add(http.MultipartFile.fromBytes( + // "claim_docs[]", + // fileBytes, + // filename: pdfName, + // )); + // } else { + request.files.add(http.MultipartFile.fromBytes( + "claim_docs[]", + fileBytes, + filename: pf.name, + )); + // } + } + + // STEP 6: Add names for these IR docs + final labels = fileService.files.map((f) => f.label.trim()).toList(); + request.fields['claim_doc_names'] = jsonEncode(labels); + + // Debug + print( + "Files uploaded: ${fileService.files.map((e) => e.file.name).toList()}"); + print("Labels: $labels"); + + // STEP 7: Send the request + final response = await request.send(); + final responseBody = await response.stream.bytesToString(); + final decoded = jsonDecode(responseBody); + + if (decoded["status"] == true) { + ToastHelper.showSuccessToast(context, decoded["message"]); + + _resetIRDocs(); + await getClaimsHistoryDetails(); // <--- refresh checkbox state from API + setState(() => showIRDocs = false); + } else { + ToastHelper.showErrorToast( + context, "Upload failed: ${decoded['message']}"); + } + } catch (e) { + ToastHelper.showErrorToast(context, "Upload failed"); + } finally { + setState(() => isSubmitting = false); // 🔥 stop loader + } + } + + // ------------------------- + // Existing API call (unchanged) + // ------------------------- + Future getClaimsHistoryDetails() async { + setState(() { + isLoading = true; + }); + try { + final response = await apiService.getClaimsHistoryToApi( + widget.ticket_id, widget.postToken); + if (response['status'] == 'success') { + setState(() { + isLoading = false; + final claimsDocs = response['data']['claim_files']; + claimFiles = List>.from(claimsDocs); + + getClaimsHistoryList = [ + Map.from(response['data']['ticket_data']) + ]; + stepMap = getClaimsHistoryList[0]; + stepKeys = stepMap.keys.toList(); + + final isFreeze = + response['data']['required_docs']['is_action_freeze'] ?? false; + setState(() { + isActionFreeze = isFreeze; + }); + final requiredDocs = response['data']['required_docs']['docs']; + requiredDocsList = List>.from(requiredDocs); + +// ⭐ Make a backup copy to restore later + requiredDocsListBackup = requiredDocsList + .map((doc) => { + "document_name": doc["document_name"], + "document_received": doc["document_received"], + }) + .toList(); + + print(isActionFreeze); + print('requiredDocsList $requiredDocsList'); + + for (var d in requiredDocsList) { + _assignedFiles[d['document_name']] = null; + } + }); + } else { + setState(() => isLoading = false); + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + setState(() => isLoading = false); + print('Exception occurred: $e'); + } + } + + Future _launchURL(String url) async { + final Uri uri = Uri.parse(url); + try { + await launchUrl(uri, mode: LaunchMode.externalApplication); + } catch (e) { + print('Could not launch URL: $e'); + } + } + + void _resetIRDocs() { + // Restore checkbox values from API backup + requiredDocsList = requiredDocsListBackup + .map((doc) => { + "document_name": doc["document_name"], + "document_received": doc["document_received"], + }) + .toList(); + + // Clear assigned uploaded files + _assignedFiles.updateAll((key, value) => null); + + // Reset multi-file upload widget service + fileService.clearAll(); + MultiFileUploadWidget.hasFiles = false; + + setState(() {}); + } + + // ------------------------- + // Build + // ------------------------- + @override + Widget build(BuildContext context) { + // responsive decisions + final mediaW = MediaQuery.of(context).size.width; + final isMobile = mediaW < 600; + final panelWidth = + isMobile ? MediaQuery.of(context).size.width * 0.95 : 400.0; + + final keyValueWidgets = [ + _buildKeyValue( + 'Name', '${widget.empName ?? ''} (${widget.empCode ?? ''})'), + SizedBox( + width: Responsive.isDesktop(context) ? 16 : 0, + height: Responsive.isDesktop(context) ? 0 : 8), + _buildKeyValue('Policy Name', + '${widget.policyType ?? ''} - ${widget.clientPolicyNo ?? ''}'), + ]; + + final keyValueWidgetRow = [ + _buildKeyValue( + 'Claims Amount', + widget.claimAmount == null || widget.claimAmount!.trim().isEmpty + ? 'N/A' + : '₹${widget.claimAmount}'), + SizedBox( + width: Responsive.isDesktop(context) ? 16 : 0, + height: Responsive.isDesktop(context) ? 0 : 8), + _buildKeyValue( + 'Claims Number', + widget.claimNo == null || widget.claimNo!.trim().isEmpty + ? 'N/A' + : widget.claimNo!), + ]; + + return PopScope( + canPop: false, + onPopInvokedWithResult: (didPop, result) { + if (didPop) return; + Navigator.pop(context); + }, + child: Container( + // keep popup sized; adjust if required + constraints: BoxConstraints(maxWidth: 1080, maxHeight: 820), + padding: EdgeInsets.all(20), + decoration: BoxDecoration( + color: Colors.white, borderRadius: BorderRadius.circular(12)), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // Header row (keeps IR docs icon + close inside popup header) + Row( + children: [ + Expanded( + child: Text( + 'Claims History', + style: GoogleFonts.poppins( + fontSize: Responsive.isDesktop(context) ? 20 : 16, + fontWeight: FontWeight.w500, + color: Color(0xFF101010), + ), + ), + ), + + // IR Docs icon + if (!isActionFreeze && requiredDocsList.isNotEmpty) + MouseRegion( + cursor: SystemMouseCursors.click, + child: GestureDetector( + onTap: () { + setState(() { + showIRDocs = true; + }); + }, + child: Container( + height: 34, + width: 34, + margin: EdgeInsets.only(right: 8), + decoration: BoxDecoration( + color: Colors.white, + border: Border.all(color: Color(0xFFBCBCBC)), + borderRadius: BorderRadius.circular(6), + ), + child: Icon(Icons.folder_open, + size: 20, color: Color(0xFF00A5A8)), + ), + ), + ), + + // Close popup + MouseRegion( + cursor: SystemMouseCursors.click, + child: GestureDetector( + onTap: () => Navigator.pop(context), + child: Container( + height: 30, + width: 30, + decoration: BoxDecoration( + color: Colors.white, + border: Border.all(color: Color(0xFFBCBCBC)), + borderRadius: BorderRadius.circular(6), + ), + child: + Icon(Icons.close, size: 25, color: Color(0xFFBCBCBC)), + ), + ), + ) + ], + ), + + SizedBox(height: Responsive.isDesktop(context) ? 10 : 6), + + // BODY: for mobile we will show either the Claim content or full IR Docs content (switch) + // for desktop we show Row with left content and optional right panel + // Expanded( child: isMobile ? AnimatedSwitcher( duration: Duration(milliseconds: 300), transitionBuilder: (child, animation) { final offsetAnimation = Tween( begin: Offset(0, 1), end: Offset(0, 0)) .animate(animation); return SlideTransition( position: offsetAnimation, child: child); }, child: showIRDocs ? _buildMobileFullIrDocs(panelWidth, key: ValueKey('mobile_ir')) : _buildMainLeftContent(key: ValueKey('main_left')), ) : Row( crossAxisAlignment: CrossAxisAlignment.start, children: [ // LEFT: main content - scrollable Expanded(child: _buildMainLeftContent()), // RIGHT: IR panel - desktop inline (only visible on wide screens) AnimatedContainer( duration: Duration(milliseconds: 300), curve: Curves.easeInOut, width: showIRDocs ? panelWidth : 0, child: showIRDocs ? _buildIrDocsPanel(panelWidth, isMobile: false) : const SizedBox.shrink(), ), ], ), ), + Expanded( + child: isMobile + ? AnimatedSwitcher( + duration: Duration(milliseconds: 300), + transitionBuilder: (child, animation) { + final offsetAnimation = Tween( + begin: Offset(0, 1), end: Offset(0, 0)) + .animate(animation); + return SlideTransition( + position: offsetAnimation, child: child); + }, + child: showIRDocs + ? buildIRDocsContent( + isDesktop: false, + key: ValueKey('mobile_ir'), + ) + : _buildMainLeftContent(key: ValueKey('main_left'),showIRDocs: showIRDocs), + ) + : Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // LEFT: main content - scrollable + Expanded(child: _buildMainLeftContent(showIRDocs: showIRDocs)), + + // RIGHT: IR panel - desktop inline (only visible on wide screens) + AnimatedContainer( + duration: Duration(milliseconds: 300), + curve: Curves.easeInOut, + width: showIRDocs ? panelWidth : 0, + child: showIRDocs + ? buildIRDocsContent( + isDesktop: true, + panelWidth: panelWidth, + key: ValueKey('desktop_ir'), + ) + : SizedBox.shrink(), + ), + ], + ), + ), + ], + ), + ), + ); + } + + // ------------------------- + // Main left content extracted to keep code tidy + // ------------------------- + Widget _buildMainLeftContent({Key? key,required bool showIRDocs,}) { + return SingleChildScrollView( + key: key, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // Claim Details card (unchanged) + Container( + margin: const EdgeInsets.symmetric(horizontal: 16, vertical: 6), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(12), + boxShadow: [ + BoxShadow( + color: const Color(0xFFEBEBEB), + blurRadius: 14, + spreadRadius: 2, + offset: const Offset(0, 1), + ), + ], + ), + padding: const EdgeInsets.all(16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + /// ----------------------------------------- + /// NAME + POLICY NAME SECTION + /// ----------------------------------------- + Responsive.isDesktop(context) + ? Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Expanded( + child: _buildKeyValue( + 'Name', + '${widget.empName ?? ''} (${widget.empCode ?? ''})', + ), + ), + const SizedBox(width: 24), + Expanded( + child: _buildKeyValue( + 'Policy Name', + widget.clientPolicyNo == null || + widget.clientPolicyNo!.trim().isEmpty + ? (widget.policyType ?? '') + : '${widget.policyType ?? ''} - ${widget.clientPolicyNo}', + ), + ), + + // Expanded( + // child: _buildKeyValue( + // 'Policy Name', + // '${widget.policyType ?? ''} - ${widget.clientPolicyNo ?? ''}', + // ), + // ), + ], + ) + : SizedBox( + width: double.infinity, // ⬅️ forces full width + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + _buildKeyValue( + 'Name', + '${widget.empName ?? ''} (${widget.empCode ?? ''})', + ), + const SizedBox(height: 12), + _buildKeyValue( + 'Policy Name', + '${widget.policyType ?? ''} - ${widget.clientPolicyNo ?? ''}', + ), + ], + ), + ), + + const SizedBox(height: 24), + + /// ----------------------------------------- + /// CLAIM AMOUNT + CLAIM NUMBER SECTION + /// ----------------------------------------- + Responsive.isDesktop(context) + ? Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Expanded( + child: _buildKeyValue( + 'Claims Amount', + (widget.claimAmount == null || + widget.claimAmount!.trim().isEmpty) + ? 'N/A' + : '₹${widget.claimAmount}', + ), + ), + const SizedBox(width: 24), + Expanded( + child: _buildKeyValue( + 'Claims Number', + (widget.claimNo == null || + widget.claimNo!.trim().isEmpty) + ? 'N/A' + : widget.claimNo!, + ), + ), + ], + ) + : Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + _buildKeyValue( + 'Claims Amount', + (widget.claimAmount == null || + widget.claimAmount!.trim().isEmpty) + ? 'N/A' + : '₹${widget.claimAmount}', + ), + const SizedBox(height: 8), + _buildKeyValue( + 'Claims Number', + (widget.claimNo == null || + widget.claimNo!.trim().isEmpty) + ? 'N/A' + : widget.claimNo!, + ), + ], + ), + ], + ), + ), + + SizedBox(height: 10), + + // Loading or step content + isLoading + ? Container( + child: Center( + child: Image.asset( + height: 60, width: 60, 'assets/nhance-loader.gif'))) + : Container( + child: getClaimsHistoryList.isNotEmpty + ? Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: List.generate(stepKeys.length, (index) { + String stepTitleKey = stepKeys[index]; + Map stepData = + stepMap[stepTitleKey]; + Widget content = _getStepContentFromApi(stepData); + return _buildStep( + stepNumber: index + 1, + title: + _getStepTitleFromApi(stepTitleKey, stepData), + content: content, + isLast: index == stepKeys.length - 1, + ); + }), + ) + : Container( + height: MediaQuery.of(context).size.height * 0.4, + child: Center( + child: Column( + children: [ + Image.asset('assets/searchData.jpg', + width: 200, height: 200, fit: BoxFit.cover), + Text('No Claims History', + style: TextStyle( + fontWeight: FontWeight.w500, + fontSize: 15)), + ], + ), + ), + ), + ), + + // Claim files list + // Container( + // margin: const EdgeInsets.symmetric(horizontal: 16, vertical: 20), + // child: claimFiles.isEmpty + // ? const Center(child: Text("No files available")) + // : SizedBox( + // height: 300, + // child: ListView.builder( + // itemCount: claimFiles.length, + // itemBuilder: (context, index) { + // final file = claimFiles[index]; + // return Card( + // child: ListTile( + // leading: const Icon(Icons.insert_drive_file, + // color: Colors.blue), + // title: Text(file['claim_file_name']), + // trailing: + // const Icon(Icons.download, color: Colors.green), + // onTap: () => _launchURL(file['url']), + // ), + // ); + // }, + // ), + // ), + // ), + Container( + margin: const EdgeInsets.symmetric(horizontal: 16, vertical: 20), + // padding: const EdgeInsets.all(16), + // decoration: BoxDecoration( + // color: Colors.white, + // borderRadius: BorderRadius.circular(6), + // boxShadow: [ + // BoxShadow( + // color: Colors.black.withOpacity(0.08), + // blurRadius: 6, + // offset: const Offset(0, 2), + // ), + // ], + // ), + child: claimFiles.isEmpty + ? const Center(child: Text("No files available")) + : Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const Text( + 'Submitted Documents', + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.w600, + ), + ), + const SizedBox(height: 12), + GridView.builder( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + itemCount: claimFiles.length, + gridDelegate: + SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: showIRDocs ? 2 : 3, // ✅ desktop: 3 per row + crossAxisSpacing: 16, + mainAxisSpacing: 16, + childAspectRatio: 5.9, // controls height + ), + itemBuilder: (context, index) { + final file = claimFiles[index]; + + return InkWell( + borderRadius: BorderRadius.circular(8), + onTap: () => _launchURL(file['url']), + child: Container( + padding: const EdgeInsets.symmetric( + horizontal: 12, + vertical: 10, + ), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(8), + boxShadow: [ + BoxShadow( + color: Colors.black.withOpacity(0.08), + blurRadius: 6, + offset: const Offset(0, 2), + ), + ], + ), + child: Row( + children: [ + /// FILE ICON + Container( + child: const Icon( + Icons.insert_drive_file, + color: Color(0xFF3B5BDB), + size: 25, + ), + ), + + const SizedBox(width: 10), + + /// FILE NAME + Expanded( + child: Text( + file['claim_file_name'] ?? '', + maxLines: 1, + overflow: TextOverflow.ellipsis, + style: const TextStyle( + fontSize: 13, + fontWeight: FontWeight.w500, + ), + ), + ), + + const SizedBox(width: 8), + + /// DOWNLOAD ICON + InkWell( + borderRadius: BorderRadius.circular(6), + onTap: () => _launchURL(file['url']), + child: Container( + padding: const EdgeInsets.all(6), + decoration: BoxDecoration( + color: const Color(0xFFE6E6E6), + borderRadius: BorderRadius.circular(6), + ), + child: const Icon( + Icons.download, + size: 18, + color: Colors.black, + ), + ), + ), + ], + ), + ), + ); + }, + ), + ], + ), + ) + ], + ), + ); + } + + Widget buildIRDocsContent({ + required bool isDesktop, + Key? key, + double? panelWidth, + }) { + return Container( + key: key ?? ValueKey("ir_docs_unified"), + width: isDesktop ? panelWidth ?? 320 : double.infinity, + height: double.infinity, + padding: EdgeInsets.all(12), + decoration: BoxDecoration( + color: Colors.white, + border: Border( + left: BorderSide( + color: Responsive.isDesktop(context) + ? Colors.grey.shade300 + : Colors.transparent, + width: Responsive.isDesktop(context) ? 1 : 0)), + ), + // color: Colors.white, + child: SafeArea( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // ----------------------------- + // HEADER (same for mobile + web) + // ----------------------------- + Row( + children: [ + Expanded( + child: Text( + "Additional Documents", + style: GoogleFonts.poppins( + fontSize: isDesktop ? 16 : 18, + fontWeight: FontWeight.w600, + ), + ), + ), + IconButton( + icon: Icon(Icons.close), + onPressed: () { + _resetIRDocs(); + setState(() => showIRDocs = false); + }, + ), + ], + ), + + // SizedBox(height: isDesktop ? 8 : 8), + // + // Text( + // "Select documents, click Upload to assign the same file to all selected items.", + // style: GoogleFonts.poppins( + // fontSize: isDesktop ? 12 : 13, + // color: Colors.grey.shade700, + // ), + // ), + + SizedBox(height: 12), + + // ----------------------------- + // SCROLLABLE BODY + // ----------------------------- + Expanded( + child: SingleChildScrollView( + child: Column( + children: [ + // Checkbox list (same UI for both) + GridView.builder( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + gridDelegate: + const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 2, // ✅ two per row + crossAxisSpacing: 24, + mainAxisSpacing: 8, + childAspectRatio: + 5, // ✅ controls height (adjust if needed) + ), + itemCount: requiredDocsList.length, + itemBuilder: (context, index) { + final d = requiredDocsList[index]; + final title = d["document_name"] as String; + + return Row( + children: [ + Checkbox( + value: d["document_received"] as bool, + onChanged: (v) { + setState(() { + d["document_received"] = v; + }); + }, + ), + Expanded( + child: Text( + title, + style: const TextStyle(fontSize: 14), + ), + ), + ], + ); + }, + ), + // ...requiredDocsList.map((d) { + // final title = d["document_name"] as String; + // return CheckboxListTile( + // value: d["document_received"] as bool, + // onChanged: (v) => + // setState(() => d["document_received"] = v), + // title: Text(title), + // controlAffinity: isDesktop + // ? ListTileControlAffinity.leading + // : ListTileControlAffinity.trailing, + // contentPadding: EdgeInsets.symmetric(horizontal: 8), + // ); + // }).toList(), + + SizedBox(height: 12), + + // Multi uploader (same UI) + Padding( + padding: const EdgeInsets.all(16.0), + child: const MultiFileUploadWidget(forceMobile: true), + ), + + SizedBox(height: 12), + + // Assigned file preview + ..._assignedFiles.entries + .where((e) => e.value != null) + .map((e) { + final title = e.key; + final file = e.value!; + return Card( + margin: + EdgeInsets.symmetric(horizontal: 8, vertical: 6), + child: ListTile( + title: Text(title), + subtitle: Text( + file.name, + maxLines: 1, + overflow: TextOverflow.ellipsis, + ), + trailing: IconButton( + icon: Icon(Icons.cancel, color: Colors.red), + onPressed: () => removeAssignedFile(title), + ), + ), + ); + }).toList(), + + SizedBox(height: 16), + ], + ), + ), + ), + + SizedBox(height: 8), + + // ----------------------------- + // SUBMIT BUTTON + // ----------------------------- + ElevatedButton( + onPressed: () => submitIRDocs(), + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE26728), + minimumSize: Size(double.infinity, 50), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(5), + ), + ), + child: isSubmitting + ? SizedBox( + height: 22, + width: 22, + child: CircularProgressIndicator( + strokeWidth: 2, + color: Colors.white, + ), + ) + : Text( + 'Submit IR Docs', + style: GoogleFonts.poppins( + color: Colors.white, + fontWeight: FontWeight.w500, + ), + ), + ), + SizedBox(height: 10), + + // ----------------------------- + // CANCEL BUTTON + // ----------------------------- + ElevatedButton( + onPressed: () { + _resetIRDocs(); + setState(() => showIRDocs = false); + }, + style: ElevatedButton.styleFrom( + backgroundColor: Colors.white, + minimumSize: Size(double.infinity, 50), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(5), + side: const BorderSide(color: Color(0xFFE26728)), + ), + ), + child: Text( + "Cancel", + style: GoogleFonts.poppins( + color: Color(0xFFE26728), + fontWeight: FontWeight.w500, + ), + ), + ), + ], + ), + ), + ); + } + + // ------------------------- + // Mobile full IR Docs panel (replaces the main content) + // ------------------------- + Widget _buildMobileFullIrDocs(double panelWidth, {Key? key}) { + return Container( + key: key ?? ValueKey('mobile_full_ir'), + width: double.infinity, + height: double.infinity, + padding: EdgeInsets.all(12), + color: Colors.white, + child: SafeArea( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // header row with close (keeps popup header outside) + Row( + children: [ + Expanded( + child: Text("IR Docs", + style: GoogleFonts.poppins( + fontSize: 18, fontWeight: FontWeight.w600))), + IconButton( + icon: Icon(Icons.close), + onPressed: () { + _resetIRDocs(); + setState(() => showIRDocs = false); + }, + ), + ], + ), + SizedBox(height: 8), + Text( + "Select documents, click Upload to assign the same file to all selected items.", + style: GoogleFonts.poppins( + fontSize: 13, color: Colors.grey.shade700)), + SizedBox(height: 12), + + Expanded( + child: SingleChildScrollView( + child: Column( + children: [ + ...requiredDocsList.map((d) { + final title = d['document_name'] as String; + return CheckboxListTile( + value: d['document_received'] as bool, + onChanged: (v) => + setState(() => d['document_received'] = v), + title: Text(title), + controlAffinity: ListTileControlAffinity.trailing, + contentPadding: EdgeInsets.symmetric(horizontal: 8.0), + ); + }).toList(), + + SizedBox(height: 12), + Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + const MultiFileUploadWidget(forceMobile: true), + ], + ), + ), + // Padding( + // padding: const EdgeInsets.symmetric(horizontal: 8.0), + // child: ElevatedButton.icon( + // onPressed: handleUploadForSelected, + // icon: Icon(Icons.upload_file), + // label: Text("Upload for selected"), + // style: ElevatedButton.styleFrom( + // backgroundColor: Color(0xFF00A5A8), + // minimumSize: Size(double.infinity, 50), + // shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), + // ), + // ), + // ), + + SizedBox(height: 12), + + ..._assignedFiles.entries + .where((e) => e.value != null) + .map((e) { + final title = e.key; + final file = e.value!; + return Card( + margin: + EdgeInsets.symmetric(horizontal: 8, vertical: 6), + child: ListTile( + title: Text(title), + subtitle: Text(file.name, + maxLines: 1, overflow: TextOverflow.ellipsis), + trailing: IconButton( + icon: Icon(Icons.cancel, color: Colors.red), + onPressed: () => removeAssignedFile(title)), + ), + ); + }).toList(), + + SizedBox(height: 16), + ], + ), + ), + ), + + Container( + alignment: Alignment.center, + child: ElevatedButton( + onPressed: () { + submitIRDocs(); + }, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE26728), // Orange button + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(5), + ), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'Submit IR Docs', + style: GoogleFonts.poppins( + color: Colors.white, + fontWeight: FontWeight.w500, + ), + ), + ], + ), + ), + ), + SizedBox(height: 10), + Container( + alignment: Alignment.center, + child: ElevatedButton( + onPressed: () { + _resetIRDocs(); + setState(() => showIRDocs = false); + }, + style: ElevatedButton.styleFrom( + backgroundColor: Colors.white, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(5), + side: const BorderSide(color: Color(0xFFE26728)), + ), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'Cancel', + style: + GoogleFonts.poppins(color: const Color(0xFFE26728)), + ), + ], + ), + ), + ) + ], + ), + ), + ); + } + + // ------------------------- + // Builds IR Docs panel (desktop) + // ------------------------- + Widget _buildIrDocsPanel(double panelWidth, {required bool isMobile}) { + // The panel has internal scrolling so it won't overflow + return Container( + width: panelWidth, + padding: EdgeInsets.all(12), + decoration: BoxDecoration( + color: Colors.white, + border: Border(left: BorderSide(color: Colors.grey.shade300, width: 1)), + ), + child: SafeArea( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + // header row + Row( + children: [ + Expanded( + child: Text("IR Docs", + style: GoogleFonts.poppins( + fontSize: 16, fontWeight: FontWeight.w600))), + IconButton( + icon: Icon(Icons.close), + onPressed: () { + _resetIRDocs(); + setState(() => showIRDocs = false); + }, + ) + ], + ), + SizedBox(height: 8), + Text( + "Select documents, click Upload to assign the same file to all selected items.", + style: GoogleFonts.poppins( + fontSize: 12, color: Colors.grey.shade700)), + SizedBox(height: 12), + + // list + upload + preview inside scroll + Expanded( + child: SingleChildScrollView( + child: Column( + children: [ + // checkboxes + ...requiredDocsList.map((d) { + final title = d['document_name'] as String; + return CheckboxListTile( + value: d['document_received'] as bool, + onChanged: (v) => + setState(() => d['document_received'] = v), + title: Text(title), + ); + }).toList(), + + SizedBox(height: 8), + + // upload button + // Padding( + // padding: const EdgeInsets.symmetric(horizontal: 4.0), + // child: ElevatedButton.icon( + // onPressed: handleUploadForSelected, + // icon: Icon(Icons.upload_file), + // label: Text("Upload for selected"), + // style: ElevatedButton.styleFrom( + // backgroundColor: Color(0xFF00A5A8), + // minimumSize: Size(double.infinity, 44), + // shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(22)), + // ), + // ), + // ), + Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + const MultiFileUploadWidget(forceMobile: true), + ], + ), + ), + + SizedBox(height: 12), + + // assigned files preview + ..._assignedFiles.entries + .where((e) => e.value != null) + .map((e) { + final title = e.key; + final file = e.value!; + return Card( + child: ListTile( + title: Text(title), + subtitle: Text(file.name, + maxLines: 1, overflow: TextOverflow.ellipsis), + trailing: IconButton( + icon: Icon(Icons.cancel, color: Colors.red), + onPressed: () => removeAssignedFile(title)), + ), + ); + }).toList(), + + SizedBox(height: 16), + ], + ), + ), + ), + + // Submit button (keeps at bottom) + + Container( + alignment: Alignment.center, + child: ElevatedButton( + onPressed: () { + submitIRDocs(); + }, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE26728), // Orange button + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(5), + ), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'Submit IR Docs', + style: GoogleFonts.poppins( + color: Colors.white, + fontWeight: FontWeight.w500, + ), + ), + ], + ), + ), + ), + SizedBox(height: 10), + Container( + alignment: Alignment.center, + child: ElevatedButton( + onPressed: () { + _resetIRDocs(); + setState(() => showIRDocs = false); + }, + style: ElevatedButton.styleFrom( + backgroundColor: Colors.white, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(5), + side: const BorderSide(color: Color(0xFFE26728)), + ), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'Cancel', + style: + GoogleFonts.poppins(color: const Color(0xFFE26728)), + ), + ], + ), + ), + ) + ], + ), + ), + ); + } + + // ------------------------- + // UI Helpers & existing functions below (unchanged) + // ------------------------- + Widget _buildStep({ + required int stepNumber, + required Widget title, + required Widget content, + bool isLast = false, + }) { + final noContent = (content as Column).children.isEmpty ? 0 : 1; + + return Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Column( + children: [ + SizedBox(height: stepNumber == 1 ? 0 : 4), + Container( + height: 28, + width: 28, + decoration: BoxDecoration( + color: Color(0xFF00A5A8), shape: BoxShape.circle), + alignment: Alignment.center, + child: Text( + '$stepNumber', + style: TextStyle( + color: Colors.white, + fontSize: Responsive.isDesktop(context) ? 13 : 12, + fontWeight: FontWeight.w600, + ), + ), + ), + if (!isLast) + Container( + height: noContent == 1 ? 50 : 20, + width: 2, + margin: EdgeInsets.only(top: 4, bottom: 4), + child: CustomPaint(painter: DottedLinePainter()), + ), + ], + ), + SizedBox(width: 12), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + title, + if (noContent == 1) SizedBox(height: noContent == 0 ? 0 : 8), + if (noContent == 1) + Container( + width: double.infinity, + padding: EdgeInsets.all(12), + decoration: BoxDecoration( + color: Color(0xFFF7F7F7), + borderRadius: BorderRadius.circular(8), + border: Border.all(color: Color(0xFFE0E0E0)), + ), + child: content, + ), + if (noContent == 1) SizedBox(height: isLast ? 0 : 16), + ], + ), + ), + ], + ); + } + + Widget _getStepTitleFromApi(String status, Map data) { + final modifiedBy = data['modified_by'] ?? ''; + final modifiedAt = data['modified_at'] ?? ''; + final symbol = + (data['modified_by'] != null && data['modified_by'] != '') ? ' - ' : ''; + final isDesktop = Responsive.isDesktop(context); + + return RichText( + text: TextSpan( + children: [ + TextSpan( + text: status + (isDesktop ? ' ' : '\n'), + style: GoogleFonts.poppins( + fontSize: Responsive.isDesktop(context) ? 15 : 11, + fontWeight: FontWeight.w500, + color: Color(0xFF212120)), + ), + TextSpan( + text: ' ($modifiedBy$symbol$modifiedAt)', + style: GoogleFonts.poppins( + fontSize: Responsive.isDesktop(context) ? 14 : 11, + fontWeight: FontWeight.w400, + color: Color(0xFF565656)), + ), + ], + ), + ); + } + + Widget _getStepContentFromApi(Map data) { + List rows = []; + data.forEach((key, value) { + if (key == 'modified_by' || key == 'modified_at') return; + String displayName = value['display_name'] ?? key; + String displayValue = value['display_value'] ?? 'N/A'; + rows.add(_buildHistoryListData(displayName, displayValue)); + rows.add(SizedBox(height: 1)); + }); + return Column(crossAxisAlignment: CrossAxisAlignment.start, children: rows); + } + + // Widget _buildKeyValue(String title, String value) { + // final displayValue = + // (value == null || value.trim().isEmpty) ? 'N/A' : value; + // return Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ + // Text(title, + // style: GoogleFonts.poppins( + // color: Color(0xFF747474), + // fontWeight: FontWeight.w400, + // fontSize: Responsive.isDesktop(context) ? 16 : 13)), + // SizedBox(height: 4), + // Text(displayValue, + // style: GoogleFonts.poppins( + // color: Color(0xFF000000), + // fontWeight: FontWeight.w500, + // fontSize: Responsive.isDesktop(context) ? 16 : 13)), + // ]); + // } + + Widget _buildKeyValue(String title, String? value) { + final displayValue = + (value == null || value.trim().isEmpty) ? 'N/A' : value.trim(); + + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + title, + style: GoogleFonts.poppins( + color: const Color(0xFF747474), + fontWeight: FontWeight.w400, + fontSize: Responsive.isDesktop(context) ? 16 : 13, + ), + ), + const SizedBox(height: 4), + + /// Prevent overflow everywhere (web & mobile) + Text( + displayValue, + overflow: TextOverflow.ellipsis, + maxLines: 1, + style: GoogleFonts.poppins( + color: const Color(0xFF000000), + fontWeight: FontWeight.w500, + fontSize: Responsive.isDesktop(context) ? 16 : 13, + ), + ), + ], + ); + } + + Widget _buildHistoryListData(String title, String value) { + final displayValue = + (value == null || value.trim().isEmpty) ? 'N/A' : value; + final titleText = Text(title, + style: GoogleFonts.poppins( + color: const Color(0xFF747474), + fontWeight: FontWeight.w400, + fontSize: Responsive.isDesktop(context) ? 14 : 12)); + final valueText = Text(displayValue, + style: GoogleFonts.poppins( + color: const Color(0xFF000000), + fontWeight: FontWeight.w400, + fontSize: Responsive.isDesktop(context) ? 14 : 12), + textAlign: TextAlign.right); + + return Padding( + padding: const EdgeInsets.symmetric(vertical: 1), + child: Responsive.isDesktop(context) + ? Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Expanded( + child: Align( + alignment: Alignment.centerLeft, child: titleText)), + Expanded( + child: Align( + alignment: Alignment.centerRight, child: valueText)), + ]) + : Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [titleText, SizedBox(height: 4), valueText]), + ); + } +} + +class DottedLinePainter extends CustomPainter { + @override + void paint(Canvas canvas, Size size) { + const dashHeight = 2.0; + const dashSpace = 3.0; + double startY = 0; + final paint = Paint() + ..color = Colors.grey.shade400 + ..strokeWidth = 1; + while (startY < size.height) { + canvas.drawLine(Offset(0, startY), Offset(0, startY + dashHeight), paint); + startY += dashHeight + dashSpace; + } + } + + @override + bool shouldRepaint(CustomPainter oldDelegate) => false; +} diff --git a/lib/presentation/excelVerification.dart b/lib/presentation/excelVerification.dart new file mode 100644 index 0000000..58e962a --- /dev/null +++ b/lib/presentation/excelVerification.dart @@ -0,0 +1,767 @@ +import 'dart:ui'; + +import 'package:csv/csv.dart'; +import 'package:flutter/material.dart'; +import 'package:google_fonts/google_fonts.dart'; +import 'package:intl/intl.dart'; +import 'package:nhancepolicy/presentation/preFileUpload.dart'; +import 'package:nhancepolicy/presentation/postFileUpload.dart'; +import 'package:nhancepolicy/service/api_service.dart'; +import 'dart:convert'; +import 'dart:async'; +import 'package:nhancepolicy/customAppBar/toastHelper.dart'; +import 'package:nhancepolicy/service/token_storage_service.dart'; +import 'package:universal_html/html.dart' as html; +import 'dart:typed_data'; +import 'package:collection/collection.dart'; +import 'package:url_launcher/url_launcher.dart'; +import '../customAppBar/base_layout.dart'; + +class excelErrorScreen extends StatefulWidget { + final String ClientId; + final String policy_no; + final String action; + final String created_at; + final String clientBranchId; + final String Token; + final String TokenType; + final String id; + const excelErrorScreen({ + Key? key, + required this.ClientId, + required this.policy_no, + required this.action, + required this.created_at, + required this.clientBranchId, + required this.Token, + required this.TokenType, + required this.id, + }) : super(key: key); + + @override + State createState() => _activePolicyExcelErrorState(); +} + +class _activePolicyExcelErrorState extends State + with TickerProviderStateMixin { + final tokenService = TokenStorageService(); + bool isLoading = false; + dynamic empPrimaryId; + dynamic empClientId; + dynamic empClientBranchId; + dynamic empHrId; + dynamic enrollmentClient_id; + dynamic enrollmentEmpClientBranchId; + dynamic enrollmentHrId; + TextEditingController searchController = TextEditingController(); + List excelHeader = []; + List>> excelData = []; + + late int excelValidationStaus = 1; + bool isSuccess = false; + String successContent = ''; + + List>> filteredExcelData = []; + + String? _postPreToken = ''; + + late ApiService apiService; + + int _currentPage = 1; + int _rowsPerPage = 5; + + List>> get _paginatedExcelData { + final start = (_currentPage - 1) * _rowsPerPage; + final end = + (_currentPage * _rowsPerPage).clamp(0, filteredExcelData.length); + return filteredExcelData.sublist(start, end); + } + + final ScrollController _verticalController = ScrollController(); + final ScrollController _horizontalController = ScrollController(); + + + @override + void initState() { + super.initState(); + apiService = ApiService(context); + getCDPoliciesDetails(); + } + + @override + void dispose() { + _verticalController.dispose(); + _horizontalController.dispose(); + super.dispose(); + } + + + Future getCDPoliciesDetails() async { + setState(() { + isLoading = true; + }); + + try { + final response = + await apiService.getExcelFileErrorsApi(widget.id, widget.TokenType); + + // 🔴 CASE 1: Empty data → popup + back + if (response['data'] is List && response['data'].isEmpty) { + setState(() => isLoading = false); + _showEmptyDataDialog(response['message']); + return; + } + + // 🟢 CASE 2: Success with data + if (response['status'] == true) { + ToastHelper.showSuccessToast(context, response['message']); + + setState(() { + isLoading = false; + isSuccess = false; + excelValidationStaus = 1; + + excelHeader = + List.from(response['data']['excel_header']); + + excelData = (response['data']['excel_data'] as List) + .map>>( + (row) => row + .map>( + (cell) => Map.from(cell)) + .toList(), + ) + .toList(); + + filteredExcelData = List.from(excelData); + }); + } + // 🟡 CASE 3: API failed with message + else { + setState(() => isLoading = false); + _showEmptyDataDialog(response['message']); + } + + } catch (e) { + setState(() => isLoading = false); + print('Exception occurred: $e'); + _showEmptyDataDialog('Something went wrong. Please try again.'); + } + } + + + void _showEmptyDataDialog(String message) { + showDialog( + context: context, + barrierDismissible: false, + builder: (context) { + return AlertDialog( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(12), + ), + title: const Text( + 'Message', + style: TextStyle(fontWeight: FontWeight.w600), + ), + content: Text(message), + actions: [ + TextButton( + onPressed: () { + Navigator.of(context).pop(); // close dialog + Navigator.of(context).pop(); // go back page + }, + child: const Text('Close'), + ), + ], + ); + }, + ); + } + + + void search(String query) { + if (query.isEmpty) { + setState(() { + filteredExcelData = List.from(excelData); + _currentPage = 1; + }); + return; + } + + final lowerQuery = query.toLowerCase(); + + setState(() { + filteredExcelData = excelData.where((row) { + return row.any((cell) { + final value = cell['value']; + return value != null && + value.toString().toLowerCase().contains(lowerQuery); + }); + }).toList(); + + _currentPage = 1; + }); + } + + // emp_is_active + + void exportToCsv({ + required List excelHeader, + required List>> excelData, + }) { + List> rows = []; + + /// 1️⃣ Add headers + rows.add(excelHeader); + + /// 2️⃣ Add rows + for (final row in excelData) { + rows.add( + row.map((cell) { + final value = cell['value']; + return value == null ? '' : value.toString(); + }).toList(), + ); + } + + /// 3️⃣ Convert to CSV + final csvData = const ListToCsvConverter().convert(rows); + + /// 4️⃣ Download (Flutter Web) + final bytes = utf8.encode(csvData); + final blob = html.Blob([bytes], 'text/csv'); + final url = html.Url.createObjectUrlFromBlob(blob); + + html.AnchorElement(href: url) + ..setAttribute("download", "Excel_Error_File.csv") + ..click(); + + html.Url.revokeObjectUrl(url); + } + + + // Future handleExportAction() async { + // print('handleExportAction'); + // + // final postId = await tokenService.readValue('empHrId'); + // final preId = await tokenService.readValue('enrollmentEmpPrimaryId'); + // + // var activity = "export_empdata"; + // + // var activityPre = "export_preempdata"; + // dynamic response; + // + // print('postId - $postId'); + // print('preId - $preId'); + // print('activity - $activity'); + // + // try { + // print('10'); + // + // if (widget.TokenType == 'pre') { + // response = await apiService.getPreLogHrActivity( + // postId!, preId!, widget.Token, activityPre); + // } else if (widget.TokenType == 'post') { + // response = await apiService.getPostLogHrActivity( + // postId!, preId!, widget.Token, activity); + // } + // + // if (response['status'] == 'success') { + // print('Request success'); + // } else { + // // ToastHelper.showWarningToast( + // // context, 'Request failed with status: ${response.statusCode}'); + // print('Request failed with status: ${response['code']}'); + // } + // } catch (e) { + // print('Exception occurred: $e'); + // } + // } + + String _capitalize(String? value) { + if (value == null || value.isEmpty) return ''; + return value[0].toUpperCase() + value.substring(1).toLowerCase(); + } + + String formatDateTime(String dateTime) { + final parsedDate = DateTime.parse(dateTime); + return DateFormat('dd-MM-yyyy hh:mm a').format(parsedDate); + } + + + @override + Widget build(BuildContext context) { + return BaseLayout( + child: _buildContent(context), + ); + } + + Widget _buildContent(BuildContext context) { + return isLoading + ? Container( + color: Color(0x98FFFCE5), // Semi-transparent background + child: Center( + child: // Your GIF loader widget + Image.asset( + height: 60, + width: 60, + 'assets/nhance-loader.gif'), // Adjust path to your GIF loader + ), + ) + : Container( + // padding: EdgeInsets.only(top: 30, bottom: 200, left: 50, right: 50), + child: Column( + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + /// 🔙 Back + Title (LEFT) + Row( + children: [ + IconButton( + onPressed: () => {Navigator.pop(context)}, + icon: const Icon( + Icons.arrow_back_ios, + size: 18, + color: Colors.black, + ), + padding: EdgeInsets.zero, + constraints: const BoxConstraints(), + ), + const SizedBox(width: 6), + Container( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + widget.policy_no ?? '', + style: GoogleFonts.poppins( + color: Colors.black, + fontSize: 14, + fontWeight: FontWeight.w500, + ), + ), + if (widget.TokenType != 'pre') + RichText( + text: TextSpan( + style: GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w400, + ), + children: [ + TextSpan( + text: widget.action, + style: const TextStyle( + color: Color(0xFF00999E), + ), + ), + const TextSpan( + text: ' - ', + style: TextStyle( + color: Color(0xFF585858), + ), + ), + TextSpan( + text: formatDateTime(widget.created_at), + style: const TextStyle( + color: Color(0xFF585858), + ), + ), + ], + ), + ), + ], + ), + ), + ], + ), + + /// Push right content to end + const Spacer(), + + /// 🔍 Search Box + Container( + width: 380, + height: 37, + decoration: BoxDecoration( + color: const Color(0xFFF0F0F0), + borderRadius: BorderRadius.circular(8), + ), + child: TextField( + controller: searchController, + onChanged: search, + style: GoogleFonts.poppins(fontSize: 14), + decoration: const InputDecoration( + hintText: 'Search', + prefixIcon: Icon(Icons.search, size: 18), + border: InputBorder.none, + contentPadding: + EdgeInsets.symmetric(horizontal: 12, vertical: 8), + ), + ), + ), + + const SizedBox(width: 12), + + /// ⬇️ Export Button + SizedBox( + width: 116, + height: 37, + child: ElevatedButton( + onPressed: () { + exportToCsv( + excelHeader: excelHeader, + excelData: filteredExcelData, // or excelData + ); + + }, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE26728), + elevation: 0, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + ), + child: Text( + 'Export', + style: GoogleFonts.poppins( + fontSize: 16, + fontWeight: FontWeight.w700, + color: Colors.white, + letterSpacing: 1, + ), + ), + ), + ), + ], + ), + SizedBox(height: 20), + Expanded( + child: _buildCDDataTable(context), + ), + + ], + ), + ); + } + + Widget _buildCDDataTable(BuildContext context) { + return ScrollConfiguration( + behavior: const MaterialScrollBehavior().copyWith( + dragDevices: { + PointerDeviceKind.mouse, + PointerDeviceKind.touch, + PointerDeviceKind.trackpad, + }, + ), + child: _buildScrollableTable(context), + ); + } + + Widget _buildScrollableTable(BuildContext context) { + const double columnWidth = 160; + final double tableWidth = excelHeader.length * columnWidth; + + return Scrollbar( + thumbVisibility: true, + controller: _verticalController, + child: SingleChildScrollView( + controller: _verticalController, + physics: const ClampingScrollPhysics(), // 👈 mouse wheel + scrollDirection: Axis.vertical, + child: Scrollbar( + thumbVisibility: true, + controller: _horizontalController, + notificationPredicate: (n) => n.depth == 1, + child: SingleChildScrollView( + controller: _horizontalController, + physics: const ClampingScrollPhysics(), + scrollDirection: Axis.horizontal, + child: SizedBox( + width: tableWidth, + child: Column( + children: [ + Container( + decoration: BoxDecoration( + color: const Color(0xFFD7E9EB), + borderRadius: BorderRadius.circular(6), + ), + padding: const EdgeInsets.symmetric(vertical: 8), + child: Row( + children: excelHeader.map((header) { + return SizedBox( + width: columnWidth, + child: Padding( + padding: + const EdgeInsets.symmetric(horizontal: 12), + child: Text( + header, + style: GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.bold, + ), + ), + ), + ); + }).toList(), + ), + ), + + const SizedBox(height: 6), + + /// ROWS + ..._paginatedExcelData.map((row) { + return Container( + padding: const EdgeInsets.symmetric(vertical: 8), + decoration: const BoxDecoration( + border: Border( + bottom: BorderSide( + color: Color(0xFFA9D9DE), + width: 1, + ), + ), + ), + child: Row( + children: row.map((cell) { + final bool hasError = cell.containsKey('error'); + + return SizedBox( + width: columnWidth, + child: Padding( + padding: const EdgeInsets.symmetric(horizontal: 12), + child: hasError + ? Row( + children: [ + Expanded( + child: Text( + cell['value']?.toString() ?? '-', + style: GoogleFonts.poppins( + fontSize: 12, + ), + ), + ), + const SizedBox(width: 6), + IconButton( + padding: EdgeInsets.zero, + constraints: const BoxConstraints(), + icon: const Icon( + Icons.error_outline, + color: Colors.red, + size: 16, + ), + onPressed: () { + showDialog( + context: context, + barrierDismissible: true, + builder: (_) { + final List errors = cell['error'] as List; + + return Dialog( + backgroundColor: Colors.transparent, + child: Container( + width: 420, + padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 28), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(20), + ), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + /// ERROR TITLE + Text( + 'Error!', + style: GoogleFonts.poppins( + fontSize: 32, + fontWeight: FontWeight.bold, + color: Colors.black, + ), + ), + + const SizedBox(height: 16), + + /// RED ICON + Container( + width: 64, + height: 64, + decoration: const BoxDecoration( + color: Color(0xFFE0002A), + shape: BoxShape.circle, + ), + child: const Center( + child: Text( + '!', + style: TextStyle( + color: Colors.white, + fontSize: 36, + fontWeight: FontWeight.bold, + ), + ), + ), + ), + + const SizedBox(height: 20), + + /// ERROR HEADING (optional – first error) + Text( + errors.isNotEmpty ? errors.first.toString() : 'Validation Error', + textAlign: TextAlign.center, + style: GoogleFonts.poppins( + fontSize: 18, + fontWeight: FontWeight.w600, + color: Colors.black, + ), + ), + + const SizedBox(height: 12), + + /// ERROR DETAILS + ...errors.skip(1).map( + (e) => Padding( + padding: const EdgeInsets.only(top: 6), + child: Text( + e.toString(), + textAlign: TextAlign.center, + style: GoogleFonts.poppins( + fontSize: 14, + color: const Color(0xFFE09B2D), // orange text + ), + ), + ), + ), + + const SizedBox(height: 20), + + /// OK BUTTON + SizedBox( + width: 120, + height: 30, + child: ElevatedButton( + onPressed: () => Navigator.pop(context), + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE0002A), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(20), + ), + elevation: 0, + ), + child: Text( + 'OK', + style: GoogleFonts.poppins( + fontSize: 14, + fontWeight: FontWeight.w600, + color: Colors.white, + ), + ), + ), + ), + ], + ), + ), + ); + }, + ); + + }, + ), + ], + ) + : Text( + cell['value']?.toString() ?? '-', + style: GoogleFonts.poppins( + fontSize: 12, + ), + ), + ), + ); + }).toList(), + ), + ); + }).toList(), + + /// PAGINATION + SizedBox( + width: tableWidth, + child: _buildPagination(context), + ), + ], + ), + ), + ), + ), + ), + ); + } + + + Widget _buildPagination(BuildContext context) { + final totalPages = + (filteredExcelData.length / _rowsPerPage).ceil(); + + if (totalPages <= 1) { + return const SizedBox.shrink(); // 👈 hide if only one page + } + + return Row( + mainAxisAlignment: MainAxisAlignment.end, // 👈 right aligned + children: [ + DropdownButton( + value: _rowsPerPage, + items: [5, 10, 15, 20, 50].map((int value) { + return DropdownMenuItem( + value: value, + child: Text( + ' $value ', + style: GoogleFonts.poppins(fontSize: 14), + ), + ); + }).toList(), + onChanged: (newValue) { + setState(() { + _rowsPerPage = newValue!; + _currentPage = 1; + }); + }, + ), + + IconButton( + icon: const Icon(Icons.chevron_left), + onPressed: _currentPage > 1 + ? () => setState(() => _currentPage--) + : null, + ), + + for (int i = 1; i <= totalPages; i++) + Padding( + padding: const EdgeInsets.symmetric(horizontal: 4), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + backgroundColor: _currentPage == i + ? const Color(0xFF00A6A6) + : Colors.grey[300], + foregroundColor: + _currentPage == i ? Colors.white : Colors.black, + minimumSize: const Size(36, 36), + padding: EdgeInsets.zero, + ), + onPressed: () { + setState(() { + _currentPage = i; + }); + }, + child: Text(i.toString()), + ), + ), + + IconButton( + icon: const Icon(Icons.chevron_right), + onPressed: _currentPage < totalPages + ? () => setState(() => _currentPage++) + : null, + ), + ], + ); + } + + +} diff --git a/lib/presentation/hrDashboard.dart b/lib/presentation/hrDashboard.dart new file mode 100755 index 0000000..7055b64 --- /dev/null +++ b/lib/presentation/hrDashboard.dart @@ -0,0 +1,490 @@ +import 'dart:convert'; + +import 'package:flutter/material.dart'; +import 'package:http/http.dart' as http; +import 'package:nhancepolicy/customAppBar/toastHelper.dart'; +import 'package:nhancepolicy/service/api_service.dart'; +import 'package:nhancepolicy/service/token_storage_service.dart'; +import 'dart:ui_web' as ui; + +import 'package:universal_html/html.dart' as html; + +import '../config/environment.dart'; +import '../customAppBar/base_layout.dart'; + + + +class hrDashboard extends StatefulWidget { + hrDashboard({Key? key,}) : super(key: key); + + @override + State createState() => _hrDashboardState(); +} + +class _hrDashboardState extends State + with SingleTickerProviderStateMixin { + late ApiService apiService; + bool isLoading = false; + String? selectedPolicyId; + List> activePoliciesList = []; + + String? _metabaseToken; + String? _metabaseUrl; + bool isPolicyLoading = false; + bool isDashboardLoading = false; + bool hasDashboardError = false; + + bool _metabaseLoaded = false; // ✅ FIX + List postModules = []; + dynamic policy_name; + dynamic getPreCardArrays = []; + dynamic getPostCardArrays = []; + String? _postPreToken = ''; + dynamic empClientBranchId; + dynamic empHrId; + dynamic empClientId; + int stausVal = 1; + String _dashboardViewType = ''; + bool isDropdownOpen = false; + final FocusNode _policyFocusNode = FocusNode(); + + + + final tokenService = TokenStorageService(); + + @override + void initState() { + super.initState(); + apiService = ApiService(context); + + _policyFocusNode.addListener(() { + if (!_policyFocusNode.hasFocus) { + setState(() => isDropdownOpen = false); + } + }); + + _loadToken(); + } + + @override + void dispose() { + _policyFocusNode.dispose(); + super.dispose(); + } + + Future _loadToken() async { + _postPreToken = await tokenService.getCurrentToken(); + final postRaw = await tokenService.readValue('empAllowed_modules'); + + postModules = postRaw != null && postRaw.isNotEmpty + ? List.from(jsonDecode(postRaw)) + : []; + + if (!(postModules.contains(2) || + postModules.contains(3) || + postModules.contains(4))) { + // ❌ No dashboard permission + setState(() { + hasDashboardError = true; + }); + return; + } + + empClientId = await tokenService.readValue('empClientId'); + empClientBranchId = await tokenService.readValue('empClientBranchId'); + empHrId = await tokenService.readValue('empHrId'); + + await getPostCashDepositDetails( + empClientBranchId, empClientId, empHrId, _postPreToken); + } + + + Future getPostCashDepositDetails( + empClientBranchId, empClientId, empHrId, _postPreToken) async { + print('IN'); + print("clintBranchId -$empClientBranchId"); + print("clintID -$empClientId"); + print("hr_id -$empHrId"); + print("token -$_postPreToken"); + + isLoading = true; + // setState(() { + // _isLoading = true; + // }); + try { + if (empClientBranchId == null || empClientId == null) { + return; + } + final response = await apiService.getActiveCashDepositDetailsToApi( + empClientId!, empClientBranchId!, empHrId, _postPreToken, stausVal); + + // final response = await apiService.getCashDepositDetailsToApi( + // clintID!, clintBranchId!, hr_id, token); + print('IN1'); + if (response['status'] == 'success') { + final list = List>.from(response['data']); + + setState(() { + activePoliciesList = list; + }); + + // ✅ AUTO SELECT FIRST POLICY HERE + if (list.isNotEmpty) { + selectedPolicyId = list.first['client_policy_id'].toString(); + await _loadDashboardByPolicy(selectedPolicyId!); + } else { + setState(() { + hasDashboardError = true; + }); + } + } else { + isLoading = false; + print('API request failed with status'); + setState(() { + activePoliciesList = []; + }); + print('API request failed with status'); + } + } catch (e) { + print('Exception occurred: $e'); + } + } + + Future _loadMetabaseDashboard() async { + try { + final response = await http.get( + Uri.parse( + '${Environment.apiUrlPost.replaceAll("employeeRest/", "")}metaDashboardDemo?api=1', + ), + ); + + if (response.statusCode == 200) { + final json = jsonDecode(response.body); + + _metabaseToken = json['data']['metabaseToken']; + _metabaseUrl = json['data']['metabaseUrl']; + + final htmlContent = _buildMetabaseHtml( + token: _metabaseToken!, + url: _metabaseUrl!, + ); + + final iframe = html.IFrameElement() + ..style.border = 'none' + ..style.width = '100%' + ..style.height = '100%' + ..style.minHeight = '100vh' + ..srcdoc = htmlContent; + + // ignore: undefined_prefixed_name + ui.platformViewRegistry.registerViewFactory( + 'metabase-dashboard', + (int viewId) => iframe, + ); + + setState(() { + _metabaseLoaded = true; + }); + } else { + throw Exception('Failed to load Metabase'); + } + } catch (e) { + ToastHelper.showErrorToast(context, 'Metabase loading failed'); + debugPrint(e.toString()); + } + } + + Future _loadDashboardByPolicy(String clientPolicyId) async { + try { + setState(() { + isDashboardLoading = true; + _metabaseLoaded = false; + }); + + final response = await apiService.postHrDashboard({ + "client_id": empClientId, + "client_policy_id": clientPolicyId, + }, _postPreToken); + + if (response['status'] == 'success') { + _registerMetabaseIframe( + token: response['data']['metabaseToken'], + url: response['data']['metabaseUrl'], + clientPolicyId: clientPolicyId, + ); + + setState(() { + _metabaseLoaded = true; + }); + } else { + ToastHelper.showErrorToast(context, response['message']); + } + } catch (e) { + ToastHelper.showErrorToast(context, 'Dashboard loading failed'); + } finally { + setState(() { + isDashboardLoading = false; + }); + } + } + + + + void _registerMetabaseIframe({ + required String token, + required String url, + required String clientPolicyId, + }) { + _dashboardViewType = 'metabase-dashboard-$clientPolicyId'; + + final htmlContent = _buildMetabaseHtml( + token: token, + url: url, + ); + + final iframe = html.IFrameElement() + ..style.border = 'none' + ..style.width = '100%' + ..style.height = '100%' + ..style.minHeight = '100vh' + ..srcdoc = htmlContent; + + // ignore: undefined_prefixed_name + ui.platformViewRegistry.registerViewFactory( + _dashboardViewType, + (int viewId) => iframe, + ); + } + + + + + Future _showLogoutDialog() async { + return await showDialog( + context: context, + barrierDismissible: false, + builder: (context) => + AlertDialog( + title: Text("Confirm Logout"), + content: Text("Do you want to logout?"), + actions: [ + TextButton( + onPressed: () => Navigator.of(context).pop(false), + child: Text("Cancel"), + ), + TextButton( + onPressed: () => apiService.logout(), + child: Text("Logout"), + ), + ], + ), + ) ?? + false; + } + + @override + Widget build(BuildContext context) { + return BaseLayout( + child: _buildContent(context), + ); + } + + Widget _buildContent(BuildContext context) { + return PopScope( + canPop: false, + onPopInvoked: (didPop) async { + bool logout = await _showLogoutDialog(); + + if (logout) { + await tokenService.clearAll(); + if (!mounted) return; + Navigator.pushNamedAndRemoveUntil( + context, + 'hrLogin', + (route) => false, + ); + } + }, + child: Scaffold( + body: Expanded( + child: isDashboardLoading + ? Center( + child: Image.asset( + 'assets/nhance-loader.gif', + height: 60, + width: 60, + ), + ) + : _metabaseLoaded + ? (postModules.isNotEmpty && activePoliciesList.isEmpty) ? + Padding( + padding: EdgeInsets.all(16), + child: Text( + 'No dashboard data available for your account', + style: TextStyle(color: Colors.grey), + ), + ) : Container( + decoration: BoxDecoration( + // color: Colors.red.shade50, + // color: Colors.white, + borderRadius: BorderRadius.circular(10), // 👈 set your desired radius + ), + padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + // 🔹 TOP BAR (always clickable) + Material( + elevation: 2, + color: Colors.white, + child: _buildPolicySelector(), + ), +SizedBox(height: 20), + // 🔹 DASHBOARD AREA (isolated) + Expanded( + child: Stack( + children: [ + Positioned.fill( + child: _buildDashboard(), + ), + ], + ), + ), + ], + ) + + ) + : const Center( + child: Text( + 'No dashboard data available', + style: TextStyle(color: Colors.grey), + ), + ), + ), + + + ), + ); + } + + Widget _buildPolicySelector() { + return Container( + padding: const EdgeInsets.all(16), + color: Colors.white, + child: Row( + children: [ + const Text( + 'Select Policy', + style: TextStyle(fontWeight: FontWeight.w600), + ), + const SizedBox(width: 12), + SizedBox( + width: 420, + child: DropdownButtonFormField( + focusNode: _policyFocusNode, + value: selectedPolicyId, + isExpanded: true, + items: activePoliciesList.map((policy) { + return DropdownMenuItem( + value: policy['client_policy_id'].toString(), + child: Text( + '${policy['type']} - ${policy['policy_no']}', + overflow: TextOverflow.ellipsis, + ), + ); + }).toList(), + + onTap: () { + setState(() => isDropdownOpen = true); + }, + + onChanged: isDashboardLoading + ? null + : (value) { + if (value == selectedPolicyId) return; + + setState(() { + selectedPolicyId = value!; + }); + + _loadDashboardByPolicy(value!); + }, + + + decoration: InputDecoration( + border: OutlineInputBorder( + borderRadius: BorderRadius.circular(8), + ), + ), + ), + ), + ], + ), + ); + } + + Widget _buildDashboard() { + if (isDashboardLoading) { + return Center( + child: Image.asset( + 'assets/nhance-loader.gif', + height: 60, + width: 60, + ), + ); + } + + if (!_metabaseLoaded || _dashboardViewType.isEmpty) { + return const Center( + child: Text( + 'No dashboard data available', + style: TextStyle(color: Colors.grey), + ), + ); + } + + return HtmlElementView(viewType: _dashboardViewType); + } + + + + String _buildMetabaseHtml({ + required String token, + required String url, + }) { + return ''' + + + + + Metabase Dashboard + + + + + + + + + + + + +'''; + } + + +} \ No newline at end of file diff --git a/lib/hrPolicyDetails.dart b/lib/presentation/hrPolicyDetails.dart similarity index 57% rename from lib/hrPolicyDetails.dart rename to lib/presentation/hrPolicyDetails.dart index 235ace5..3dcdaba 100755 --- a/lib/hrPolicyDetails.dart +++ b/lib/presentation/hrPolicyDetails.dart @@ -2,16 +2,16 @@ import 'package:csv/csv.dart'; import 'package:flutter/material.dart'; import 'package:google_fonts/google_fonts.dart'; import 'package:nhancepolicy/customAppBar/customAppBar.dart'; -import 'package:nhancepolicy/excel_verification.dart'; -import 'package:nhancepolicy/postFileUpload.dart'; +import 'package:nhancepolicy/presentation/preFileUpload.dart'; +import 'package:nhancepolicy/presentation/postFileUpload.dart'; import 'package:nhancepolicy/service/api_service.dart'; -import 'package:nhancepolicy/service/hrDashboardTabs/claims.dart'; -import 'package:shared_preferences/shared_preferences.dart'; +import 'package:nhancepolicy/presentation/claims.dart'; import 'package:jwt_decode/jwt_decode.dart'; import 'dart:convert'; import 'dart:async'; import 'package:http/http.dart' as http; import 'package:nhancepolicy/customAppBar/toastHelper.dart'; +import 'package:nhancepolicy/service/token_storage_service.dart'; import 'package:universal_html/html.dart' as html; import 'dart:typed_data'; import 'dart:io'; @@ -22,7 +22,8 @@ import 'package:path_provider/path_provider.dart'; import 'package:path/path.dart' as path; import 'package:collection/collection.dart'; import 'package:url_launcher/url_launcher.dart'; -import 'customAppBar/customFooter.dart'; +import '../customAppBar/base_layout.dart'; +import '../customAppBar/customFooter.dart'; import 'hrDashboard.dart'; class hrPolicyDetails extends StatefulWidget { @@ -38,6 +39,8 @@ class hrPolicyDetails extends StatefulWidget { final String cardInsurer_name; final String cardPolicy_name; final String cardPolicy_ExpDate; + final String total_premium; + final int is_ecard_bulk_download_for_employee; const hrPolicyDetails( {Key? key, @@ -52,7 +55,9 @@ class hrPolicyDetails extends StatefulWidget { required this.cardPolicyNo, required this.cardInsurer_name, required this.cardPolicy_name, - required this.cardPolicy_ExpDate}) + required this.cardPolicy_ExpDate, + required this.total_premium, + required this.is_ecard_bulk_download_for_employee}) : super(key: key); @override @@ -61,6 +66,16 @@ class hrPolicyDetails extends StatefulWidget { class _HrPolicyDetailsState extends State with TickerProviderStateMixin { + final tokenService = TokenStorageService(); + dynamic empPrimaryId; + dynamic empClientId; + dynamic empClientBranchId; + dynamic empHrId; + dynamic enrollmentClient_id; + dynamic enrollmentEmpClientBranchId; + dynamic enrollmentHrId; + + String? _postPreToken = ''; Uint8List? fileBytes; String empCodeFromHrPolcy = ''; bool hasAnyEcardLink = false; @@ -76,6 +91,7 @@ class _HrPolicyDetailsState extends State List> originalData = []; // Original data source List> filteredData = []; // Filtered data source + dynamic argumentsData; dynamic policyType; dynamic policyName; @@ -92,6 +108,13 @@ class _HrPolicyDetailsState extends State int _currentPage = 1; int _rowsPerPage = 5; + /// holds selected employee ids as String or int (be consistent) + final Set selectedEmployeeIds = {}; + + /// ids shown in the current page (for header checkbox) + List currentPageIds = []; + + List get _paginatedData { final startIndex = (_currentPage - 1) * _rowsPerPage; final endIndex = @@ -99,16 +122,45 @@ class _HrPolicyDetailsState extends State return filteredData.sublist(startIndex, endIndex); } + Color getStatusColor(String status) { + switch (status.toLowerCase()) { + case 'draft': + return const Color(0xFFF9EBBD); + case 'enrolled': + return const Color(0xFFBDF9D9); + case 'total': + return const Color(0xFFE2FBCB); + default: + return const Color(0xFFB0BEC5); + } + } + @override void initState() { super.initState(); apiService = ApiService(context); // Initialize ApiService here - getCDPoliciesDetails(); - print("_PreEnrollmentState 1"); + print("_PreEnrollmentState 1"); + getCDPoliciesDetails(); print('allowed_modules'); } + // Future _loadToken() async { + // _postPreToken = tokenService.getCurrentToken(); + // if(widget.TokenType == "post") { + // empClientId = await tokenService.readValue('empClientId'); + // empClientBranchId = await tokenService.readValue('empClientBranchId'); + // empHrId = await tokenService.readValue('empHrId'); + // } + // if(widget.TokenType == "pre") { + // enrollmentClient_id = await tokenService.readValue('enrollmentClient_id'); + // enrollmentEmpClientBranchId = await tokenService.readValue('enrollmentEmpClientBranchId'); + // enrollmentHrId = await tokenService.readValue('enrollmentHrId'); + // } + // + // getCDPoliciesDetails(); + // } + Future getCDPoliciesDetails() async { print('9'); setState(() { @@ -117,8 +169,7 @@ class _HrPolicyDetailsState extends State try { print('10'); - final SharedPreferences prefs = await SharedPreferences.getInstance(); - modulesString = prefs.getString('empAllowed_modules'); + modulesString = await tokenService.readValue('empAllowed_modules'); // modulesString = "[2,3]"; print("empmodulesString - $modulesString"); @@ -139,7 +190,7 @@ class _HrPolicyDetailsState extends State ? await apiService.getEmployeeAndDependenceToApi(widget.ClientId, widget.ClientPoliyId, widget.clientBranchId, widget.Token) : await apiService.getEmployeeAndDependenceToApiPre(widget.ClientId, - widget.ClientPoliyId, widget.clientBranchId, widget.Token); + widget.ClientPoliyId, widget.clientBranchId, widget.Token!); if (response['status'] == 'success') { setState(() { @@ -173,14 +224,16 @@ class _HrPolicyDetailsState extends State } } - Future getEcardDownload(String? empCode,String? empId,String? clientPolicyId,String? policyNo) async { + Future getEcardDownload(String? empCode, String? empId, + String? clientPolicyId, String? policyNo) async { final eCarDParams = { 'id': empId, 'emp_code': empCode, 'client_policy_id': clientPolicyId, 'policy_no': policyNo }; - final response = await apiService.getEcardRequest(eCarDParams,widget.Token); + final response = + await apiService.getEcardRequest(eCarDParams, widget.Token); print('check 1'); final ecardDownloadUrl = response['data']['eCardDownload']; final message = response['data']['message']; @@ -308,9 +361,9 @@ class _HrPolicyDetailsState extends State Future handleExportAction() async { print('handleExportAction'); - final SharedPreferences prefs = await SharedPreferences.getInstance(); - final postId = prefs.getString('empHrId'); - final preId = prefs.getString('enrollmentEmpPrimaryId'); + final postId = await tokenService.readValue('empHrId'); + final preId = await tokenService.readValue('enrollmentEmpPrimaryId'); + var activity = "export_empdata"; var activityPre = "export_preempdata"; @@ -348,6 +401,75 @@ class _HrPolicyDetailsState extends State return value[0].toUpperCase() + value.substring(1).toLowerCase(); } + + + Future getEcardBulkDownload() async { + try { + final emp_policy_ids = selectedEmployeeIds.toList(); + print('10 $emp_policy_ids'); + empHrId = await tokenService.readValue('empHrId'); + final response = await apiService.getEcardBulkDownloadApi('',empHrId,emp_policy_ids,widget.Token); + if (response['status'] == true) { + print('Request success'); + _showBulkDownloadSuccessPopup(response['message']); + } else { + ToastHelper.showErrorToast(context, response['message']); + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + print('Exception occurred: $e'); + } + } + + void _showBulkDownloadSuccessPopup(String message) { + showDialog( + context: context, + barrierDismissible: false, + builder: (context) { + return AlertDialog( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16), + ), + content: Column( + mainAxisSize: MainAxisSize.min, + children: [ + const Icon( + Icons.check_circle, + color: Color(0xFF009195), + size: 60, + ), + const SizedBox(height: 16), + Text( + message, + textAlign: TextAlign.center, + style: const TextStyle( + fontSize: 14, + fontWeight: FontWeight.w500, + ), + ), + const SizedBox(height: 24), + SizedBox( + width: double.infinity, + child: ElevatedButton( + onPressed: () => Navigator.pop(context), + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFF009195), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(8), + ), + ), + child: Text('OK',style: GoogleFonts.poppins( + color: Colors.white + ),), + ), + ), + ], + ), + ); + }, + ); + } + @override void dispose() { _tabController.dispose(); @@ -356,265 +478,274 @@ class _HrPolicyDetailsState extends State @override Widget build(BuildContext context) { - // TODO: implement build - return Scaffold( - appBar: CustomAppBar(), - backgroundColor: Color(0xFFEFF3F6), - body: Stack(children: [ - // color: Color(0xFFEFF3F6), + return BaseLayout( + child: _buildContent(context), + ); + } - // padding: const EdgeInsets.symmetric(vertical: 20, horizontal: 40), - SingleChildScrollView( - scrollDirection: Axis.vertical, - child: Container( - padding: EdgeInsets.only(top: 30, bottom: 200, left: 50, right: 50), + Widget _buildContent(BuildContext context) { + return isLoading + ? Container( + color: Color(0x98FFFCE5), // Semi-transparent background + child: Center( + child: // Your GIF loader widget + Image.asset( + height: 60, + width: 60, + 'assets/nhance-loader.gif'), // Adjust path to your GIF loader + ), + ) + : Container( + // padding: EdgeInsets.only(top: 30, bottom: 200, left: 50, right: 50), child: Column( children: [ - Container( - child: Row( - mainAxisAlignment: MainAxisAlignment.start, - crossAxisAlignment: CrossAxisAlignment.start, + Row( + crossAxisAlignment: CrossAxisAlignment.center, children: [ + /// 🔙 Back + Title (LEFT) + Row( + children: [ + IconButton( + onPressed: () => {Navigator.pop(context)}, + icon: const Icon( + Icons.arrow_back_ios, + size: 18, + color: Colors.black, + ), + padding: EdgeInsets.zero, + constraints: const BoxConstraints(), + ), + const SizedBox(width: 6), + Container( + // color: Colors.redAccent.shade100, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.start, + children: [ + Text( + "${widget.cardType} - ${widget.cardPolicyNo} " ?? + '', + style: GoogleFonts.poppins( + color: Colors.black, + fontSize: 14, + fontWeight: FontWeight.w500, + ), + ), + Text( + widget.TokenType == 'pre' + ? "${widget.cardPolicy_name} (${widget.cardPolicy_ExpDate})" + : "${widget.cardInsurer_name} - ${widget.cardPolicy_name} (${widget.cardPolicy_ExpDate})", + style: GoogleFonts.poppins( + color: Colors.grey, + fontSize: 12, + fontWeight: FontWeight.w400, + ), + ), + ], + ), + ), + ], + ), + + /// Push right content to end + const Spacer(), + + /// 🔍 Search Box Container( - // color: Colors.greenAccent.shade100, - child: Column( - mainAxisAlignment: MainAxisAlignment.start, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - IconButton( - padding: - EdgeInsets.zero, // Removes default padding - constraints: BoxConstraints(), - onPressed: () { - Navigator.pop(context); - }, - icon: Icon( - Icons.arrow_back_ios, - color: Colors.grey, - size: 17, - )), - // IconButton( - // padding: EdgeInsets.zero, // Removes default padding - // constraints: BoxConstraints(), - // onPressed: () {}, - // icon: Icon( - // Icons.arrow_back_ios, - // color: Colors.grey, - // // size: 12, - // )), - ], + width: 380, + height: 37, + decoration: BoxDecoration( + color: const Color(0xFFF0F0F0), + borderRadius: BorderRadius.circular(8), + ), + child: TextField( + controller: searchController, + onChanged: search, + style: GoogleFonts.poppins(fontSize: 14), + decoration: const InputDecoration( + hintText: 'Search', + prefixIcon: Icon(Icons.search, size: 18), + border: InputBorder.none, + contentPadding: + EdgeInsets.symmetric(horizontal: 12, vertical: 8), + ), ), ), - Container( - // color: Colors.redAccent.shade100, - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - mainAxisAlignment: MainAxisAlignment.start, - children: [ - Text( - "${widget.cardType} - ${widget.cardPolicyNo} " ?? - '', - style: GoogleFonts.poppins( - color: Colors.black, - fontSize: 14, - fontWeight: FontWeight.w500, + + if (widget.is_ecard_bulk_download_for_employee == 1) ...[ + const SizedBox(width: 12), + SizedBox( + width: 40, + height: 37, + child: ElevatedButton( + onPressed: () { + getEcardBulkDownload(); + }, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE26728), + elevation: 0, + padding: EdgeInsets.zero, // ✅ IMPORTANT + alignment: Alignment.center, // ✅ FORCE CENTER + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), ), + child: Icon( + Icons.credit_card, + size: 18, + color: Colors.white, + )), + ), + ], + + const SizedBox(width: 12), + + SizedBox( + width: 116, + height: 37, + child: ElevatedButton( + onPressed: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => widget.TokenType != "post" + ? preFileUpload( + ClientId: + widget.ClientId, // <-- from map + policyTypeId: widget.policyTypeId, + ClientPoliyId: widget.ClientPoliyId, + clientBranchId: widget.clientBranchId, + Token: widget.Token, + TokenType: widget.TokenType, + cardType: widget.cardType, + cardPolicyNo: widget.cardPolicyNo, + cardInsurer_name: + widget.cardInsurer_name, + cardPolicy_name: widget.cardPolicy_name, + cardPolicy_ExpDate: + widget.cardPolicy_ExpDate, + total_premium: widget.total_premium, + + // Token: widget.Token, + // ClientId: widget.ClientId, + // ClientPolicyId : widget.ClientPoliyId, + // PolicyName: widget.cardPolicy_name, + // PolicyNo: widget.cardPolicyNo, + // ClientBranchId: widget.HrId, + // PolicyType: widget.cardType, + ) + : postFileUpload( + ClientId: + widget.ClientId, // <-- from map + policyTypeId: widget.policyTypeId, + ClientPoliyId: widget.ClientPoliyId, + clientBranchId: widget.clientBranchId, + Token: widget.Token, + TokenType: widget.TokenType, + cardType: widget.cardType, + cardPolicyNo: widget.cardPolicyNo, + cardInsurer_name: + widget.cardInsurer_name, + cardPolicy_name: widget.cardPolicy_name, + cardPolicy_ExpDate: + widget.cardPolicy_ExpDate, + total_premium: widget.total_premium, + + // Token: widget.Token, + // ClientId: widget.ClientId, + // ClientPolicyId : widget.ClientPoliyId, + // PolicyName: widget.cardPolicy_name, + // PolicyNo: widget.cardPolicyNo, + // ClientBranchId: widget.HrId, + // PolicyType: widget.cardType, + )), + ); + }, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE26728), + elevation: 0, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), ), - Text( - widget.TokenType == 'pre' - ? "${widget.cardPolicy_name} (${widget.cardPolicy_ExpDate})" - : "${widget.cardInsurer_name} - ${widget.cardPolicy_name} (${widget.cardPolicy_ExpDate})", - style: GoogleFonts.poppins( - color: Colors.grey, - fontSize: 12, - fontWeight: FontWeight.w400, - ), + ), + child: Text( + 'Import', + style: GoogleFonts.poppins( + fontSize: 16, + fontWeight: FontWeight.w700, + color: Colors.white, + letterSpacing: 1, ), - ], + ), + ), + ), + const SizedBox(width: 12), + + /// ⬇️ Export Button + SizedBox( + width: 116, + height: 37, + child: ElevatedButton( + onPressed: () { + exportToCsv(filteredData); + }, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFE26728), + elevation: 0, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + ), + child: Text( + 'Export', + style: GoogleFonts.poppins( + fontSize: 16, + fontWeight: FontWeight.w700, + color: Colors.white, + letterSpacing: 1, + ), + ), ), ), ], - )), - SizedBox( - height: 20, ), - Container( - decoration: BoxDecoration( - color: Colors.white, - borderRadius: - BorderRadius.circular(10), // 👈 set your desired radius + SizedBox(height: 20), + if (widget.TokenType == "pre") ...[_buildStatusSummary()], + if (widget.TokenType == "post") ...[ + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Container( + padding: const EdgeInsets.symmetric( + horizontal: 12, vertical: 8), + decoration: BoxDecoration( + color: Color(0xFFF9EBBD), + borderRadius: BorderRadius.circular(6), + ), + child: Text( + 'Premium - ₹${widget.total_premium ?? ''}*', + style: GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w600, + color: Color(0xFF009195), + ), + ), + ) + ], ), + ], + SizedBox(height: 20), + Container( + // decoration: BoxDecoration( + // color: Colors.white, + // borderRadius: + // BorderRadius.circular(10), // 👈 set your desired radius + // ), // height: 400, // margin: const EdgeInsets.only(left: 40.0, right: 40.0), - padding: const EdgeInsets.all(16.0), + // padding: const EdgeInsets.all(16.0), child: Column( children: [ - Row( - children: [ - Expanded( - flex: 4, - child: Align( - alignment: Alignment.centerLeft, - child: Container( - width: 400, - height: 37, - decoration: BoxDecoration( - color: Color(0xFFF0F0F0), - borderRadius: BorderRadius.circular(8), - ), - child: TextField( - decoration: InputDecoration( - hintText: 'Search', - prefixIcon: Icon(Icons.search, size: 18), - contentPadding: EdgeInsets.symmetric( - horizontal: 12, vertical: 8), - border: InputBorder - .none, // No border since Container handles it - ), - controller: searchController, - onChanged: search, - style: TextStyle(fontSize: 14), - ), - ), - ), - ), - SizedBox(width: 12), - Expanded( - flex: 2, - child: Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - // if (widget.TokenType != "post") - ElevatedButton( - onPressed: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => widget - .TokenType != - "post" - ? excelVerify( - ClientId: widget - .ClientId, // <-- from map - policyTypeId: - widget.policyTypeId, - ClientPoliyId: - widget.ClientPoliyId, - clientBranchId: - widget.clientBranchId, - Token: widget.Token, - TokenType: widget.TokenType, - cardType: widget.cardType, - cardPolicyNo: - widget.cardPolicyNo, - cardInsurer_name: - widget.cardInsurer_name, - cardPolicy_name: - widget.cardPolicy_name, - cardPolicy_ExpDate: - widget.cardPolicy_ExpDate, - - // Token: widget.Token, - // ClientId: widget.ClientId, - // ClientPolicyId : widget.ClientPoliyId, - // PolicyName: widget.cardPolicy_name, - // PolicyNo: widget.cardPolicyNo, - // ClientBranchId: widget.HrId, - // PolicyType: widget.cardType, - ) - : postFileUpload( - ClientId: widget - .ClientId, // <-- from map - policyTypeId: - widget.policyTypeId, - ClientPoliyId: - widget.ClientPoliyId, - clientBranchId: - widget.clientBranchId, - Token: widget.Token, - TokenType: widget.TokenType, - cardType: widget.cardType, - cardPolicyNo: - widget.cardPolicyNo, - cardInsurer_name: - widget.cardInsurer_name, - cardPolicy_name: - widget.cardPolicy_name, - cardPolicy_ExpDate: - widget.cardPolicy_ExpDate, - - // Token: widget.Token, - // ClientId: widget.ClientId, - // ClientPolicyId : widget.ClientPoliyId, - // PolicyName: widget.cardPolicy_name, - // PolicyNo: widget.cardPolicyNo, - // ClientBranchId: widget.HrId, - // PolicyType: widget.cardType, - )), - ); - // exportToCsv(filteredData); - }, - style: ElevatedButton.styleFrom( - backgroundColor: Color(0xFFE26728), - padding: - EdgeInsets.all(10), // Internal padding - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular( - 10), // Border radius - side: BorderSide( - color: Colors - .transparent, // Optional border color - width: 1, // Border width - ), - ), - elevation: 0, - ), - child: Text( - 'Import', - style: GoogleFonts.poppins( - fontSize: 12, - color: Color(0xFFFFFFFF), - fontWeight: FontWeight.w500, - letterSpacing: 1), - ), - ), - SizedBox( - width: 10, - ), - ElevatedButton( - onPressed: () { - exportToCsv(filteredData); - }, - style: ElevatedButton.styleFrom( - backgroundColor: Color(0xFFE26728), - padding: - EdgeInsets.all(10), // Internal padding - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular( - 10), // Border radius - side: BorderSide( - color: Colors - .transparent, // Optional border color - width: 1, // Border width - ), - ), - elevation: 0, - ), - child: Text( - 'Export', - style: GoogleFonts.poppins( - fontSize: 12, - color: Color(0xFFFFFFFF), - fontWeight: FontWeight.w500, - letterSpacing: 1), - ), - ), - ], - ), - ), - ], - ), - SizedBox(height: 20), Row( children: [ Expanded( @@ -630,30 +761,81 @@ class _HrPolicyDetailsState extends State ], ), ), + Positioned( + bottom: 12, + right: 16, + child: Text( + '(* Premium may vary subject to claims)', + textAlign: TextAlign.right, + style: GoogleFonts.poppins( + fontSize: 11, + color: Colors.red, + fontStyle: FontStyle.italic, + ), + ), + ), ], ), - ), - ), + ); + } - if (isLoading) - Container( - color: Color(0x98FFFCE5), // Semi-transparent background - child: Center( - child: // Your GIF loader widget - Image.asset( - height: 60, - width: 60, - 'assets/nhance-loader.gif'), // Adjust path to your GIF loader + Map getFixedStatusCounts() { + int draftCount = 0; + int enrolledCount = 0; + + for (final item in filteredData) { + final status = item['status']?.toString().toLowerCase(); + + if (status == 'draft') { + draftCount++; + } else if (status == 'enrolled') { + enrolledCount++; + } + } + + return { + 'draft': draftCount, + 'enrolled': enrolledCount, + 'total': filteredData.length, + }; + } + + Widget _buildStatusSummary() { + if (filteredData.isEmpty) { + return const SizedBox(); + } + + final statusCounts = getFixedStatusCounts(); + final List order = ['draft', 'enrolled', 'total']; + + return SizedBox( + height: 34, + child: ListView.separated( + scrollDirection: Axis.horizontal, + itemCount: order.length, + separatorBuilder: (_, __) => const SizedBox(width: 10), + itemBuilder: (context, index) { + final status = order[index]; + final count = statusCounts[status] ?? 0; + final color = getStatusColor(status); + + return Container( + padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 8), + decoration: BoxDecoration( + color: color, + borderRadius: BorderRadius.circular(6), ), - ), - Align( - alignment: Alignment.bottomCenter, - child: Container( - width: double.infinity, // Make the footer full width - child: CustomFooter(), - ), - ), - ]), + child: Text( + '${status.toUpperCase()} - $count', + style: GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w600, + color: Colors.black, + ), + ), + ); + }, + ), ); } @@ -687,6 +869,13 @@ class _HrPolicyDetailsState extends State ); } + final currentPageIds = _paginatedData + .map((e) => e['id']?.toString()) + .whereType() + .toList(); + + + return Container( child: Column( crossAxisAlignment: CrossAxisAlignment.start, @@ -700,6 +889,25 @@ class _HrPolicyDetailsState extends State padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16), child: Row( children: [ + if (widget.TokenType == 'post' && + widget.is_ecard_bulk_download_for_employee == 1) + SizedBox( + width: 40, + child: Checkbox( + value: currentPageIds.isNotEmpty && + currentPageIds.every(selectedEmployeeIds.contains), + onChanged: (checked) { + setState(() { + if (checked == true) { + selectedEmployeeIds.addAll(currentPageIds); + } else { + selectedEmployeeIds.removeAll(currentPageIds); + } + }); + }, + ), + + ), Expanded( flex: 3, child: Text( @@ -799,12 +1007,6 @@ class _HrPolicyDetailsState extends State const SizedBox(height: 6), - // Table body rows - // ...filteredData.mapIndexed((index, item) { - - // Expanded( - // child: - SingleChildScrollView( scrollDirection: Axis.vertical, child: Column( @@ -815,19 +1017,42 @@ class _HrPolicyDetailsState extends State padding: const EdgeInsets.symmetric(vertical: 5, horizontal: 16), decoration: BoxDecoration( - color: Colors.white, + // color: Colors.white, border: Border( bottom: BorderSide( // color: Color(0xFFA1A1A1), - color: Color(0xFFD7E9EB), + color: Color(0xFFA9D9DE), width: 1, ), ), // color: index % 2 == 0 ? Color(0xFFE6FAFB) : Colors.white, - borderRadius: BorderRadius.circular(6), + // borderRadius: BorderRadius.circular(6), ), child: Row( children: [ + if (widget.TokenType == 'post' && + widget.is_ecard_bulk_download_for_employee == 1) + SizedBox( + width: 40, + child: Checkbox( + value: selectedEmployeeIds + .contains(item['id']?.toString()), + onChanged: (checked) { + setState(() { + final id = item['id']?.toString(); + if (id == null) return; + + if (checked == true) { + selectedEmployeeIds.add(id); + } else { + selectedEmployeeIds.remove(id); + } + }); + }, + ), + + ), + Expanded( flex: 3, child: Column( @@ -919,11 +1144,11 @@ class _HrPolicyDetailsState extends State padding: const EdgeInsets.symmetric( horizontal: 4, vertical: 4), decoration: BoxDecoration( - color: Color(0xFF7BD9B6), + color: getStatusColor(item['status'] ?? ''), // color: (item['emp_is_active'] == "1") // ? Color(0xFF7BD9B6) // : Color(0xFFFFA6A6), - borderRadius: BorderRadius.circular(6), + borderRadius: BorderRadius.circular(10), ), child: Align( alignment: Alignment.center, @@ -938,92 +1163,104 @@ class _HrPolicyDetailsState extends State ), ), ), - - if (widget.TokenType != "pre" && (hasAnyEcardLink || hasModule)) -Expanded( - flex: 3, - child: Builder( - builder: (context) { - final isSelf = item['relationship'] == 'Self'; - final hasEcard = item['ecard_download_link'] != null; - final showEcard = isSelf && hasEcard; - final showClaim = widget.TokenType == "post" && hasModule; - if (!showEcard && !showClaim) { - return SizedBox(); // No icon to show - } + if (widget.TokenType != "pre" && + (hasAnyEcardLink || hasModule)) + Expanded( + flex: 3, + child: Builder( + builder: (context) { + final isSelf = item['relationship'] == 'Self'; + final hasEcard = + item['ecard_download_link'] != null; + final showEcard = isSelf && hasEcard; + final showClaim = + widget.TokenType == "post" && hasModule; - return Row( - mainAxisAlignment: showEcard && !showClaim - ? MainAxisAlignment.start // Only eCard, push to right - : MainAxisAlignment.end, // eCard + claim OR only claim - children: [ - if (showEcard) - Padding( - padding: const EdgeInsets.symmetric(horizontal: 4.0), - child: GestureDetector( - onTap: () { - getEcardDownload(item['emp_code'],item['employee_id'],item['client_policy_id'],item['policy_no']); - }, - child: Container( - height: 40, - width: 40, - decoration: BoxDecoration( - color: Color(0xFFE6F5F6), - borderRadius: BorderRadius.circular(8), - ), - child: Padding( - padding: EdgeInsets.all(4), - child: Image.asset( - 'assets/credit_card.png', - fit: BoxFit.contain, - ), - ), - ), - ), - ), + if (!showEcard && !showClaim) { + return SizedBox(); // No icon to show + } - if (showEcard && showClaim) SizedBox(width: 8), + return Row( + mainAxisAlignment: showEcard && !showClaim + ? MainAxisAlignment + .start // Only eCard, push to right + : MainAxisAlignment + .end, // eCard + claim OR only claim + children: [ + if (showEcard) + Padding( + padding: const EdgeInsets.symmetric( + horizontal: 4.0), + child: GestureDetector( + onTap: () { + getEcardDownload( + item['emp_code'], + item['employee_id'], + item['client_policy_id'], + item['policy_no']); + }, + child: Container( + height: 40, + width: 40, + decoration: BoxDecoration( + color: Color(0xFFE6F5F6), + borderRadius: + BorderRadius.circular(8), + ), + child: Padding( + padding: EdgeInsets.all(4), + child: Image.asset( + 'assets/credit_card.png', + fit: BoxFit.contain, + ), + ), + ), + ), + ), + if (showEcard && showClaim) + SizedBox(width: 8), + if (showClaim) + Padding( + padding: const EdgeInsets.symmetric( + horizontal: 4.0), + child: GestureDetector( + onTap: () { + // Navigator.push( + // context, + // MaterialPageRoute( + // builder: (context) => hrDashboard( + // selectedIndex: 3, + // empCodeFromHrPolicy: item['emp_code']!, + // isHrcode: 1, + // ), + // ), + // ); + }, + child: Container( + height: 40, + width: 40, + decoration: BoxDecoration( + color: Color(0xFFE6F5F6), + borderRadius: + BorderRadius.circular(8), + ), + child: Padding( + padding: EdgeInsets.all(4), + child: Image.asset( + 'assets/claim.png', + fit: BoxFit.contain, + ), + ), + ), + ), + ), + ], + ); + }, + ), + ), - if (showClaim) - Padding( - padding: const EdgeInsets.symmetric(horizontal: 4.0), - child: GestureDetector( - onTap: () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => hrDashboard( - selectedIndex: 3, - empCodeFromHrPolicy: item['emp_code']!, - isHrcode: 1, - ), - ), - ); - }, - child: Container( - height: 40, - width: 40, - decoration: BoxDecoration( - color: Color(0xFFE6F5F6), - borderRadius: BorderRadius.circular(8), - ), - child: Padding( - padding: EdgeInsets.all(4), - child: Image.asset( - 'assets/claim.png', - fit: BoxFit.contain, - ), - ), - ), - ), - ), - ], - ); - }, - ), -), - // (hasAnyEcardLink || hasModule)) // Expanded( // flex: 3, diff --git a/lib/presentation/policies.dart b/lib/presentation/policies.dart new file mode 100644 index 0000000..475779e --- /dev/null +++ b/lib/presentation/policies.dart @@ -0,0 +1,987 @@ +import 'dart:convert'; +import 'package:flutter/cupertino.dart'; +import 'package:flutter/gestures.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/widgets.dart'; +import 'package:google_fonts/google_fonts.dart'; +import 'package:jwt_decode/jwt_decode.dart'; +import 'package:nhancepolicy/responsive.dart'; +import 'package:nhancepolicy/service/api_service.dart'; +import 'package:nhancepolicy/service/hrDashboardTabs/activePolicies.dart'; +import 'package:nhancepolicy/service/hrDashboardTabs/cd.dart'; +import 'package:nhancepolicy/presentation/claims.dart'; +import 'package:nhancepolicy/service/hrDashboardTabs/preEnrollment.dart'; +import 'package:nhancepolicy/service/token_storage_service.dart'; +import 'package:http/http.dart' as http; +import 'package:universal_html/html.dart' as html; +import 'package:intl/intl.dart'; + +import '../config/environment.dart'; +import '../customAppBar/base_layout.dart'; +import '../customAppBar/toastHelper.dart'; +import 'hrPolicyDetails.dart'; + +class policies extends StatefulWidget { + const policies({Key? key}) : super(key: key); + + @override + State createState() => _policiesState(); +} + + +class _policiesState extends State + with SingleTickerProviderStateMixin { + late ApiService apiService; + bool isLoading = false; + int isHrcode = 0; + + String? _postPreToken = ''; + + dynamic enrollmentClient_id; + dynamic policy_name; + dynamic getPreCardArrays = []; + dynamic getPostCardArrays = []; + + dynamic empClientBranchId; + dynamic empHrId; + int stausVal = 1; + int selectedIndex = 1; + + dynamic enrollmentEmpClientBranchId; + dynamic enrollmentHrId; + dynamic empClientId; + String empCodeFromHrPolcy = ''; + + List> openForEnrollmentList = []; + List> activePoliciesList = []; + + final tokenService = TokenStorageService(); + List postModules = []; + List enrollmentModules = []; + + + @override + void initState() { + super.initState(); + apiService = ApiService(context); // Initialize ApiService here + checkToken(); + // empCodeFromHrPolcy = widget.empCodeFromHrPolicy; + + // _tabController = TabController(length: 4, vsync: this); + // _tabController.addListener(() { + // setState(() { + // selectedIndex = _tabController.index; + // }); + // }); + // Future.delayed(Duration(seconds: 3), () { + // setState(() { + // isLoading = false; + // }); + // }); + } + + @override + void dispose() { + super.dispose(); + } + + checkToken() async { + // enrollToken = prefs.getString('pre_enrollment_data'); + // _postToken = prefs.getString('post_enrollment_data'); + + // Get the current token + final token = await tokenService.getCurrentToken(); + print('token - $token'); + + print('token check in'); + if ((token != null && token!.isNotEmpty)) { + print('token check done'); + _loadToken(); + } else { + print('token check reject'); + ToastHelper.showErrorToast(context, 'Session Out'); + Navigator.pushReplacementNamed(context, 'hrLogin'); + } + } + + Future _loadToken() async { + final enrollmentRaw = await tokenService.readValue('enrollmentAllowed_modules'); // "[1]" + final postRaw = await tokenService.readValue('empAllowed_modules'); // "[2,3,4]" + + // ✅ Decode safely + enrollmentModules = enrollmentRaw != null && enrollmentRaw.isNotEmpty + ? List.from(jsonDecode(enrollmentRaw)) + : []; + + postModules = postRaw != null && postRaw.isNotEmpty + ? List.from(jsonDecode(postRaw)) + : []; + + print('enrollmentModules $enrollmentModules'); + print('postModules $postModules'); + + _postPreToken = await tokenService.getCurrentToken(); + print(_postPreToken); + + if (enrollmentModules.contains(1)) { + enrollmentClient_id = await tokenService.readValue('enrollmentClient_id'); + enrollmentEmpClientBranchId = + await tokenService.readValue('enrollmentEmpClientBranchId'); + enrollmentHrId = await tokenService.readValue('enrollmentHrId'); + + await getPreCashDepositDetails(enrollmentEmpClientBranchId, + enrollmentClient_id, enrollmentHrId, _postPreToken); + } + + if (postModules.contains(2)) { + empClientId = await tokenService.readValue('empClientId'); + empClientBranchId = await tokenService.readValue('empClientBranchId'); + empHrId = await tokenService.readValue('empHrId'); + + await getPostCashDepositDetails(empClientBranchId, empClientId, empHrId, _postPreToken); + } + + } + + Future getPreCashDepositDetails(enrollmentEmpClientBranchId, + enrollmentClient_id, enrollmentHrId, _postPreToken) async { + print('IN'); + print("clintBranchId -$enrollmentEmpClientBranchId"); + print("clintID -$enrollmentClient_id"); + print("hr_id -$enrollmentHrId"); + print("token -$_postPreToken"); + + isLoading = true; + // setState(() { + // _isLoading = true; + // }); + try { + if (enrollmentEmpClientBranchId == null || enrollmentClient_id == null) { + return; + } + final response = await apiService.getCashDepositDetailsToApi( + enrollmentClient_id!, + enrollmentEmpClientBranchId!, + enrollmentHrId, + _postPreToken); + + // final response = await apiService.getCashDepositDetailsToApi( + // clintID!, clintBranchId!, hr_id, token); + print('IN1'); + if (response['status'] == 'success') { + isLoading = false; + setState(() { + print('response'); + print(response['data']); + getPreCardArrays = List>.from(response['data']); + print('getPreCardArrays'); + print(getPreCardArrays); + openForEnrollmentList = getPreCardArrays; + }); + + print('IN2'); + } else { + print('API request failed with status'); + } + } catch (e) { + print('Exception occurred: $e'); + } + } + + Future getPostCashDepositDetails( + empClientBranchId, empClientId, empHrId, _postPreToken) async { + print('IN'); + print("clintBranchId -$empClientBranchId"); + print("clintID -$empClientId"); + print("hr_id -$empHrId"); + print("token -$_postPreToken"); + + isLoading = true; + // setState(() { + // _isLoading = true; + // }); + try { + if (empClientBranchId == null || empClientId == null) { + return; + } + final response = await apiService.getActiveCashDepositDetailsToApi( + empClientId!, empClientBranchId!, empHrId, _postPreToken, stausVal); + + // final response = await apiService.getCashDepositDetailsToApi( + // clintID!, clintBranchId!, hr_id, token); + print('IN1'); + if (response['status'] == 'success') { + isLoading = false; + setState(() { + print('response'); + print(response['data']); + getPostCardArrays = List>.from(response['data']); + print('getPostCardArrays'); + print(getPostCardArrays); + + activePoliciesList = getPostCardArrays; + }); + + print('IN2'); + } else { + isLoading = false; + print('API request failed with status'); + setState(() { + activePoliciesList = []; + }); + print('API request failed with status'); + } + } catch (e) { + print('Exception occurred: $e'); + } + } + + Future _showLogoutDialog() async { + return await showDialog( + context: context, + barrierDismissible: false, + builder: (context) => AlertDialog( + title: Text("Confirm Logout"), + content: Text("Do you want to logout?"), + actions: [ + TextButton( + onPressed: () => Navigator.of(context).pop(false), + child: Text("Cancel"), + ), + TextButton( + onPressed: () => apiService.logout(), + child: Text("Logout"), + ), + ], + ), + ) ?? + false; + } + + + + Future getEcardBulkDownload(clientPolicyId) async { + try { + print('10'); + empHrId = await tokenService.readValue('empHrId'); + final response = await apiService.getEcardBulkDownloadApi(clientPolicyId,empHrId,'',_postPreToken!); + if (response['status'] == true) { + print('Request success'); + _showBulkDownloadSuccessPopup(response['message']); + } else { + ToastHelper.showErrorToast(context, response['message']); + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + print('Exception occurred: $e'); + } + } + + void _showBulkDownloadSuccessPopup(String message) { + showDialog( + context: context, + barrierDismissible: false, + builder: (context) { + return AlertDialog( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(16), + ), + content: Column( + mainAxisSize: MainAxisSize.min, + children: [ + const Icon( + Icons.check_circle, + color: Color(0xFF009195), + size: 60, + ), + const SizedBox(height: 16), + Text( + message, + textAlign: TextAlign.center, + style: const TextStyle( + fontSize: 14, + fontWeight: FontWeight.w500, + ), + ), + const SizedBox(height: 24), + SizedBox( + width: double.infinity, + child: ElevatedButton( + onPressed: () => Navigator.pop(context), + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFF009195), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(8), + ), + ), + child: Text('OK',style: GoogleFonts.poppins( + color: Colors.white + ),), + ), + ), + ], + ), + ); + }, + ); + } + + + @override + Widget build(BuildContext context) { + return BaseLayout( + child: PopScope( + canPop: false, // 🚫 block default back + onPopInvoked: (didPop) async { + bool logout = await _showLogoutDialog(); + if (logout) { + await apiService.logout(); + if (!mounted) return; + Navigator.pushNamedAndRemoveUntil( + context, + 'hrLogin', + (route) => false, + ); + } + }, + child: buildPoliciesBody( + openEnrollment: openForEnrollmentList, + activePolicies: activePoliciesList, + ), + ), + ); + } + + Widget buildPoliciesBody({ + required List> openEnrollment, + required List> activePolicies, + }) { + return Scaffold( + body: SingleChildScrollView( + + // padding: const EdgeInsets.all(20), + child: Container( + color: const Color(0xFFF5F7F7), // 👈 same light grey as dashboard + // padding: const EdgeInsets.all(20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + IconButton( + onPressed: () { + _showLogoutDialog(); + }, + icon: const Icon( + Icons.arrow_back_ios, + size: 20, + color: Colors.black, + ), + padding: EdgeInsets.zero, + constraints: const BoxConstraints(), + ), + const SizedBox(width: 5), + Text( + 'Policies', + style: GoogleFonts.poppins( + fontSize: 22, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + ), + ], + ), + if(enrollmentModules.contains(1))...[ + SizedBox(height: 15), + Container( + width: double.infinity, + height: 300, + padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(6), + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + /// ================= OPEN FOR ENROLLMENT ================= + const Text( + 'Open for Enrollment', + style: TextStyle(fontSize: 14, fontWeight: FontWeight.w600), + ), + const SizedBox(height: 14), + + Container( + width: double.infinity, + // padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + // color: Colors.white, + borderRadius: BorderRadius.circular(6), + // border: Border.all(color: Colors.black12), + ), + child: openEnrollment.isEmpty + ? _EmptyBox('No policies open for enrollment') + : _PolicyGrid( + policies: openEnrollment, isEnrollment: true), + ), + + const SizedBox(height: 24), + ], + ), + ), + ], + if(postModules.contains(2))...[ + SizedBox(height: 20), + Container( + width: double.infinity, + height: 300, + padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(6), + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + /// ================= ACTIVE POLICIES HEADER ================= + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + const Text( + 'Active Policies', + style: TextStyle( + fontSize: 14, fontWeight: FontWeight.w600), + ), + _ActiveExpiredToggle( + selectedIndex: selectedIndex, + onChange: (value) async { + setState(() { + selectedIndex = value; + stausVal = value == 1 ? 1 : 0; + }); + + empClientId = + await tokenService.readValue('empClientId'); + empClientBranchId = + await tokenService.readValue('empClientBranchId'); + empHrId = await tokenService.readValue('empHrId'); + + await getPostCashDepositDetails( + empClientBranchId, + empClientId, + empHrId, + _postPreToken, + ); + }, + ), + ], + ), + const SizedBox(height: 14), + + Container( + width: double.infinity, + // padding: const EdgeInsets.all(16), + decoration: BoxDecoration( + // color: Colors.white, + borderRadius: BorderRadius.circular(6), + // border: Border.all(color: Colors.black12), + ), + child: activePolicies.isEmpty + ? _EmptyBox('No Active policies') + : _PolicyGrid( + policies: activePolicies, + isEnrollment: false,onBulkDownload: (clientPolicyId) { + getEcardBulkDownload(clientPolicyId); + } + ), + ), + + const SizedBox(height: 10), + + const Align( + alignment: Alignment.bottomRight, + child: Text( + '* Premium may vary subject to claims', + style: TextStyle(fontSize: 10, color: Colors.red), + ), + ), + ], + ), + ), + ] + + ], + ), + )), + ); + } +} + +class _PolicyGrid extends StatelessWidget { + final List> policies; + final bool isEnrollment; + final Function(String clientPolicyId)? onBulkDownload; + + const _PolicyGrid({ + super.key, + required this.policies, + required this.isEnrollment, + this.onBulkDownload, + }); + + @override + Widget build(BuildContext context) { + final tokenService = TokenStorageService(); + + return GridView.builder( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + gridDelegate: SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 4, // desktop + crossAxisSpacing: 16, + mainAxisSpacing: 16, + childAspectRatio: isEnrollment ? 2.8 : 2.2, + ), + itemCount: policies.length, + itemBuilder: (context, index) { + final data = policies[index]; + + return isEnrollment + ? _EnrollmentPolicyCardNew( + data: data, + onTap: () async { + final String? token = await tokenService.getCurrentToken(); + final String? enrollmentClientId = await tokenService.readValue('enrollmentClient_id'); + final String? enrollmentBranchId = await tokenService.readValue('enrollmentEmpClientBranchId'); + + // ✅ SAFETY CHECK + if (token == null || + enrollmentClientId == null || + enrollmentBranchId == null) { + debugPrint('❌ Missing required data for navigation ${token}'); + return; + } + + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => hrPolicyDetails( + ClientId: enrollmentClientId, // ✅ now String + policyTypeId: data['policy_type_id'].toString(), + ClientPoliyId: data['client_policy_id'].toString(), + clientBranchId: enrollmentBranchId, // ✅ now String + Token: token, // ✅ now String + TokenType: "pre", + cardType: data['type'].toString(), + cardPolicyNo: data['policy_no'].toString(), + cardInsurer_name: data['insurer_short_name'].toString(), + cardPolicy_name: data['policy_name'].toString(), + cardPolicy_ExpDate: data['policy_expiry_date'].toString(), + total_premium: '', + is_ecard_bulk_download_for_employee: 0 + ), + ), + ); + }, + ) + : _ActivePolicyCardNew( + data: data, + onBulkDownload: onBulkDownload, + onTap: () async { + final String? token = await tokenService.getCurrentToken(); + final String? empClientId = await tokenService.readValue('empClientId'); + final String? empBranchId = await tokenService.readValue('empClientBranchId'); + + // ✅ SAFETY CHECK + if (token == null || + empClientId == null || + empBranchId == null) { + debugPrint('❌ Missing required data for navigation ${token}'); + return; + } + + print('$token , $empClientId, $empBranchId'); + print(data); + // return; + + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => hrPolicyDetails( + ClientId: empClientId, // <-- from map + policyTypeId: data['policy_type_id'].toString(), // <-- from map + ClientPoliyId: data['client_policy_id'].toString(), + clientBranchId: empBranchId, + Token: token, + TokenType: 'post', + cardType: data['type'].toString(), + cardPolicyNo: data['policy_no'].toString(), + cardInsurer_name: data['insurer_short_name'].toString(), + cardPolicy_name: data['policy_name'].toString(), + cardPolicy_ExpDate: data['policy_expiry_date'].toString(), + total_premium: data['total_premium'].toString(), + is_ecard_bulk_download_for_employee : data['is_ecard_bulk_download_for_employee'], + ), + ), + ); + }, + ); + }, + ); + } +} + +class _EnrollmentPolicyCardNew extends StatelessWidget { + final Map data; + final VoidCallback? onTap; + + const _EnrollmentPolicyCardNew({ + required this.data, + this.onTap, + }); + + @override + Widget build(BuildContext context) { + return MouseRegion( + cursor: SystemMouseCursors.click, // 👈 pointer on hover + child: InkWell( + borderRadius: BorderRadius.circular(12), + onTap: onTap, // 👈 card click + child: Container( + decoration: BoxDecoration( + color: const Color(0xFFE9F6FB), + borderRadius: BorderRadius.circular(12), + ), + padding: const EdgeInsets.all(14), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + /// Policy Number + Text( + data['policy_no'] ?? '', + style: const TextStyle( + fontSize: 15, + fontWeight: FontWeight.w600, + ), + ), + + const SizedBox(height: 4), + + /// Insurer + Text( + data['insurer_name'] ?? '', + style: const TextStyle( + fontSize: 12, + color: Colors.grey, + ), + ), + + const SizedBox(height: 4), + + /// Closes On + Text( + 'Closes on: ${data['policy_expiry_date'] ?? ''}', + style: const TextStyle( + fontSize: 12, + color: Colors.red, + ), + ), + + const SizedBox(height: 10), + + /// STATUS ROW + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + _StatusPillCount( + label: 'Draft', + value: data['membersCountOfDraft'] ?? 0, + color: Colors.orange, + ), + _StatusPillCount( + label: 'Enrolled', + value: data['membersCountOfEnrolled'] ?? 0, + color: Colors.blue, + ), + _StatusPillCount( + label: 'Total', + value: data['totalMembersCount'] ?? 0, + color: Colors.green, + ), + ], + ), + ], + ), + ), + ), + ); + } +} + +class _ActivePolicyCardNew extends StatelessWidget { + final Map data; + final VoidCallback? onTap; + final Function(String clientPolicyId)? onBulkDownload; + + const _ActivePolicyCardNew({required this.data, this.onTap,this.onBulkDownload,}); + + @override + Widget build(BuildContext context) { + return MouseRegion( + cursor: SystemMouseCursors.click, // 👈 pointer on hover + child: InkWell( + borderRadius: BorderRadius.circular(12), + onTap: onTap, // 👈 card click + child: Container( + decoration: BoxDecoration( + color: const Color(0xFFE9F6FB), + borderRadius: BorderRadius.circular(12), + ), + padding: const EdgeInsets.all(14), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + /// PREMIUM + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Expanded( + child: Text( + 'Premium - ₹${data['total_premium'] ?? ''}*', + style: GoogleFonts.poppins( + fontSize: 12, + color: Color(0xFF009195), + fontWeight: FontWeight.w600, + ), + ), + ), + // 🔥 ICON FLOATING ABOVE CARD + if (data['is_ecard_bulk_download'] == 1) + Positioned( + top: 10, + right: 10, + child: GestureDetector( + onTap: () { + print('ICON CLICKED ${data['client_policy_id']}'); + onBulkDownload?.call( + data['client_policy_id'].toString(), + ); + }, + child: Container( + padding: const EdgeInsets.all(6), + decoration: BoxDecoration( + color: const Color(0xFF009195), + borderRadius: BorderRadius.circular(6), + ), + child: const Icon( + Icons.credit_card, + color: Colors.white, + size: 16, + ), + ), + ), + ), + + + ], + ), + + const SizedBox(height: 4), + + /// POLICY NO + ICON + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Expanded( + child: Text( + data['policy_no'] ?? '', + style: const TextStyle( + fontSize: 16, + fontWeight: FontWeight.w700, + ), + overflow: TextOverflow.ellipsis, + ), + ), + ], + ), + + const SizedBox(height: 4), + + /// INSURER + Text( + data['insurer_name'] ?? '', + style: const TextStyle( + fontSize: 12, + color: Colors.grey, + ), + ), + + const SizedBox(height: 4), + + /// DATE RANGE + Text( + '${data['policy_start_date'] ?? ''} - ${data['policy_expiry_date'] ?? ''}', + style: const TextStyle( + fontSize: 12, + color: Color(0xFF8A9B0F), + ), + ), + + const SizedBox(height: 10), + + /// ACTIVE / INACTIVE + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + _StatusPillCount( + label: 'Active', + value: data['membersCountOfActive'] ?? 0, + color: Colors.green, + ), + _StatusPillCount( + label: 'Inactive', + value: data['membersCountOfInactive'] ?? 0, + color: Colors.red, + ), + ], + ), + ], + ), + ) + ) + + ); + } +} + +class _StatusPillCount extends StatelessWidget { + final String label; + final int value; + final Color color; + + const _StatusPillCount({ + required this.label, + required this.value, + required this.color, + }); + + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.symmetric(horizontal: 18, vertical: 5), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(20), + ), + child: Row( + children: [ + Text( + label, + style: TextStyle(fontSize: 13, color: color), + ), + const SizedBox(width: 8), + Text( + value.toString(), + style: TextStyle( + fontSize: 14, + fontWeight: FontWeight.bold, + color: color, + ), + ), + ], + ), + ); + } +} + +class _ActiveExpiredToggle extends StatelessWidget { + final int selectedIndex; + final Function(int) onChange; + + const _ActiveExpiredToggle({ + required this.selectedIndex, + required this.onChange, + }); + + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.all(3), + decoration: BoxDecoration( + color: const Color(0xFFE6F4F3), + borderRadius: BorderRadius.circular(20), + ), + child: Row( + children: [ + _ToggleItem( + label: 'Active', + active: selectedIndex == 1, + onTap: () => onChange(1), + ), + _ToggleItem( + label: 'Expired', + active: selectedIndex == 2, + onTap: () => onChange(2), + ), + ], + ), + ); + } +} + +class _ToggleItem extends StatelessWidget { + final String label; + final bool active; + final VoidCallback onTap; + + const _ToggleItem({ + required this.label, + required this.active, + required this.onTap, + }); + + @override + Widget build(BuildContext context) { + return InkWell( + onTap: onTap, + child: Container( + padding: const EdgeInsets.symmetric(horizontal: 18, vertical: 6), + decoration: BoxDecoration( + color: active ? const Color(0xFF009195) : Colors.transparent, + borderRadius: BorderRadius.circular(16), + ), + child: Text( + label, + style: TextStyle( + fontSize: 11, + color: active ? Colors.white : Colors.black, + fontWeight: FontWeight.w500, + ), + ), + ), + ); + } +} + +class _EmptyBox extends StatelessWidget { + final String text; + + const _EmptyBox(this.text); + + @override + Widget build(BuildContext context) { + return Container( + height: 180, + width: double.infinity, + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(6), + border: Border.all(color: Colors.black12), + ), + child: Center( + child: Text(text, style: const TextStyle(color: Colors.grey)), + ), + ); + } +} diff --git a/lib/presentation/postFileUpload.dart b/lib/presentation/postFileUpload.dart new file mode 100755 index 0000000..edfcc88 --- /dev/null +++ b/lib/presentation/postFileUpload.dart @@ -0,0 +1,1220 @@ +import 'dart:typed_data'; +import 'package:flutter/material.dart'; +import 'package:font_awesome_flutter/font_awesome_flutter.dart'; +import 'package:google_fonts/google_fonts.dart'; +import 'package:jwt_decode/jwt_decode.dart'; +import 'package:nhancepolicy/customAppBar/customAppBar.dart'; +import 'dart:convert'; +import 'dart:async'; +import 'package:http/http.dart' as http; +import 'package:nhancepolicy/customAppBar/toastHelper.dart'; +import 'package:nhancepolicy/presentation/excelVerification.dart'; +import 'package:nhancepolicy/presentation/hrPolicyDetails.dart'; +import 'package:nhancepolicy/service/api_service.dart'; +import 'package:nhancepolicy/service/token_storage_service.dart'; +import 'package:universal_html/html.dart' as html; +import 'package:flutter/foundation.dart' show kIsWeb; +import 'dart:io'; +import 'package:intl/intl.dart'; +import 'package:csv/csv.dart'; + +import 'package:spreadsheet_decoder/spreadsheet_decoder.dart'; +import 'package:url_launcher/url_launcher.dart'; + +import '../config/environment.dart'; +import '../customAppBar/base_layout.dart'; +import '../customAppBar/customFooter.dart'; + +class postFileUpload extends StatefulWidget { + final String ClientId; + final String policyTypeId; + final String ClientPoliyId; + final String clientBranchId; + final String Token; + final String TokenType; + final String cardType; + final String cardPolicyNo; + final String cardInsurer_name; + final String cardPolicy_name; + final String cardPolicy_ExpDate; + final String total_premium; + const postFileUpload( + {Key? key, + required this.ClientId, + required this.policyTypeId, + required this.ClientPoliyId, + required this.clientBranchId, + required this.Token, + required this.TokenType, + required this.cardType, + required this.cardPolicyNo, + required this.cardInsurer_name, + required this.cardPolicy_name, + required this.cardPolicy_ExpDate, + required this.total_premium + }) + : super(key: key); + + @override + State createState() => _postFileUploadState(); +} + +class _postFileUploadState extends State { + final tokenService = TokenStorageService(); + Uint8List? fileBytes; + Uint8List? fileBytes2; + late String _token; + dynamic getPolicyNo; + bool _isLoading = false; + dynamic getPolicyNameDetails; + dynamic clintID; + String? fileName; + int _currentStep = 0; // Step index tracker + List dataPolicy = []; + dynamic validationArray = []; + dynamic missingColumnErrorMsg = 0; + dynamic columnIndexMismatchCount = 0; + dynamic columnMissingCount = 0; + List> extractedData = []; + dynamic argumentsData; + List> originalData = []; // Original data source + List> filteredData = []; // Filtered data source + List> tableData = []; // Filtered data source + + List> nonExcelFilteredData = []; + dynamic invalidRelationships = 0; + dynamic dobAgeCheckCount = 0; + dynamic empRefId; + dynamic empPrimaryId; + dynamic empClientId; + List> getFileUploadMasterList = []; + dynamic getThrFileList = []; + late int excelValidationStaus = 1; + bool isSuccess = false; + String successContent = ''; + bool isLoading = false; + late ApiService apiService; + TextEditingController searchController = TextEditingController(); + String? _selectedOption; + final List _allowedExtensions = ['xlsx', 'xls']; + + + int _currentPage = 1; + int _rowsPerPage = 5; + + List get _paginatedData { + final startIndex = (_currentPage - 1) * _rowsPerPage; + final endIndex = + (_currentPage * _rowsPerPage).clamp(0, filteredData.length); + return filteredData.sublist(startIndex, endIndex); + } + + final List> serviceList = [ + {"id": 1, "name": "Sales"}, + {"id": 2, "name": "Service"}, + ]; + + String? selectedKey; + String? selectedValue; + String? _selectedAction; + + @override + void initState() { + super.initState(); + apiService = ApiService(context); + _loadToken(); + getFileUploadMasterDetails(); + getFileListDetails(); + } + + @override + void dispose() { + super.dispose(); + html.window.localStorage.remove('fileBytes'); + } + + Future _loadToken() async { + // final token = prefs.getString('hrtoken'); + final token = widget.Token; + if (token != null && token.isNotEmpty) { + setState(() { + _token = token; + }); + Map? decodedToken = Jwt.parseJwt(token); + print('decodedToken $decodedToken'); + } else { + // Token is empty or null, handle accordingly (e.g., navigate to login screen) + // For now, let's navigate to the login screen + ToastHelper.showErrorToast(context, 'Session Out'); + Navigator.pushReplacementNamed(context, 'hrLogin'); + } + } + + // Future getPolicyDetails() async { + // setState(() { + // clientPolicyId = argumentsData['client_policy_id']; + // clientId = argumentsData['client_id']; + // policyType = argumentsData['type']; + // policy_name = argumentsData['policy_name']; + // }); + // } + + // Future _uploadFile1(importPolicyName) async { + // FilePickerResult? result = await FilePicker.platform.pickFiles( + // type: FileType.custom, + // allowedExtensions: ['xlsx', 'xls', 'csv'], + // ); + // + // if (result != null) { + // PlatformFile file = result.files.first; + // Uint8List fileBytes = file.bytes!; + // // Use the fileBytes as needed + // print('File name: ${file.name}'); + // print('File size: ${file.size}'); + // print('File bytes: $fileBytes'); + // _processExcelData(fileBytes); + // } else { + // // User canceled the picker + // } + // } + + Future getFileUploadMasterDetails() async { + print('9'); + try { + final response = await apiService.getFileUploadMastersToApi(widget.Token); + + if (response['status'] == true) { + print('getFileUploadMasterList1'); + setState(() { + final actions = Map.from(response['data']['actions']); + setState(() { + getFileUploadMasterList = actions.entries + .map((e) => {"key": e.key, "value": e.value}) + .toList(); + print('getFileUploadMasterList: $getFileUploadMasterList'); + }); + print('getFileUploadMasterList'); + print(getFileUploadMasterList); + }); + } else { + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + setState(() { + isLoading = false; + }); + print('Exception occurred: $e'); + } finally { + setState(() { + // _isLoading = false; + }); + } + } + + Future getFileListDetails() async { + empPrimaryId = await tokenService.readValue('empPrimaryId'); + empClientId = await tokenService.readValue('empClientId'); + + print('9'); + try { + final response = await apiService.getFileListToApi( + empPrimaryId, widget.cardPolicyNo, empClientId,widget.Token,widget.TokenType); + + if (response['status'] == 'success') { + print('getThrFileList'); + setState(() { + getThrFileList = List>.from(response['data']); + originalData = getThrFileList; + filteredData = List.from(originalData); + print('filteredData'); + print(filteredData); + }); + } else { + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + setState(() { + isLoading = false; + }); + print('Exception occurred: $e'); + } finally { + setState(() { + // _isLoading = false; + }); + } + } + + Future getHrFileDownload(id, file_name) async { + // final http.Response response = await apiService.getHrFileDownloadToApi(id, widget.Token); + final apiurl = Environment.apiUrlPost; + final String url = '$apiurl/hrFileDownload?id=$id'; + final token = widget.Token; + + final response = await http.get( + Uri.parse(url), + headers: { + 'APP-SIGNATURE': 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y', + 'Authorization': 'Bearer $token', + 'Content-Type': 'application/json', + // 'app-signature': 'ts-traveltool-2025-signature-123456', + }, + ); + + if (response.statusCode == 200) { + try { + print("PDF Downloaded"); + + // ✅ Create a blob from the response body bytes + final blob = html.Blob([response.bodyBytes]); + + // ✅ Generate a download URL + final url = html.Url.createObjectUrlFromBlob(blob); + + // ✅ Trigger file download automatically + final anchor = html.AnchorElement(href: url) + ..setAttribute('download', '$file_name') + ..click(); + + // ✅ Revoke the URL to free memory + html.Url.revokeObjectUrl(url); + + ToastHelper.showSuccessToast(context, 'File Downloaded Successfully'); + } catch (e) { + throw Exception('Error parsing response: $e'); + } + } else { + ToastHelper.showErrorToast(context, 'Failed to download'); + print("Download failed with status: ${response.statusCode}"); + } + } + + void _uploadFile() async { + print('Test'); + if (kIsWeb) { + print('kIsWeb'); + final input = html.FileUploadInputElement(); + input.accept = '.xlsx,.xls'; + input.click(); + input.onChange.listen((event) async { + final file = input.files?.first; + if (file == null) return; + + final fileExtension = file.name.split('.').last.toLowerCase(); + + // ❌ INVALID FORMAT + if (!_allowedExtensions.contains(fileExtension)) { + ToastHelper.showErrorToast( + context, + 'File format not supported. Please upload XLSX or XLS', + ); + + setState(() { + fileName = null; + resetErrorCount(); + // html.window.localStorage.remove('fileBytes'); + }); + + return; // 🚫 STOP HERE + } + + final reader = html.FileReader(); + reader.readAsArrayBuffer(file); + await reader.onLoadEnd.first; // Wait for the file to be loaded + if (reader.readyState == html.FileReader.DONE) { + Uint8List? fileBytes = reader.result as Uint8List?; + if (fileBytes != null) { + setState(() { + fileName = file.name; + }); + // Save fileBytes to local storage + final jsonString = json.encode(fileBytes); + html.window.localStorage['fileBytes'] = jsonString; + print('File Name: $fileName'); + print('File Bytes: $fileBytes'); + sendExcelFIleTOAPI(fileBytes, fileName); + // Call the function to process Excel data here + // _processExcelData(fileBytes, fileName); + } + } + }); + } else { + // Handle non-web platforms here (e.g., show an error message) + print('File upload is only supported on web platforms.'); + } + } + + int countInvalidDobs(List> data) { + int invalidCount = 0; + + for (var entry in data) { + DateTime dob; + + // if (entry['DOB'] is String) { + dob = DateTime.parse(entry['DOB'].toString()); + // } else if (entry['DOB'] is DateTime) { + // dob = entry['DOB']; + // } else { + // // Invalid DOB format, skip this entry + // continue; + // } + print(entry['Relation']); + if ((entry['Relation'].toString() == 'Son' || + entry['Relation'].toString() == 'Daughter')) { + if (DateTime.now().difference(dob).inDays > 25 * 365) { + print('child $dob'); + invalidCount++; + } + } else if ((entry['Relation'] != 'Son' && + entry['Relation'] != 'Daughter')) { + if (DateTime.now().difference(dob).inDays < 18 * 365) { + print('others $dob'); + invalidCount++; + } + } + } + + return invalidCount; + } + + void _dragAndDropFile(html.File file) async { + print('file'); + print(file); + // Prepare form data + final formData = html.FormData(); + formData.appendBlob('file', file); + + // Send formData to API endpoint + final response = await html.HttpRequest.request( + 'your_api_endpoint_here', + method: 'POST', + sendData: formData, + ); + + // Handle response as needed + print(response.responseText); + } + + Future sendExcelFIleTOAPI(Uint8List fileBytes, fileName) async { + empPrimaryId = await tokenService.readValue('empPrimaryId'); + // Future.delayed(Duration(seconds: 3), () { + setState(() { + isLoading = true; + }); + // }); + print('submit'); + print(fileBytes); + if (fileBytes == null) { + ToastHelper.showErrorToast(context, 'Please upload file'); + print('return'); + return; // No file selected + } else { + print('else'); + // // Prepare form data + // final formData = html.FormData(); + // formData.appendBlob('file', html.Blob([fileBytes]), fileName); + + // URL of the API where you want to send the file + final apiUrl = Environment.apiUrlPost + 'hrFileUpload'; + print('else'); + // Create a multipart request + final request = http.MultipartRequest('POST', Uri.parse(apiUrl)); + print('else'); + // Attach the file to the request + // Set authorization token in headers + request.headers['APP-SIGNATURE'] = 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y'; + request.headers['Authorization'] = 'Bearer $_token'; + // request.files.add(http.MultipartFile.fromBytes('file', fileBytes, + // filename: fileName)); + print('Filename: $fileName'); + // request.files.add(http.MultipartFile.fromBytes( + // 'file', + // fileBytes, + // filename: fileName ?? 'default_filename.xlsx', + // )); + request.files.add(http.MultipartFile.fromBytes( + 'file_name', + fileBytes, + filename: fileName ?? 'default_filename.xlsx', + )); + print('clintID: $clintID'); + + request.fields['client_id'] = widget.ClientId; + request.fields['policy_no'] = widget.cardPolicyNo; + request.fields['client_branch_id'] = widget.clientBranchId; + request.fields['file_action'] = selectedKey!; + // request.fields['status'] = selectedKey!; + request.fields['created_by'] = empPrimaryId; + request.fields['policy_id'] = widget.ClientPoliyId; + // "client_id": 1, + // "client_branch_id": 2, + // "policy_no": "POL123456", + // "file_action": , + // "status": "inception", + // "created_by": 10 + + print('request : $request'); + // Send the request + final response = await request.send(); + print('else'); + // Read response stream as a string + final responseString = await response.stream.bytesToString(); + print(responseString); + Map data = json.decode(responseString); + if (data['status'] == true) { + print('upload success'); + setState(() { + isLoading = false; + }); + ToastHelper.showSuccessToast(context, data['message']); + getFileListDetails(); + setState(() { + selectedValue = null; + selectedKey = null; + resetErrorCount(); + }); + } else { + getFileListDetails(); + setState(() { + isLoading = false; + selectedValue = null; + selectedKey = null; + resetErrorCount(); + }); + ToastHelper.showErrorToast(context, data['message']); + } + } + } + + resetErrorCount() { + setState(() { + fileBytes = null; + fileName = null; + }); + } + + void search(String query) { + print(query); + // Check if the query is empty + if (query.isEmpty) { + // If search query is empty, show all data + setState(() { + filteredData = List.from(originalData); + }); + } else { + // Filter the original data based on the search query + setState(() { + filteredData = originalData.where((row) { + // Implement your filter logic here + // For example, check if any field in the row contains the query + // Adjust this logic based on your data structure + return row['file_name'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['file_action'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()) || + row['created_at'] + .toString() + .toLowerCase() + .contains(query.toLowerCase()); + }).toList(); + }); + } + print(filteredData.length); + } + + @override + Widget build(BuildContext context) { + return BaseLayout( + child: _buildContent(context), + ); + } + + Widget _buildContent(BuildContext context) { + return isLoading ? Container( + color: Colors.transparent, // Semi-transparent background + child: Center( + child: // Your GIF loader widget + Image.asset( + height: 60, + width: 60, + 'assets/nhance-loader.gif'), // Adjust path to your GIF loader + ), + ): Container( + child: Column( + children: [ + Row( + children: [ + IconButton( + onPressed: () => {Navigator.pop(context)}, + icon: const Icon( + Icons.arrow_back_ios, + size: 18, + color: Colors.black, + ), + padding: EdgeInsets.zero, + constraints: const BoxConstraints(), + ), + const SizedBox(width: 6), + Container( + // color: Colors.redAccent.shade100, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.start, + children: [ + Text( + "${widget.cardType} - ${widget.cardPolicyNo} " ?? + '', + style: GoogleFonts.poppins( + color: Colors.black, + fontSize: 14, + fontWeight: FontWeight.w500, + ), + ), + Text( + widget.TokenType == 'pre' + ? "${widget.cardPolicy_name} (${widget.cardPolicy_ExpDate})" + : "${widget.cardInsurer_name} - ${widget.cardPolicy_name} (${widget.cardPolicy_ExpDate})", + style: GoogleFonts.poppins( + color: Colors.grey, + fontSize: 12, + fontWeight: FontWeight.w400, + ), + ), + ], + ), + ), + ], + ), + SizedBox(height:20), + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + /// Select File Action + Expanded( + flex: 5, + child: buildStyledDropdown( + label: 'Select File Action', + value: selectedKey, + items: getFileUploadMasterList, + onChanged: (val) { + setState(() { + selectedKey = val; + selectedValue = getFileUploadMasterList + .firstWhere((e) => e['key'] == val)['value']; + }); + }, + ), + ), + + const SizedBox(width: 16), + + /// Upload Box + Expanded( + flex: 5, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + /// ✅ LABEL + RichText( + text: TextSpan( + text: 'Upload File', + style: GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + children: const [ + TextSpan( + text: '(Supported Formats: XLSX)', + style: TextStyle( + fontSize: 11, + color: Colors.grey, + fontWeight: FontWeight.w400, + ), + ), + ], + ), + ), + + const SizedBox(height: 6), + + /// ✅ DOTTED UPLOAD BOX + DragTarget( + onAccept: (html.File droppedFile) { + setState(() { + fileName = droppedFile.name; + }); + _dragAndDropFile(droppedFile); + }, + builder: (context, candidateData, rejectedData) { + return GestureDetector( + onTap: () { + if (selectedValue != null) { + _uploadFile(); + } else { + ToastHelper.showErrorToast( + context, + 'Please select file action', + ); + } + }, + child: Container( + height: 40 , + padding: const EdgeInsets.symmetric(horizontal: 12), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(8), + border: Border.all( + color: const Color(0xFF00A6A6), + width: 1, + ), + ), + child: Row( + children: [ + Expanded( + child: Text( + fileName ?? 'Upload Your Documents', + overflow: TextOverflow.ellipsis, + style: GoogleFonts.poppins( + fontSize: 13, + color: fileName == null + ? Colors.grey + : Colors.black, + ), + ), + ), + const Icon( + Icons.file_upload_outlined, + size: 18, + color: Colors.black, + ), + ], + ), + ) + ); + }, + ), + ], + ), + ), + ], + ), + SizedBox(height: 20), + Row( + children: [ + Expanded( + child: Column( + children: [ + _buildFileUploadedGrid(), + const SizedBox(height: 16), + _buildPagination(context), + ], + ), + ) + + ], + ), + ], + ), + ); + + + } + + Widget buildUploadBox({ + required VoidCallback onTap, + }) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'Upload File (Supported Formats: XLSX)', + style: GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + ), + const SizedBox(height: 6), + GestureDetector( + onTap: onTap, + child: Container( + height: 42, + padding: const EdgeInsets.symmetric(horizontal: 12), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(8), + border: Border.all( + color: const Color(0xFF00A6A6), + style: BorderStyle.solid, + ), + ), + child: Row( + children: [ + Expanded( + child: Text( + 'Upload Your Documents', + style: GoogleFonts.poppins( + fontSize: 13, + color: Colors.grey[600], + ), + ), + ), + const Icon( + Icons.upload_file, + size: 18, + color: Color(0xFF00A6A6), + ), + ], + ), + ), + ), + ], + ); + } + + + + Widget buildStyledDropdown({ + required String label, + required String? value, + required List> items, + required Function(String?) onChanged, + }) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + label, + style: GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + ), + const SizedBox(height: 6), + Container( + height: 42, + padding: const EdgeInsets.symmetric(horizontal: 12), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(8), + // border: Border.all(color: const Color(0xFFE0E0E0)), + ), + child: DropdownButtonHideUnderline( + child: DropdownButton( + isExpanded: true, + value: value, + hint: Text( + 'Select', + style: GoogleFonts.poppins(fontSize: 13), + ), + icon: const Icon(Icons.keyboard_arrow_down), + items: items.map((item) { + return DropdownMenuItem( + value: item['key'], + child: Text( + item['value'], + style: GoogleFonts.poppins(fontSize: 13), + ), + ); + }).toList(), + onChanged: onChanged, + ), + ), + ), + ], + ); + } + + + Widget _buildFileUploadedGrid() { + if (filteredData.isEmpty) { + return const SizedBox( + height: 120, + child: Center(child: Text('No uploaded files')), + ); + } + + return GridView.builder( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 2, // 👈 2 cards per row + crossAxisSpacing: 16, + mainAxisSpacing: 16, + childAspectRatio: 10, // 👈 card height + ), + itemCount: _paginatedData.length, + itemBuilder: (context, index) { + final item = _paginatedData[index]; + return _buildFileCard(item); + }, + ); + } + + Widget _buildFileCard(Map item) { + return Container( + padding: const EdgeInsets.symmetric(horizontal: 14, vertical: 12), + decoration: BoxDecoration( + color: const Color(0xFFEFF9FA), + borderRadius: BorderRadius.circular(12), + border: Border.all(color: const Color(0xFF9AD6DB)), + ), + child: Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + /// 📄 File Icon + Container( + height: 44, + width: 44, + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(10), + border: Border.all(color: const Color(0xFF00A6A6)), + ), + child: const Icon( + Icons.description_outlined, + color: Color(0xFF00A6A6), + size: 22, + ), + ), + + const SizedBox(width: 12), + + /// 📑 LEFT CONTENT + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + /// Row 1 → File name + Text( + item['file_name'] ?? '-', + maxLines: 1, + overflow: TextOverflow.ellipsis, + style: GoogleFonts.poppins( + fontSize: 13, + fontWeight: FontWeight.w600, + color: const Color(0xFF101010), + ), + ), + + const SizedBox(height: 4), + + /// Row 2 → Action - Date + RichText( + text: TextSpan( + style: GoogleFonts.poppins(fontSize: 11), + children: [ + TextSpan( + text: item['file_action'] ?? '', + style: const TextStyle( + color: Color(0xFF00999E), + fontWeight: FontWeight.w500, + ), + ), + const TextSpan( + text: ' - ', + style: TextStyle(color: Color(0xFF585858)), + ), + TextSpan( + text: formatDate(item['created_at']), + style: const TextStyle(color: Color(0xFF585858)), + ), + ], + ), + ), + ], + ), + ), + + /// 👉 RIGHT SIDE (ICON + STATUS + DOWNLOAD) + Column( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + /// 🔴 Error + Status + Row( + children: [ + + ], + ), + + const SizedBox(height: 8), + + Row( + children: [ + if (item['file_error_status'] == '1') + InkWell( + onTap: () async { + print(item); + // return; + final String? token = await tokenService.getCurrentToken(); + final String? empClientId = await tokenService.readValue('empClientId'); + final String? empBranchId = await tokenService.readValue('empClientBranchId'); + + print(item); + print(empClientId); + print(widget.policyTypeId); + print(empBranchId); + print(token); + print('post'); + print(widget.cardType); + print(widget.cardPolicyNo); + print(widget.cardInsurer_name); + print(widget.cardPolicy_name); + print(widget.cardPolicy_ExpDate); + print(item['id']); + + // ✅ SAFETY CHECK + if (token == null || + empClientId == null || + empBranchId == null) { + debugPrint('❌ Missing required data for navigation ${token}'); + return; + } + + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => + excelErrorScreen( + ClientId: empClientId, + policy_no: item['policy_no'], + action: item['file_action'], + created_at: item['created_at'], + clientBranchId: empBranchId, + Token: token, + TokenType: 'post', + id: item['id'] + ), + ), + ); + }, + child: Icon( + Icons.error, + size: 16, + color: Colors.red, + ), + ), + SizedBox(width: 10), + _buildStatusChip(item['status']), + SizedBox(width: 10), + InkWell( + onTap: () { + getHrFileDownload(item['id'], item['file_name']); + }, + child: Container( + height: 30, + width: 30, + decoration: BoxDecoration( + color: Color(0xFFC5F2F4), + borderRadius: BorderRadius.circular(10), + border: Border.all(color: const Color(0xFF76CED2)), + ), + child: Icon( + Icons.file_download_outlined, + color: Color(0xFF1D1B20), + size: 22, + ), + ), + ), + ], + ), + /// ⬇ Download + + ], + ), + ], + ), + ); + } + + + Widget _buildStatusChip(String status) { + final s = status.toLowerCase(); + + Color bg; + + if (s == 'success') { + bg = const Color(0xFF94E9B8); + } else if (s == 'failed') { + bg = const Color(0xFFFDC2C2); + } else if (s.contains('progress')) { + bg = const Color(0xFFFFE8AC); + } else { + bg = const Color(0xFFFBBF24); + } + + return Container( + padding: const EdgeInsets.symmetric(horizontal: 10, vertical: 4), + decoration: BoxDecoration( + color: bg, + borderRadius: BorderRadius.circular(20), + ), + child: Text( + status, + style: GoogleFonts.poppins( + fontSize: 11, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + ), + ); + } + + + static final _dataBold = GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w400, + color: Color(0xFF000000), + ); + + static final _dataSub = GoogleFonts.poppins( + fontSize: 10, + fontWeight: FontWeight.w300, + color: Color(0xFF585757), + ); + + static const _headerStyle = TextStyle( + color: Colors.white, + fontWeight: FontWeight.bold, + ); + + Widget _buildPagination(BuildContext context) { + final totalPages = (filteredData.length / _rowsPerPage).ceil(); + const visiblePageCount = 5; + + List getVisiblePages() { + if (totalPages <= visiblePageCount) { + return List.generate(totalPages, (i) => i + 1); + } + + if (_currentPage <= 3) { + return [1, 2, 3, 4, 5]; + } else if (_currentPage >= totalPages - 2) { + return [ + totalPages - 4, + totalPages - 3, + totalPages - 2, + totalPages - 1, + totalPages + ]; + } else { + return [ + _currentPage - 2, + _currentPage - 1, + _currentPage, + _currentPage + 1, + _currentPage + 2, + ]; + } + } + + List visiblePages = getVisiblePages(); + + return Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + Padding( + padding: const EdgeInsets.symmetric(vertical: 12), + child: Row( + children: [ + // Dropdown for rows per page + DropdownButton( + value: _rowsPerPage, + items: [5, 10, 15, 20, 50].map((int value) { + return DropdownMenuItem( + value: value, + child: Text(' $value ', + style: GoogleFonts.poppins(fontSize: 15)), + ); + }).toList(), + onChanged: (newValue) { + setState(() { + _rowsPerPage = newValue!; + _currentPage = 1; + }); + }, + ), + + // Previous button + IconButton( + onPressed: _currentPage > 1 + ? () => setState(() => _currentPage--) + : null, + icon: const Icon(Icons.chevron_left), + ), + + // First page + left ellipsis + if (!visiblePages.contains(1)) + Row(children: [ + _buildPageButton(1), + const Padding( + padding: EdgeInsets.symmetric(horizontal: 4), + child: Text("..."), + ), + ]), + + // Visible page buttons + for (int page in visiblePages) _buildPageButton(page), + + // Right ellipsis + last page + if (!visiblePages.contains(totalPages)) + Row(children: [ + const Padding( + padding: EdgeInsets.symmetric(horizontal: 4), + child: Text("..."), + ), + _buildPageButton(totalPages), + ]), + + // Next button + IconButton( + onPressed: _currentPage < totalPages + ? () => setState(() => _currentPage++) + : null, + icon: const Icon(Icons.chevron_right), + ), + ], + ), + ), + ], + ); + } + + Widget _buildPageButton(int page) { + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 4), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + backgroundColor: + _currentPage == page ? const Color(0xFF00A6A6) : Colors.grey[300], + foregroundColor: _currentPage == page ? Colors.white : Colors.black, + minimumSize: const Size(36, 36), + padding: EdgeInsets.zero, + ), + onPressed: () { + setState(() { + _currentPage = page; + }); + }, + child: Text(page.toString()), + ), + ); + } + + String formatDate(String? dateString) { + if (dateString == null || dateString.isEmpty) return '-'; + + try { + DateTime parsedDate = DateTime.parse(dateString); + return DateFormat('dd-MM-yyyy hh:mm a').format(parsedDate); + } catch (e) { + return '-'; + } + } +} diff --git a/lib/presentation/preFileUpload.dart b/lib/presentation/preFileUpload.dart new file mode 100755 index 0000000..a430ad8 --- /dev/null +++ b/lib/presentation/preFileUpload.dart @@ -0,0 +1,1544 @@ +import 'dart:typed_data'; +import 'package:flutter/material.dart'; +import 'package:google_fonts/google_fonts.dart'; +import 'package:jwt_decode/jwt_decode.dart'; +import 'dart:convert'; +import 'dart:async'; +import 'package:http/http.dart' as http; +import 'package:nhancepolicy/customAppBar/toastHelper.dart'; +import 'package:nhancepolicy/service/api_service.dart'; +import 'package:nhancepolicy/service/token_storage_service.dart'; +import 'package:universal_html/html.dart' as html; +import 'package:flutter/foundation.dart' show kIsWeb; +// import 'package:excel/excel.dart'; +import 'package:excel/excel.dart' hide Border,TextSpan; +import 'dart:io'; +import 'package:intl/intl.dart'; +import 'package:csv/csv.dart'; +import '../config/environment.dart'; +import '../customAppBar/base_layout.dart'; +import 'excelVerification.dart'; + +class preFileUpload extends StatefulWidget { + final String ClientId; + final String policyTypeId; + final String ClientPoliyId; + final String clientBranchId; + final String Token; + final String TokenType; + final String cardType; + final String cardPolicyNo; + final String cardInsurer_name; + final String cardPolicy_name; + final String cardPolicy_ExpDate; + final String total_premium; + const preFileUpload( + {Key? key, + required this.ClientId, + required this.policyTypeId, + required this.ClientPoliyId, + required this.clientBranchId, + required this.Token, + required this.TokenType, + required this.cardType, + required this.cardPolicyNo, + required this.cardInsurer_name, + required this.cardPolicy_name, + required this.cardPolicy_ExpDate, + required this.total_premium, + + }) + : super(key: key); + + @override + State createState() => _excelVerifyState(); +} + +class _excelVerifyState extends State { + final tokenService = TokenStorageService(); + Uint8List? fileBytes; + Uint8List? fileBytes2; + late String _token; + dynamic getPolicyNo; + bool _isLoading = false; + dynamic getPolicyNameDetails; + String? fileName; + int _currentStep = 0; // Step index tracker + List dataPolicy = []; + dynamic validationArray = []; + dynamic missingColumnErrorMsg = 0; + dynamic columnIndexMismatchCount = 0; + dynamic columnMissingCount = 0; + List> extractedData = []; + dynamic argumentsData; + List> originalData = []; // Original data source + List> filteredData = []; // Filtered data source + List> tableData = []; // Filtered data source + + List> nonExcelFilteredData = []; + dynamic invalidRelationships = 0; + dynamic dobAgeCheckCount = 0; + dynamic empRefId; + List excelHeader = []; + List>> excelData = []; + late int excelValidationStaus = 1; + bool isSuccess = false; + String successContent = ''; + bool isLoading = false; + late ApiService apiService; + final TextEditingController openDateController = TextEditingController(); + final TextEditingController closeDateController = TextEditingController(); + dynamic getThrFileList = []; + final List _allowedExtensions = ['xlsx', 'xls']; + + int _currentPage = 1; + int _rowsPerPage = 5; + + List get _paginatedData { + final startIndex = (_currentPage - 1) * _rowsPerPage; + final endIndex = + (_currentPage * _rowsPerPage).clamp(0, filteredData.length); + return filteredData.sublist(startIndex, endIndex); + } + + @override + void initState() { + super.initState(); + apiService = ApiService(context); + getFileListDetails(); + _loadToken(); + } + + @override + void dispose() { + super.dispose(); + html.window.localStorage.remove('fileBytes'); + } + + Future _loadToken() async { + final token = widget.Token; + if (token != null && token.isNotEmpty) { + setState(() { + _token = token; + }); + Map? decodedToken = Jwt.parseJwt(token); + print('decodedToken $decodedToken'); + } else { + // Token is empty or null, handle accordingly (e.g., navigate to login screen) + // For now, let's navigate to the login screen + ToastHelper.showErrorToast(context, 'Session Out'); + Navigator.pushReplacementNamed(context, 'hrLogin'); + } + } + + // Future getPolicyDetails() async { + // setState(() { + // clientPolicyId = argumentsData['client_policy_id']; + // clientId = argumentsData['client_id']; + // policyType = argumentsData['type']; + // policy_name = argumentsData['policy_name']; + // }); + // } + + // Future _uploadFile1(importPolicyName) async { + // FilePickerResult? result = await FilePicker.platform.pickFiles( + // type: FileType.custom, + // allowedExtensions: ['xlsx', 'xls', 'csv'], + // ); + // + // if (result != null) { + // PlatformFile file = result.files.first; + // Uint8List fileBytes = file.bytes!; + // // Use the fileBytes as needed + // print('File name: ${file.name}'); + // print('File size: ${file.size}'); + // print('File bytes: $fileBytes'); + // _processExcelData(fileBytes); + // } else { + // // User canceled the picker + // } + // } + + void _uploadFile(importPolicyName) async { + print('Test'); + if (kIsWeb) { + print('kIsWeb'); + final input = html.FileUploadInputElement(); + input.accept = '.xlsx,.xls'; + input.click(); + input.onChange.listen((event) async { + final file = input.files?.first; + if (file == null) return; + + final fileExtension = file.name.split('.').last.toLowerCase(); + + // ❌ INVALID FORMAT + if (!_allowedExtensions.contains(fileExtension)) { + ToastHelper.showErrorToast( + context, + 'File format not supported. Please upload XLSX or XLS', + ); + + resetErrorCount(); + + return; // 🚫 STOP HERE + } + final reader = html.FileReader(); + reader.readAsArrayBuffer(file); + await reader.onLoadEnd.first; // Wait for the file to be loaded + if (reader.readyState == html.FileReader.DONE) { + Uint8List? fileBytes = reader.result as Uint8List?; + if (fileBytes != null) { + setState(() { + fileName = file.name; + }); + // Save fileBytes to local storage + // final jsonString = json.encode(fileBytes); + // html.window.localStorage['fileBytes'] = jsonString; + print('File Name: $fileName'); + print('File Bytes: $fileBytes'); + sendExcelFIleTOAPI(fileBytes, fileName); + // Call the function to process Excel data here + // _processExcelData(fileBytes, fileName); + } + } + }); + } else { + // Handle non-web platforms here (e.g., show an error message) + print('File upload is only supported on web platforms.'); + } + } + + bool _validateDatesBeforeUpload() { + if (openDateController.text.isEmpty || + closeDateController.text.isEmpty) { + ToastHelper.showErrorToast2(context,'','Please select both Enrolment Open Date and Close Date'); + return false; + } + return true; + } + + + void _processExcelData(Uint8List fileBytes, fileName) { + List> dataArray; + if (fileName.endsWith('.xlsx')) { + dataArray = decodeExcelData(fileBytes); + } else if (fileName.endsWith('.xls')) { + dataArray = decodeXLSData(fileBytes); + } else if (fileName.endsWith('.csv')) { + print('csv'); + dataArray = decodeCSVData(fileBytes); + } else { + throw UnsupportedError('Unsupported file format: $fileName'); + } + + print('_processExcelData'); + // Decode the Excel file and extract relevant data + // Assuming dataArray is your array containing Excel data + // List> dataArray = decodeExcelData(fileBytes); + print(dataArray); + // print(dataArray[0].toString()); + // Extract Name, Age, and City from the array + print(dataArray[0].length); + + if (dataArray[0].length == 11) { + for (int i = 0; i < dataArray.length; i++) { + Map dataMap = { + "Sno": dataArray[i][0].value, + "Emp_Code": dataArray[i][1].value, + "Name": dataArray[i][2].value, + "DOJ": dataArray[i][3].value, + "Gender": dataArray[i][4].value, + "Relation": dataArray[i][5].value, + "DOB": dataArray[i][6].value, + "Mail": dataArray[i][7].value, + "Mobile": dataArray[i][8].value, + "SI": dataArray[i][9].value, + "Grade": dataArray[i][10].value, + }; + if (i == 0) { + // print(dataMap); + validationArray.add(dataMap); + } else { + // print(dataMap); + extractedData.add(dataMap); + } + } + // Do something with extracted data (e.g., display in UI) + originalData = extractedData; + filteredData = List.from(originalData); + print('filteredData'); + print(filteredData); + print(validationArray); + + validationArray[0].forEach((key, value) { + print(key); + print(value); + if (key.toString().trim().toLowerCase() != + value.toString().trim().toLowerCase()) { + // If key and value are not equal, increment mismatch count + columnIndexMismatchCount++; + print('columnIndexMismatchCount: $value'); + } + if (value.toString() == 'null') { + // If value is null, increment missing count + columnMissingCount++; + print('Value: $value'); + } + }); + + print('columnIndexMismatchCount: $columnIndexMismatchCount'); + print('columnMissingCount: $columnMissingCount'); + + nonExcelFilteredData = filteredData.where((item) { + final relation = item['Relation']; + return relation != null && + relation.toString().trim().toLowerCase() != 'self'; + }).toList(); + print('nonExcelFilteredData'); + + print(nonExcelFilteredData); + print(nonExcelFilteredData.length); + if (argumentsData['type'] == 'GPA') { + if (nonExcelFilteredData.length > 0) { + print('nonSelf'); + invalidRelationships = nonExcelFilteredData.length; + } else { + print('Self'); + invalidRelationships = nonExcelFilteredData.length; + } + print('invalidRelationships: $invalidRelationships'); + } else { + invalidRelationships = 0; + } + + int invalidDobCount = countInvalidDobs(filteredData); + + print('Number of invalid DOBs: $invalidDobCount'); + + dobAgeCheckCount = invalidDobCount; + } else { + print('Some Column is Missing'); + var columnMissingCount = 11 - dataArray[0].length; + missingColumnErrorMsg = columnMissingCount; + print(missingColumnErrorMsg); + } + } + + // bool checkAllSelf(List> dataList) { + // // Check if any value of 'Relation' key is not 'Self' + // bool allSelf = dataList.every((data) => data['Relation'] == 'Self'); + // // If all values are 'Self', return true; otherwise, return false + // return allSelf; + // } + + // Placeholder function for decoding Excel data + List> decodeExcelData(Uint8List fileBytes) { + print('decodeExcelData'); + + // Create an Excel instance from the fileBytes + final excel = Excel.decodeBytes(fileBytes); + print('decodeExcelData'); + print(excel); + + // Assuming there's only one sheet in the Excel file + final sheet = excel.tables.keys.first; + final table = excel.tables[sheet]!; + + // Convert Excel table to a List> + // Convert Excel table to a List> + List> dataArray = []; + for (int rowIdx = 0; rowIdx < table.rows.length; rowIdx++) { + List rowData = []; + for (int colIdx = 0; colIdx < table.rows[rowIdx].length; colIdx++) { + var value = table.rows[rowIdx][colIdx]?.value; + rowData.add(Data(value, rowIdx, colIdx, sheet)); + } + dataArray.add(rowData); + } + return dataArray; + } + + List> decodeXLSData(Uint8List fileBytes) { + final Excel excelData = Excel.decodeBytes(fileBytes); + final sheet = excelData.tables.keys.first; + final table = excelData.tables[sheet]!; + List> dataArray = []; + for (int rowIdx = 0; rowIdx < table.rows.length; rowIdx++) { + List rowData = []; + for (int colIdx = 0; colIdx < table.rows[rowIdx].length; colIdx++) { + var value = table.rows[rowIdx][colIdx]?.value; + rowData.add(Data(value, rowIdx, colIdx, sheet)); + } + dataArray.add(rowData); + } + return dataArray; + } + + List> decodeCSVData(Uint8List fileBytes) { + String csvString = utf8.decode(fileBytes); + List> csvData = const CsvToListConverter().convert(csvString); + List> dataArray = []; + + // Skip the header row (if it exists) and start from index 1 + for (int i = 1; i < csvData.length; i++) { + List rowData = []; + for (int j = 0; j < csvData[i].length; j++) { + // Assuming the CSV data is of type String + rowData.add(Data(csvData[i][j].toString(), i, j, 'Sheet1')); + } + dataArray.add(rowData); + } + return dataArray; + } + + int countInvalidDobs(List> data) { + int invalidCount = 0; + + for (var entry in data) { + DateTime dob; + + // if (entry['DOB'] is String) { + dob = DateTime.parse(entry['DOB'].toString()); + // } else if (entry['DOB'] is DateTime) { + // dob = entry['DOB']; + // } else { + // // Invalid DOB format, skip this entry + // continue; + // } + print(entry['Relation']); + if ((entry['Relation'].toString() == 'Son' || + entry['Relation'].toString() == 'Daughter')) { + if (DateTime.now().difference(dob).inDays > 25 * 365) { + print('child $dob'); + invalidCount++; + } + } else if ((entry['Relation'] != 'Son' && + entry['Relation'] != 'Daughter')) { + if (DateTime.now().difference(dob).inDays < 18 * 365) { + print('others $dob'); + invalidCount++; + } + } + } + + return invalidCount; + } + + void _dragAndDropFile(html.File file) async { + print('file'); + print(file); + // Prepare form data + final formData = html.FormData(); + formData.appendBlob('file', file); + + // Send formData to API endpoint + final response = await html.HttpRequest.request( + 'your_api_endpoint_here', + method: 'POST', + sendData: formData, + ); + + // Handle response as needed + print(response.responseText); + } + + void _retrieveAndUploadFile() { + final jsonString = html.window.localStorage['fileBytes']; + if (jsonString != null) { + final decodedBytes = json.decode(jsonString); + if (decodedBytes is List) { + setState(() { + fileName = fileName ?? + 'Retrieved File'; // Provide a default name if fileName is null + }); + sendExcelFIleTOAPI( + Uint8List.fromList(decodedBytes.cast()), + fileName!, + ); + } + } + } + + Future sendExcelFIleTOAPI(Uint8List fileBytes, fileName) async { + + // Future.delayed(Duration(seconds: 3), () { + // setState(() { + isLoading = true; + // }); + // }); + print('submit'); + print(fileBytes); + if (fileBytes == null) { + print('return'); + return; // No file selected + } else { + print('else'); + // // Prepare form data + // final formData = html.FormData(); + // formData.appendBlob('file', html.Blob([fileBytes]), fileName); + final enrollmentHrId = await tokenService.readValue('enrollmentHrId'); + // URL of the API where you want to send the file + final apiUrl = Environment.apiUrl + 'employeeUpload'; + print('else'); + // Create a multipart request + final request = http.MultipartRequest('POST', Uri.parse(apiUrl)); + print('else'); + // Attach the file to the request + // Set authorization token in headers + request.headers['APP-SIGNATURE'] = 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y'; + request.headers['Authorization'] = 'Bearer $_token'; + // request.files.add(http.MultipartFile.fromBytes('file', fileBytes, + // filename: fileName)); + print('Filename: $fileName'); + request.files.add(http.MultipartFile.fromBytes( + 'file', + fileBytes, + filename: fileName ?? 'default_filename.xlsx', + )); + + request.fields['client_id'] = widget.ClientId; + // if (policyFirstPart == 'GPA') { + request.fields['policy_id'] = widget.ClientPoliyId; + request.fields['client_branch_id'] = widget.clientBranchId; + request.fields['enrollment_open_date'] = openDateController.text; + request.fields['enrollment_close_date'] = closeDateController.text; + request.fields['created_by'] = enrollmentHrId!; + + // } else { + // request.fields['policy_id'] = '3'; + // } + print('request : $request'); + // Send the request + final response = await request.send(); + print('else'); + // Read response stream as a string + final responseString = await response.stream.bytesToString(); + print('else'); + // Check the status code of the response + if (response.statusCode == 200) { + isLoading = false; + Map data = json.decode(responseString); + if (data['status'] == false) { + ToastHelper.showSuccessToast(context, data['message']); + print('Table'); + + setState(() { + isSuccess = true; + successContent = data['message']; + excelValidationStaus = 0; + }); + resetErrorCount(); + handleImportAction(); + getFileListDetails(); + } else { + setState(() { + isLoading = false; + }); + handleImportAction(); + ToastHelper.showErrorToast2(context,"",data['message']); + resetErrorCount(); + getFileListDetails(); + // ToastHelper.showErrorToast(context, data['message']); + print('Table'); + } + } else { + setState(() { + isLoading = false; + }); + // ToastHelper.showSuccessToast( + // context, 'Failed to upload file: ${response.reasonPhrase}'); + ToastHelper.showErrorToast(context, 'Something went wrong'); + print('Failed to upload file: ${response.reasonPhrase}'); + } + } + } + + Future handleImportAction() async { + print('handleImportAction'); + final postId = await tokenService.readValue('empHrId'); + final preId = await tokenService.readValue('enrollmentEmpPrimaryId'); + var activity = "import_enrollempdata"; + + dynamic response; + + print('postId - $postId'); + print('preId - $preId'); + print('activity - $activity'); + + try { + print('10'); + + response = await apiService.getImportLogHrActivity( + postId!, preId!, widget.Token, activity); + + if (response['status'] == 'success') { + print('Request success'); + } else { + // ToastHelper.showWarningToast( + // context, 'Request failed with status: ${response.statusCode}'); + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + print('Exception occurred: $e'); + } + } + + Future getFileListDetails() async { + final enrollmentPrimaryId = await tokenService.readValue('enrollmentEmpPrimaryId'); + final enrollmentClientId = await tokenService.readValue('enrollmentClient_id'); + + print('9'); + try { + final response = await apiService.getFileListToApi( + enrollmentPrimaryId, widget.cardPolicyNo, enrollmentClientId,widget.Token,widget.TokenType); + + if (response['status'] == true) { + print('getThrFileList'); + setState(() { + getThrFileList = List>.from(response['data']); + originalData = getThrFileList; + filteredData = List.from(originalData); + print('filteredData'); + print(filteredData); + }); + } else { + print('Request failed with status: ${response['code']}'); + } + } catch (e) { + setState(() { + isLoading = false; + }); + print('Exception occurred: $e'); + } finally { + setState(() { + // _isLoading = false; + }); + } + } + + void search(String query) { + setState(() { + if (query.isEmpty) { + // If search query is empty, show all data + filteredData = List.from(originalData); + } else { + // Filter the data based on the search query + filteredData = originalData.where((item) { + // Implement your filter logic here, for example: + return item['Emp_Code'].toLowerCase().contains(query.toLowerCase()); + }).toList(); + } + }); + } + + downloadSampleFile() { + final anchor = html.AnchorElement(href: 'assets/assets/Template_File.xlsx'); + anchor.download = 'Template_File.xlsx'; // Set the filename + anchor.click(); // Trigger a click on the anchor element + } + + // Future downloadSampleFile() async { + // + // final response = await apiService.getSampleFileDownload(widget.Token); + // print('check 1'); + // if (response['status'] == 'success') { + // final url = response['data']; + // _launchURL(url); + // } else { + // ToastHelper.showErrorToast(context, '⚠️ Unknown response format'); + // print('⚠️ Unknown response format'); + // } + // } + // + // Future _launchURL(String url) async { + // print('url $url'); + // try { + // final Uri uri = Uri.parse(url); + // await launchUrl(uri, mode: LaunchMode.externalApplication); + // } catch (e) { + // print('Could not launch URL: $e'); + // } + // } + + resetErrorCount() { + setState(() { + fileBytes = null; + fileName = null; + }); + } + + Future getHrFileDownload(id, file_name) async { + // final http.Response response = await apiService.getHrFileDownloadToApi(id, widget.Token); + final apiurl = Environment.apiUrl; + final String url = '$apiurl/hrFileDownload?id=$id'; + final token = widget.Token; + + final response = await http.get( + Uri.parse(url), + headers: { + 'APP-SIGNATURE': 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y', + 'Authorization': 'Bearer $token', + 'Content-Type': 'application/json', + // 'app-signature': 'ts-traveltool-2025-signature-123456', + }, + ); + + if (response.statusCode == 200) { + try { + print("PDF Downloaded"); + + // ✅ Create a blob from the response body bytes + final blob = html.Blob([response.bodyBytes]); + + // ✅ Generate a download URL + final url = html.Url.createObjectUrlFromBlob(blob); + + // ✅ Trigger file download automatically + final anchor = html.AnchorElement(href: url) + ..setAttribute('download', '$file_name') + ..click(); + + // ✅ Revoke the URL to free memory + html.Url.revokeObjectUrl(url); + } catch (e) { + throw Exception('Error parsing response: $e'); + } + } else { + print("Download failed with status: ${response.statusCode}"); + } + } + + @override + Widget build(BuildContext context) { + return BaseLayout( + child: _buildContent(context), + ); + } + + Widget _buildContent(BuildContext context) { + return isLoading ? Container( + color: Colors.transparent, // Semi-transparent background + child: Center( + child: // Your GIF loader widget + Image.asset( + height: 60, + width: 60, + 'assets/nhance-loader.gif'), // Adjust path to your GIF loader + ), + ) : Container( + // padding: const EdgeInsets.all(20), + // color: Color(0xFFEFF3F6), + child: Column( + children: [ + Row( + children: [ + IconButton( + onPressed: () => {Navigator.pop(context)}, + icon: const Icon( + Icons.arrow_back_ios, + size: 18, + color: Colors.black, + ), + padding: EdgeInsets.zero, + constraints: const BoxConstraints(), + ), + const SizedBox(width: 6), + Container( + // color: Colors.redAccent.shade100, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.start, + children: [ + Text( + "${widget.cardType} - ${widget.cardPolicyNo} " ?? + '', + style: GoogleFonts.poppins( + color: Colors.black, + fontSize: 14, + fontWeight: FontWeight.w500, + ), + ), + Text( + widget.TokenType == 'pre' + ? "${widget.cardPolicy_name} (${widget.cardPolicy_ExpDate})" + : "${widget.cardInsurer_name} - ${widget.cardPolicy_name} (${widget.cardPolicy_ExpDate})", + style: GoogleFonts.poppins( + color: Colors.grey, + fontSize: 12, + fontWeight: FontWeight.w400, + ), + ), + ], + ), + ), + ], + ), + SizedBox(height: 20), + Row( + children: [ + SizedBox( + width: 260, // 👈 set your required width + child: _dateField( + label: 'Enrolment Open Date', + controller: openDateController, + onTap: () async { + final picked = await showDatePicker( + context: context, + firstDate: DateTime(2000), + lastDate: DateTime(2100), + initialDate: DateTime.now(), + ); + if (picked != null) { + openDateController.text = + DateFormat('dd-MM-yyyy').format(picked); + } + }, + ), + ), + const SizedBox(width: 16), + SizedBox( + width: 260, // 👈 same width + child: _dateField( + label: 'Enrolment Close Date', + controller: closeDateController, + onTap: () async { + final picked = await showDatePicker( + context: context, + firstDate: DateTime(2000), + lastDate: DateTime(2100), + initialDate: DateTime.now(), + ); + if (picked != null) { + closeDateController.text = + DateFormat('dd-MM-yyyy').format(picked); + } + }, + ), + ), + ], + ), + SizedBox(height: 20), + Row( + children: [ + Text( + 'Upload File', + style: GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + ), + ], + ), + SizedBox(height: 5), + Row( + mainAxisAlignment: + MainAxisAlignment.center, + children: [ + Expanded( + child: Container( + alignment: Alignment.center, + height: 125, + decoration: BoxDecoration( + color: Color(0xFFF7F5F6), // ✅ moved here + borderRadius: BorderRadius.circular(8), + border: Border.all( + color: const Color(0xFF00A6A6), + width: 1, + ), + ), + child: GestureDetector( + onTap: () { + if (!_validateDatesBeforeUpload()) return; + if (fileName == null) { + _uploadFile('Policy Name'); // ✅ same function + } + }, + child: DragTarget( + onAccept: (html.File droppedFile) { + if (!_validateDatesBeforeUpload()) return; + + setState(() { + fileName = droppedFile.name; + }); + _dragAndDropFile(droppedFile); + }, + builder: ( + BuildContext context, + List candidateData, + List rejectedData, + ) { + return Container( + alignment: Alignment.center, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + fileName != null + ? Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: 40, + height: 40 , + child: ElevatedButton( + onPressed: () => null, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFD4F1F2), + elevation: 0, + padding: EdgeInsets.zero, // ✅ IMPORTANT + alignment: Alignment.center, // ✅ FORCE CENTER + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + side: const BorderSide( // ✅ BORDER ADDED + color: Color(0xFF00999E), + width: 1, + ), + ), + ), + child: Icon( + Icons.file_upload_outlined, + size: 22, + color: Color(0xFF00999E), + ) + ), + ), + const SizedBox(height: 15), + Text( + fileName!, + style: const TextStyle(fontSize: 16), + ), + const SizedBox(height: 15), + MouseRegion( + cursor: SystemMouseCursors.click, + child: GestureDetector( + onTap: resetErrorCount, + child: const Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Icon( + Icons.delete_forever, + size: 20, + color: Colors.red, + ), + SizedBox(width: 4), + Text( + 'Remove', + style: TextStyle( + fontSize: 13, + color: Color(0xFF727272), + ), + ), + ], + ), + ), + ), + ], + ) + : Column( + children: [ + SizedBox( + width: 40, + height: 40 , + child: ElevatedButton( + onPressed: () { + if (!_validateDatesBeforeUpload()) return; + if (fileName == null) { + _uploadFile('Policy Name'); + } + }, + style: ElevatedButton.styleFrom( + backgroundColor: const Color(0xFFD4F1F2), + elevation: 0, + padding: EdgeInsets.zero, // ✅ IMPORTANT + alignment: Alignment.center, // ✅ FORCE CENTER + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + side: const BorderSide( // ✅ BORDER ADDED + color: Color(0xFF00999E), + width: 1, + ), + ), + ), + child: Icon( + Icons.file_upload_outlined, + size: 22, + color: Color(0xFF00999E), + ) + ), + ), + SizedBox(height: 12), + Text('Upload Your Documents', + style: GoogleFonts.poppins( + fontSize: 16, + fontWeight: FontWeight.w600, + color: Color(0xFF000000) + ), + ), + SizedBox(height: 8), + Text( + '(Supported Format: XLSX)', + style: GoogleFonts.poppins( + fontSize: 10, + fontWeight: FontWeight.w400, + color: Color(0xFF707070) + ), + ), + ], + ), + ], + ), + ); + }, + ), + ), + ), + ), + ], + ), + SizedBox(height: 20), + Row( + mainAxisAlignment: + MainAxisAlignment.start, + children: [ + Expanded( + child: Column( + mainAxisAlignment: + MainAxisAlignment + .start, + children: [ + Text( + 'Please download the sample file to review the format.', + textAlign: + TextAlign.center, + style: TextStyle( + fontSize: 12, + fontWeight: + FontWeight.w400, + color: Color(0xFF707070) + )), + MouseRegion( + cursor: SystemMouseCursors + .click, + child: GestureDetector( + onTap: () { + downloadSampleFile(); + }, + child: Text( + 'Template File', + style: TextStyle( + fontSize: 15, + color: Color( + 0xFF00999E), // Add underline decoration + ), + ), + ), + ) + ])) + ], + ), + SizedBox(height: 20), + Row( + children: [ + Expanded( + child: Column( + children: [ + _buildFileUploadedGrid(), + const SizedBox(height: 16), + _buildPagination(context), + ], + ), + ) + + ], + ), + ], + ), + ); + } + + Widget _buildFileUploadedGrid() { + if (filteredData.isEmpty) { + return const SizedBox( + height: 120, + child: Center(child: Text('No uploaded files')), + ); + } + + return GridView.builder( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 2, // 👈 2 cards per row + crossAxisSpacing: 16, + mainAxisSpacing: 16, + childAspectRatio: 10, // 👈 card height + ), + itemCount: _paginatedData.length, + itemBuilder: (context, index) { + final item = _paginatedData[index]; + return _buildFileCard(item); + }, + ); + } + + Widget _buildFileCard(Map item) { + return Container( + padding: const EdgeInsets.symmetric(horizontal: 14, vertical: 12), + decoration: BoxDecoration( + color: const Color(0xFFEFF9FA), + borderRadius: BorderRadius.circular(12), + border: Border.all(color: const Color(0xFF9AD6DB)), + ), + child: Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + /// 📄 File Icon + Container( + height: 44, + width: 44, + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(10), + border: Border.all(color: const Color(0xFF00A6A6)), + ), + child: const Icon( + Icons.description_outlined, + color: Color(0xFF00A6A6), + size: 22, + ), + ), + + const SizedBox(width: 12), + + /// 📑 LEFT CONTENT + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + /// Row 1 → File name + Text( + item['file_name'] ?? '-', + maxLines: 1, + overflow: TextOverflow.ellipsis, + style: GoogleFonts.poppins( + fontSize: 13, + fontWeight: FontWeight.w600, + color: const Color(0xFF101010), + ), + ), + + const SizedBox(height: 4), + + /// Row 2 → Action - Date + RichText( + text: TextSpan( + style: GoogleFonts.poppins(fontSize: 11), + children: [ + TextSpan( + text: item['file_action'] ?? '', + style: const TextStyle( + color: Color(0xFF00999E), + fontWeight: FontWeight.w500, + ), + ), + const TextSpan( + text: ' - ', + style: TextStyle(color: Color(0xFF585858)), + ), + TextSpan( + text: formatDate(item['created_at']), + style: const TextStyle(color: Color(0xFF585858)), + ), + ], + ), + ), + ], + ), + ), + + /// 👉 RIGHT SIDE (ICON + STATUS + DOWNLOAD) + Column( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + /// 🔴 Error + Status + Row( + children: [ + + ], + ), + + const SizedBox(height: 8), + + Row( + children: [ + if (item['file_error_status'] == '1') + InkWell( + onTap: () async { + print(item); + // return; + final String? token = await tokenService.getCurrentToken(); + final String? enrollmentClient_id = await tokenService.readValue('enrollmentClient_id'); + final String? enrollmentEmpClientBranchId = await tokenService.readValue('enrollmentEmpClientBranchId'); + + print(item); + print(enrollmentClient_id); + print(widget.policyTypeId); + print(enrollmentEmpClientBranchId); + print(token); + print('post'); + print(widget.cardType); + print(widget.cardPolicyNo); + print(widget.cardInsurer_name); + print(widget.cardPolicy_name); + print(widget.cardPolicy_ExpDate); + print(item['id']); + + // ✅ SAFETY CHECK + if (token == null || + enrollmentClient_id == null || + enrollmentEmpClientBranchId == null) { + debugPrint('❌ Missing required data for navigation ${token}'); + return; + } + + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => + excelErrorScreen( + ClientId: enrollmentClient_id, + policy_no: item['policy_no'], + action: item['file_action'], + created_at: item['created_at'], + clientBranchId: enrollmentEmpClientBranchId, + Token: token, + TokenType: 'pre', + id: item['id'] + ), + ), + ); + }, + child: Icon( + Icons.error, + size: 16, + color: Colors.red, + ), + ), + SizedBox(width: 10), + _buildStatusChip(item['status']), + SizedBox(width: 10), + InkWell( + onTap: () { + getHrFileDownload(item['id'], item['file_name']); + }, + child: Container( + height: 30, + width: 30, + decoration: BoxDecoration( + color: Color(0xFFC5F2F4), + borderRadius: BorderRadius.circular(10), + border: Border.all(color: const Color(0xFF76CED2)), + ), + child: Icon( + Icons.file_download_outlined, + color: Color(0xFF1D1B20), + size: 22, + ), + ), + ), + ], + ), + /// ⬇ Download + + ], + ), + ], + ), + ); + } + + Widget _buildStatusChip(String status) { + final s = status.toLowerCase(); + + Color bg; + + if (s == 'success') { + bg = const Color(0xFF94E9B8); + } else if (s == 'failed') { + bg = const Color(0xFFFDC2C2); + } else if (s.contains('progress')) { + bg = const Color(0xFFFFE8AC); + } else { + bg = const Color(0xFFFBBF24); + } + + return Container( + padding: const EdgeInsets.symmetric(horizontal: 10, vertical: 4), + decoration: BoxDecoration( + color: bg, + borderRadius: BorderRadius.circular(20), + ), + child: Text( + status, + style: GoogleFonts.poppins( + fontSize: 11, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + ), + ); + } + + Widget _buildPagination(BuildContext context) { + final totalPages = (filteredData.length / _rowsPerPage).ceil(); + const visiblePageCount = 5; + + List getVisiblePages() { + if (totalPages <= visiblePageCount) { + return List.generate(totalPages, (i) => i + 1); + } + + if (_currentPage <= 3) { + return [1, 2, 3, 4, 5]; + } else if (_currentPage >= totalPages - 2) { + return [ + totalPages - 4, + totalPages - 3, + totalPages - 2, + totalPages - 1, + totalPages + ]; + } else { + return [ + _currentPage - 2, + _currentPage - 1, + _currentPage, + _currentPage + 1, + _currentPage + 2, + ]; + } + } + + List visiblePages = getVisiblePages(); + + return Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + Padding( + padding: const EdgeInsets.symmetric(vertical: 12), + child: Row( + children: [ + // Dropdown for rows per page + DropdownButton( + value: _rowsPerPage, + items: [5, 10, 15, 20, 50].map((int value) { + return DropdownMenuItem( + value: value, + child: Text(' $value ', + style: GoogleFonts.poppins(fontSize: 15)), + ); + }).toList(), + onChanged: (newValue) { + setState(() { + _rowsPerPage = newValue!; + _currentPage = 1; + }); + }, + ), + + // Previous button + IconButton( + onPressed: _currentPage > 1 + ? () => setState(() => _currentPage--) + : null, + icon: const Icon(Icons.chevron_left), + ), + + // First page + left ellipsis + if (!visiblePages.contains(1)) + Row(children: [ + _buildPageButton(1), + const Padding( + padding: EdgeInsets.symmetric(horizontal: 4), + child: Text("..."), + ), + ]), + + // Visible page buttons + for (int page in visiblePages) _buildPageButton(page), + + // Right ellipsis + last page + if (!visiblePages.contains(totalPages)) + Row(children: [ + const Padding( + padding: EdgeInsets.symmetric(horizontal: 4), + child: Text("..."), + ), + _buildPageButton(totalPages), + ]), + + // Next button + IconButton( + onPressed: _currentPage < totalPages + ? () => setState(() => _currentPage++) + : null, + icon: const Icon(Icons.chevron_right), + ), + ], + ), + ), + ], + ); + } + + Widget _buildPageButton(int page) { + return Padding( + padding: const EdgeInsets.symmetric(horizontal: 4), + child: ElevatedButton( + style: ElevatedButton.styleFrom( + backgroundColor: + _currentPage == page ? const Color(0xFF00A6A6) : Colors.grey[300], + foregroundColor: _currentPage == page ? Colors.white : Colors.black, + minimumSize: const Size(36, 36), + padding: EdgeInsets.zero, + ), + onPressed: () { + setState(() { + _currentPage = page; + }); + }, + child: Text(page.toString()), + ), + ); + } + + String formatDate(String? dateString) { + if (dateString == null || dateString.isEmpty) return '-'; + + try { + DateTime parsedDate = DateTime.parse(dateString); + return DateFormat('dd-MM-yyyy hh:mm a').format(parsedDate); + } catch (e) { + return '-'; + } + } + +} + +Widget _dateField({ + required String label, + required TextEditingController controller, + required VoidCallback onTap, +}) { + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + label, + style: GoogleFonts.poppins( + fontSize: 12, + fontWeight: FontWeight.w500, + color: Colors.black, + ), + ), + const SizedBox(height: 6), + SizedBox( + height: 38, + child: TextField( + controller: controller, + readOnly: true, + onTap: onTap, + style: GoogleFonts.poppins(fontSize: 13), + decoration: InputDecoration( + hintText: 'Select date', + hintStyle: const TextStyle(color: Color(0xFF9E9E9E)), + suffixIcon: const Icon( + Icons.calendar_month_outlined, + size: 18, + color: Color(0xFF00999E), + ), + contentPadding: + const EdgeInsets.symmetric(horizontal: 12, vertical: 10), + enabledBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(6), + borderSide: const BorderSide( + color: Color(0xFF00999E), + width: 1, + ), + ), + focusedBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(6), + borderSide: const BorderSide( + color: Color(0xFF00999E), + width: 1.5, + ), + ), + ), + ), + ), + ], + ); +} + + +class Data { + final dynamic value; + final int row; + final int column; + final String sheet; + + Data(this.value, this.row, this.column, this.sheet); +} + +class _DependenceDataSource0 extends DataTableSource { + final List> _data; + _DependenceDataSource0(this._data); + + @override + DataRow getRow(int index) { + final row = _data[index]; + + String dob = row['DOB'] != null ? formatDate(row['DOB']) : 'N/A'; + String doj = row['DOJ'] != null ? formatDate(row['DOJ']) : 'N/A'; + + return DataRow(cells: [ + DataCell(Text(row['Sno'].toString())), + DataCell(Text(row['Emp_Code'].toString())), + DataCell(Text(row['Name'].toString())), + DataCell(Text(doj)), + DataCell(Text(row['Gender']?.toString() ?? 'N/A')), + DataCell(Text(row['Relation']?.toString() ?? 'N/A')), + DataCell(Text(dob)), + DataCell(Text(row['Mail']?.toString() ?? 'N/A')), + DataCell(Text(row['Mobile']?.toString() ?? 'N/A')), + DataCell(Text(row['SI']?.toString() ?? 'N/A')), + DataCell(Text(row['Grade']?.toString() ?? 'N/A')), + ]); + } + + @override + bool get isRowCountApproximate => false; + + @override + int get rowCount => _data.length; + + @override + int get selectedRowCount => 0; + + String formatDate(dynamic dateValue) { + if (dateValue is String) { + // If the date is already in string format + DateTime dateTime = DateTime.parse(dateValue); + return DateFormat('dd-MM-yyyy').format(dateTime); + } else if (dateValue is DateCellValue) { + // If dateValue is an instance of DateCellValue + return DateFormat('dd-MM-yyyy') + .format(DateTime.parse(dateValue.toString())); + } else { + // Handle other cases or null values + return 'N/A'; + } + } +} diff --git a/lib/service/api_service.dart b/lib/service/api_service.dart index b7571c0..0d4f43f 100755 --- a/lib/service/api_service.dart +++ b/lib/service/api_service.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; import 'package:http/http.dart' as http; -import 'package:shared_preferences/shared_preferences.dart'; +import 'package:nhancepolicy/service/token_storage_service.dart'; import 'dart:convert'; import '../config/environment.dart'; @@ -8,6 +8,7 @@ import '../customAppBar/toastHelper.dart'; class ApiService { final BuildContext context; + final tokenService = TokenStorageService(); String? _token; String? _hrtoken; bool _isSessionOutToastShown = false; // Flag to track toast message @@ -17,10 +18,7 @@ class ApiService { } Future _initializeToken() async { - final prefs = await SharedPreferences.getInstance(); - _token = prefs.getString('token') ?? ''; - // final hrprefs = await SharedPreferences.getInstance(); - // _hrtoken = hrprefs.getString('hrtoken') ?? ''; + _token = tokenService.getCurrentToken() ?? ''; } Future getTokenLoadAPI(token) async { @@ -33,9 +31,9 @@ class ApiService { if (_token == null) { await _initializeToken(); } - final SharedPreferences prefs = await SharedPreferences.getInstance(); - final empClientId = prefs.getString('empClientId'); - final empClientBranchId = prefs.getString('empClientBranchId'); + final empClientId = await tokenService.readValue('empClientId'); + final empClientBranchId = await tokenService.readValue('empClientBranchId'); + final url = Uri.parse( '${Environment.apiUrl}getClientDetails?post_client_id=$empClientId&post_branch_id=$empClientBranchId&pre_client_id=$clientId&pre_branch_id=$branchID'); final headers = { @@ -45,6 +43,24 @@ class ApiService { return response; } + Future> getActiveAndInactivePolicyDetails( + String? clientId, + String? empCode, + String? status, + String? branchID, + String? mobileNo,String? emailId) async { + if (_token == null) { + await _initializeToken(); + } + final url = Uri.parse( + '${Environment.apiUrl}getEmployeeActiveOrInactivePolicy?client_id=${clientId ?? ''}&emp_code=${empCode ?? ''}&type=${status ?? ''}&client_branch_id=${branchID ?? ''}&mobile_no=${mobileNo ?? ''}&email_id=${emailId ?? ''}'); + final headers = { + 'Authorization': 'Bearer $_token' ?? '', + }; + final response = await _makeGetRequest(url, headers); + return response; + } + Future> getSelfEmployeeProfileToApi( token, String clientId, @@ -163,6 +179,26 @@ class ApiService { return response; } + Future> getExcelFileErrorsApi(id,type) async { + print(_token); + if (_token == null) { + await _initializeToken(); + } + final apiURL; + if(type == 'post'){ + apiURL = Environment.apiUrlPost; + } else { + apiURL = Environment.apiUrl; + } + final url = Uri.parse( + '${apiURL}getExcelFileErrors/${id}/api'); + final headers = { + 'Authorization': 'Bearer $_token' ?? '', + }; + final response = await _makeGetRequest(url, headers); + return response; + } + Future> removeAddonsGmcDependentToAPI( String empCodeString, String addOnsDependentClientPolicyId) async { print(_token); @@ -478,7 +514,8 @@ class ApiService { final url = Uri.parse('${Environment.apiUrlPost}logHrActivity'); final headers = { - 'Authorization': 'Bearer $token' ?? '', + 'Authorization': 'Bearer ${token ?? ''}', + 'APP-SIGNATURE': 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y', }; final body = { @@ -503,6 +540,39 @@ class ApiService { } } + Future> getEcardBulkDownloadApi(client_policy_id,empHrId,emp_policy_ids,String token) async { + + // final url = Uri.parse( + // '${Environment.apiUrlPost}logHrActivity?user_id=$postId&pre_hr_id=$preId&user_type=hr&activity=$activity'); + + final url = Uri.parse('${Environment.apiUrlPost}bulkEcardDownloadAsZip'); + + final headers = { + 'Authorization': 'Bearer ${token ?? ''}', + 'APP-SIGNATURE': 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y', + }; + + final body = { + 'client_policy_id': client_policy_id, + 'hr_id': empHrId, + 'emp_policy_ids':emp_policy_ids, + }; + + final response = await http.post( + url, + headers: headers, + body: jsonEncode(body), + ); + + // final response = await _makeGetRequest(url, headers); + if (response.statusCode == 200) { + return jsonDecode(response.body); + } else { + throw Exception( + 'Failed to log HR activity: ${response.statusCode} ${response.body}'); + } + } + Future> getPostLogHrActivity( String? postId, String? preId, String token, String activity) async { print("getCashDepositDetailsToApi1"); @@ -516,9 +586,10 @@ class ApiService { final url = Uri.parse('${Environment.apiUrlPost}logHrActivity'); - final headers = { - 'Authorization': 'Bearer $token' ?? '', - }; + final headers = { + 'Authorization': 'Bearer ${token ?? ''}', + 'APP-SIGNATURE': 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y', + }; final body = { 'user_id': postId, @@ -553,7 +624,8 @@ class ApiService { final url = Uri.parse('${Environment.apiUrl}logHrActivity'); final headers = { - 'Authorization': 'Bearer $token' ?? '', + 'Authorization': 'Bearer ${token ?? ''}', + 'APP-SIGNATURE': 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y', }; final body = { @@ -578,6 +650,32 @@ class ApiService { } } + Future> postHrDashboard(params,token) async { + + final url = Uri.parse('${Environment.apiUrlPost}getHrDashboad'); + + final headers = { + 'Authorization': 'Bearer ${token ?? ''}', + 'APP-SIGNATURE': 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y', + }; + + final body = params; + + final response = await http.post( + url, + headers: headers, + body: jsonEncode(body), + ); + + // final response = await _makeGetRequest(url, headers); + if (response.statusCode == 200) { + return jsonDecode(response.body); + } else { + throw Exception( + 'Failed to log HR activity: ${response.statusCode} ${response.body}'); + } + } + Future> getClaimPoliciesToApi(String token) async { print("getgetClaimPoliciesToApii1"); final url = Uri.parse('${Environment.apiUrlPost}claimsSearch'); @@ -589,6 +687,16 @@ class ApiService { return response; } + Future> getClaimPoliciesFileDownload(id,String token) async { + final url = Uri.parse('${Environment.apiUrlPost}hrFileDownload?id=$id'); + + final headers = { + 'Authorization': 'Bearer $token' ?? '', + }; + final response = await _makeGetRequest(url, headers); + return response; + } + Future> getClaimPoliciesListDataToApi( String token, Map body) async { print("getgetClaimPoliciesToApii1"); @@ -638,6 +746,30 @@ class ApiService { return response; } + Future> getOpenEndorsementFileData(id, String token) async { + print("getPolicyAndEndorsementFiles"); + final url = Uri.parse( + '${Environment.apiUrlPost}downloadPolicyFiles?file_id=$id'); + + final headers = { + 'Authorization': 'Bearer $token' ?? '', + }; + final response = await _makeGetRequest(url, headers); + return response; + } + + Future> getCdEndorsementData(id, String token) async { + print("getPolicyAndEndorsementFiles"); + final url = Uri.parse( + '${Environment.apiUrlPost}getPolicyAndEndorsementFiles?cd_ac_pk=$id'); + + final headers = { + 'Authorization': 'Bearer $token' ?? '', + }; + final response = await _makeGetRequest(url, headers); + return response; + } + Future> getClaimsHistoryToApi( String ticket_type_id, String token) async { print("getCashDepositDetailsToApi1"); @@ -663,7 +795,7 @@ class ApiService { } Future> getEmployeeAndDependenceToApi( - String clintID, String getPolicyNo, String empRefId, String token) async { + String clintID, getPolicyNo, String empRefId, String token) async { print(_hrtoken); if (token == null) { await _initializeToken(); @@ -691,15 +823,22 @@ class ApiService { return response; } - Future> getFileListToApi(empPrimaryId,cardPolicyNo,String token) async { + Future> getFileListToApi(empPrimaryId,cardPolicyNo,empClientId,String token,String type) async { print(_hrtoken); if (token == null) { await _initializeToken(); + } + final apiURL; + if(type == 'post'){ + apiURL = Environment.apiUrlPost; + } else { + apiURL = Environment.apiUrl; } final url = Uri.parse( - '${Environment.apiUrlPost}hrFileList?created_by=$empPrimaryId&policy_no=$cardPolicyNo'); + '${apiURL}hrFileList?created_by=$empPrimaryId&policy_no=$cardPolicyNo&client_id=$empClientId'); final headers = { - 'Authorization': 'Bearer $token' ?? '', + 'Authorization': 'Bearer ${token ?? ''}', + 'APP-SIGNATURE': 'nhance-2025-signature-T8f6gV9k5fK2wf5V5c4vId3b0J8z6cAm2x8Y', }; final response = await _makeGetRequest(url, headers); return response; @@ -815,8 +954,10 @@ class ApiService { // Clear only mobile storage // if (!isWeb) { - final prefs = await SharedPreferences.getInstance(); - await prefs.clear(); + await tokenService.clearAll(); + + print('Secure Storage Cleared'); + // } if (context.mounted) { print('context.mounted'); @@ -860,16 +1001,26 @@ class ApiService { await _clearLocalStorageAndRedirect(); } return {}; + } else if (response.statusCode == 429) { + final body = jsonDecode(response.body); + final message = body['message']; + ToastHelper.showWarningToast(context, message); + return {}; } else { throw Exception('Failed to load data'); } } Future _clearLocalStorageAndRedirect() async { - final prefs = await SharedPreferences.getInstance(); - await prefs.clear(); - // Assuming you have access to the context + await tokenService.clearAll(); // 🔐 clears flutter_secure_storage + ToastHelper.showErrorToast(context, 'Session Out'); - Navigator.pushNamed(context, 'hrLogin'); + if (!context.mounted) return; + Navigator.pushNamedAndRemoveUntil( + context, + 'hrLogin', + (route) => false, + ); } + } diff --git a/lib/service/file_upload_service.dart b/lib/service/file_upload_service.dart new file mode 100755 index 0000000..643d002 --- /dev/null +++ b/lib/service/file_upload_service.dart @@ -0,0 +1,70 @@ +import 'package:file_picker/file_picker.dart'; +import 'package:flutter/widgets.dart'; + +class UploadedFile { + final PlatformFile file; + final TextEditingController controller; + UploadedFile({required this.file}) + : controller = TextEditingController( + text: file.extension != null + ? file.name.replaceAll('.${file.extension}', '') + : file.name); + + String get label => controller.text; + void dispose() => controller.dispose(); +} + +class FileUploadService { + FileUploadService._(); + static final FileUploadService _instance = FileUploadService._(); + factory FileUploadService() => _instance; + + final List _files = []; + + // Expose as unmodifiable but containing UploadedFile objects + List get files => List.unmodifiable(_files); + + // Allowed extensions + static const allowedExtensions = ['pdf', 'png', 'jpg', 'jpeg', 'heic']; + + Future pickFiles({int maxFileSizeInMB = 3}) async { + final result = await FilePicker.platform.pickFiles( + allowMultiple: true, + withData: true, + type: FileType.custom, + allowedExtensions: allowedExtensions, + ); + + if (result != null) { + for (final pf in result.files) { + final ext = pf.extension?.toLowerCase() ?? ''; + final sizeInMB = (pf.size / (1024 * 1024)); + + if (!allowedExtensions.contains(ext)) { + return "Unsupported file format: ${pf.name}"; + } + if (sizeInMB > maxFileSizeInMB) { + return "File too large (${pf.name}). Max $maxFileSizeInMB MB allowed."; + } + + // Wrap PlatformFile in our UploadedFile model + _files.add(UploadedFile(file: pf)); + } + } + return null; + } + + void removeFileAt(int index) { + if (index >= 0 && index < _files.length) { + _files[index].dispose(); + _files.removeAt(index); + } + } + + void clearAll() { + for (final f in _files) { + f.dispose(); + } + _files.clear(); + } +} diff --git a/lib/service/hrDashboardTabs/activePolicies.dart b/lib/service/hrDashboardTabs/activePolicies.dart index 465ef33..133be4e 100755 --- a/lib/service/hrDashboardTabs/activePolicies.dart +++ b/lib/service/hrDashboardTabs/activePolicies.dart @@ -1,462 +1,462 @@ -import 'package:firebase_auth/firebase_auth.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:http/http.dart' as http; - -import '../../hrPolicyDetails.dart'; -import '../api_service.dart'; - -class ActivePolicies extends StatefulWidget { - final String empClientId; - final String empClientBranchId; - final String empHrId; - final String postToken; - - const ActivePolicies( - {Key? key, - required this.empClientId, - required this.empClientBranchId, - required this.postToken, - required this.empHrId}); - - @override - State createState() => _ActivePolicieState(); -} - -class _ActivePolicieState extends State { - late ApiService apiService; - dynamic getCardArrays = []; - int selectedIndex = 1; - int stausVal = 1; - bool isLoading = false; - - // List> getCardArrays = [ - // { - // "client_policy_id": 392, - // "client_id": 58, - // "policy_type_id": 2, - // "is_addon": 1, - // "OpenForEnrollment": 1, - // "inception_type": 2, - // "policy_no": "GMC-MA8596745566998855885", - // "insurer_id": 1, - // "type": "GMC", - // "policy_name": "Group Medical Coverage", - // "insurer_name": "Life Insurance Corporation of India (LIC)", - // "insurer_short_name": "LIC", - // "totalMembersCount": 7, - // "membersCountOfEnrolled": 0, - // "membersCountOfDraft": 7 - // }, - // { - // "client_policy_id": 392, - // "client_id": 58, - // "policy_type_id": 2, - // "is_addon": 1, - // "OpenForEnrollment": 1, - // "inception_type": 2, - // "policy_no": "GMC-MA8596745566998855885", - // "insurer_id": 1, - // "type": "GMC", - // "policy_name": "Group Medical Coverage", - // "insurer_name": "Life Insurance Corporation of India (LIC)", - // "insurer_short_name": "LIC", - // "totalMembersCount": 7, - // "membersCountOfEnrolled": 0, - // "membersCountOfDraft": 7 - // }, - // - // ]; - - @override - void initState() { - super.initState(); - apiService = ApiService(context); - _loadData(); - - print("_PreEnrollmentState 1"); - } - - Future _loadData() async { - await getCashDepositDetails(widget.empClientBranchId, widget.empClientId, - widget.empHrId, widget.postToken); - } - - Future getCashDepositDetails( - clintBranchId, clintID, hr_id, token) async { - print("_PreEnrollmentState 2"); - print('IN'); - print("clintBranchId -$clintBranchId"); - print("clintID -$clintID"); - print("hr_id -$hr_id"); - print("token -$token"); - - isLoading = true; - // setState(() { - // _isLoading = true; - // }); - try { - if (clintBranchId == null || clintID == null) { - return; - } - - final response = await apiService.getActiveCashDepositDetailsToApi( - clintID!, clintBranchId!, hr_id, token, stausVal); - - // final response = await apiService.getCashDepositDetailsToApi( - // clintID!, clintBranchId!, hr_id, token); - print('IN1'); - if (response['status'] == 'success') { - isLoading = false; - setState(() { - print('response'); - print(response['data']); - - print("_PreEnrollmentState 3"); - setState(() { - getCardArrays = List>.from(response['data']); - }); - - print('getCardArrays'); - print(getCardArrays); - }); - - print('IN2'); - print("getCardArrays9 - $getCardArrays"); - } else { - isLoading = false; - print('API request failed with status'); - setState(() { - getCardArrays = []; - }); - } - } catch (e) { - print('Exception occurred: $e'); - } - } - - @override - Widget build(BuildContext context) { - final screenWidth = MediaQuery.of(context).size.width; - final screenHeight = MediaQuery.of(context).size.height; - - final crossAxisCount = 4; - final spacing = 20.0; // crossAxisSpacing - final totalSpacing = (crossAxisCount - 1) * spacing; - final itemWidth = (screenWidth - totalSpacing) / crossAxisCount; - -// Example: target card height - final itemHeight = screenHeight * 0.2; - -// Dynamic aspect ratio: - final aspectRatio = screenWidth / screenHeight; - - print("_PreEnrollmentState 4"); - // TODO: implement build - return Container( - // height: MediaQuery.of(context).size.height * 0.2, - - // height: 400, - padding: const EdgeInsets.all(16.0), - decoration: BoxDecoration( - color: Colors.white, - // color: Colors.yellow.shade100, - borderRadius: BorderRadius.circular(16), - ), - // - - child: Column( - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - Container( - // padding: const EdgeInsets.only(left: 16.0, right: 16.0), - decoration: BoxDecoration( - color: Colors.grey.shade50, - boxShadow: const [ - BoxShadow( - color: Colors.black54, // Grey shadow - spreadRadius: 0.2, - blurRadius: 6, - offset: Offset(0, 1), // Horizontal, Vertical - ), - ], - borderRadius: BorderRadius.circular(16), - ), - - child: Row( - children: [ - buildTab("Active", 0), - const SizedBox(width: 10), - buildTab("Expired", 1), - ], - ), - ), - ], - ), - const SizedBox( - height: 15, - ), - isLoading - ? Expanded( - // color: Color(0x98FFFCE5), // Semi-transparent background - child: Center( - child: // Your GIF loader widget - Image.asset( - height: 60, - width: 60, - 'assets/nhance-loader.gif'), // Adjust path to your GIF loader - ), - ) - : Flexible( - child: Container( - // color: Colors.redAccent.shade100, - // height: MediaQuery.of(context).size.height * 0.4, - // mainAxisAlignment: MainAxisAlignment.center, - // children: [ - child: Container( - // color: Colors.redAccent.shade100, - // color: Colors.white, - // color: Colors.white, - padding: EdgeInsets.symmetric(horizontal: 16.0), - // height: MediaQuery.of(context).size.height * 0.4, - // height: 400, - - child: getCardArrays.isEmpty - ? Center( - child: Text( - 'No Policy Mapping Found', - style: TextStyle( - fontSize: 16, - color: Colors.grey.shade600, - ), - ), - ) - : GridView.builder( - itemCount: getCardArrays.length, - gridDelegate: - SliverGridDelegateWithFixedCrossAxisCount( - crossAxisCount: 4, - crossAxisSpacing: 20, - mainAxisSpacing: 20, - // childAspectRatio: 2, - childAspectRatio: aspectRatio, - // childAspectRatio: 2.1, - ), - itemBuilder: (context, index) { - return buildPolicyCard(getCardArrays[index]); - }, - ), - ), - // ], - ), - ), - ], - ), - ); - } - - Widget buildPolicyCard(Map policy) { - print("buildPolicyCard - $policy"); - final mediaQuery = MediaQuery.of(context); - final devicePixelRatio = mediaQuery.devicePixelRatio; - final logicalWidth = 230 / devicePixelRatio; - final logicalHeight = 115 / devicePixelRatio; - - print("logicalWidth - $logicalWidth"); - print("logicalHeight - $logicalHeight"); - return InkWell( - onTap: () { - setState(() { - print("policytab - $policy"); - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => hrPolicyDetails( - ClientId: policy['client_id'].toString(), // <-- from map - policyTypeId: - policy['policy_type_id'].toString(), // <-- from map - ClientPoliyId: policy['client_policy_id'].toString(), - clientBranchId: widget.empClientBranchId, - Token: widget.postToken, - TokenType: 'post', - cardType: policy['type'].toString(), - cardPolicyNo: policy['policy_no'].toString(), - cardInsurer_name: policy['insurer_short_name'].toString(), - cardPolicy_name: policy['policy_name'].toString(), - cardPolicy_ExpDate: policy['policy_expiry_date'].toString(), - ), - ), - ); - }); - }, - - // height: MediaQuery.of(context).size.height * 0.1, - // width: MediaQuery.of(context).size.height * 0.1, - // width: logicalWidth, - // height: logicalHeight, - child: Container( - margin: EdgeInsets.symmetric(horizontal: 4.0, vertical: 2.0), - // height: MediaQuery.of(context).size.height * 1, - // width: MediaQuery.of(context).size.height * 0.1, - // margin: EdgeInsets.only(bottom: 10.0), - decoration: BoxDecoration( - // color: Colors.yellow.shade50, - color: Colors.white, - borderRadius: BorderRadius.circular(12), - boxShadow: const [ - BoxShadow( - color: Colors.black12, - blurRadius: 6, - spreadRadius: 1, - offset: Offset(0, 0), // Equal shadow in all directions - ), - ], - ), - // shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), - child: Padding( - padding: const EdgeInsets.all(12), - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Container( - height: MediaQuery.of(context).size.height * 0.07, - // color: Colors.green.shade100, - child: Row( - children: [ - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - "${policy['type']} - ${policy['policy_no']} " ?? '', - style: const TextStyle( - fontFamily: "Inter", - fontWeight: FontWeight.w600, - fontSize: 12, - ), - ), - policy['insurer_name'] != '' - ? Text( - // "${policy['insurer_short_name']} - ${policy['policy_name']} " ?? - // '', - - policy['insurer_name'] ?? "", - style: const TextStyle( - fontSize: 11, - color: Colors.grey, - ), - ) - : SizedBox.shrink(), - ], - ), - ], - ), - ), - // Spacer(), - Container( - // color: Colors.pink.shade50, - height: MediaQuery.of(context).size.height * 0.09, - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, - children: [ - _buildCountBox( - policy['membersCountOfActive'].toString(), - "Active", - Color(0xFF7BD9B6), - ), - - // Spacer(), - _buildCountBox( - policy['membersCountOfInactive'].toString(), - "Inactive", - Color(0xFFFFA6A6), - ), - // Spacer(), - // _buildCountBox( - // policy['totalMembersCount'].toString(), "Total"), - // Spacer(), - ], - ), - ), - ], - ), - ), - ), - ); - } - - Widget _buildCountBox(String count, String label, Color boxColor) { - return Column( - // mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - Container( - // width: 70, - // height: 40, - height: MediaQuery.of(context).size.height * 0.05, - width: MediaQuery.of(context).size.height * 0.1, - alignment: Alignment.center, - decoration: BoxDecoration( - color: boxColor, - // color: const Color(0xFFDFF1F3), - borderRadius: BorderRadius.circular(8), - ), - child: Text( - count, - style: const TextStyle(fontSize: 12, fontWeight: FontWeight.w600), - ), - ), - // Spacer(), - const SizedBox(height: 8), - Text(label, - style: const TextStyle(fontSize: 10, color: Color(0xFF848484))), - ], - ); - } - - Widget buildTab(String title, int index) { - final isSelected = selectedIndex == index + 1; - return InkWell( - onTap: () { - setState(() { - selectedIndex = index + 1; - if (selectedIndex == 2) { - stausVal = 0; - } else { - stausVal = 1; - } - _loadData(); - }); - }, - child: Container( - padding: const EdgeInsets.only( - top: 6.5, bottom: 6.0, left: 20.0, right: 20.0), - decoration: BoxDecoration( - color: isSelected ? const Color(0xFF009195) : Colors.transparent, - boxShadow: isSelected - ? [ - BoxShadow( - color: isSelected - ? const Color(0xFF009195) - : Colors.transparent, // Grey shadow - spreadRadius: 0.2, - blurRadius: 1, - offset: const Offset(0, 1), // Horizontal, Vertical - ), - ] - : [], - borderRadius: BorderRadius.circular(16), - ), - child: Text(title, - style: GoogleFonts.poppins( - fontSize: 11, - color: isSelected ? Colors.white : Colors.black, - fontWeight: FontWeight.w500, - ))), - ); - } -} +// import 'package:firebase_auth/firebase_auth.dart'; +// import 'package:flutter/cupertino.dart'; +// import 'package:flutter/material.dart'; +// import 'package:flutter/services.dart'; +// import 'package:google_fonts/google_fonts.dart'; +// import 'package:http/http.dart' as http; +// +// import '../../presentation/hrPolicyDetails.dart'; +// import '../api_service.dart'; +// +// class ActivePolicies extends StatefulWidget { +// final String empClientId; +// final String empClientBranchId; +// final String empHrId; +// final String postToken; +// +// const ActivePolicies( +// {Key? key, +// required this.empClientId, +// required this.empClientBranchId, +// required this.postToken, +// required this.empHrId}); +// +// @override +// State createState() => _ActivePolicieState(); +// } +// +// class _ActivePolicieState extends State { +// late ApiService apiService; +// dynamic getCardArrays = []; +// int selectedIndex = 1; +// int stausVal = 1; +// bool isLoading = false; +// +// // List> getCardArrays = [ +// // { +// // "client_policy_id": 392, +// // "client_id": 58, +// // "policy_type_id": 2, +// // "is_addon": 1, +// // "OpenForEnrollment": 1, +// // "inception_type": 2, +// // "policy_no": "GMC-MA8596745566998855885", +// // "insurer_id": 1, +// // "type": "GMC", +// // "policy_name": "Group Medical Coverage", +// // "insurer_name": "Life Insurance Corporation of India (LIC)", +// // "insurer_short_name": "LIC", +// // "totalMembersCount": 7, +// // "membersCountOfEnrolled": 0, +// // "membersCountOfDraft": 7 +// // }, +// // { +// // "client_policy_id": 392, +// // "client_id": 58, +// // "policy_type_id": 2, +// // "is_addon": 1, +// // "OpenForEnrollment": 1, +// // "inception_type": 2, +// // "policy_no": "GMC-MA8596745566998855885", +// // "insurer_id": 1, +// // "type": "GMC", +// // "policy_name": "Group Medical Coverage", +// // "insurer_name": "Life Insurance Corporation of India (LIC)", +// // "insurer_short_name": "LIC", +// // "totalMembersCount": 7, +// // "membersCountOfEnrolled": 0, +// // "membersCountOfDraft": 7 +// // }, +// // +// // ]; +// +// @override +// void initState() { +// super.initState(); +// apiService = ApiService(context); +// _loadData(); +// +// print("_PreEnrollmentState 1"); +// } +// +// Future _loadData() async { +// await getCashDepositDetails(widget.empClientBranchId, widget.empClientId, +// widget.empHrId, widget.postToken); +// } +// +// Future getCashDepositDetails( +// clintBranchId, clintID, hr_id, token) async { +// print("_PreEnrollmentState 2"); +// print('IN'); +// print("clintBranchId -$clintBranchId"); +// print("clintID -$clintID"); +// print("hr_id -$hr_id"); +// print("token -$token"); +// +// isLoading = true; +// // setState(() { +// // _isLoading = true; +// // }); +// try { +// if (clintBranchId == null || clintID == null) { +// return; +// } +// +// final response = await apiService.getActiveCashDepositDetailsToApi( +// clintID!, clintBranchId!, hr_id, token, stausVal); +// +// // final response = await apiService.getCashDepositDetailsToApi( +// // clintID!, clintBranchId!, hr_id, token); +// print('IN1'); +// if (response['status'] == 'success') { +// isLoading = false; +// setState(() { +// print('response'); +// print(response['data']); +// +// print("_PreEnrollmentState 3"); +// setState(() { +// getCardArrays = List>.from(response['data']); +// }); +// +// print('getCardArrays'); +// print(getCardArrays); +// }); +// +// print('IN2'); +// print("getCardArrays9 - $getCardArrays"); +// } else { +// isLoading = false; +// print('API request failed with status'); +// setState(() { +// getCardArrays = []; +// }); +// } +// } catch (e) { +// print('Exception occurred: $e'); +// } +// } +// +// @override +// Widget build(BuildContext context) { +// final screenWidth = MediaQuery.of(context).size.width; +// final screenHeight = MediaQuery.of(context).size.height; +// +// final crossAxisCount = 4; +// final spacing = 20.0; // crossAxisSpacing +// final totalSpacing = (crossAxisCount - 1) * spacing; +// final itemWidth = (screenWidth - totalSpacing) / crossAxisCount; +// +// // Example: target card height +// final itemHeight = screenHeight * 0.2; +// +// // Dynamic aspect ratio: +// final aspectRatio = screenWidth / screenHeight; +// +// print("_PreEnrollmentState 4"); +// // TODO: implement build +// return Container( +// // height: MediaQuery.of(context).size.height * 0.2, +// +// // height: 400, +// padding: const EdgeInsets.all(16.0), +// decoration: BoxDecoration( +// color: Colors.white, +// // color: Colors.yellow.shade100, +// borderRadius: BorderRadius.circular(16), +// ), +// // +// +// child: Column( +// children: [ +// Row( +// mainAxisAlignment: MainAxisAlignment.end, +// children: [ +// Container( +// // padding: const EdgeInsets.only(left: 16.0, right: 16.0), +// decoration: BoxDecoration( +// color: Colors.grey.shade50, +// boxShadow: const [ +// BoxShadow( +// color: Colors.black54, // Grey shadow +// spreadRadius: 0.2, +// blurRadius: 6, +// offset: Offset(0, 1), // Horizontal, Vertical +// ), +// ], +// borderRadius: BorderRadius.circular(16), +// ), +// +// child: Row( +// children: [ +// buildTab("Active", 0), +// const SizedBox(width: 10), +// buildTab("Expired", 1), +// ], +// ), +// ), +// ], +// ), +// const SizedBox( +// height: 15, +// ), +// isLoading +// ? Expanded( +// // color: Color(0x98FFFCE5), // Semi-transparent background +// child: Center( +// child: // Your GIF loader widget +// Image.asset( +// height: 60, +// width: 60, +// 'assets/nhance-loader.gif'), // Adjust path to your GIF loader +// ), +// ) +// : Flexible( +// child: Container( +// // color: Colors.redAccent.shade100, +// // height: MediaQuery.of(context).size.height * 0.4, +// // mainAxisAlignment: MainAxisAlignment.center, +// // children: [ +// child: Container( +// // color: Colors.redAccent.shade100, +// // color: Colors.white, +// // color: Colors.white, +// padding: EdgeInsets.symmetric(horizontal: 16.0), +// // height: MediaQuery.of(context).size.height * 0.4, +// // height: 400, +// +// child: getCardArrays.isEmpty +// ? Center( +// child: Text( +// 'No Policy Mapping Found', +// style: TextStyle( +// fontSize: 16, +// color: Colors.grey.shade600, +// ), +// ), +// ) +// : GridView.builder( +// itemCount: getCardArrays.length, +// gridDelegate: +// SliverGridDelegateWithFixedCrossAxisCount( +// crossAxisCount: 4, +// crossAxisSpacing: 20, +// mainAxisSpacing: 20, +// // childAspectRatio: 2, +// childAspectRatio: aspectRatio, +// // childAspectRatio: 2.1, +// ), +// itemBuilder: (context, index) { +// return buildPolicyCard(getCardArrays[index]); +// }, +// ), +// ), +// // ], +// ), +// ), +// ], +// ), +// ); +// } +// +// Widget buildPolicyCard(Map policy) { +// print("buildPolicyCard - $policy"); +// final mediaQuery = MediaQuery.of(context); +// final devicePixelRatio = mediaQuery.devicePixelRatio; +// final logicalWidth = 230 / devicePixelRatio; +// final logicalHeight = 115 / devicePixelRatio; +// +// print("logicalWidth - $logicalWidth"); +// print("logicalHeight - $logicalHeight"); +// return InkWell( +// onTap: () { +// setState(() { +// print("policytab - $policy"); +// Navigator.push( +// context, +// MaterialPageRoute( +// builder: (context) => hrPolicyDetails( +// ClientId: widget.empClientId, // <-- from map +// policyTypeId: +// policy['policy_type_id'].toString(), // <-- from map +// ClientPoliyId: policy['client_policy_id'].toString(), +// clientBranchId: widget.empClientBranchId, +// Token: widget.postToken, +// TokenType: 'post', +// cardType: policy['type'].toString(), +// cardPolicyNo: policy['policy_no'].toString(), +// cardInsurer_name: policy['insurer_short_name'].toString(), +// cardPolicy_name: policy['policy_name'].toString(), +// cardPolicy_ExpDate: policy['policy_expiry_date'].toString(), +// ), +// ), +// ); +// }); +// }, +// +// // height: MediaQuery.of(context).size.height * 0.1, +// // width: MediaQuery.of(context).size.height * 0.1, +// // width: logicalWidth, +// // height: logicalHeight, +// child: Container( +// margin: EdgeInsets.symmetric(horizontal: 4.0, vertical: 2.0), +// // height: MediaQuery.of(context).size.height * 1, +// // width: MediaQuery.of(context).size.height * 0.1, +// // margin: EdgeInsets.only(bottom: 10.0), +// decoration: BoxDecoration( +// // color: Colors.yellow.shade50, +// color: Colors.white, +// borderRadius: BorderRadius.circular(12), +// boxShadow: const [ +// BoxShadow( +// color: Colors.black12, +// blurRadius: 6, +// spreadRadius: 1, +// offset: Offset(0, 0), // Equal shadow in all directions +// ), +// ], +// ), +// // shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), +// child: Padding( +// padding: const EdgeInsets.all(12), +// child: Column( +// mainAxisSize: MainAxisSize.min, +// crossAxisAlignment: CrossAxisAlignment.start, +// children: [ +// Container( +// height: MediaQuery.of(context).size.height * 0.07, +// // color: Colors.green.shade100, +// child: Row( +// children: [ +// Column( +// crossAxisAlignment: CrossAxisAlignment.start, +// children: [ +// Text( +// "${policy['type']} - ${policy['policy_no']} " ?? '', +// style: const TextStyle( +// fontFamily: "Inter", +// fontWeight: FontWeight.w600, +// fontSize: 12, +// ), +// ), +// policy['insurer_name'] != '' +// ? Text( +// // "${policy['insurer_short_name']} - ${policy['policy_name']} " ?? +// // '', +// +// policy['insurer_name'] ?? "", +// style: const TextStyle( +// fontSize: 11, +// color: Colors.grey, +// ), +// ) +// : SizedBox.shrink(), +// ], +// ), +// ], +// ), +// ), +// // Spacer(), +// Container( +// // color: Colors.pink.shade50, +// height: MediaQuery.of(context).size.height * 0.09, +// child: Row( +// mainAxisAlignment: MainAxisAlignment.spaceEvenly, +// children: [ +// _buildCountBox( +// policy['membersCountOfActive'].toString(), +// "Active", +// Color(0xFF7BD9B6), +// ), +// +// // Spacer(), +// _buildCountBox( +// policy['membersCountOfInactive'].toString(), +// "Inactive", +// Color(0xFFFFA6A6), +// ), +// // Spacer(), +// // _buildCountBox( +// // policy['totalMembersCount'].toString(), "Total"), +// // Spacer(), +// ], +// ), +// ), +// ], +// ), +// ), +// ), +// ); +// } +// +// Widget _buildCountBox(String count, String label, Color boxColor) { +// return Column( +// // mainAxisAlignment: MainAxisAlignment.spaceBetween, +// crossAxisAlignment: CrossAxisAlignment.center, +// children: [ +// Container( +// // width: 70, +// // height: 40, +// height: MediaQuery.of(context).size.height * 0.05, +// width: MediaQuery.of(context).size.height * 0.1, +// alignment: Alignment.center, +// decoration: BoxDecoration( +// color: boxColor, +// // color: const Color(0xFFDFF1F3), +// borderRadius: BorderRadius.circular(8), +// ), +// child: Text( +// count, +// style: const TextStyle(fontSize: 12, fontWeight: FontWeight.w600), +// ), +// ), +// // Spacer(), +// const SizedBox(height: 8), +// Text(label, +// style: const TextStyle(fontSize: 10, color: Color(0xFF848484))), +// ], +// ); +// } +// +// Widget buildTab(String title, int index) { +// final isSelected = selectedIndex == index + 1; +// return InkWell( +// onTap: () { +// setState(() { +// selectedIndex = index + 1; +// if (selectedIndex == 2) { +// stausVal = 0; +// } else { +// stausVal = 1; +// } +// _loadData(); +// }); +// }, +// child: Container( +// padding: const EdgeInsets.only( +// top: 6.5, bottom: 6.0, left: 20.0, right: 20.0), +// decoration: BoxDecoration( +// color: isSelected ? const Color(0xFF009195) : Colors.transparent, +// boxShadow: isSelected +// ? [ +// BoxShadow( +// color: isSelected +// ? const Color(0xFF009195) +// : Colors.transparent, // Grey shadow +// spreadRadius: 0.2, +// blurRadius: 1, +// offset: const Offset(0, 1), // Horizontal, Vertical +// ), +// ] +// : [], +// borderRadius: BorderRadius.circular(16), +// ), +// child: Text(title, +// style: GoogleFonts.poppins( +// fontSize: 11, +// color: isSelected ? Colors.white : Colors.black, +// fontWeight: FontWeight.w500, +// ))), +// ); +// } +// } diff --git a/lib/service/hrDashboardTabs/cd.dart b/lib/service/hrDashboardTabs/cd.dart index c159a1d..0f11fca 100755 --- a/lib/service/hrDashboardTabs/cd.dart +++ b/lib/service/hrDashboardTabs/cd.dart @@ -7,13 +7,14 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:google_fonts/google_fonts.dart'; import 'package:http/http.dart' as http; -import 'package:shared_preferences/shared_preferences.dart'; import 'package:universal_html/html.dart' as html; -import '../../cdTransactionDetails.dart'; +import '../../presentation/cdTransactionDetails.dart'; import '../api_service.dart'; import 'package:collection/collection.dart'; +import '../token_storage_service.dart'; + class CdPolicies extends StatefulWidget { final String empClientId; final String empClientBranchId; @@ -31,6 +32,7 @@ class CdPolicies extends StatefulWidget { } class _CdPolicieState extends State { + final tokenService = TokenStorageService(); Uint8List? fileBytes; List> getCDPolicies = []; bool isLoading = false; @@ -188,9 +190,8 @@ class _CdPolicieState extends State { Future handleExportAction() async { print('handleExportAction'); - final SharedPreferences prefs = await SharedPreferences.getInstance(); - final postId = prefs.getString('empHrId'); - final preId = prefs.getString('enrollmentEmpPrimaryId'); + final postId = await tokenService.readValue('empHrId'); + final preId = await tokenService.readValue('enrollmentEmpPrimaryId'); var activity = "export_cddata"; print('postId - $postId'); @@ -502,8 +503,7 @@ class _CdPolicieState extends State { cdMasterAccountNo: item['cd_master_account_no'], insurerId: item['insurer_id'], cd_ac_pk: item['cd_ac_pk'], - empClientId: widget.empClientId, - postToken: widget.postToken), + empClientId: widget.empClientId), ), ); }, diff --git a/lib/service/hrDashboardTabs/preEnrollment.dart b/lib/service/hrDashboardTabs/preEnrollment.dart index 412677c..ae3e18a 100755 --- a/lib/service/hrDashboardTabs/preEnrollment.dart +++ b/lib/service/hrDashboardTabs/preEnrollment.dart @@ -1,374 +1,374 @@ -import 'package:firebase_auth/firebase_auth.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:google_fonts/google_fonts.dart'; -import 'package:http/http.dart' as http; - -import '../../hrPolicyDetails.dart'; -import '../api_service.dart'; - -class PreEnrollment extends StatefulWidget { - final String enrollmentClientId; - final String enrollmentClientBranchId; - final String enrollmentHrId; - final String enrollToken; - - const PreEnrollment( - {Key? key, - required this.enrollmentClientId, - required this.enrollmentClientBranchId, - required this.enrollmentHrId, - required this.enrollToken}); - - @override - State createState() => _PreEnrollmentState(); -} - -class _PreEnrollmentState extends State { - late ApiService apiService; - dynamic getCardArrays = []; - int selectedIndex = 0; - bool isLoading = false; - // List> getCardArrays = [ - // { - // "client_policy_id": "415", - // "client_id": "187", - // "policy_type_id": "2", - // "is_addon": "1", - // "OpenForEnrollment": "0", - // "inception_type": "1", - // "policy_no": "GMC-2002/2022/2005", - // "insurer_id": null, - // "policy_expiry_date": "06-07-2026", - // "type": "GMC", - // "policy_name": "Group Medical Coverage", - // "insurer_name": null, - // "insurer_short_name": null, - // "totalMembersCount": 17, - // "membersCountOfEnrolled": 0, - // "membersCountOfDraft": 17 - // }, - // { - // "client_policy_id": 396, - // "client_id": 58, - // "policy_type_id": 4, - // "is_addon": 2, - // "OpenForEnrollment": 1, - // "inception_type": 2, - // "policy_no": "GMC-MA8596745566998855885", - // "insurer_id": 1, - // "type": "GMC - Topup", - // "policy_name": "Group Medical Coverage Topup", - // "insurer_name": "Life Insurance Corporation of India (LIC)", - // "insurer_short_name": "LIC", - // "totalMembersCount": 7, - // "membersCountOfEnrolled": 0, - // "membersCountOfDraft": 7 - // }, - // - // ]; - - @override - void initState() { - super.initState(); - apiService = ApiService(context); - _loadData(); - - print("_PreEnrollmentState 1"); - } - - Future _loadData() async { - await getCashDepositDetails(widget.enrollmentClientBranchId, - widget.enrollmentClientId, widget.enrollmentHrId, widget.enrollToken); - } - - Future getCashDepositDetails( - clintBranchId, clintID, hr_id, token) async { - print("_PreEnrollmentState 2"); - print('IN'); - print("clintBranchId -$clintBranchId"); - print("clintID -$clintID"); - print("hr_id -$hr_id"); - print("token -$token"); - - // isLoading = true; - setState(() { - isLoading = true; - }); - try { - if (clintBranchId == null || clintID == null) { - return; - } - final response = await apiService.getCashDepositDetailsToApi( - clintID!, clintBranchId!, hr_id, token); - - // final response = await apiService.getCashDepositDetailsToApi( - // clintID!, clintBranchId!, hr_id, token); - print('IN1'); - if (response['status'] == 'success') { - - setState(() { - isLoading = false; - print('response'); - print(response['data']); - - print("_PreEnrollmentState 3"); - // getCardArrays = []; - getCardArrays = List>.from(response['data']); - print('getCardArrays'); - print(getCardArrays); - }); - - print('IN2'); - print("getCardArrays9 - $getCardArrays"); - } else { - setState(() { - isLoading = false; - }); - - print('API request failed with status'); - } - } catch (e) { - print('Exception occurred: $e'); - } - } - - @override - Widget build(BuildContext context) { - final screenWidth = MediaQuery.of(context).size.width; - final screenHeight = MediaQuery.of(context).size.height; - - final crossAxisCount = 4; - final spacing = 20.0; // crossAxisSpacing - final totalSpacing = (crossAxisCount - 1) * spacing; - final itemWidth = (screenWidth - totalSpacing) / crossAxisCount; - - // Example: target card height - final itemHeight = screenHeight * 0.2; - - // Dynamic aspect ratio: - final aspectRatio = screenWidth / screenHeight; - - print("_PreEnrollmentState 4"); - // TODO: implement build - return Container( - // height: MediaQuery.of(context).size.height * 0.2, - - // height: 400, - padding: const EdgeInsets.all(16.0), - decoration: BoxDecoration( - color: Colors.white, - // color: Colors.yellow.shade100, - borderRadius: BorderRadius.circular(16), - ), - // - child: Column( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - isLoading - ? Container( - // color: Color(0x98FFFCE5), // Semi-transparent background - child: Center( - child: // Your GIF loader widget - Image.asset( - height: 60, - width: 60, - 'assets/nhance-loader.gif'), // Adjust path to your GIF loader - ), - ) - : Flexible( - child: Container( - // color: Colors.redAccent.shade100, - // color: Colors.white, - // color: Colors.white, - // padding: EdgeInsets.symmetric(horizontal: 16.0), - // height: MediaQuery.of(context).size.height * 0.45, - // height: 400, - - child: Container( - child: getCardArrays.isEmpty - ? Center( - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - Image.asset( - 'assets/searchData.jpg', // Replace 'default_image.png' with your default image asset path - width: 200, - height: 200, - fit: BoxFit.cover, - ), - Text( - 'No Policy Mapping Found', - style: TextStyle( - fontSize: 16, - color: Colors.grey.shade600, - ), - ), - ], - ), - ) - : GridView.builder( - itemCount: getCardArrays.length, - gridDelegate: - const SliverGridDelegateWithFixedCrossAxisCount( - crossAxisCount: 4, - crossAxisSpacing: 20, - mainAxisSpacing: 20, - childAspectRatio: 2.4, - // childAspectRatio: aspectRatio, - // childAspectRatio: 2.1, - ), - itemBuilder: (context, index) { - return buildPolicyCard(getCardArrays[index]); - }, - ), - ), - ), - ), - ], - ), - ); - } - - Widget buildPolicyCard(Map policy) { - final mediaQuery = MediaQuery.of(context); - final devicePixelRatio = mediaQuery.devicePixelRatio; - final logicalWidth = 230 / devicePixelRatio; - final logicalHeight = 189 / devicePixelRatio; - - print("logicalWidth - $logicalWidth"); - print("logicalHeight - $logicalHeight"); - return InkWell( - onTap: () { - setState(() { - print("policytab - $policy"); - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => hrPolicyDetails( - ClientId: policy['client_id'].toString(), // <-- from map - policyTypeId: - policy['policy_type_id'].toString(), // <-- from map - ClientPoliyId: policy['client_policy_id'].toString(), - clientBranchId: widget.enrollmentClientBranchId, - Token: widget.enrollToken, - TokenType: "pre", - cardType: policy['type'].toString(), - cardPolicyNo: policy['policy_no'].toString(), - cardInsurer_name: policy['insurer_short_name'].toString(), - cardPolicy_name: policy['policy_name'].toString(), - cardPolicy_ExpDate: policy['policy_expiry_date'].toString(), - ), - ), - ); - }); - }, - - // height: MediaQuery.of(context).size.height * 0.1, - // width: MediaQuery.of(context).size.height * 0.1, - // width: logicalWidth, - // height: logicalHeight, - child: Container( - margin: EdgeInsets.symmetric(horizontal: 4.0, vertical: 2.0), - // height: MediaQuery.of(context).size.height * 1, - // width: MediaQuery.of(context).size.height * 0.1, - // margin: EdgeInsets.only(bottom: 10.0), - decoration: BoxDecoration( - // color: Colors.yellow.shade50, - color: Colors.white, - borderRadius: BorderRadius.circular(12), - boxShadow: const [ - BoxShadow( - color: Colors.black12, - blurRadius: 6, - spreadRadius: 1, - offset: Offset(0, 0), // Equal shadow in all directions - ), - ], - ), - // shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), - child: Padding( - padding: const EdgeInsets.all(12), - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - Container( - height: MediaQuery.of(context).size.height * 0.03, - // color: Colors.green.shade100, - child: Row( - children: [ - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - "${policy['type']} - ${policy['policy_no']} " ?? '', - style: const TextStyle( - fontFamily: "Inter", - fontWeight: FontWeight.w600, - fontSize: 12, - ), - ), - ], - ), - ], - ), - ), - // Spacer(), - SizedBox( - height: 5, - ), - Container( - // color: Colors.pink.shade50, - height: MediaQuery.of(context).size.height * 0.09, - child: Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - _buildCountBox( - policy['membersCountOfDraft'].toString(), "Draft"), - Spacer(), - _buildCountBox(policy['membersCountOfEnrolled'].toString(), - "Enrolled"), - Spacer(), - _buildCountBox( - policy['totalMembersCount'].toString(), "Total"), - // Spacer(), - ], - ), - ), - ], - ), - ), - ), - ); - } - - Widget _buildCountBox(String count, String label) { - return Column( - // mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - Container( - // width: 70, - // height: 40, - height: MediaQuery.of(context).size.height * 0.05, - width: MediaQuery.of(context).size.height * 0.1, - alignment: Alignment.center, - decoration: BoxDecoration( - color: const Color(0xFFDFF1F3), - borderRadius: BorderRadius.circular(8), - ), - child: Text( - count, - style: const TextStyle(fontSize: 12, fontWeight: FontWeight.w600), - ), - ), - // Spacer(), - const SizedBox(height: 8), - Text(label, - style: const TextStyle(fontSize: 10, color: Color(0xFF848484))), - ], - ); - } -} +// import 'package:firebase_auth/firebase_auth.dart'; +// import 'package:flutter/cupertino.dart'; +// import 'package:flutter/material.dart'; +// import 'package:flutter/services.dart'; +// import 'package:google_fonts/google_fonts.dart'; +// import 'package:http/http.dart' as http; +// +// import '../../presentation/hrPolicyDetails.dart'; +// import '../api_service.dart'; +// +// class PreEnrollment extends StatefulWidget { +// final String enrollmentClientId; +// final String enrollmentClientBranchId; +// final String enrollmentHrId; +// final String enrollToken; +// +// const PreEnrollment( +// {Key? key, +// required this.enrollmentClientId, +// required this.enrollmentClientBranchId, +// required this.enrollmentHrId, +// required this.enrollToken}); +// +// @override +// State createState() => _PreEnrollmentState(); +// } +// +// class _PreEnrollmentState extends State { +// late ApiService apiService; +// dynamic getCardArrays = []; +// int selectedIndex = 0; +// bool isLoading = false; +// // List> getCardArrays = [ +// // { +// // "client_policy_id": "415", +// // "client_id": "187", +// // "policy_type_id": "2", +// // "is_addon": "1", +// // "OpenForEnrollment": "0", +// // "inception_type": "1", +// // "policy_no": "GMC-2002/2022/2005", +// // "insurer_id": null, +// // "policy_expiry_date": "06-07-2026", +// // "type": "GMC", +// // "policy_name": "Group Medical Coverage", +// // "insurer_name": null, +// // "insurer_short_name": null, +// // "totalMembersCount": 17, +// // "membersCountOfEnrolled": 0, +// // "membersCountOfDraft": 17 +// // }, +// // { +// // "client_policy_id": 396, +// // "client_id": 58, +// // "policy_type_id": 4, +// // "is_addon": 2, +// // "OpenForEnrollment": 1, +// // "inception_type": 2, +// // "policy_no": "GMC-MA8596745566998855885", +// // "insurer_id": 1, +// // "type": "GMC - Topup", +// // "policy_name": "Group Medical Coverage Topup", +// // "insurer_name": "Life Insurance Corporation of India (LIC)", +// // "insurer_short_name": "LIC", +// // "totalMembersCount": 7, +// // "membersCountOfEnrolled": 0, +// // "membersCountOfDraft": 7 +// // }, +// // +// // ]; +// +// @override +// void initState() { +// super.initState(); +// apiService = ApiService(context); +// _loadData(); +// +// print("_PreEnrollmentState 1"); +// } +// +// Future _loadData() async { +// await getCashDepositDetails(widget.enrollmentClientBranchId, +// widget.enrollmentClientId, widget.enrollmentHrId, widget.enrollToken); +// } +// +// Future getCashDepositDetails( +// clintBranchId, clintID, hr_id, token) async { +// print("_PreEnrollmentState 2"); +// print('IN'); +// print("clintBranchId -$clintBranchId"); +// print("clintID -$clintID"); +// print("hr_id -$hr_id"); +// print("token -$token"); +// +// // isLoading = true; +// setState(() { +// isLoading = true; +// }); +// try { +// if (clintBranchId == null || clintID == null) { +// return; +// } +// final response = await apiService.getCashDepositDetailsToApi( +// clintID!, clintBranchId!, hr_id, token); +// +// // final response = await apiService.getCashDepositDetailsToApi( +// // clintID!, clintBranchId!, hr_id, token); +// print('IN1'); +// if (response['status'] == 'success') { +// +// setState(() { +// isLoading = false; +// print('response'); +// print(response['data']); +// +// print("_PreEnrollmentState 3"); +// // getCardArrays = []; +// getCardArrays = List>.from(response['data']); +// print('getCardArrays'); +// print(getCardArrays); +// }); +// +// print('IN2'); +// print("getCardArrays9 - $getCardArrays"); +// } else { +// setState(() { +// isLoading = false; +// }); +// +// print('API request failed with status'); +// } +// } catch (e) { +// print('Exception occurred: $e'); +// } +// } +// +// @override +// Widget build(BuildContext context) { +// final screenWidth = MediaQuery.of(context).size.width; +// final screenHeight = MediaQuery.of(context).size.height; +// +// final crossAxisCount = 4; +// final spacing = 20.0; // crossAxisSpacing +// final totalSpacing = (crossAxisCount - 1) * spacing; +// final itemWidth = (screenWidth - totalSpacing) / crossAxisCount; +// +// // Example: target card height +// final itemHeight = screenHeight * 0.2; +// +// // Dynamic aspect ratio: +// final aspectRatio = screenWidth / screenHeight; +// +// print("_PreEnrollmentState 4"); +// // TODO: implement build +// return Container( +// // height: MediaQuery.of(context).size.height * 0.2, +// +// // height: 400, +// padding: const EdgeInsets.all(16.0), +// decoration: BoxDecoration( +// color: Colors.white, +// // color: Colors.yellow.shade100, +// borderRadius: BorderRadius.circular(16), +// ), +// // +// child: Column( +// mainAxisAlignment: MainAxisAlignment.start, +// children: [ +// isLoading +// ? Container( +// // color: Color(0x98FFFCE5), // Semi-transparent background +// child: Center( +// child: // Your GIF loader widget +// Image.asset( +// height: 60, +// width: 60, +// 'assets/nhance-loader.gif'), // Adjust path to your GIF loader +// ), +// ) +// : Flexible( +// child: Container( +// // color: Colors.redAccent.shade100, +// // color: Colors.white, +// // color: Colors.white, +// // padding: EdgeInsets.symmetric(horizontal: 16.0), +// // height: MediaQuery.of(context).size.height * 0.45, +// // height: 400, +// +// child: Container( +// child: getCardArrays.isEmpty +// ? Center( +// child: Column( +// mainAxisSize: MainAxisSize.min, +// children: [ +// Image.asset( +// 'assets/searchData.jpg', // Replace 'default_image.png' with your default image asset path +// width: 200, +// height: 200, +// fit: BoxFit.cover, +// ), +// Text( +// 'No Policy Mapping Found', +// style: TextStyle( +// fontSize: 16, +// color: Colors.grey.shade600, +// ), +// ), +// ], +// ), +// ) +// : GridView.builder( +// itemCount: getCardArrays.length, +// gridDelegate: +// const SliverGridDelegateWithFixedCrossAxisCount( +// crossAxisCount: 4, +// crossAxisSpacing: 20, +// mainAxisSpacing: 20, +// childAspectRatio: 2.4, +// // childAspectRatio: aspectRatio, +// // childAspectRatio: 2.1, +// ), +// itemBuilder: (context, index) { +// return buildPolicyCard(getCardArrays[index]); +// }, +// ), +// ), +// ), +// ), +// ], +// ), +// ); +// } +// +// Widget buildPolicyCard(Map policy) { +// final mediaQuery = MediaQuery.of(context); +// final devicePixelRatio = mediaQuery.devicePixelRatio; +// final logicalWidth = 230 / devicePixelRatio; +// final logicalHeight = 189 / devicePixelRatio; +// +// print("logicalWidth - $logicalWidth"); +// print("logicalHeight - $logicalHeight"); +// return InkWell( +// onTap: () { +// setState(() { +// print("policytab - $policy"); +// Navigator.push( +// context, +// MaterialPageRoute( +// builder: (context) => hrPolicyDetails( +// ClientId: widget.enrollmentClientId, // <-- from map +// policyTypeId: +// policy['policy_type_id'].toString(), // <-- from map +// ClientPoliyId: policy['client_policy_id'].toString(), +// clientBranchId: widget.enrollmentClientBranchId, +// Token: widget.enrollToken, +// TokenType: "pre", +// cardType: policy['type'].toString(), +// cardPolicyNo: policy['policy_no'].toString(), +// cardInsurer_name: policy['insurer_short_name'].toString(), +// cardPolicy_name: policy['policy_name'].toString(), +// cardPolicy_ExpDate: policy['policy_expiry_date'].toString(), +// ), +// ), +// ); +// }); +// }, +// +// // height: MediaQuery.of(context).size.height * 0.1, +// // width: MediaQuery.of(context).size.height * 0.1, +// // width: logicalWidth, +// // height: logicalHeight, +// child: Container( +// margin: EdgeInsets.symmetric(horizontal: 4.0, vertical: 2.0), +// // height: MediaQuery.of(context).size.height * 1, +// // width: MediaQuery.of(context).size.height * 0.1, +// // margin: EdgeInsets.only(bottom: 10.0), +// decoration: BoxDecoration( +// // color: Colors.yellow.shade50, +// color: Colors.white, +// borderRadius: BorderRadius.circular(12), +// boxShadow: const [ +// BoxShadow( +// color: Colors.black12, +// blurRadius: 6, +// spreadRadius: 1, +// offset: Offset(0, 0), // Equal shadow in all directions +// ), +// ], +// ), +// // shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(12)), +// child: Padding( +// padding: const EdgeInsets.all(12), +// child: Column( +// mainAxisSize: MainAxisSize.min, +// crossAxisAlignment: CrossAxisAlignment.center, +// children: [ +// Container( +// height: MediaQuery.of(context).size.height * 0.03, +// // color: Colors.green.shade100, +// child: Row( +// children: [ +// Column( +// crossAxisAlignment: CrossAxisAlignment.start, +// children: [ +// Text( +// "${policy['type']} - ${policy['policy_no']} " ?? '', +// style: const TextStyle( +// fontFamily: "Inter", +// fontWeight: FontWeight.w600, +// fontSize: 12, +// ), +// ), +// ], +// ), +// ], +// ), +// ), +// // Spacer(), +// SizedBox( +// height: 5, +// ), +// Container( +// // color: Colors.pink.shade50, +// height: MediaQuery.of(context).size.height * 0.09, +// child: Row( +// mainAxisAlignment: MainAxisAlignment.start, +// children: [ +// _buildCountBox( +// policy['membersCountOfDraft'].toString(), "Draft"), +// Spacer(), +// _buildCountBox(policy['membersCountOfEnrolled'].toString(), +// "Enrolled"), +// Spacer(), +// _buildCountBox( +// policy['totalMembersCount'].toString(), "Total"), +// // Spacer(), +// ], +// ), +// ), +// ], +// ), +// ), +// ), +// ); +// } +// +// Widget _buildCountBox(String count, String label) { +// return Column( +// // mainAxisAlignment: MainAxisAlignment.spaceBetween, +// crossAxisAlignment: CrossAxisAlignment.center, +// children: [ +// Container( +// // width: 70, +// // height: 40, +// height: MediaQuery.of(context).size.height * 0.05, +// width: MediaQuery.of(context).size.height * 0.1, +// alignment: Alignment.center, +// decoration: BoxDecoration( +// color: const Color(0xFFDFF1F3), +// borderRadius: BorderRadius.circular(8), +// ), +// child: Text( +// count, +// style: const TextStyle(fontSize: 12, fontWeight: FontWeight.w600), +// ), +// ), +// // Spacer(), +// const SizedBox(height: 8), +// Text(label, +// style: const TextStyle(fontSize: 10, color: Color(0xFF848484))), +// ], +// ); +// } +// } diff --git a/lib/service/multi_file_upload_widget.dart b/lib/service/multi_file_upload_widget.dart new file mode 100755 index 0000000..57d23f2 --- /dev/null +++ b/lib/service/multi_file_upload_widget.dart @@ -0,0 +1,226 @@ +import 'package:flutter/material.dart'; +import '../responsive.dart'; +import 'file_upload_service.dart'; + +class MultiFileUploadWidget extends StatefulWidget { + final bool forceMobile; + + const MultiFileUploadWidget({super.key, this.forceMobile = false}); + + @override + State createState() => _MultiFileUploadWidgetState(); + + static bool hasFiles = false; +} + +class _MultiFileUploadWidgetState extends State { + final fileService = FileUploadService(); + String? errorMessage; + + void _pickFiles() async { + final error = await fileService.pickFiles(maxFileSizeInMB: 10); // 5 MB limit + if (error != null) { + if (mounted) { + setState(() { + errorMessage = error; + }); + + // also show alert dialog for big error messages + // showDialog( + // context: context, + // builder: (ctx) => AlertDialog( + // title: const Text("File Upload Error"), + // content: Text(error), + // actions: [ + // TextButton( + // onPressed: () => Navigator.pop(ctx), + // child: const Text("OK"), + // ), + // ], + // ), + // ); + } + } else { + setState(() { + errorMessage = null; + MultiFileUploadWidget.hasFiles = fileService.files.isNotEmpty; + }); + } + } + + void _removeFile(int index) { + fileService.removeFileAt(index); + setState(() { + MultiFileUploadWidget.hasFiles = fileService.files.isNotEmpty; + }); + } + + @override + Widget build(BuildContext context) { + final files = fileService.files; + + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + if (widget.forceMobile || Responsive.isMobile(context)) ...[ + OutlinedButton.icon( + onPressed: _pickFiles, + icon: const Icon(Icons.file_upload_outlined, + color: Color(0xFF00999E), size: 24), + label: const Text( + "Upload Documents", + style: TextStyle( + fontSize: 14, + color: Colors.black, + ), + overflow: TextOverflow.ellipsis, + ), + style: OutlinedButton.styleFrom( + side: const BorderSide(color: Color(0xFF00999E)), + ), + ), + const SizedBox(height: 6), + const Text( + "Supports only PDF, PNG, JPG, JPEG,HEIC formats (max 10 MB each)", + style: TextStyle(fontSize: 12, color: Colors.grey), + ), + ] else ...[ + Row( + children: [ + OutlinedButton.icon( + onPressed: _pickFiles, + icon: const Icon(Icons.file_upload_outlined, + color: Color(0xFF00999E), size: 24), + label: const Text( + "Upload Documents", + style: TextStyle( + fontSize: 14, + color: Colors.black, + ), + overflow: TextOverflow.ellipsis, + ), + style: OutlinedButton.styleFrom( + side: const BorderSide(color: Color(0xFF00999E)), + ), + ), + const SizedBox(width: 12), + const Expanded( + child: Text( + "Supports only PDF, PNG, JPG, JPEG,HEIC formats (max 10 MB each)", + style: TextStyle(fontSize: 12, color: Colors.grey), + overflow: TextOverflow.ellipsis, + ), + ), + ], + ), + // InkWell( + // onTap: _pickFiles, // ✅ SAME FUNCTION + // child: Container( + // width: double.infinity, + // padding: const EdgeInsets.symmetric(vertical: 20, horizontal: 16), + // decoration: BoxDecoration( + // color: const Color(0xFFF9F9F9), + // borderRadius: BorderRadius.circular(12), + // border: Border.all( + // color: const Color(0xFF00A6A6), + // width: 1, + // style: BorderStyle.solid, // dotted look via color + spacing + // ), + // ), + // child: Column( + // mainAxisAlignment: MainAxisAlignment.center, + // children: [ + // /// Icon circle + // Container( + // padding: const EdgeInsets.all(10), + // decoration: BoxDecoration( + // shape: BoxShape.circle, + // border: Border.all(color: const Color(0xFF00A6A6)), + // ), + // child: const Icon( + // Icons.insert_drive_file, + // size: 28, + // color: Color(0xFF00A6A6), + // ), + // ), + // + // const SizedBox(height: 10), + // + // // /// File name (static text – logic unchanged) + // // const Text( + // // "Sample_file.PDF", + // // style: TextStyle( + // // fontSize: 14, + // // fontWeight: FontWeight.w500, + // // ), + // // overflow: TextOverflow.ellipsis, + // // ), + // // + // // const SizedBox(height: 6), + // + // /// Helper text + // const Text( + // "(Supported formats: PDF, PNG, JPG, JPEG, HEIC | Max 10MB each)", + // style: TextStyle( + // fontSize: 11, + // color: Colors.grey, + // ), + // textAlign: TextAlign.center, + // ), + // ], + // ), + // ), + // ), + ], + + if (fileService.files.isEmpty && errorMessage == null) ...[ + const SizedBox(height: 4), + const Text( + "Required", + style: TextStyle(color: Colors.red, fontSize: 12), + ), + ], + + if (errorMessage != null) ...[ + const SizedBox(height: 4), + Text( + errorMessage!, + style: const TextStyle(color: Colors.red, fontSize: 12), + ), + ], + + const SizedBox(height: 8), + ...fileService.files.asMap().entries.map((entry) { + final index = entry.key; + final uploaded = entry.value; // UploadedFile + + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + ListTile( + dense: true, + contentPadding: EdgeInsets.zero, + title: Text(uploaded.file.name, style: const TextStyle(fontSize: 14)), + trailing: IconButton( + icon: const Icon(Icons.close, color: Colors.red), + onPressed: () => _removeFile(index), + ), + ), + Padding( + padding: const EdgeInsets.only(left: 8.0, bottom: 8.0, right: 8.0), + child: TextField( + controller: uploaded.controller, + decoration: const InputDecoration( + labelText: 'Enter document name', + border: OutlineInputBorder(), + isDense: true, + ), + ), + ), + ], + ); + }), + ], + ); + } +} diff --git a/lib/service/svg_service.dart b/lib/service/svg_service.dart new file mode 100644 index 0000000..c02046b --- /dev/null +++ b/lib/service/svg_service.dart @@ -0,0 +1,60 @@ +// svg_service.dart +class SvgService { + static const String dashboard = ''' + + + + '''; + + static const String policies = ''' + + + + '''; + + static const String cd = ''' + + + + '''; + + static const String claims = ''' + + + + + + + + + + + + '''; + + static const String logout = ''' + + + + '''; + + + static String getSvg(String svgName) { + switch (svgName) { + case 'dashboard': + return dashboard; + case 'policies': + return policies; + case 'cd': + return cd; + case 'claims': + return claims; + case 'logout': + return logout; + default: + return ''; + } + } + +// Add more SVG strings here as needed +} diff --git a/lib/service/token_storage_service.dart b/lib/service/token_storage_service.dart index a71c975..32da29e 100755 --- a/lib/service/token_storage_service.dart +++ b/lib/service/token_storage_service.dart @@ -1,16 +1,23 @@ -import 'package:shared_preferences/shared_preferences.dart'; import 'dart:convert'; +import 'package:flutter_secure_storage/flutter_secure_storage.dart'; + class TokenStorageService { - static final TokenStorageService _instance = TokenStorageService._internal(); + static final TokenStorageService _instance = + TokenStorageService._internal(); factory TokenStorageService() => _instance; TokenStorageService._internal(); + // 🔐 Secure storage instance + static const FlutterSecureStorage _secureStorage = + FlutterSecureStorage(); + // Storage keys static const String _preEnrollmentKey = 'pre_enrollment_data'; static const String _postEnrollmentKey = 'post_enrollment_data'; static const String _selectedBranchKey = 'selected_branch'; static const String _decodedTokenKey = 'decoded_token'; + static const String _branchNameKey = 'branch_name'; // In-memory cache List? _preEnrollmentData; @@ -18,51 +25,64 @@ class TokenStorageService { Map? _selectedBranch; Map? _decodedToken; - // Initialize - Load data from storage + // 🔄 Initialize from secure storage Future initialize() async { - final prefs = await SharedPreferences.getInstance(); - - final preData = prefs.getString(_preEnrollmentKey); + final preData = await _secureStorage.read(key: _preEnrollmentKey); if (preData != null) { _preEnrollmentData = json.decode(preData); } - final postData = prefs.getString(_postEnrollmentKey); + final postData = await _secureStorage.read(key: _postEnrollmentKey); if (postData != null) { _postEnrollmentData = json.decode(postData); } - final branchData = prefs.getString(_selectedBranchKey); + final branchData = + await _secureStorage.read(key: _selectedBranchKey); if (branchData != null) { _selectedBranch = json.decode(branchData); } - final tokenData = prefs.getString(_decodedTokenKey); + final tokenData = + await _secureStorage.read(key: _decodedTokenKey); if (tokenData != null) { _decodedToken = json.decode(tokenData); } } - // Save enrollment data - Future saveEnrollmentData(List preData, List postData) async { + // 💾 Save enrollment data + Future saveEnrollmentData( + List preData, + List postData, + ) async { _preEnrollmentData = preData; _postEnrollmentData = postData; - final prefs = await SharedPreferences.getInstance(); - await prefs.setString(_preEnrollmentKey, json.encode(preData)); - await prefs.setString(_postEnrollmentKey, json.encode(postData)); + await _secureStorage.write( + key: _preEnrollmentKey, value: json.encode(preData)); + await _secureStorage.write( + key: _postEnrollmentKey, value: json.encode(postData)); } - // Get combined unique branches List> getCombinedBranches() { List> combined = []; Set seenTokens = {}; Set seenIds = {}; + // Helper: check valid token + bool hasValidToken(dynamic token) { + return token != null && + token.toString().trim().isNotEmpty; + } + // Add pre-enrollment data if (_preEnrollmentData != null) { for (var item in _preEnrollmentData!) { - String token = item['token']?.toString() ?? ''; + final token = item['token']; + + // ❌ SKIP if token is empty or null + if (!hasValidToken(token)) continue; + String uniqueId = '${item['id']}_${item['client_id']}_${item['client_branch_id']}'; if (seenIds.contains(uniqueId)) continue; @@ -78,7 +98,11 @@ class TokenStorageService { // Add post-enrollment data if (_postEnrollmentData != null) { for (var item in _postEnrollmentData!) { - String token = item['token']?.toString() ?? ''; + final token = item['token']; + + // ❌ SKIP if token is empty or null + if (!hasValidToken(token)) continue; + String uniqueId = '${item['id']}_${item['client_id']}_${item['client_branch_id']}'; if (seenIds.contains(uniqueId)) continue; @@ -94,42 +118,41 @@ class TokenStorageService { return combined; } - // Save selected branch and decode token - Future saveSelectedBranch(Map branch) async { + // 🌿 Save selected branch + decode JWT + Future saveSelectedBranch( + Map branch) async { _selectedBranch = branch; String token = branch['token']?.toString() ?? ''; - if (token.isNotEmpty) { - _decodedToken = _decodeJWT(token); - } else { - _decodedToken = null; - } + _decodedToken = token.isNotEmpty ? _decodeJWT(token) : null; - final prefs = await SharedPreferences.getInstance(); - await prefs.setString(_selectedBranchKey, json.encode(branch)); + await _secureStorage.write( + key: _selectedBranchKey, value: json.encode(branch)); if (_decodedToken != null) { - await prefs.setString(_decodedTokenKey, json.encode(_decodedToken)); + await _secureStorage.write( + key: _decodedTokenKey, + value: json.encode(_decodedToken)); } - // ✅ Save branch name - String branchName = branch['branch_name']?.toString() ?? ''; - await prefs.setString('branchName', branchName); + await _secureStorage.write( + key: _branchNameKey, + value: branch['branch_name']?.toString() ?? '', + ); } - // Decode JWT token + // 🔓 Decode JWT Map? _decodeJWT(String token) { try { final parts = token.split('.'); if (parts.length != 3) return null; - final payload = parts[1]; - var normalized = base64Url.normalize(payload); - var decoded = utf8.decode(base64Url.decode(normalized)); + final payload = base64Url.normalize(parts[1]); + final decoded = utf8.decode(base64Url.decode(payload)); return json.decode(decoded); } catch (e) { - print('Error decoding token: $e'); + print('JWT decode error: $e'); return null; } } @@ -139,23 +162,131 @@ class TokenStorageService { Map? getDecodedToken() => _decodedToken; String? getCurrentToken() => _selectedBranch?['token']; - bool isLoggedIn() { - return _selectedBranch != null && - _selectedBranch!['token'] != null && - _selectedBranch!['token'].toString().isNotEmpty; - } + bool isLoggedIn() => + _selectedBranch != null && + _selectedBranch!['token'] != null && + _selectedBranch!['token'].toString().isNotEmpty; - // Clear all data (logout) + // 🚪 Logout (clear everything) Future clearAll() async { _preEnrollmentData = null; _postEnrollmentData = null; _selectedBranch = null; _decodedToken = null; - final prefs = await SharedPreferences.getInstance(); - await prefs.remove(_preEnrollmentKey); - await prefs.remove(_postEnrollmentKey); - await prefs.remove(_selectedBranchKey); - await prefs.remove(_decodedTokenKey); + await _secureStorage.deleteAll(); } -} \ No newline at end of file + + Future saveDecodedSessionData( + Map decodedToken, + String token, + ) async { + // Handle allowed_modules safely + dynamic allowedModules = decodedToken['allowed_modules']; + if (allowedModules is String) { + allowedModules = jsonDecode(allowedModules); + } + + await _secureStorage.write( + key: 'empClientBranchId', + value: decodedToken['post_branch_id']?.toString()); + + await _secureStorage.write( + key: 'empPrimaryId', + value: decodedToken['post_hr_id']?.toString()); + + await _secureStorage.write( + key: 'empClientId', + value: decodedToken['post_client_id']?.toString()); + + await _secureStorage.write( + key: 'empHrId', + value: decodedToken['post_hr_id']?.toString()); + + await _secureStorage.write( + key: 'empAllowed_modules', + value: jsonEncode(allowedModules?['post'] ?? [])); + + // ================= PRE (Enrollment) ================= + + await _secureStorage.write( + key: 'enrollmentEmpClientBranchId', + value: decodedToken['pre_branch_id']?.toString()); + + await _secureStorage.write( + key: 'enrollmentEmpPrimaryId', + value: decodedToken['pre_hr_id']?.toString()); + + await _secureStorage.write( + key: 'enrollmentClient_id', + value: decodedToken['pre_client_id']?.toString()); + + await _secureStorage.write( + key: 'enrollmentHrId', + value: decodedToken['pre_hr_id']?.toString()); + + await _secureStorage.write( + key: 'enrollmentAllowed_modules', + value: jsonEncode(allowedModules?['pre'] ?? [])); + + // ================= TOKEN ================= + await _secureStorage.write(key: 'token', value: token); + } + + Future readValue(String key) async { + return await _secureStorage.read(key: key); + } + + Future writeValue(String key, String value) async { + await _secureStorage.write(key: key, value: value); + } + + + Future clearBranchSession() async { + final keysToRemove = [ + 'selected_branch', + 'decoded_token', + 'clientLogo', + 'clientName', + 'empAllowed_modules', + 'empClientBranchId', + 'empClientId', + 'empEmail', + 'empHrId', + 'empPrimaryId', + 'enrollmentAllowed_modules', + 'enrollmentClient_id', + 'enrollmentEmpClientBranchId', + 'enrollmentEmpPrimaryId', + 'enrollmentHrId', + 'token', + ]; + + for (final key in keysToRemove) { + await _secureStorage.delete(key: key); + } + } + + Future resetSessionAndSwitchBranch( + Map newBranch, + ) async { + // 1️⃣ Clear ONLY branch/session related keys + await clearBranchSession(); + + // 2️⃣ Save selected branch + await saveSelectedBranch(newBranch); + + // 3️⃣ Rebuild decoded session data from token + final token = newBranch['token']?.toString(); + if (token != null && token.isNotEmpty) { + final decoded = _decodeJWT(token); + if (decoded != null) { + await saveDecodedSessionData(decoded, token); + } + } + + // 4️⃣ Update in-memory cache + _selectedBranch = newBranch; + } + +} diff --git a/linux/flutter/generated_plugin_registrant.cc b/linux/flutter/generated_plugin_registrant.cc index fc6e2af..c203066 100755 --- a/linux/flutter/generated_plugin_registrant.cc +++ b/linux/flutter/generated_plugin_registrant.cc @@ -6,10 +6,14 @@ #include "generated_plugin_registrant.h" +#include #include #include void fl_register_plugins(FlPluginRegistry* registry) { + g_autoptr(FlPluginRegistrar) flutter_secure_storage_linux_registrar = + fl_plugin_registry_get_registrar_for_plugin(registry, "FlutterSecureStorageLinuxPlugin"); + flutter_secure_storage_linux_plugin_register_with_registrar(flutter_secure_storage_linux_registrar); g_autoptr(FlPluginRegistrar) smart_auth_registrar = fl_plugin_registry_get_registrar_for_plugin(registry, "SmartAuthPlugin"); smart_auth_plugin_register_with_registrar(smart_auth_registrar); diff --git a/linux/flutter/generated_plugins.cmake b/linux/flutter/generated_plugins.cmake index 4ebc56f..e87a02c 100755 --- a/linux/flutter/generated_plugins.cmake +++ b/linux/flutter/generated_plugins.cmake @@ -3,6 +3,7 @@ # list(APPEND FLUTTER_PLUGIN_LIST + flutter_secure_storage_linux smart_auth url_launcher_linux ) diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index ff40429..ca99b4f 100755 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -8,6 +8,7 @@ import Foundation import file_picker import firebase_auth import firebase_core +import flutter_secure_storage_darwin import google_sign_in_ios import path_provider_foundation import shared_preferences_foundation @@ -18,6 +19,7 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { FilePickerPlugin.register(with: registry.registrar(forPlugin: "FilePickerPlugin")) FLTFirebaseAuthPlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseAuthPlugin")) FLTFirebaseCorePlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseCorePlugin")) + FlutterSecureStorageDarwinPlugin.register(with: registry.registrar(forPlugin: "FlutterSecureStorageDarwinPlugin")) FLTGoogleSignInPlugin.register(with: registry.registrar(forPlugin: "FLTGoogleSignInPlugin")) PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin")) diff --git a/pubspec.yaml b/pubspec.yaml index d73478e..ff2d1d0 100755 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -59,6 +59,11 @@ dependencies: firebase_auth_web: ^5.12.4 archive: ^3.4.9 dropdown_search: ^6.0.2 + flutter_secure_storage: ^10.0.0 + flutter_svg: ^2.2.3 + pdf: ^3.11.3 + dotted_border: ^3.1.0 + dropdown_button2: ^2.3.9 dev_dependencies: diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc index 226252c..0aac551 100755 --- a/windows/flutter/generated_plugin_registrant.cc +++ b/windows/flutter/generated_plugin_registrant.cc @@ -8,6 +8,7 @@ #include #include +#include #include #include @@ -16,6 +17,8 @@ void RegisterPlugins(flutter::PluginRegistry* registry) { registry->GetRegistrarForPlugin("FirebaseAuthPluginCApi")); FirebaseCorePluginCApiRegisterWithRegistrar( registry->GetRegistrarForPlugin("FirebaseCorePluginCApi")); + FlutterSecureStorageWindowsPluginRegisterWithRegistrar( + registry->GetRegistrarForPlugin("FlutterSecureStorageWindowsPlugin")); SmartAuthPluginRegisterWithRegistrar( registry->GetRegistrarForPlugin("SmartAuthPlugin")); UrlLauncherWindowsRegisterWithRegistrar( diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake index 3ef1798..ca30f87 100755 --- a/windows/flutter/generated_plugins.cmake +++ b/windows/flutter/generated_plugins.cmake @@ -5,6 +5,7 @@ list(APPEND FLUTTER_PLUGIN_LIST firebase_auth firebase_core + flutter_secure_storage_windows smart_auth url_launcher_windows )