From 67bcc544bc0117b333af68605fc34cec970ffea4 Mon Sep 17 00:00:00 2001 From: worawut Date: Wed, 26 Apr 2023 10:43:37 +0700 Subject: [PATCH] spiral ice --- spiral/image/page_spiral/bd_toppingice.png | Bin 0 -> 1813 bytes spiral/image/page_spiral/bn_toppingice.png | Bin 0 -> 1824 bytes .../page_spiral/en_spiral_option_ice.png | Bin 0 -> 12001 bytes .../image/page_spiral/en_spiral_text_fail.png | Bin 0 -> 24161 bytes spiral/image/page_spiral/en_unavalible.png | Bin 0 -> 2173 bytes .../image/page_spiral/spiral_option_ice.png | Bin 0 -> 12649 bytes spiral/image/page_spiral/text21.png | Bin 0 -> 1388 bytes spiral/image/page_spiral/unavalible.png | Bin 0 -> 1020 bytes spiral/xml/page_catalog_vending_machine.xml | 3 + spiral/xml/page_spiral_check_cash.xml | 17 + spiral/xml/page_spiral_failmuti.xml | 988 +++++++++ spiral/xml/page_spiral_payment.xml | 12 +- spiral/xml/page_spiral_payment_cash.xml | 12 +- spiral/xml/page_spiral_payment_cashMore.xml | 1959 +++++++++++++++++ spiral/xml/page_spiral_payment_cashOther.xml | 168 +- spiral/xml/page_spiral_payment_code.xml | 36 +- spiral/xml/page_spiral_payment_codeAIS.xml | 5 +- spiral/xml/page_spiral_payment_codeDtac.xml | 5 +- spiral/xml/page_spiral_payment_codeGLX.xml | 5 +- spiral/xml/page_spiral_payment_codeLH.xml | 5 +- spiral/xml/page_spiral_payment_codeLotus.xml | 5 +- spiral/xml/page_spiral_payment_codeOther.xml | 8 +- spiral/xml/page_spiral_payment_codeSCG.xml | 5 +- spiral/xml/page_spiral_payment_codeThe1.xml | 5 +- spiral/xml/page_spiral_payment_codeTrue.xml | 5 +- spiral/xml/page_spiral_payment_credit.xml | 8 +- spiral/xml/page_spiral_payment_credit2.xml | 4 +- spiral/xml/page_spiral_payment_credit3.xml | 13 +- .../xml/page_spiral_payment_storeCredit.xml | 14 +- .../page_spiral_payment_storeCredit2-2.xml | 4 +- .../xml/page_spiral_payment_storeCredit2.xml | 4 +- spiral/xml/page_spiral_select.xml | 161 +- spiral/xml/page_spiral_select_topping.xml | 544 +++++ spiral/xml/page_spiral_thankyou.xml | 429 ++-- spiral/xml/page_spiral_thankyou3.xml | 475 ++++ 35 files changed, 4530 insertions(+), 369 deletions(-) create mode 100644 spiral/image/page_spiral/bd_toppingice.png create mode 100644 spiral/image/page_spiral/bn_toppingice.png create mode 100644 spiral/image/page_spiral/en_spiral_option_ice.png create mode 100644 spiral/image/page_spiral/en_spiral_text_fail.png create mode 100644 spiral/image/page_spiral/en_unavalible.png create mode 100644 spiral/image/page_spiral/spiral_option_ice.png create mode 100644 spiral/image/page_spiral/text21.png create mode 100644 spiral/image/page_spiral/unavalible.png create mode 100644 spiral/xml/page_spiral_failmuti.xml create mode 100644 spiral/xml/page_spiral_payment_cashMore.xml create mode 100644 spiral/xml/page_spiral_select_topping.xml create mode 100644 spiral/xml/page_spiral_thankyou3.xml diff --git a/spiral/image/page_spiral/bd_toppingice.png b/spiral/image/page_spiral/bd_toppingice.png new file mode 100644 index 0000000000000000000000000000000000000000..fec80feb9642c05a0c0db1bea54c86ef3c6f8af5 GIT binary patch literal 1813 zcmV+w2kQ8VP)uGmmE z^s%EXOcR8FyoyL6(Aas_lf?G){@1?FWO8Rbu8*Tp{7IJQVUOpWd(ZQZ4RWz`XW}C= zOE+wy39&m&CxeV(7#S)WsgbGlvh#$YHkLk{=qq)WzA$Y1luj^0;OX`JX6n-PgZ0XO zS$Mmn^rP6kNUcF;BfmKgC79U5$W!YG4=(m~^h{#I5H>$-o24Z>MzU6c=GI=)^PN4K zUCUFltBr15I8Db*u~Zt5QpBDlo0g;KfREnWOt0}0oS{7x|!_QCefP)9Iu*V}?vDz42Y+wvmCtKlN--3F zEnav3SgRg~4UfImO+zC5At#9Y2;`hS2eZwfMq!HrAnRe5h!6=lvSLX(MVSN*bRKbH z5DcG5_&7HxTW3nI3#$Tv*R=e6Eb05b72zajp03L8Bb>UG0L7^5SIr?3p+;d1gU;=I zA$WnIgoi)K38#o{_iVD7WCE-T(A{J$oWkEce~PZZ-Rr4@daoS>)|lcK3U#=J|4=x@ zYiIjBm5_+DTP(i`fVgl}R*g~839ry8K^09-I26Jf1`ma*qPGJ4gjYZb;Qq6X@@I<& z{Q|2P(kKwrHoy7xe<}QRA*4=t1(X11ied^3iO!Myo&Avd07WeyFm|R(zW?;!wx^>5 zNRyE@dck1=JU$?H_%gcU$cdk$Q)DaWkWs=+oaBokn*nj152#@deoAl)ugv5i#|U{C zj0X&ZdT)PJc+SMf4Nnws3G9ptUj6`r!iL@69vy1;$b0n~`a=^2J%r2`^$K{hx-F|h z2!L)7s>Lfp*eAj%0DyoBwwUeMJ|MKkkRnJmh?OD;qS9I&%0$$45GLJl zDT7S`hngZ0eZqp!2b=d39*d~JYZ0Y)qje2OqV67Z| zwjvz*|Hu~4Ii|S+(;vs2_OGiIbe-tep($a|D?@|8|7`EeQC1@jK{4I&jy1m^%jD<> zaQOf>1z^^$MOHmDr6W}Dl2zFZYA=g9Q4d-)3SSgxaBUz6aC}*dXH{6imj`HK zzf~*}2hLR?ZrHEL*{)LPa(|A8BS2G{qRq(J6`?f&ozS|)49@Fwz&-;wOI3wVkzD?O z-v<<$=dggq>=0QqK_@7V&?3A4Y@HefLN{Yo2=FPu6$Y;+-;j^R;4xSZ+|^;|W`N>A z0X;M(+FTrA5z1AGRz9pI;3mD0rN_^=JkO&Qe(h{8&CHe`i@AMiFpyCBLRd{8cGv_G z@u+WC2UEIJ2%PMSRV&GQ6cD-@po$qZJ5<@Lsy#n$T{uJafa}-lDb@pPPY?p5v`sH& zi5rakx4*B+$kON&;!aq70BjnKj>juoV)bW7uJUk!1rsD$5FWq71*-z2GrK$}m%i|r zd_508*P{IAh%VOA2T;H=G5e-m0mYu=6Ea21dP1;-!S%%JaX~d zosWmxjM$`M82CTo$@o99P0PaJrA?F4BVT^^(0S?=kh-fOb~K4(00000NkvXXu0mjf D8|zVB literal 0 HcmV?d00001 diff --git a/spiral/image/page_spiral/bn_toppingice.png b/spiral/image/page_spiral/bn_toppingice.png new file mode 100644 index 0000000000000000000000000000000000000000..a6018763006e719836792790c25d1dd388e383ff GIT binary patch literal 1824 zcmV+*2jBRKP)J`SaPC)_IU5RvDrgtra=E->flp^)Vc|^FKD8nQe`8}~)f*V^HdCDH)0c7pKic5@sg&6&5${@a1FKObpF`Av8 z63cPgUwMeyuHT?cv%bDwpF`||P&q$2Pg)-y>?PEK=< z82z+OeF)Wk^@*NfIVzW<_wLZW!2z0mK1Ee;W!4IX>}OpI3kxAi zk%gOmz6!~`w|j_eO%>tEmOqVpFoQOyaDnBsTkH2>i8$6^K?HU4(6 zuUE{JF}ilM&(;q-6ux7q{}x?p|CGur4^r3FR^q@-45*8SeM1ppLScJ9?vY!6PyZ#i zO&_J07s3zN9TQmjH}b#o<+l8Pd-qYQFexBE%CiHt4ZD|~{`oW8-@_RK_<}^?GC39n z041<#3d6xcI9*9V%G4DJO^(22Bd) zPzH+vat%UTrznIT>hG1GuY`kCz?N%87=u&8F|h=)Dr!p^`IIVbQ2^N4WpTuj1;vG{ zB&bF#i%O%N7zD#H`uA3Hg_2CBv{P6W0PIGwJ5IbtCfMEHDu0h~sw*Mr-!cKEfLsO> zU=4%T^}xzXqCejh9)iIsc8eIV&!#97@Y_4wWMNf+$xh>86&}e_bIW_SN=WwHiNF>H zL99?{LKnXF)M;vJxnQe=;?mR;A02iR0Esv%lkf_Y5`3@bx1EDSAv|HwU;@f%nTRF4 z0!jcQgWpIc1TFo7pi`qjz@ONKeR=&8DSVR{Ws~pE0gwIep~qdJT>VgQgM~1Z@;BE}S2# z!s19bsQP#v)t+pm2S44H`|UzwZW>G=Bh{b|6aYeU{d@UQpn3A9=p0*T4`=SL!(I)7 zSW^>%O+I-fn;&hT-H9yYFWdJ|70CW5w^9mzCX;=!f>QwgjWN2>3y z?B4|L5CM~ksNCPNnP4zZH8>Hmf3(A~ZW3hj@gq5#toCmTuek+0Au*$25JJ5WJ^-Vv zMjBHc_Ktn!!Zcta@otkN!Q!X{0hEXJFkZ3bMgZrVe2aP!|4$XZ2A#96UlRO zCWt~M(M(Xq{)VP=avQz@cYmdi5RS4Ya<5R4Y>|}=yd9w(UMQx&9`jA-wW2?0u~X6# z2J;H|rz$|C@i9M$!50P%LUVO)f@v&<*n5IO=1~WxnN;MoOwdX?a&`r>Nlw@lU=rGN zGlTQ|9I(%TKpITIq)0A*kTwOR>#5Hm^Z8jbK`RJZuZ6v$*_kR3Ivsa~0Gk5z61d^a zyEJsWS3U;I!C@^?%5!Qlq)K4q{GN9jS;8WetKS%PoC)X*_T8c%zPoF?AI}OkoxdO( zpb(}b##5qJ0!}r7e9Z*HJ%9WB9#a|u!?sl=nT!IsW&q2>(f}9sVapj=)THy}2RxXK z_k2=)NLs;K457S5NsEV?xq*Uj_k1o(?o=OuxPU+LoIK4s`Tz>R3sV)8op{|Ymur}^lu#(-b+4_h zjZl`dy1LrwE-5MbMQEajvJA*vR#rA6!=T&k?xgU`#o2;)d3hN!hw}iuLyLE5vtcGc z#-*jD`pU}6t(T{*%+1YJ?Af!YLns7!>~49Vct!|5EN1$!80=rIJN^Tev#Z+^d>4rT O0000hf_hoX|oVac3x9wRyBv?<{(ZHf+qH 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 literal 0 HcmV?d00001 diff --git a/spiral/image/page_spiral/en_spiral_text_fail.png b/spiral/image/page_spiral/en_spiral_text_fail.png new file mode 100644 index 0000000000000000000000000000000000000000..815bc82481012afe0dc55664afd75cc830825b30 GIT binary patch literal 24161 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 %1p40Jx*CTTk=02=?? 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 tsb=N&i2tG181T)ezDoam9?K&BWNU z%OqQ(p*zi#Wx`wT z{Nm_))dOHA006UG0QN-O_3yL?Kup9DW$hk6G|Tq8#BkWXV=UUI%>wR`baqFId|{c| z*&QE=S%*lRGBvum1Len<^2DhGuor>4M;qfn9>@E|=XR6jQ*r45DZ2!Q|N3dJ9;Q2Y`5 zLlnmTSNtjVr-imkwLKtgBWR%d_v<*C>Q3uQ5pX_FMYom2#jZ^=p2z@9OT7MXw6o>m zkobobo_PU%%52gnEE5D+k;yzBFB89#$l{Y{59dy?_+8)J(cJ|u+?eF9cmTR`+b=g; z3Qm5}6}txey?<+w5O9gEY@nE-0#2X0KRZ9a>9_70Po?ZiIs!_WM`Q;xW zT#DI4+7RD}I!u7V6 zNsOV#+D(*Fx_}LkAy!dZT^LIbLsdJkx1=B_iVDM!+*_|dn#QrFV=%fG7VS|sXv>OW zT`+-FDGikZHG{L2UOkFZgq`raDGp^6xAR#;hjV%sE!>&LlcT0wZ{fknlvQcb)TL3E_(>-p7awTKjJStv}bQ$-3rN+z}$)-yMV5LzDw=Z@8{gkB80m#(oJjdeCX- zw;LJDlP5mb|6Gpb%Dn9Oz^r{k730Khnswl4a)7}xGvR)Ek+6IyNbeoF@DU{#>iCyI zwt@4O6Jx1J|FbUiH!Fcpa+_MISp5;``O?sddZE|}TaW1R?FHrKRnmh1`%p)4_qxoLM=QmqNUg`*cK33j=d70|~yy2EoTi2g+?WgdvxP3R}3EnJ~obYB{F zf#iFIsY0d{gY$q3Bp@P!2k)(xKs%@Fo2P9owbxcy7VG-A=Ih?WdZ8cl&>1ya$L`NH zfA)Hk+!hej_r|L0S7*j$v>znIC(PEDO^@0>cA6~_P_CU&kkwB{B7Iug82)MDXh9(* zRhpg6?NX5w&~2N(RoiRA?GB_?RBf!briTRP8XZaq!jcH`FCG=Z#T52UH*rsrN*ddm z@~AMJf^q9j0S-U6VD}Kl!n`l2kRBl7w}Mx4r~WYZ3&u@+`CCci7rr&K#K2mnMt5VA%L8e5lBi*GmxW1gN=<4R?E3L33dZSK~NFs7@vsZ?gO4b}g znAp<7IfUfcjoTlv_P5(mvX}O6vQCm3O`39}ksme@I{kJd z6Cy3RhS;%v$Li;cg7D;%CyZzJN)dvgsoX_=GV}{$NK|@j2q-=~2To zD&q-@fyU}f%ZCRe8go6eYG< zaNlcubx>GX*ran}`*@{=mPzBIc5kM{l@?CE%hitv0S>7^vywRhF*r# zzKNZZ)X&{4sXx%#H_Nl1-TSclAh4!r_%k7>+s>9=JsZxv8$;q2)z%$^cV@(Ak+H{% zAMbymYg0IL_LW8dfv~xKfQ{xN;Ct*oDy%NJD@VNhB1dcpwY#VXLu~3SX8Wa%N3Kof zJ^A#UwL*Ebx;)@5TlQ4KLv`RJD2mqcuj4fIgd&6w+`+#LEUQ>nVBjPZA$Bc}HB?H| zgaJ6$moFW635#vK%IJ1$b(DSCtJO=|FwHJa>7X|@7@$%;B_%R5^e2y6>x3p8s6f{~ zqX^4qZLF8Pepn8j;a*#JJh<;hG=n7hE2q^L`s>2YF3fBTNqhZ1XLJEsgd~tsE_iAiJe`T+Cj=!dl)GSjWAJ-=%e?9s? pK=~hv{@~_Mp!|QtEgoLxfwdAx_Ny_3ukh;t9PM0CRGWZn{{|QI7R3Mn literal 0 HcmV?d00001 diff --git a/spiral/image/page_spiral/spiral_option_ice.png b/spiral/image/page_spiral/spiral_option_ice.png new file mode 100644 index 0000000000000000000000000000000000000000..3c0a4194524157921e4bde3f9c5f9c5b47a84fb5 GIT binary patch literal 12649 zcmch8i$Bx<7yr7TlvJn?DwUAr9zwZ(z{g4Sv*ypM&E|K)Bwla2v2Kavgc^=MraUW8%cn6YbE&b0Y98G3OK2 zQNu>K9PeE|0f2M2oYT5r%&m9_N3@reOy3`RB2ji!?iXurPMNfLoVedcI8R_)FHwI( z&_YO67%hK*9W^9Tdz7?S7pqKD9xq~R-=AYBhaly>g=!D%6)P~b2mbJ_A7*4f3l*;0 zxy=e}bL&ytt0}~U7-e)rpt4f$HeMqin`DR=`^SKfjPBLN5;c^Xw=Z;kA=zuS1a$%j z5bC!Eg83Fd?8zPw%N!DMMsyC{%NIql>be%@owA+Mi48ptfEY0rv_?)(eVp z5JAgN*WsXqC0!?~c9ftP(T7)nuDUQ9ZF&ct=Oo81}XUj882BdWscz$BOy1Zgt?# zX3;Ct`DB8Rjn1};dnfYkwj_XUhjrzex5xUlqF;ZG9bv90uQE~-r#)~_Hu`&1rB7%Q z-#yjGUJZur^a9n!5pM)`I~5w``R5kG(RXp6okQ!{Do3U-)e3 zIPp3Ru7$26yRQDs#LMd79xcEXHDGG70D>EYp1%>0(UpF-K$(_)eQ_&dvs_Tc-7?#~ z>+w*H6q0|mg{~%B4UTDagPwO0!6vq&Gc5TZBEO{QgjDaXY^-{juMSXz{>|h0=Pc_ve;D{_yXJL{y#2P(c6h0IYTF(kcO<3?bq3H0mn?2z*%wu&M>~w% zF&xu@wTU|ZPxUu zEM0f7RwFtIKkBw#A6_Oc&e5b6^5ITrwO1Q0g)7pwQ3YcUG41MRusyoo0YciLhR1o6 z^eZ|v$q#o#8c9Kdh1s;SI9jov}HFF+(jlC`@vpw!M;??sonCWRim7ZI21pHY90U zLbYlrIGXjh(MTJW98F8K%GsERYFY>b(?k7BJ`yQ*3YE01NWRgWLI~QIzL7Pu5EaW|wrQ-34J`)B{1#iza_=2c>_xHIEmqf0AQCKBKeN=9 ztH?K?6v5Zr5Y=USI|9?cKvu}gWG_z!F*tWmqJ=eSm%QcwLABH@89W(*M?&ewXGs^%jI&U!co6VVb~6$b!jj{bC3A2mv@n!goP56*e&rrs z;m!kCp|{_ug7a<1v#xs5y4l2O;$>)!^F}W+^*C5s#(U2gU5m5n)4G9tjAdVbD6OYm zX-{DEp8*5^bB@#n3$$b#IV&vP0RA09u4F@TIsrdUkx|fq(Zf6z==wDY z8`OvY+pISy?B6tcYIi40I)?FHq9pGBWY_HBXQlJz!@2eBjf7XGK1 z!e3on-uXT0brq}9yel6!lQe1;{j4l~1nty<=_%aLRa*nVs+uvAZE!tuA=x~xOh}eX z50Sb)y6X@C3X|>$p^fNYN<8x=`4~F5V3&n>2as!2_Ieuom20n^wck6vgzS8cm^#e$ zmg5p`dxRbprpbAO_{SV)OzFSbF1Pefj2Cr&v>hP6cfO{Zr@CBVVDUEnGWs`2<)GeP zdsXDSyA%(D4c*y^N4f!14sG0OyTBcmE>53z4ETN3T;G@$*+5u6hS_053TUCGsl{9U zmGPF?y}oy1R~>jt>Xqooo+Llnzb@oVh%3%!o8FfHn~=`G`oTz3cFm8w{&jiK zt-a4mYJwIPZKNjYwH+RwyNu1q_^$F^P&n`KkGHlKO!@x0U!S#~kp!MUJ}RMyiDsL{ ze+Z=OmG7E10u5Uwj#V>~a|uiK;nITmNd=eDh9Ub+HxL$n*5 zof-xPAMw9wZs)Ybc~%%XxZSiBCDAz_zluw?t4yS0E8)>G>vF4H@ya*~-6}iH8E^9| zblZNGr}DGb=R$l5E?EcaXLSX1acf+r5^n|3tX9Cm<#c(Ok0YbFvQNKp+o zuAH~lIaEr5kKl}F2sMP3L+ycfK(~$U)t&67_;*(Mzm8H77RURa? zAUevaDWtN4+A2l#+U^8_wRryVr+BZQiY+g)KIN#;{Pz-*MWj>gkv3 zzY4Uz9j7dP+EkZnU5}j7UD%v|NK>M1?%K-57-dlO>cgpUm`)8@3YzjiKg3%r)X+R( zBIbaTnxkvZ2e`cu6$Wr8D`fFi=4pbT9|hanx-kJOOA`=PzIR}M|-=#B1*HOCT)ibRO_|&C>1*K>xq(C>okiJ$<3{{ z8BBFrTQn|Y)pK=h$ZBo7>O$LW<1&yG0qYg3zl02~gm0&^Isbk5{#*7zZ&DUM$2dt+ zXMer#xQ?9nC{7mF=r|kl^Gt%B`=G~{_@m3UWM!YkLij-L=u94_(jtbUf<(C1Po5Y$ z5~m((hi3L_^c*wWX6GuQc1JW}e)Ti|FyzbZAwR187uuX>`#RNGrAD=%AzrAFVwuJBfqtRz| zzMQl8z$#Pw?AYVJrnQ)CD@&GiP;cw8+f;+WU>Xs7ElyVB&R zw`$Sv{}PG}daGL)j*VMIy4!!hhQIZ84%WXjyusO^;)LB=gu7vCT`$~|adwjoYzgc( z(@kZnz{O$x<>oBmJMUk6SC_2tJQPSB$f#7|YPRE+h4$4*I6-cdfAkrzfU>j+B8gI; zckS~g3asq`HosC<P%o$u%$LP$6Q0AHd z;O0$V!j105@f$o)S+eqzi_jsh8>VJabcZa0FG%=}NQI1*=E(Wea0!*_$Rx}`boKPk zgxYofX}>vM!0-A6LHQ{q3ivGP97CCqxq{R4M?^r@#hd(x26p|CJBg6WLIqRcJVb@q z5>5Y;HbXX3eC1!`@nyTV4Z7M#3=l`ZRB~x4^_jYgQ;7BzK3Vqe@`dAQ6E5_A|3>y- zFzY{jrX3z~)!Yqe25;Iu(;9O%mR^71^P@Kij7Cag&V;Aehwif27oV+x9J2nJvC-{+pj-ikd?sD1Qm?`@dz zks2M$p2lSr(n>D)P)!;PMc^TZ=qX6q8TBW4nnwY#Eh$6m{8hT1X7w3=*}q60#_Ckc z01;-~Ujs*I{>to6;V!4=FDbUMcn<;YIAEMPW!H=sr0K? zID6}CRgugqrIvoB0mK^IOopKxP?3-zBoE+XOV*&*FhOZsxCFV82W66COD)=llS_S@ zuSH!ygbSv8*}5{Yqw;z|0~cMkFuT)A<$C^}vpV;?9K7AJPK%6|)bh>T`dKchx*HH0 zl{)a~3YYb7*2P?k-3O zI83=Qc0wT)zwOYj7Ld4ou?5$JuacmE1rsM8iS&BTJvbFpEJ;!NFUU%W70m(ovR9Wa~P)U2d`Z8 z(K9UKR>r^)SuxWgI+Vyq%T~RcZ7Vz>fIATHmOpKVX|rhL>M50!6!~E*-Qbut&e_wX z-e_1acy;kXij1FE|1xSwD>|@~oX4g#t**fT{bosz?&;e#w$J?3t8`aKqyrufo9g6^ z$qyYpmv>8RrayAWB?UEy+EIVfEG+!;=Y1oFJb#teslV*A8QHJNjiJ?h-!(ym|s^B?1|bsR%@+ufe$eUw)1b49hWeuVPB{mXe?H0npW0iIO}uQAh7D zDxguO0hZi-b|O6FU(t`n;aW)H5RThy&j3F6ru@j;c~`4xX#=TnwdIr!$=AB)t?oUP zXIE4F=v%t^z>yD0?2R<6gc+)o@!q$&9mieyx}ku~K5%R8+#pjv*>jTk`w_C)#}%uE z!e#$7WtZ4dt2(LZJfOV&H<4CjZ0cmJ^!AV_)vR||AuZiz zlmrE|q`NQz;@_?xBlE=M8R+ZM1Es zdB#W$<_9TI|KPAPK&JG3BZ<9)fW<^c<4q_e+7(*nOc5AMRh~FIU6-0fg%vdFL!Bc! zw{)l!D#f}I`|n5S6gSiB`D3V+t4J)6V_AY{*yS31c7^`plhSHK7S~*;#s=oS`xoy5 zabj!Cx@11&kgzTRo;I#$=o_Co;ZX+whhF|^vx)!0L`am`|CneRw|rpBx=D|YO)|K5 z;mF*x8Rv$j?VFivcOP7&xLCOh8bCj>?lAn!q_W2a)496y?aF#dHPsV(^c<-Xv_)74 z)jFhVLCF|@k#?v?=LY{t(1VU)xg%pCurTkz%|QZR3=fY5>s^@ktPx&a_TO1e$#tg& zN&fHlCQGR((P@MluRTOsMnYP`y*DsFBAxaDp`nBcTTVN1oijbS zxWUZ3f2WPj1PS>=@F6rNxYr`mnHmB!CNP;7*G8^OP*1j1?~v$WJXY33))Io|TC&kY z{?wV}Uc!OAS9AU~u-PA5MtxPbZ(GZ<$1B{MO<}e2$D1LlU2k{!OYq*npV*!$+@9 z89U}!_S&EqlIvR!?7xuIr4%UmO8T@N=tP$}NTLK+< zR7N4E2ilWEUze4`v4i~3D-zN`IpA>U*AIw~h#KhEVd`7Iny%s)_U+)?^Z>h3Lf;ws z%Gd6dPc$d?Z{Ep6twQ&-PEF!oOw9%^6aj0bv~w@ebY>-8CCV+mB*1J|02Rh+^IYRj zK*NT|!LEmWmb7;+znD<8-}S3lZ<}SWE6o3Cze*Em^Rc{5SDYp}Y-hI3KE&UVneM9! zC|1Bc!Y#z>DwF^rrNegKM%}LKq{sn-7i#MFbI3Rjrg}C1iS;@w>)Lw?5-W*ow*pI% zeCKhIkG(2l(su96&?1y0-XJym`8Dru#3p-3+_efWL-*HJ@{2lO2J3j@UyZub_G7Kc zS!#;@lJoxF$dJp)16Gm^5UG#8(J@o6NL_ny6TpOSrcPzbpNd3U>B) zDC*T|kL=q{pZ+t^d8t8XY+NdX8cBco2~;wB6Vi#a{;t|j>ll~WI5+Bc-Xm|`xh5G6 zw}&-I)_CBV8^Z}aP!g2nBHnK@iSF9?{PqdAOOR`QPykQR9S;1`iHN{%C*W7Cf1p!8 z$W|~t2*iW~5btMqK@g7?u;%ANHqn%)L7CHKCf{3r;)q`8P9qC10U%_Pi$lgTh=V9V z+vBa(`&VGdrqIt4Gb`e=IV!U*yE`u0@cesM5N6ORY@TOkY*Z#kq&uBC)`3BtZpFW= z4RIPPd{p`524~TJT>ro~fq7KznZH@HF6Zn&4(k3`IK;eS@9es+z4PR`U%|TDh@V&S z5D%e1;luhX`6^A_-?T`r^cx%NsTc_k=i7re!pAx$(Hr;mam3^Z>!Jf`xiXC#q^wjb zf4O>P_J~_iZ02mp^h8QWcnf_w@;dy!4_(j!fBh%@6iefSVujFWIDM{(mXi89lC$u> zz)U6={L3!bNGL%hjkp!+#p|z1V7rAmCCi9z)BH!?jCEB%Vqo9X;_udbTJQmc?LmkE ztiHm8`fV$1U*m0{$fBr9ipFdYySix$@qIboJGI=L-p(QRHZ_2*I!HYDTwS{!2BdISBF4tS>NXBqd50&#a3`^97-J&kpc69dZ zmmTgXY#x&z13m`t_>m}us}|4trqe+#Mu`XFz@x;H*D+U(TTuE zy@PY+H15Z>ExbC7wHq#Sk5KG~RJy!AR4+Gb>I-Qa@1s2ZNcA`|&iY$+!CgMe&j>Vp zi(Ow`e#WI`u`kdosdDFO&4ggVp>#0 zP#MTVb;1a^UgzUf{y&;J{MKSBiVVo7f+Gs5_3c+H24P=aYP^hDU5CRQ^JT3nKO!KG z;m0vKY?;ele_67L1e;fk!#RVr*N^xLv_yew; zORlV{T(p|>Y>^Hgi2M<$C|hyGVloYLqT%YBRe#z}E9SjBI`N+x@rDPb|GiNN&27?I zUe))wWl4mMqr5jlM0R!*xIPO>qmHQ**9=hFRM3s~>&xoMwdld4Q-14?^k4i;{?br$ z%x>C=!w4$SoA_zA!A5?Na<4i7a3Fgst3Ic>(476Nxe?!27M4dZ_V4=jj_tFX47t!z zymun?AmmUS`>w0h@eonQb;T#oOzgCwSrs}z1yXi{?$*=&*5j@$$fA$J8jE1#?ZH3# z_NOB~|61LzQFuF@I<7PpE#GYB2C5P5&6VIER1b!X$v9*$FO7Bf zWkza?$5cKzskep3%{4Wyt@^lXclTt$iZs`2`jE&=ke*N#QVD~`zZ$BTnQ}f>9S*p& z1Fj@4Lvw}>{S8W69^H*&8af>aqkKh)bmuQ|b5wM-(Y_T3pBlj2u8CD0KBI$=_h@MU!FNpr8)J7Z(m9;*h8j~3>&|@fr7a=j%KO?~rqn)y?yEGLuZf8>w%I-z zi}$A6m%#M%D_E)?_8+W++27wB=Kb~8zrxd z|H}fBe(^+c3bS9xjzlPqx$&D4BbVA7H-&;dfFYdM_1>cj;?WpH@SIlfRE^2_KO*D; zwJ}$F?L^$|k@%!PpSKGwjP`s?3L5e9>YY^?C2hvL2QXrvF1(N0@zhbMK%sg1a%_M4Lpk;Ex28K_WaS z*+J)RbGw}C4X{*CP}v>(6l1-ATDHOV6Qy6aG4DCEKlM)C$IgDMF{IKDi*Llgt&o^l zA*uQYd%`8`V>s)^TlK#++|QZha~48u%41jgRlA(Y)^!~}*fQ_mBKsM*^2aSQ`rB>_ z7+qZS^TsUqe0H2v6=%}<7_e}h831KRcwNG(Hs@=L?&iB4pOf{fr&W;DT_6uZ{Vr%h z;2T)HKmypPh;wV-JBU4#NRg8Ke_;r5|E?Rd*7IL;sk(IDlN#Z}gO)Ha+lxJpC%RC` zm&}i8o85e!rY@MuGhDuKc(`k>(&$^}um6(n%r{79K#$65n|}#3NT$}oM*jOnYI1qm zd+RfyCsmjmRF2OY23N~P5|3uO)V%!EDYXNi$N3wu9p4olj@U|J&nK1cY~xZaMB}FV zA4z5lE39o3weFV0A;nLMs3)Gsa*(TyyoYFO(g-BWLE*1Mcl7)cTJ z0Vq^Md(bxjo`Mfep|W}nAmFqAAp?-Lb6*{8FtW1Wnv2L<*MA*yQ4l!;j8~v2RlvHe^3qbrBSbnNni3D+n5(#(f}JBMFN^#n(u z$KT@vtL%%0&u}IBr(q~WNELU=G%4QR2s=@lEZdX-}_2}_$9S5fW{Ibn5 z53d;|HE7Rh(=NZAIdKHq59c(lT-Pg2Js#P&&RUbNE#63=4oYf;Mo$hwWar@$k*E!k zo%e6XWm;Uh?9LOTz$15z*_*SB1*2k(>OtVUkLS5k&=9^BK|^GD5ZIv2>pD$YeD2 zuU*lR+}LbMd5~dk^pJf%60yyEApUL&$0M1D$g-?!?Dv_N&O-}wSvY2Vf?Vjde1D4M z(1Em%KaAcNE*5+{nrHnwW~oQluXOi8Mm@;o8NW3fh%EBykFfjKCY*F7e{@{4uLvrO zW<&q_EYgM;5HjSFtd*`1X9Kt7_uX)@(j?zCGPgPwylT3>0CPv-u)~ z76>}z z=TL+8f3}htP9gANK4;)!x`~wBx|;u7>g}gfb7J}?u0c{>Hb01b+k}7(%I8%=zzK>;J0BmUA zoSWO^`uL%y(0XK~>?6pFnfC-QuK-I(n+~UkA^78vQU}HEY<>FFM;W0($;y$*MXSDd zhHmG>J0GOfXn75X7xUu>Z9DE3d9aT@VGp3&DB{V;htkyZrPl-4@%CUhGN z*OT>~g)3gsX}G8r{XjYY(73-szyE2yZJoy7<)0sEzOg-OSHW3uEfCU4>2=mOPua;$ zRP1*4A+FCD)|BihOSiqP0k=`qtMP^FpAG=%MeZiwgh%!=qbl3m2&r$~!9H6zfI0oy zA?B@78J=hSe_~eqG?uEI-K!I@duiI~(odef+-6M=riOWmaf&3AoJPK)W;}=(xBb_? z!lyK=gYG`&=yUN5#z_MbhwL_BlgQx*Ai(=YsaXsDVf2*HA1Cm?c1GnQ!oQT%VN&E@5ta5%9KXS%FS)n+ zdRtRM!!6dn2MxM9Yk&(7l=t$}3HGhEJ=-gv*$}asaeiaF^ab$ym8wn(gH!$-coBsE zZx^3HFI9MkT?3w+AQnTwhX9Tla@cY>{ral8?J$-Gl)okyUe5@E{=8A`?wLY~Z`^np9uTXF{H+do`!SM3|Nh6(O6Q4I zkr?0+*(ai=Z{bfHLVL?>rtdj51rOEuT44S`Qu+~TVKAP*vg;eAC;jDT(ECu*YskI)eCrOEJ@ZviPxTpJhWrU|!7g%OF+rBkk-`I| zA+{Pa`OfZKUS1kHq4%Xni$hyJKE>ZlZ4Zd9{@a>H4A@Jy^QZ;>{%4g4^3M{~-7E~g z3u80s%l2`hPlF>-(~f4KZrGLk@{Mtr4i{Rb+%V=aRBk`D{{tC_`+oDj4~Y=0iSF6%tcTw*miioSUHY;Tr?;(DnXCZ{NmG_Z$SAVk&R zxRK|vd;(%mLaFeLFE63b7xy6ydfbsD32owHz16b)w{uU(@p3)*UajG(hwVSdnkLT- z`SPzE^KT@#)`w!Ul2uYf0phN{-{_km-(O&()b;o#}!^LppsIXRWr>&h~4q zAMDQfU|3@Z5?eJ#@VW6)8KxO>$4s@XC+*=yT?OGt9OCP7PPu z9^Q}>h4!>6$+d-3sH8wn4@UvJk+Rriq3w{z3?`_o-vH%9HvG`UWcCATa4Je zBV-=C7wfdIFT%Jd2_HRZX#Js9Bav35C zO5PsXr*%*M1lg>l+xEd}{?fd>ynS3r>_KuNak+H=8KC;LgrD5MPZ2;kZng_iA5oHH zc>;q)J@yB<)21FA9GoO6%rQwV8qob8uGw93IA&3ctg(l>-(B)o1@n5#k9*N6d+0*| z;Y~FHfiPuVt@gGj<3H@`-0sV|z=WwwMX;%@Xkukf_HMG*Vy&F@_T`x5+Q>0AbLV!j|qX%G5| z0Ef;{X8Y)DbJZQQT@L$v;c72_vY-!t2iEz=H8QQjj2 z5H2`~*+ox$;u=XGpnx3-p+-gQin(svdX-=+RomA6u7@hScmF)VT!~Wof}!aFnC_z# T^VvuD_qv-JSsGUBKZ^T5Cudoc literal 0 HcmV?d00001 diff --git a/spiral/image/page_spiral/text21.png b/spiral/image/page_spiral/text21.png new file mode 100644 index 0000000000000000000000000000000000000000..0360c59786c1a0f09eb30c28353da0d8a76cbc85 GIT binary patch literal 1388 zcma)6`#aMM82@gp<(7`4Ll;pxlj#%@iG`9|wZv?>Wx_=4XqL;t5T)x}a+w`$r9)%P zr9~XKlG$ntt9Hhuq-ORMR`D?AtpA|*dEWQ)`Ml5bKA-3L{P14)MSALKZ_x$-K+oID z-46gjFf~86ew}(sg~zFC&`R(MOauU(Uw4x&c6Q zzRpTG1OOl)Z+ACT3h48AFmh|O@xc7c{@y5=_Bpg~2Urqkrl+$Tx^)+xS`0BPf&el- z1E@x*YY7gNn*_Sjm?hITOUCL7rP<|!XY9Ara?MvWM>q}xiSAU)Y%*nsrrPeOs@IVZhP6UQO)uMhc)?nGO_) zRjTfKtrAgNTicZ>(M1L-Xs{!{s|$figbN>s;Nj$mSr*+umUw>|8y^0?>0+nPKa+iR zdJSv0d9;s&rKjecxsFZyEac9Q^l7&mO=sclCYUsoC^?b?F9-V*%umhW#!oF^)-Jixbn0$un+b3C?G0RvYI&Pk z=km}|QsLmwQHII(8SY6}9g7b;u^`%S&338+mx;>##Y1=tYTRtka534XRxZYL6$`Ub`P#Av%Z6Uv68 zd5_xKOk8WL5NSz^fuNn*8KseD_FAi#TIrqxJg@+d=YZuOuagTdG~P|wGb4<(qiyI4t1O$&-4MK+*}0-~X* zC8a`+tI!JdbGcRj4Msc9t^&V24!I`%qg!PoUI>x48Z7VOmXZjj#k`B1%;7%tYtPVN zn+r|9TZ0gUb?=ey64s`@E7*@mZa$1yY7Tgnn^qgg2!*CPaFPPNO4smhq&HY4_HTfW z5tvDc3jU(F8nq?kIZ+H3Oeg2``bBfnX=7kNj1J|_t<_2G z82`RjM2|D&>>z&S*oAOcA~Ul@&%{oNG{-qYYIWG{XXPQJH;#BxyuQ9V*{=Dfc8fh# zmcC5Ojd8J#1lRvYN8!1(?;oKLCC5xE6oesh@Wd~atnCjXL~fSoq{%pL`7LFVvyEbG zetzC31zZKA6R0GC^y`(O%)%SCt+P*njg+jtx5;D@E6Yw^$avTq9C#<^Npl_t@u#O- zopCpwk0W+UAcv!_YQnJBQeH_m7g_`zP9eIl9&f&pCqvNABXn8k>Oa*e1%||xN)3Oe z{2)U)dh*%C>~DtY(BVjRlH*@brVSm;kB*7qI(&~&4Dzgdwl!MY+b`r_9*WIK@TN)Y z({lUujWSc;HiqnVf~TRZ{kSovo~s*>w|Jm&r+Re#EH&ex*Q(sR4&jmLEJI6|ex#*#l3m*ah`{{Oc7JX#bc8%{lU0;+K&%-zq=7MY~x|n(q6l#{&S73oeJF VvUk+L`#C=@ypJK>8;@Ww{}01(gew35 literal 0 HcmV?d00001 diff --git a/spiral/image/page_spiral/unavalible.png b/spiral/image/page_spiral/unavalible.png new file mode 100644 index 0000000000000000000000000000000000000000..c1c0971b3a3c601ba1807f292ed84fe3308d0e63 GIT binary patch literal 1020 zcmeAS@N?(olHy`uVBq!ia0y~yU{nLLT{+l*bk7hZzh& zhJp_RGDAR(0Vu*D%m8GxaH22{v4BLt2EZ8)LbE>!F|0qHVY16)bI7IZaqG=1U+pwJ zcIeESRjX!Co;>;Gr;o2+zwQ<|)b8xb?Q!STH0h@|Myptm#yYElj@CE-THdBx&5a763NR~t@1ASmv?gy zI(;TevBj^aP{!#;MNN%Ox+Z%wyL;>Utp(K*`LPjCXN%64vXOzdkYJ5N@c~_MY^l zU*hr6!#hM=C$8Pon)2-3{~aF2=RdDM{WNBh%6|LuITqUNdtx8|T6Fxgisw1^#etb= z#m3&NS7oi$xou}#7WV$%zkkk~Z~jrz1R8bz>c>gT?&f{BkH2%WhqGd_3eY3}bJE1W zx=-1nvNmq6?evmsufN*ao9(;*e)_wA_gfi9RvSoc znRWKr?kck{Yk}%+_vv;iP5pAZ=*_`{2XpRj4ZdyCZopVk7;y@kmWfNkkUW5#84|Yt g1LouZ|Ct$f-AUnM`f*PXm~$CCUHx3vIVCg!0DbYm0ssI2 literal 0 HcmV?d00001 diff --git a/spiral/xml/page_catalog_vending_machine.xml b/spiral/xml/page_catalog_vending_machine.xml index 1e0f9e54..cc8e1a05 100644 --- a/spiral/xml/page_catalog_vending_machine.xml +++ b/spiral/xml/page_catalog_vending_machine.xml @@ -9,6 +9,7 @@ "0xeae6e1" SoundVolume + Var SpiralOption = 0 Var SpiralSoftwareVersion = "1.04" Var ColorBrown = 0x746253 Var ColorBrown2 = 0x513C2F @@ -2333,6 +2334,7 @@ "/mnt/sdcard/coffeevending/wav/click.wav" SoundVolume + Var SpiralOption = 1 Var SpiralSelectdetail1 = $03-01-01-0039.detail1 Var SpiralSelectheader2 = $03-01-01-0039.header2 Var SpiralSelectdetail2 = $03-01-01-0039.detail2 @@ -2491,6 +2493,7 @@ "/mnt/sdcard/coffeevending/wav/click.wav" SoundVolume + Var SpiralOption = 1 Var SpiralSelectdetail1 = $03-01-01-0040.detail1 Var SpiralSelectheader2 = $03-01-01-0040.header2 Var SpiralSelectdetail2 = $03-01-01-0040.detail2 diff --git a/spiral/xml/page_spiral_check_cash.xml b/spiral/xml/page_spiral_check_cash.xml index 083414f8..5daa2644 100644 --- a/spiral/xml/page_spiral_check_cash.xml +++ b/spiral/xml/page_spiral_check_cash.xml @@ -10,10 +10,27 @@ Var GotoStoreCredit0 = 0 Var LastMakeSpiralResult = 0 Var MachineSpiralStage = "" + If SellLeaw = 0 Then SPIRAL_SELL ServiceCredit SpiralRef Var TestSellSpiral = 1 DEBUGVAR TestSellSpiral + If Seeker.thankToppingFlag = 1 Then + If StrawState = "Press" Then + Machine StrawOrder + Var LedLidBlink = "true" + EndIf + + If LidState = "Press" Then + Machine LidOrder + Var LedLidBlink = "true" + EndIf + + Var SelectDrink = "12-05-02-0017" + Var SelectSugarID = 0 + MakeDrinkV1 SelectDrink SelectSugarID + EndIf + Var SellLeaw = 1 EndIf diff --git a/spiral/xml/page_spiral_failmuti.xml b/spiral/xml/page_spiral_failmuti.xml new file mode 100644 index 00000000..a4e9a334 --- /dev/null +++ b/spiral/xml/page_spiral_failmuti.xml @@ -0,0 +1,988 @@ + + "Enable" + 1080 + 1920 + "0xeae6e1" + "ROOT/taobin_project/sounds/chaching.mp3" + SoundVolume + + Var SetPayMuti = 0 + Var Timeout3 = 0 + ;Var LastMakeDrinkResult = "-" + ;Var MachineState_Result = 2 + + Var ChangeFlag3 = 0 + Var ChangeFailSpiral = 0 + Var ChangeFailCoffee = 0 + Var SpiralText1 = 0 + Var MultiGo = 0 + DEBUGVAR SpiralText1 + Var Timeout = 0 + Var ShowPictureFail = 0 + If ChangeOK = 1 Then + Var ChangeOK = 2 + EndIf + + If show_eng = "true" Then + Var DirImage = "ROOT/taobin_project/image/complete_en/text_bottom.png" + Var DirImage1 = "ROOT/taobin_project/spiral/image/page_spiral/en_spiral_text_fail.png" + Else + Var DirImage = "ROOT/taobin_project/image/complete/text_bottom.png" + Var DirImage1 = "ROOT/taobin_project/spiral/image/page_spiral/spiral_text_fail.png" + EndIf + + + Var SpiralPickDrink = "Invisible" + + 1000 + + + If CreditCardVoid = 1 Then + Var ChangeOK = 3 + EndIf + + If Seeker.thankToppingFlag = 1 Then + Else + If SpiralCodeOk = 1 Then + If CheckAckCode = 1 Then + Var SessionID2 = SelectSlot + ":" + Var SessionID2 = SessionID2 + ExtendData + DEBUGVAR SessionID2 + + DEBUGVAR SessionID2 + + Var CreditAmount1 = "" + Var ServiceAmountFlow = "" + Var TelephoneNumber = "0899999999" + Var ServiceType = "locker" + Var ECommerce = "" + Var ECommerce = "locker5/" + Var ECommerce = ECommerce + PriceDrink + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + DiscountDrink + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + SessionID2 + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + SelectDrink + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + Seeker.VendingCode + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + Seeker.CodeNumber + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + "C:" + Var ECommerce = ECommerce + Seeker.IntVendingCampaign + Var ServiceParameter = "max" + Var ServiceCharge = 0 + Var AccountType = "new" + Var testservice = "kbank" + Var tc = "" + Var GetScore = "" + Var OperatorName = "" + Var SessionID = "" + + GetPayInfo TelephoneNumber ECommerce ServiceType ServiceParameter SessionID OperatorName CreditAmount1 ServiceAmountFlow GetScore tc + + Var SpiralCodeOk = 2 + + Open "ROOT/taobin_project/spiral/xml/page_spiral_fail2.xml" + EndIf + EndIf + EndIf + + + + + + DEBUGVAR LastMakeSpiralResult + DEBUGVAR LastMakeDrinkResult + DEBUGVAR MachineState_Result + DEBUGVAR MachineStage + DEBUGVAR SpiralPickDrink + +; DEBUGVAR waitAckPay +; DEBUGVAR Timeout +; DEBUGVAR sendPayMultiFlag +; DEBUGVAR PayOk +; DEBUGVAR SetPayMuti +; DEBUGVAR MultiGo +; DEBUGVAR ChangeOK +; DEBUGVAR ChangeStatus +; DEBUGVAR Seeker.TNumberTaobinCredit +; DEBUGVAR Seeker.StoreCreditFlag +; DEBUGVAR Seeker.PayWithQR +; DEBUGVAR Seeker.CodeChannel +; DEBUGVAR CheckAckCodeTimer +; +; DEBUGVAR Seeker.pageStoreCredit0 +; +; DEBUGVAR SpiralCodeOk +; DEBUGVAR CheckAckCode +; DEBUGVAR CheckAckCodeTimer + + Var Timeout = Timeout + 1 + + Var ChangeTimeout = ChangeTimeout - 1 + Var CheckAckCodeTimer = CheckAckCodeTimer - 1 + + If MachineStage = "pickup-cup" Then + Var SpiralPickDrink = "Enable" + Else + Var SpiralPickDrink = "Invisible" + EndIf + + If ChangeTimeout < 1 Then + If ChangeOK = 1 Then + Var ChangeOK = 2 + Var ChangeTimeout = 30 + EndIf + EndIf + If ChangeTimeout < 1 Then + If ChangeFlag2 = 1 Then + Var ChangeOK = 3 + Var ChangeFlag2 = 2 + Var ChangeTimeout = 30 + EndIf + EndIf + + If SpiralCodeOk = 1 Then + If CheckAckCode = 1 Then + If LastMakeSpiralResult = 2 Then + Var SessionID2 = SelectSlot + ":" + Var SessionID2 = SessionID2 + ExtendData + DEBUGVAR SessionID2 + + DEBUGVAR SessionID2 + + Var CreditAmount1 = "" + Var ServiceAmountFlow = "" + Var TelephoneNumber = "0899999999" + Var ServiceType = "locker" + Var ECommerce = "" + Var ECommerce = "locker5/" + Var ECommerce = ECommerce + PriceDrink + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + DiscountDrink + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + SessionID2 + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + SelectDrink + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + Seeker.VendingCode + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + Seeker.CodeNumber + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + "C:" + Var ECommerce = ECommerce + Seeker.IntVendingCampaign + Var ServiceParameter = "max" + Var ServiceCharge = 0 + Var AccountType = "new" + Var testservice = "kbank" + Var tc = "" + Var GetScore = "" + Var OperatorName = "" + Var SessionID = "" + + GetPayInfo TelephoneNumber ECommerce ServiceType ServiceParameter SessionID OperatorName CreditAmount1 ServiceAmountFlow GetScore tc + + Var SpiralCodeOk = 2 + + EndIf + EndIf + EndIf + + If PayOk = 9 Then + Var SetPayMuti = SetPayMuti + 1 + If SetPayMuti = 2 Then + Var PayOk = 2 + Var SetPayMuti = 0 + EndIf + EndIf + + If PayOk = 8 Then + Var SetPayMuti = SetPayMuti + 1 + If SetPayMuti = 2 Then + Var PayOk = 3 + Var SetPayMuti = 0 + EndIf + EndIf + + If PayOk = 7 Then + Var SetPayMuti = SetPayMuti + 1 + If SetPayMuti = 2 Then + Var PayOk = 5 + Var SetPayMuti = 0 + EndIf + EndIf + + If LastMakeSpiralResult = 2 Then + If ChangeOK = 3 Then + If PayOk = 0 Then + Var PayOk = 9 + Var SessionID4 = MachineSpiralID + Var SessionID4 = SessionID4 + ":" + Var SessionID4 = SessionID4 + MachineSpiralSlotID + + Var SessionID3 = SessionID3 + MachineSpiralID + Var SessionID3 = SessionID3 + "/" + Var SessionID3 = SessionID3 + MachineSpiralSlotID + + If SpiralCodeOk = 1 Then + Var SessionID3 = SessionID3 + "/" + Var SessionID3 = SessionID3 + Seeker.VendingCode + Var SessionID3 = SessionID3 + "/" + Var SessionID3 = SessionID3 + Seeker.CodeNumber + EndIf + + + ;Var PayDetail="1/F:1221/0/" + Var PayDetail="1/F:" + Var PayDetail = PayDetail + MachineSpiralErrorCode + Var PayDetail = PayDetail + "/" + Var PayDetail = PayDetail + SessionID4 + + If Seeker.PayWithQR = 1 Then + ;If waitAckPay = 0 Then + ; Var waitAckPay = 1 + ; Var SVT = "locker" + ; Var ACC = "0899999999" + ; Var DEE = PayDetail + + If Seeker.TNumberTaobinCredit = "" Then + Else + Var ACC = Seeker.TNumberTaobinCredit + EndIf + ;PAYEXT SVT ACC VendingTSIDTmp DEE + + Var ServiceCredit = KeepServiceCredit + Var ServiceType = "locker" + + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID3 PriceDrink ServiceCharge Donate + If SpiralCodeOk = 1 Then + Var CheckAckCode = 1 + Var CheckAckCodeTimer = 10 + Else + Var ShowPictureFail = 1 + EndIf + ;EndIf + Else + + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID3 PriceDrink ServiceCharge Donate + If SpiralCodeOk = 1 Then + Var CheckAckCode = 1 + Var CheckAckCodeTimer = 10 + Else + Var ShowPictureFail = 1 + EndIf + EndIf + EndIf + EndIf + EndIf + + + If LastMakeSpiralResult = 2 Then + If Seeker.PayWithQR = 0 Then + If Seeker.CreditCard = 1 Then + If CreditCardVoid = 0 Then + + Var ChangeFlag = 1 + Var CreditCardVoid = 1 + ; Var ChangeOK = 3 + EndIf + + If CoinAmount > 0 Then + If ChangeFlag = 0 Then + Var ChangeFlag = 1 + Var ServiceAmount3 = ServiceAmount2 - Seeker.IntVendingCampaign + + If Seeker.StoreCreditFlag = 1 Then + Var ChangeOK = 2 + Else + Change ServiceAmount3 + Var ChangeFlag2 = 1 + Var ChangeTimeout = 30 + EndIf + EndIf + ;Else + ; Var ChangeOK = 3 + EndIf + + Else + If Seeker.CodeChannel = 0 Then + If ChangeFlag = 0 Then + Var ChangeFlag = 1 + If Seeker.StoreCreditFlag = 1 Then + Var ChangeOK = 3 + Else + Var ChangeFailSpiral = 1 + ;Var ServiceAmount2 = ServiceAmount2 - PriceDrinkTopping + ;Change ServiceAmount2 + Var ChangeTimeout = 30 + Var ChangeFlag2 = 1 + EndIf + EndIf + Else + If CoinAmount > 0 Then + If ChangeFlag = 0 Then + Var ChangeFlag = 1 + Var ServiceAmount3 = ServiceAmount2 - Seeker.IntVendingCampaign + If Seeker.StoreCreditFlag = 1 Then + Var ChangeOK = 3 + ; test edit + Else + Change ServiceAmount3 + Var ChangeFlag2 = 1 + Var ChangeTimeout = 30 + EndIf + EndIf + Else + If ChangeOK = 3 Then + Else + Var ChangeOK = 2 + EndIf + EndIf + EndIf + EndIf + Else + Var ChangeOK = 3 + EndIf + EndIf + +If Seeker.thankToppingFlag = 1 Then + If MachineStage = "close-maintenance" Then + If MachineState_Result = 0 Then + SAVELOG "back_to_main from line > 663." + Var MachineState_Result = 2 + EndIf + EndIf + + If MachineStage = "drink-success" Then + Var MachineState_Result = 1 + EndIf + + If MachineStage = "drink-failed" Then + If RoadShow = "true" Then + ;Open "ROOT/taobin_project/xml/page_back_to_error.xml" + Else + SAVELOG " drink-failed...." + Var MachineState_Result = 2 + EndIf + EndIf + + If MachineState_Result > 0 Then + Var EnableSelectMenuBetweenBrew = "Invisible" + EndIf + + + + If LastMakeDrinkResult = "success" Then + Var MachineState_Result = 1 + EndIf + + If MultiGo = 0 Then + If MachineState_Result = 2 Then + If SaveCoinAmount > 0 Then + If Seeker.TNumberTaobinCredit = "" Then + Change PriceDrinkTopping + Var MultiGo = 1 + Else + Var MultiGo = 2 + EndIf + Else + Var MultiGo = 2 + EndIf + EndIf + EndIf + + + If LastMakeDrinkResult = "success" Then + Var MachineState_Result = 1 + EndIf + + + If PayOk = 2 Then + If MultiGo = 2 Then + If waitAckPay = 0 Then + If MachineState_Result = 2 Then + If Timeout3 = 0 Then + Var waitAckPay = 1 + Var PayOk = 8 + If Seeker.TNumberTaobinCredit = "" Then + Var TelephoneNumber = "0899999999" + Var PayO2 = "" + If Seeker.TNumberTaobinMember = "" Then + Else + Var TelephoneNumber = Seeker.TNumberTaobinMember + EndIf + Else + Var TelephoneNumber = Seeker.TNumberTaobinCredit + Var PayO2 = Seeker.CoffeePinNumber + EndIf + + Var PayDetail= "1/F:1221/0/" + Var ServiceType = "coffee" + + Var SuggestID = "" + Var SessionID2 = "" + Var ServiceCredit = SelectDrink + + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID2 PriceDrinkTopping ServiceCharge Donate + Var sendPayMultiFlag = 2 + If Seeker.PayWithQR = 0 Then + If Seeker.CodeChannel = 0 Then + If Seeker.StoreCreditFlag = 1 Then + + Else + Var ChangeAmountSum = ChangeAmountSum + ServiceAmount2 + ;Var MultiGo = 0 + EndIf + EndIf + EndIf + EndIf + EndIf + EndIf + EndIf + EndIf + + + If PayOk = 2 Then + If MachineState_Result = 1 Then + DEBUGVAR PaySuccessWithDaemonTask + + If waitAckPay = 0 Then + Var PayOk = 8 + Var waitAckPay = 1 + Var Timeout = 0 + Var Timeout3 = 2 + Var ProcessText = "" + + If Seeker.TNumberTaobinCredit = "" Then + Var TelephoneNumber = "0899999999" + Var PayO2 = "" + + If Seeker.TNumberTaobinMember = "" Then + Else + Var TelephoneNumber = Seeker.TNumberTaobinMember + EndIf + + Else + Var TelephoneNumber = Seeker.TNumberTaobinCredit + Var PayO2 = Seeker.CoffeePinNumber + EndIf + + + Var ServiceType = "coffee" + Var ServiceCredit = SelectDrink + Var SuggestID = "" + + Var PayDetail = "2/" + HURR_FOREVER + Var PayDetail = PayDetail + "/" + Var PayDetail = PayDetail + SAMESALARY + Var PayDetail = PayDetail + "/" + Var PayDetail = PayDetail + NOBONUS + Var PayDetail = PayDetail + "/XML|" + Var PayDetail = PayDetail + Seeker.OrderChanel + + + + If GetFreeFromError = 1 Then + Var Seeker.CodeChannel = 1 + Var Seeker.VendingCode = "FAU" + Var Seeker.CodeNumber = "0000000000" + Var VendingCampaign = ServiceAmount2 + EndIf + + If Seeker.PayWithQR = 0 Then + If Seeker.CodeChannel = 1 Then + ;Var SessionID2 = SessionID2 + "/" + ;Var SessionID2 = SessionID2 + Seeker.CodeNumber + ;Var SessionID2 = SessionID2 + "/" + ;Var SessionID2 = SessionID2 + Seeker.VendingCode + ;Var SessionID2 = SessionID2 + "/" + ;Var SessionID2 = SessionID2 + SelectDrink + ;Var SessionID2 = SessionID2 + "/" + ;Var SessionID2 = SessionID2 + BoxID + ;Var SessionID2 = SessionID2 + "/" + ;Var SessionID2 = SessionID2 + "S" + ;Var SessionID2 = SessionID2 + "/" + ;Var SessionID2 = SessionID2 + Seeker.CodeNumber + ;Var SessionID2 = SessionID2 + "/" + + If Seeker.CreditCard = 1 Then + + CashlessReq SUCCESS + ;CashlessReq FAIL + + EndIf + + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID2 PriceDrinkTopping ServiceCharge Donate + Var sendPayMultiFlag = 2 + Else + + If Seeker.CreditCard = 1 Then + + CashlessReq SUCCESS + ;CashlessReq FAIL + + EndIf + + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID2 PriceDrinkTopping ServiceCharge Donate + Var sendPayMultiFlag = 2 + + + EndIf + + + Else + + ;no wait ack pay + Var waitAckPay = 1 + + Var SVT = "coffee" + Var ACC = "0899999999" + Var DEE = PayDetail + + If Seeker.TNumberTaobinMember = "" Then + Else + Var ACC = Seeker.TNumberTaobinMember + EndIf + + ;PAYEXT SVT ACC VendingTSIDTmp DEE + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID2 PriceDrinkTopping ServiceCharge Donate + Var sendPayMultiFlag = 2 + + + EndIf + + EndIf + + __CMD "clear-stock-data" 0 "-" "-" + + + Var ServiceSuccess = "yes" + If waitAckPay = 1 Then + SAVELOG "waitAckPay=0" + ; Open "ROOT/taobin_project/xml/page_back_to_main.xml" + EndIf + + EndIf + EndIf + + If Seeker.PayWithQR = 0 Then + If ChangeFlag3 = 0 Then + If MachineState_Result = 2 Then + Var ChangeFailCoffee = 1 + Var ChangeMuti = ServiceAmountSum - Seeker.VendingCampaign + Var ChangeFlag3 = 1 + EndIf + If MachineState_Result = 1 Then + Var ChangeFailCoffee = 1 + Var ChangeMuti = ServiceAmountSum - Seeker.VendingCampaign + ;Var ChangeMuti = ServiceAmountSum - PriceDrinkTopping + Var ChangeFlag3 = 1 + EndIf + EndIf + + If ChangeFlag3 = 1 Then + If Seeker.TNumberTaobinCredit = "" Then + Change ChangeMuti + Var ChangeFlag3 = 2 + EndIf + EndIf + EndIf + + If PayOk = 3 Then + If ChangeOK = 3 Then + If sendPayMultiFlag = 2 Then + Var PayOk = 7 + If Seeker.PayWithQR = 0 Then + Var ServiceType = "coffee-multi" + Else + Var ServiceType = "coffee-multiQR" + EndIf + + If Seeker.TNumberTaobinCredit = "" Then + Var TelephoneNumber = "0899999999" + Var PayO2 = "" + If Seeker.TNumberTaobinMember = "" Then + Else + Var TelephoneNumber = Seeker.TNumberTaobinMember + EndIf + Else + Var TelephoneNumber = Seeker.TNumberTaobinCredit + Var PayO2 = Seeker.CoffeePinNumber + EndIf + ; Var ServiceType = "coffee-multi" + + Var ServiceCredit = "00-00-00-0000" + Var SuggestID = "" + + + If LastMakeSpiralResult = 1 Then + Var PayDetail="1/S:0/0/" + Else + Var PayDetail="1/F:0/0/" + EndIf + + + Var CART_COUNT = "2" + Var SessionID3 = "" + CART_COUNT + Var SessionID3 = SessionID3 + ":00000" + + SAVELOG PayO2 + + Var VendingCampaign = IntVendingCampaign + Var CreditReference = Seeker.CreditReferenceTmp + + If LastMakeSpiralResult = 2 Then + Var ServiceAmountSum = ServiceAmountSum - PriceDrink + Var ServiceAmountSum = ServiceAmountSum - PriceDrinkTopping + EndIf + ;If MachineState_Result = 2 Then + ; Var ServiceAmountSum = ServiceAmountSum - PriceDrinkTopping + ;EndIf + Var PayType = "" + + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID3 ServiceAmountSum ServiceCharge Donate + + + If Seeker.PayWithQR = 1 Then + Var SVT = "coffee-multi" + + If Seeker.TNumberTaobinCredit = "" Then + Var TelephoneNumber = "0899999999" + If Seeker.TNumberTaobinMember = "" Then + Else + Var TelephoneNumber = Seeker.TNumberTaobinMember + EndIf + Else + Var TelephoneNumber = Seeker.TNumberTaobinCredit + EndIf + + Var DEE = PayDetail + + PAYEXT SVT TelephoneNumber Seeker.VendingTSID DEE + EndIf + + Var sendPayMultiFlag = 1 + EndIf + EndIf + EndIf +EndIf + + + + + + If PayOk = 5 Then + If sendPayMultiFlag = 1 Then + If MachineStage = "remove-cup" Then + Open "ROOT/taobin_project/xml/page_back_to_remove_cup.xml" + EndIf + If MachineStage = "close-maintenance" Then + Open "ROOT/taobin_project/xml/page_back_to_main.xml" + EndIf + If MachineStage = "show-menu" Then + Open "ROOT/taobin_project/xml/page_back_to_main.xml" + EndIf + EndIf + EndIf + + If Timeout >= 120 Then + Open "ROOT/taobin_project/xml/page_back_to_main.xml" + EndIf + + + Refresh + TimerReset + + + + + + If ChangeOK = 2 Then + If ChangeStatus = "payout-end" Then + Var ChangeOK = 3 + Var MultiGo = 2 + EndIf + EndIf + If ChangeOK = 1 Then + If ChangeStatus = "payout-end" Then + Var ChangeOK = 2 + Var ChangeTimeout = 999 + EndIf + EndIf + + + + + + + + 89 + 400 + 902 + 902 + "ROOT/taobin_project/spiral/image/page_spiral/spiral_fail.png" + + + + 84 + 1100 + 911 + 265 + DirImage1 + + + + + + 0 + 1418 + SpiralPickDrink + DirImage + + + +; +; 92 +; 1121 +;150 +; 40 +; KanitTTF +; 0xB78F24 +; Timeout +; +; +; +; 92 +; 1181 +; 40 +; KanitTTF +; 0xB78F24 +; ChangeTimeout +; +; +; +; +; 92 +; 650 +; 40 +; KanitTTF +; 0xB78F24 +; LastMakeSpiralResult +; +; +; +; +; +; 292 +; 1250 +; 40 +; KanitTTF +; 0xB78F24 +; "Seeker.CreditCard" +; +; +; +; +; 92 +; 1250 +; 40 +; KanitTTF +; 0xB78F24 +; Seeker.CreditCard +; +; +; +; +; 292 +; 1350 +; 40 +; KanitTTF +; 0xB78F24 +; "PayOk" +; +; +; +; +; 92 +; 1350 +; 40 +; KanitTTF +; 0xB78F24 +; PayOk +; +; +; +; 292 +; 1400 +; 40 KanitTTF +; 0xB78F24 +; "ChangeOK" +; +; +; +; 92 +; 1400 +; 40 +; KanitTTF +; 0xB78F24 +; ChangeOK +; +; +; +; 292 +; 1450 +; 40 +; KanitTTF +; 0xB78F24 +; "Seeker.StoreCreditFlag" +; +; +; +; 92 +; 1450 +; 40 +; KanitTTF +; 0xB78F24 +; Seeker.StoreCreditFlag +; +; +; +; 292 +; 1500 +; 40 +; KanitTTF +; 0xB78F24 +; "ChangeFlag2" +; +; +; +; +; 92 +; 1500 +; 40 +; KanitTTF +; 0xB78F24 +; ChangeFlag2 +; +; +; +; +; 292 +; 1550 +; 40 +; KanitTTF +; 0xB78F24 +; "Seeker.PayWithQR" +; +; +; +; +; 92 +; 1550 +; 40 +; KanitTTF +; 0xB78F24 +; Seeker.PayWithQR +; +; +; +; 292 +; 1600 +; 40 +; KanitTTF +; 0xB78F24 +; "Seeker.CodeChannel" +; +; +; +; 92 +; 1600 +; 40 +; KanitTTF +; 0xB78F24 +; Seeker.CodeChannel +; +; +; +; 292 +; 1650 +; 40 +; KanitTTF +; 0xB78F24 +; "ChangeFlag" +; +; +; +; 92 +; 1650 +; 40 +; KanitTTF +; 0xB78F24 +; ChangeFlag +; +; +; +; 292 +; 1700 +; 40 +; KanitTTF +; 0xB78F24 +; "Canout" +; +; +; +; 92 +; 1700 +; 40 +; KanitTTF +; 0xB78F24 +; Canout +; +; +; +; 292 +; 1750 +; 40 +; KanitTTF +; 0xB78F24 +; "SpiralCodeOk" +; +; +; +; 92 +; 1750 +; 40 +; KanitTTF +; 0xB78F24 +; SpiralCodeOk +; +; +; +; 292 +; 1800 +; 40 +; KanitTTF +; 0xB78F24 +; "CoinAmount" +; +; +; +; 92 +; 1800 +; 40 +; KanitTTF +; 0xB78F24 +; CoinAmount +; + + diff --git a/spiral/xml/page_spiral_payment.xml b/spiral/xml/page_spiral_payment.xml index 4c2a207c..a15b89da 100644 --- a/spiral/xml/page_spiral_payment.xml +++ b/spiral/xml/page_spiral_payment.xml @@ -18,7 +18,7 @@ Var DiscountDrink = 0 Var SelectSlot = "1" Var SpiralCodeOk = 0 - + Var LastMakeDrinkResult = "-" SAVELOG BoxID Var SpiralKeepCredit = 0 Var QRCODE1 = "A000000677010112" @@ -195,9 +195,13 @@ EndIf EndIf - - Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" - + If Seeker.thankToppingFlag = 1 Then + Var QRCODE5 = "2" + Var QRCODE6 = "00-00-00-0000" + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" + Else + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" + EndIf EndIf TimerReset diff --git a/spiral/xml/page_spiral_payment_cash.xml b/spiral/xml/page_spiral_payment_cash.xml index 3934fdef..5c034993 100644 --- a/spiral/xml/page_spiral_payment_cash.xml +++ b/spiral/xml/page_spiral_payment_cash.xml @@ -976,7 +976,7 @@ Var CoinInFlag = 1 - + DEBUGVAR ViewBill If ViewBill > 0 Then @@ -1792,8 +1792,14 @@ "/mnt/sdcard/coffeevending/wav/click.wav" SoundVolume - - Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_storeCredit.xml" + If SpiralKeepCredit = 1 Then + CoinVending BILLSTACKALL + Var CoffeeCreditKeep = RemainAmountKeep + + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_storeCredit3.xml" + Else + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_storeCredit.xml" + EndIf diff --git a/spiral/xml/page_spiral_payment_cashMore.xml b/spiral/xml/page_spiral_payment_cashMore.xml new file mode 100644 index 00000000..5f80efe6 --- /dev/null +++ b/spiral/xml/page_spiral_payment_cashMore.xml @@ -0,0 +1,1959 @@ + + "Enable" + 1080 + 1920 + "0xeae6e1" + SoundVolume + PlaySoundLag + + Var SellLeaw = 0 + Var sendPayMultiFlag = 0 + DEBUGVAR QRCODETMP + DEBUGVAR PayType + DEBUGVAR IsSmoRet + Var countClick2 = 0 + ;SAVELOG SelectDrink + ;SAVELOG NameDrink + ;SAVELOG NameDrinkTH + ;SAVELOG DrinkDescription + SAVELOG PriceDrink + ;SAVELOG topping1 + ;SAVELOG topping2 + ;SAVELOG topping3 + DEBUGVAR SelectDrink + + DEBUGVAR video_menu_0 + Var CashlessPayFlag = 0 + Var PayDetail = "" + Var FlagQROpened = 0 + Var PayInfoCFlag = 0 + Var ActionOKCase = 0 + Var VendingCampaign = Seeker.IntVendingCampaign + Var Seeker.VendingCampaign = Seeker.IntVendingCampaign + + Var PayAmount = PriceDrink + + Var LOADING_STATE = "Invisible" + ; Below original + ; On open + + + + Var cancelState = "Invisible" + + + Var alphaState = "Invisible" + Var alphaState2 = "Invisible" + Var FlagalphaState2 = 0 + Var alphaState2t = alphaState2 + Var alphaState3 = "Invisible" + + + Var CoinInFlag = 0 + ;Var CoinAmount = 0 + Var CancelFlag = 0 + Var CancelCounter = 0 + Var CoinInCounter = 0 + Var CancelNumber = 3 + + Var PayAmount = PriceDrink + Var RemainAmount = PayAmount - Seeker.IntVendingCampaign + Var RemainAmount = RemainAmount - CoinAmount + Var RemainAmount = RemainAmount - Seeker.IntVendingCredit + Var RemainAmountStr = "" + RemainAmount + Var Timeout = 0 + Var PayOK = 0 + Var ChangeOK = 0 + Var CoinInOK = 0 + + Var RemainAmountKeep = 0 + + Var showRemaining = charOfBaht + RemainAmountStr + + Var VendingREFID = "" + + Var TelephoneNumber = "0899999999" + Var ServiceType = "coffee" + +; Var ServiceCredit = SelectDrink + Var ServiceAmount2 = PayAmount + Var Seeker.ServiceAmount2 = PayAmount + Var ServiceCharge = 0 + Var Donate = "" + Var SuggestID = "" + Var CancleState = "Enable" + + Var Seeker.VendingDiscount = DiscountDrink + + + Var CashTextWarning = "" + Var QRErrorState = "Invisible" + Var QRErrorFlag = 0 + + + SAVELOG SelectDrink + + SAVELOG QRChannel + SAVELOG QRCODE99 + DEBUGVAR QRCODE99 + + SAVELOG VendingCampaign + SAVELOG Seeker.VendingCode + SAVELOG Seeker.CodeChannel + + + If Seeker.VendingCode = "C00" Then + Var Seeker.CodeChannel = 0 + EndIf + + DEBUGVAR QRCODE99KBANK + + If RoadShow = "true" Then + Var PayState1 = "Enable" + Var PayState2 = "Invisible" + Var PayState3 = "Invisible" + Var PayState4 = "Invisible" + Var PayState5 = "Invisible" + Var showRemaining = "Free" + + Else + Var PayState1 = "Enable" + If Seeker.IntVendingCampaign = 0 Then + Var PayState2 = "Enable" + Var PayState4 = "Enable" + Var PayState5 = "Enable" + Else + SAVELOG "Cash only IntVendingCampaign" + Var PayState2 = "Disable" + Var PayState4 = "Disable" + Var PayState5 = "Disable" + EndIf + Var PayState3 = "Enable" + + + DEBUGVAR CoinAmount + If CoinAmount > 0 Then + SAVELOG "Cash only CoinAmount" + Var PayState2 = "Disable" + Var PayState3 = "Disable" + Var PayState4 = "Disable" + Var PayState5 = "Disable" + Var CoinInFlag = 1 + EndIf + + If Seeker.IntVendingCredit > 0 Then + SAVELOG "Cash only IntVendingCredit" + Var PayState2 = "Disable" + Var PayState4 = "Disable" + Var PayState5 = "Disable" + EndIf + + + Var showRemaining = charOfBaht + RemainAmountStr + + If show_eng = "true" Then + Var showRemaining = charOfBaht + RemainAmountStr + Else + Var showRemaining = RemainAmountStr + " บาท" + EndIf + + EndIf + + + + + Var Seeker.PayWithQR = 0 + Var NoGotoMenupage = "false" + If show_eng = "true" Then + Var FilenameShowbuttonCashBN = "ROOT/taobin_project/image/page_payment_en/page_payment/bn_cash.png" + Var FilenameShowbuttonCashBP = "ROOT/taobin_project/image/page_payment_en/page_payment/bp_cash.png" + Else + Var FilenameShowbuttonCashBN = "ROOT/taobin_project/image/page_payment/bn_cash.png" + Var FilenameShowbuttonCashBP = "ROOT/taobin_project/image/page_payment/bp_cash.png" + + EndIf + + If RoadShow = "true" Then + If show_eng = "true" Then + Var FilenameShowbuttonCashBN = "ROOT/taobin_project/image/page_payment_en/page_payment/bn_cash_2.png" + Var FilenameShowbuttonCashBP = "ROOT/taobin_project/image/page_payment_en/page_payment/bp_cash_2.png" + Else + Var FilenameShowbuttonCashBN = "ROOT/taobin_project/image/page_payment/bn_cash_2.png" + Var FilenameShowbuttonCashBP = "ROOT/taobin_project/image/page_payment/bp_cash_2.png" + EndIf + EndIf + + If GetFreeFromError = 1 Then + Var Seeker.FreeVendingCampaign = 1 + CoinVending OFF + If Seeker = "curr" Then + ; MakeDrinkV1 SelectDrink SelectSugarID + EndIf + Open "ROOT/taobin_project/xml/page_thankyou.xml" + + EndIf + + + + If CoinInOK = 0 Then + + Var RemainAmount = PayAmount - CoinAmount + Var RemainAmount = RemainAmount - Seeker.IntVendingCampaign + Var RemainAmount = RemainAmount - Seeker.IntVendingCredit + Var SumCoinAmount = CoinAmount + Seeker.IntVendingCampaign + Var SumCoinAmount = CoinAmount + Seeker.IntVendingCredit + + If SumCoinAmount >= PayAmount Then + ;Var VendingQRCode = "ERROR" + CoinVending OFF + Var Canout = SumCoinAmount - PayAmount + If Canout = 0 Then + Var RemainAmountStr = 0 + Else + Var FlagalphaState2 = 1 + Var RemainAmountStr = "ทอน " + Canout + EndIf + + + Var CancleState = "Disable" + Var CoinInOK = 1 + Var CoinInCounter = 0 + + + + Else + Var RemainAmountStr = "" + RemainAmount + EndIf + + ;Var RemainAmount = 0 + + Var showRemaining = charOfBaht + RemainAmountStr + If RoadShow = "true" Then + Var showRemaining = "Free" + EndIf + + EndIf + + If show_eng = "true" Then + Var ShowHeadSpiralSelect = "ROOT/taobin_project/spiral/image/page_spiral/spiral_text_detail_en.png" + Var ShowHeadSpiralCash = "ROOT/taobin_project/spiral/image/page_spiral/spiral_text_choose_money_en.png" + Var DirImage = "ROOT/taobin_project/image/page_payment_en/page_payment" + Var DirImage2 = "ROOT/taobin_project/image/page_payment_cash_extend_en" + Var DirImage3 = "ROOT/taobin_project/spiral/image/page_spiral" + Var page_doing_show_time_image = "ROOT/taobin_project/image/page_doing/img2.png" + + Else + Var ShowHeadSpiralSelect = "ROOT/taobin_project/spiral/image/page_spiral/spiral_text_detail.png" + Var ShowHeadSpiralCash = "ROOT/taobin_project/spiral/image/page_spiral/spiral_text_choose_money.png" + Var DirImage = "ROOT/taobin_project/image/page_payment" + Var DirImage2 = "ROOT/taobin_project/image/page_payment_cash_extend" + Var DirImage3 = "ROOT/taobin_project/spiral/image/page_spiral" + Var page_doing_show_time_image = "ROOT/taobin_project/image/page_doing/img2.png" + EndIf + + + Var EnoughChange = "yes" + + + Var SELLONLINE = 0 + If SELLSTATUS = "SELLONLINE" Then + Var SELLONLINE = 1 + EndIf + If SELLSTATUS = "SELLNOCASH" Then + Var SELLONLINE = 1 + EndIf + + If SELLONLINE = 0 Then + SAVELOG "Cash only NetworkStatus down" + + Var PayState2 = "Disable" + Var PayState3 = "Disable" + Var PayState4 = "Disable" + Var PayState5 = "Disable" + Var PayState6 = "Disable" + + Var PayOfflineMode = 1 + + Var ShowNetworkProblem = "Enable" + Var ShowButtonClick2 = "Invisible" + Var ShowNetworkProblemText = "การสื่อสารขัดข้อง ชำระเงินได้เฉพาะเงินสด" + + Else + Var PayOfflineMode = 0 + + Var ShowNetworkProblem = "Invisible" + Var ShowNetworkProblemText = "" + EndIf + + If NOCashFlag = 1 Then + Var PayState1 = "Disable" + EndIf + + + + + + ;If NetworkStatus = "DOWN" Then + ; SAVELOG "Cash only NetworkStatus down" + ; + ; Var PayState2 = "Disable" + ; Var PayState3 = "Disable" + ; Var PayState4 = "Disable" + ; Var PayState5 = "Disable" +; + ; Var PayOfflineMode = 1 + ;Else + ; Var PayOfflineMode = 0 + ;EndIf + + ;If NetworkStatus = "ACTIVATE" Then + ; Var ShowNetworkProblem = "Invisible" + ; Var ShowNetworkProblemText = "" + ; + ;Else + ; Var ShowNetworkProblem = "Enable" + ; Var ShowButtonClick2 = "Invisible" + ; Var ShowNetworkProblemText = "การสื่อสารขัดข้อง ชำระเงินได้เฉพาะเงินสด" + ;EndIf + + Var pay_with_credit_image = DirImage + "/bp_pay_with_credit.png" + Var pay_with_chanel_text = DirImage + "/text_1.png" + + + If DisableUsingCode = "true" Then + SAVELOG "Diable code because using topping." + Var PayState2 = "Disable" + Var pay_with_code_image = DirImage + "/bn_pay_with_codeSmall_error.png" + Else + + If Seeker.IntVendingCredit > 0 Then + + Var pay_with_code_image = DirImage + "/bp_pay_with_code.png" + Var pay_with_credit_image = DirImage + "/bp_pay_with_credit.png" + + Var pay_with_chanel_text = DirImage + "/text_2.png" + + Else + + Var pay_with_code_image = DirImage + "/bp_pay_with_code.png" + EndIf + EndIf + + Machine DoorClose + + + If ShoppyPayEnable = "true" Then + Else + Var PayState5 = "Disable" + EndIf + + + If web_readyOK = "true" Then + + Var web_readyOK = "false" + + If web_payment = "CASH" Then + Var alphaState2 = "Enable" + Var alphaState2t = alphaState2 + EndIf + + If web_payment = "QR" Then + + Var QR_POPUP = "/img_popup1.png" + Var LOADING_STATE = "Enable" + + Var FlagQROpened = 1 + Var alphaState = "Enable" + ;CoinVending OFF + VendingQR ON + + Var SessionID2 = SelectSlot + ":" + Var SessionID2 = SessionID2 + ExtendData + + Var CreditAmount1 = "" + Var ServiceAmountFlow = "" + Var TelephoneNumberQR = "0899999999" + Var ServiceType = "coffee" + Var ECommerceQR = "" + Var ECommerceQR = ECommerceQR + PriceDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + DiscountDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SessionID2 + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SelectDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + "KBA:2/" + + + + If Seeker.IntVendingCampaign > 0 Then + Var ECommerceQR = ECommerceQR + Seeker.VendingCode + Var ECommerceQR = ECommerceQR + ":" + Var ECommerceQR = ECommerceQR + Seeker.CodeNumber + Var ECommerceQR = ECommerceQR + ":" + Var ECommerceQR = ECommerceQR + Seeker.VendingCampaignRI3 + EndIf + + If Seeker.IntVendingCredit > 0 Then + Var ECommerceQR = ECommerceQR + "CRD" + Var ECommerceQR = ECommerceQR + ":" + Var ECommerceQR = ECommerceQR + Seeker.TNumberTaobinCredit + Var ECommerceQR = ECommerceQR + ":" + Var ECommerceQR = ECommerceQR + Seeker.IntVendingCredit + EndIf + + + Var ServiceParameter = "max" + Var ServiceCharge = 0 + Var AccountType = "new" + Var testservice = "kbank" + Var tc = "" + Var GetScore = "" + Var OperatorName = "" + Var SessionID = "" + + GetPayInfo TelephoneNumberQR ECommerceQR ServiceType ServiceParameter SessionID OperatorName CreditAmount1 ServiceAmountFlow GetScore tc + Var ReqPayInfoFlag = 1 + EndIf + + If web_payment = "SHOPEE" Then + + Var QR_POPUP = "/img_popup2.png" + Var LOADING_STATE = "Enable" + + Var FlagQROpened = 1 + Var alphaState = "Enable" + ;CoinVending OFF + VendingQR ON + + + Var SessionID2 = SelectSlot + ":" + Var SessionID2 = SessionID2 + ExtendData + + Var CreditAmount1 = "" + Var ServiceAmountFlow = "" + Var TelephoneNumberQR = "0899999999" + Var ServiceType = "coffee" + Var ECommerceQR = "" + Var ECommerceQR = ECommerceQR + PriceDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + DiscountDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SessionID2 + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SelectDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + "AIR:2/" + + + + ;If Seeker.IntVendingCampaign > 0 Then + ; Var ECommerceQR = ECommerceQR + Seeker.VendingCode + ; Var ECommerceQR = ECommerceQR + ":" + ; Var ECommerceQR = ECommerceQR + Seeker.CodeNumber + ; Var ECommerceQR = ECommerceQR + ":" + ; Var ECommerceQR = ECommerceQR + Seeker.VendingCampaignRI3 + ;EndIf + + Var ServiceParameter = "max" + Var ServiceCharge = 0 + Var AccountType = "new" + Var testservice = "kbank" + Var tc = "" + Var GetScore = "" + Var OperatorName = "" + Var SessionID = "" + + GetPayInfo TelephoneNumberQR ECommerceQR ServiceType ServiceParameter SessionID OperatorName CreditAmount1 ServiceAmountFlow GetScore tc + Var ReqPayInfoFlag = 2 + EndIf + + EndIf + + __CMD "prepar-cup-from-order" 0 "-" "-" + + If ReqPayInfoFromCashOther = 1 Then + Var LOADING_STATE = "Enable" + + Var FlagQROpened = 1 + Var alphaState = "Enable" + + VendingQR ON + + Var ReqPayInfoFromCashOther = 0 + EndIf + If ReqPayInfoFromCashOther = 2 Then + Var alphaState = "Enable" + Var ReqPayInfoFromCashOther = 0 + EndIf + + + + + Var VendingQRTypeResult = "" + + DEBUGVAR ECommerceQR + DEBUGVAR ReqPayInfoFlag + + + + SPLIT ECommerceQR "/" 5 VendingQRTypeResult + + + DEBUGVAR VendingQRTypeResult + DEBUGVAR ActionOKCase + + If ActionOKCase = 0 Then + DEBUGVAR VendingREFID + If VendingREFID = "" Then + SAVELOG "menu_page4-QR.xml > ActOK_REFID" + Refresh + Else + Var sendPayMultiFlag = 0 + DEBUGVAR VendingREFID + If ViewBill > 0 Then + CoinVending BILLREJECT + EndIf + SAVELOG "menu_page4-QR.xml > ActOK_make" + ;Var VendingQRCode = "ERROR" + ;Coin STANDBY + VendingQR OFF + CoinVending OFF + + Var PayReference = MultiTSID + Var Seeker.PayWithQR = 1 + Var Seeker.VendingTSID = VendingTSID + + + Var GIFShowProcess = "ROOT/ui/page_05_loading/pic_loading_cup.gif" + Var BrewingTextThai = "เตรียมแก้ว" + Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou_qr.xml" + + EndIf + + + If ReqPayInfoFlag = 1 Then + If VendingQRTypeResult = "KBA:2" Then + Var CashTextWarning = "" + Var QRErrorState = "Invisible" + Var QRCODE99KBANK = "" + Var QRCODE99KBANK = SessionID + Var QRCODE99KBANK = QRCODE99KBANK + Ext1a + SAVELOG Ext1a + SAVELOG QRCODE99KBANK + Var QRCODE99KBANK = QRCODE99KBANK + Ext21 + Var QRCODETMP = QRCODE99KBANK + Var ReqPayInfoFlag = 0 + SAVELOG QRCODE99KBANK + SAVELOG Ext21 + + Var QRCODE99 = QRCODE99KBANK + Var LOADING_STATE = "Invisible" + EndIf + EndIf + + If ReqPayInfoFlag = 2 Then + If VendingQRTypeResult = "AIR:2" Then + Var CashTextWarning = "" + Var QRErrorState = "Invisible" + Var QRCODE99Shoppy = "" + Var QRCODE99Shoppy = SessionID + Var QRCODE99Shoppy = QRCODE99Shoppy + Ext1a + SAVELOG Ext1 + SAVELOG QRCODE99Shoppy + Var QRCODE99Shoppy = QRCODE99Shoppy + Ext21 + Var ReqPayInfoFlag = 0 + SAVELOG QRCODE99Shoppy + SAVELOG Ext2 + + Var QRCODE99 = QRCODE99Shoppy + Var LOADING_STATE = "Invisible" + EndIf + EndIf + + If ReqPayInfoFlag = 3 Then + If VendingQRTypeResult = "TWN:2" Then + Var CashTextWarning = "" + Var QRErrorState = "Invisible" + Var QRCODE99Shoppy = "" + Var QRCODE99Shoppy = SessionID + Var QRCODE99Shoppy = QRCODE99Shoppy + Ext1a + DEBUGVAR Ext2 + SAVELOG Ext1 + SAVELOG QRCODE99Shoppy + Var QRCODE99Shoppy = QRCODE99Shoppy + Ext21 + Var ReqPayInfoFlag = 0 + Var ReqPayInfoFlag2 = 3 + SAVELOG QRCODE99Shoppy + SAVELOG Ext2 + + Var QRCODE99 = QRCODE99Shoppy + Var LOADING_STATE = "Invisible" + EndIf + EndIf + + If ReqPayInfoFlag = 4 Then + If VendingQRTypeResult = "DOL:2" Then + Var CashTextWarning = "" + Var QRErrorState = "Invisible" + Var QRCODE99Shoppy = "" + Var QRCODE99Shoppy = SessionID + Var QRCODE99Shoppy = QRCODE99Shoppy + Ext1a + SAVELOG Ext1 + SAVELOG QRCODE99Shoppy + Var QRCODE99Shoppy = QRCODE99Shoppy + Ext21 + Var ReqPayInfoFlag = 0 + Var ReqPayInfoFlag2 = 4 + SAVELOG QRCODE99Shoppy + SAVELOG Ext2 + + Var QRCODE99 = QRCODE99Shoppy + Var LOADING_STATE = "Invisible" + EndIf + EndIf + + If ReqPayInfoFlag = 5 Then + If VendingQRTypeResult = "LPY:2" Then + Var CashTextWarning = "" + Var QRErrorState = "Invisible" + Var QRCODE99Shoppy = "" + Var QRCODE99Shoppy = SessionID + Var QRCODE99Shoppy = QRCODE99Shoppy + Ext1a + SAVELOG Ext1 + SAVELOG QRCODE99Shoppy + Var QRCODE99Shoppy = QRCODE99Shoppy + Ext21 + Var ReqPayInfoFlag = 0 + Var ReqPayInfoFlag2 = 5 + SAVELOG QRCODE99Shoppy + SAVELOG Ext2 + + Var QRCODE99 = QRCODE99Shoppy + Var LOADING_STATE = "Invisible" + EndIf + EndIf + + Else + Var PayInfoCFlag = 1 + EndIf + + + If VendingCashless = "OK" Then + DEBUGVAR CashlessCode + Var Timeout = 0 + + Var QRErrorState = "Invisible" + Var LOADING_STATE = "Invisible" + + If ViewBill > 0 Then + CoinVending BILLREJECT + EndIf + + VendingQR OFF + CoinVending OFF + Refresh + + If Seeker = "curr" Then + ; MakeDrinkV1 SelectDrink SelectSugarID + EndIf + Var Seeker.CreditCard = 1 + Var Seeker.CreditCardRef = CreditCardRef + + + Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou_creditcard.xml" + + EndIf + + + + + + If ActionOKCase = 0 Then + If ReqPayInfoFlag = 1 Then + Var QRErrorFlag = 1 + If alphaState = "Enable" Then + Var QRErrorState = "Enable" + Var LOADING_STATE = "Invisible" + EndIf + EndIf + If ReqPayInfoFlag = 2 Then + Var QRErrorFlag = 1 + If alphaState = "Enable" Then + Var QRErrorState = "Enable" + Var LOADING_STATE = "Invisible" + EndIf + EndIf + If ReqPayInfoFlag = 3 Then + Var QRErrorFlag = 1 + If alphaState = "Enable" Then + Var QRErrorState = "Enable" + Var LOADING_STATE = "Invisible" + EndIf + EndIf + If ReqPayInfoFlag = 4 Then + Var QRErrorFlag = 1 + If alphaState = "Enable" Then + Var QRErrorState = "Enable" + Var LOADING_STATE = "Invisible" + EndIf + EndIf + If ReqPayInfoFlag = 5 Then + Var QRErrorFlag = 1 + If alphaState = "Enable" Then + Var QRErrorState = "Enable" + Var LOADING_STATE = "Invisible" + EndIf + EndIf + Else + Var PayInfoCFlag = 1 + EndIf + + Refresh + + + + + + Var CreditCardRef = "" + GenHashWithTimeStamp CreditCardRef + DEBUGVAR VendingCashless + + If VendingCashless = "READY" Then + Var QRCODE99 = "" + Var Timeout = 0 + Var QRErrorState = "Invisible" + Var QR_POPUP = "/img_popup8-2.png" + Var VendingCashless = "-" + Var LOADING_STATE = "Enable" + Var RemainAmountX = PayAmount - Seeker.IntVendingCampaign + CashlessPay RemainAmountX CreditCardRef + Var CashlessPayFlag = 1 + EndIf + + Refresh + + + + + + 1000 + + + DEBUGVAR SpiralKeepCredit + If ReadyForBrew = "false" Then + Open "ROOT/taobin_project/xml/page_back_to_main.xml" + + EndIf + + + + + Var Timeout = Timeout + 1 + + + If Timeout >= 120 Then + Var alphaState = "Invisible" + Var PayState3 = "Disable" + Var PayState5 = "Disable" + + Var LOADING_STATE = "Invisible" + Var QRErrorState = "Invisible" + + EndIf + + + If Timeout > 210 Then + If ActionOKCase = 1 Then + Var PayInfoCFlag = 1 + EndIf + EndIf + + If PayInfoCFlag = 1 Then + If Seeker.CodeChannel = 1 Then + Var SessionID2 = SelectSlot + ":" + Var SessionID2 = SessionID2 + ExtendData + + Var CreditAmount1 = "" + Var ServiceAmountFlow = "" + Var TelephoneNumber = "0899999999" + Var ServiceType = "locker" + Var ECommerce = "" + Var ECommerce = "locker5/" + Var ECommerce = ECommerce + PriceDrink + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + DiscountDrink + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + SessionID2 + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + SelectDrink + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + "C00" + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + Seeker.CodeNumber + Var ECommerce = ECommerce + "/" + Var ECommerce = ECommerce + "C:" + Var ECommerce = ECommerce + Seeker.IntVendingCampaign + Var ServiceParameter = "max" + Var ServiceCharge = 0 + Var AccountType = "new" + Var testservice = "kbank" + Var tc = "" + Var GetScore = "" + Var OperatorName = "" + Var SessionID = "" + GetPayInfo TelephoneNumber ECommerce ServiceType ServiceParameter SessionID OperatorName CreditAmount1 ServiceAmountFlow GetScore tc + ;Var Timeout = 0 + EndIf + If Seeker = "curr" Then + Open "ROOT/taobin_project/xml/page_catalog.xml" + Else + + Open "ROOT/taobin_project/xml/page_brewing3Conti.xml" + EndIf + EndIf + + + If TestLoopMakeDrink = 1 Then + ; MakeDrinkV1 SelectDrink SelectSugarID + Open "ROOT/taobin_project/xml/page_thankyou.xml" + EndIf + + + + If CoinInOK = 1 Then + Var CoinInCounter = CoinInCounter + 1 + If CoinInCounter = 1 Then + + ;Var ChangeOK = 1 + Var Timeout = 180 + Var PayOK = 1 + + EndIf + EndIf + + Var stringLog = "Timeout " + Timeout + Var stringLog = stringLog + " PayOK" + Var stringLog = stringLog + PayOK + + + If Timeout > 180 Then + If PayOK = 1 Then + + + Open "ROOT/taobin_project/spiral/xml/page_spiral_check_cash.xml" + + Else + If CancelFlag = 0 Then + SAVELOG "Timeout > 180 s." + + If ViewBill > 0 Then + CoinVending BILLREJECT + EndIf + + CoinVending OFF + Var CancelFlag = 1 + Var cancelState = "Enable" + + If CashlessPayFlag = 1 Then + Var CashlessPayFlag = 0 + CashlessReq FAIL + EndIf + + Var CancelCounter = 0 + If CoinAmount = 0 Then + + If Seeker.IntVendingCredit > 0 Then + Var BmiYear = Seeker.IntVendingCredit + Var GetScore = "useCredit" + AddData 24 Seeker.TNumberTaobinCredit BmiYear PointCrm GetScore + Var Seeker.IntVendingCredit = 0 + EndIf + + + + If Seeker.IntVendingCampaign = 0 Then + VendingQR OFF + If Seeker = "curr" Then + Open "ROOT/taobin_project/xml/page_catalog.xml" + Else + + Open "ROOT/taobin_project/xml/page_brewing3Conti.xml" + EndIf + EndIf + EndIf + + EndIf + EndIf + EndIf + + + If CancelFlag = 1 Then + + If Seeker.IntVendingCredit > 0 Then + Var BmiYear = Seeker.IntVendingCredit + Var GetScore = "useCredit" + AddData 24 Seeker.TNumberTaobinCredit BmiYear PointCrm GetScore + Var Seeker.IntVendingCredit = 0 + EndIf + + Var CancelCounter = CancelCounter + 1 + If CancelCounter = CancelNumber Then + ;Change CoinAmount + If CoinAmount > 0 Then + If Seeker.StoreCreditFlag = 1 Then + Var ChangeOK = 1 + Else + Change CoinAmount + EndIf + + Else + If ActionOKCase = 0 Then + Var ActionOKCase = 1 + Var PayInfoCFlag = 1 + EndIf + EndIf + + VendingQR OFF + EndIf + + If CancelCounter >= 43 Then + Var ChangeOK = 1 + EndIf + + ; This copy in file menu_catalog.xml + + If ChangeOK = 1 Then + If ActionOKCase = 0 Then + + If Seeker.TNumberTaobinCredit = "" Then + Var TelephoneNumber = "0899999999" + Var PayO2 = "" + Else + Var TelephoneNumber = Seeker.TNumberTaobinCredit + Var PayO2 = Seeker.CoffeePinNumber + EndIf + + Var VendingDiscount = 0 + Var VendingCampaign = 0 + Var ServiceType = "credit" + Var SessionID2 = SelectDrink + Var ServiceCredit = "locker" + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID2 ServiceAmount2 ServiceCharge Donate + Var PayCredit = 1 + + Var ActionOKCase = 1 + If Seeker = "curr" Then + If Seeker.IntVendingCampaign = 0 Then + If Seeker = "curr" Then + Open "ROOT/taobin_project/xml/page_catalog.xml" + Else + + Open "ROOT/taobin_project/xml/page_brewing3Conti.xml" + EndIf + EndIf + Else + ;wait ack + EndIf + EndIf + EndIf + + EndIf + + + Refresh + TimerReset + + + + If ChangeStatus = "payout-end" Then + Var ChangeOK = 1 + EndIf + + + + TimerReset + + If CoinInFlag = 0 Then + ;VendingQR OFF + Var alphaState = "Invisible" + EndIf + + + + Var CoinInFlag = 1 + + DEBUGVAR ViewBill + + If ViewBill > 0 Then + + If PayOfflineMode = 1 Then + CoinVending BILLREJECT + Else + + + Var RemainAmount = PayAmount - CoinAmount + Var RemainAmount = RemainAmount - Seeker.IntVendingCampaign + Var RemainAmount = RemainAmount - Seeker.IntVendingCredit + + If ViewBill > RemainAmount Then + Var RemainAmountKeep = ViewBill - RemainAmount + Else + Var RemainAmountKeep = ViewBill + EndIf + + Var Timeout = 0 + + + Var RemainAmountStr = "" + RemainAmount + Var showRemaining = charOfBaht + RemainAmountStr + + + + + Var alphaState3 = "Enable" + EndIf + + + Else + + + If CoinInOK = 0 Then + + Var RemainAmount = PayAmount - CoinAmount + Var RemainAmount = RemainAmount - Seeker.IntVendingCampaign + Var RemainAmount = RemainAmount - Seeker.IntVendingCredit + + Var SumCoinAmount = CoinAmount + Seeker.IntVendingCampaign + Var SumCoinAmount = SumCoinAmount + Seeker.IntVendingCredit + If SumCoinAmount >= PayAmount Then + ;Var VendingQRCode = "ERROR" + CoinVending OFF + VendingQR OFF + Var Canout = SumCoinAmount - PayAmount + If Canout = 0 Then + Var RemainAmountStr = 0 + Else + Var FlagalphaState2 = 1 + Var RemainAmountStr = "ทอน " + Canout + EndIf + + + Var CancleState = "Disable" + Var CoinInOK = 1 + Var CoinInCounter = 0 + + + + Else + Var RemainAmountStr = "" + RemainAmount + EndIf + + Var Timeout = 0 + + ;Var RemainAmount = 0 + Var showRemaining = charOfBaht + RemainAmountStr + + Var alphaState2 = "Enable" + Var alphaState2t = alphaState2 + If FlagalphaState2 = 1 Then + Var alphaState2t = "Invisible" + EndIf + + EndIf + + EndIf + + + + + Refresh + + + If CoinInFlag = 1 Then + If CoinInOK = 0 Then + If CancelFlag = 0 Then + SAVELOG "VDCancle > Cancle Order." + Machine CancelWepApp + CoinVending OFF + Var CancelFlag = 1 + Var cancelState = "Enable" + Var CancelCounter = 0 + ;If CoinAmount = 0 Then + ; Open "ROOT/taobin_project/xml/page_catalog.xml" + ;EndIf + + Var showRemaining = "คืนเงิน" + ;Open "ROOT/taobin_project/xml/page_catalog.xml" + + If FlagQROpened = 1 Then + Var CancelNumber = 12 + EndIf + + EndIf + EndIf + ;VendingQR OFF + Refresh + + If ViewBill > 0 Then + CoinVending BILLREJECT + EndIf + EndIf + + + +; +; 0 +; 0 +; "ROOT/taobin_project/image/ad_medium_2.png" +; + + + + + 0 + 380 + 1080 + 864 + 0xFFFFFF + + + +; +; 155 +; 991 +; 774 +; 129 +; "ROOT/taobin_project/spiral/image/page_spiral/spiral_text_appfast.png" +; + + + + 143 + 360 + ShowHeadSpiralCash + + + +;; back +; +; + + +; +; 375 +; 623 +; 331 +; 435 +; PictureDrink +; + + + + 375 + 623 + eval( + If IsSmoRet = "true" Then + Var return = "Enable" + Else + Var return = "Invisible" + EndIf +) + + "ROOT/taobin_project/image/topping2/blender_icon.png" + + + + + + + + + + + + +; +; 184 +; 1530 +; Var( DirImage3 + "/spiral_payment_bd_code.png") +; + + + + + + +; +; 680 +; 1530 +; Var( DirImage3 + "/bd_pay_with_codeOther.png") +; + + + + + +;; + + + + + + 0 + 555 + 1080 + 437 + SpiralProduct + + + + 0 + 1127 + 1080 + Center + 80 + KanitMediumTTF + ColorOrange + showRemaining + + + + + + 0 + 982 + 1080 + Center + 65 + KanitMediumTTF + ColorBrown2 + showname + + + + + 0 + 1058 + 1080 + Center + 40 + KanitTTF + ColorBrown + showdesc + + +; QR popup + + 0 + 380 + alphaState + "ROOT/taobin_project/image/page_payment/alpha.png" + + + + 249 + 748 + alphaState + Var( DirImage + QR_POPUP ) + + + + 493 + 968 + 94 + 94 + LOADING_STATE + Var( DirImage + "/loading.gif" ) + + + + 267 + 1065 + LOADING_STATE + Var( DirImage + "/loadingText.png" ) + + + + + + +; begin cash popup + + 0 + 380 + alphaState2 + "ROOT/taobin_project/image/page_payment/alpha.png" + + + + 182 + 748 + alphaState2 + Var( DirImage2 + "/img_popup11.png" ) + + + + + + + + 0 + 1041 + 144 + Center + 1080 + KanitRegularTTF + alphaState2 + 0xDE794E + RemainAmountStr + +; end case popup + + + 0 + 380 + alphaState3 + "ROOT/taobin_project/image/page_payment/alpha.png" + + + + 182 + 748 + alphaState3 + Var( DirImage2 + "/img_popup12.png" ) + + + + + + +; +; 0 +; 1041 +; 100 +; Center +; 1080 +; KanitRegularTTF +; alphaState3 +; 0xDE794E +; RemainAmountKeep +; + + + + 270 + 1000 +550 + Center + 30 + KanitRegularTTF + alphaState + 0xFF0000 + CashTextWarning + + + + + 399 + 905 + WQR + HQR + alphaState + testservice + + + + + + 0 + 380 + cancelState + Var( DirImage + "/CancelOrder.png" ) + + + + 493 + 960 + 94 + 94 + cancelState + Var( DirImage + "/loading.gif" ) + + + + + + Open "/media/bt/xml/security_alarm.xml" + + + + 100 + 1880 + 14 + "Left" + 1080 + KanitThinTTF + 0x513C2F + "55555" + + + + + + + + 5 + 1880 + 24 + Center + 1080 + RobotoRegular + 0xFFFFFF + ShowNetworkProblemText + + + +; +; 92 +; 600 +; 60 +; KanitTTF +; 0xB78F24 +; Seeker.TNumberTaobinMember +; +; +; +; 92 +; 700 +; 60 +; KanitTTF +; 0xB78F24 +; Seeker.TNumberTaobinCredit +; + + + diff --git a/spiral/xml/page_spiral_payment_cashOther.xml b/spiral/xml/page_spiral_payment_cashOther.xml index b5cea362..1451292d 100644 --- a/spiral/xml/page_spiral_payment_cashOther.xml +++ b/spiral/xml/page_spiral_payment_cashOther.xml @@ -53,8 +53,8 @@ Var PayState2 = "Enable" Var QRChannel = 0 Var Seeker.CodeChannel = 0 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf @@ -116,14 +116,39 @@ ;CoinVending OFF VendingQR ON - - Var SessionID2 = "1:00000" + + If Seeker.thankToppingFlag = 1 Then + Var SelectSlot = "2" + Var SessionID2 = SelectSlot + ":00000" + ;Var SessionID2 = "1:00000" + Var SelectDrink = "00-00-00-0000" + Var DiscountDrink = 0 + + + Var CreditAmount1 = "" + Var ServiceAmountFlow = "" + Var TelephoneNumberQR = "0899999999" + Var ServiceType = "coffee-multi" + Var ECommerceQR = "" + Var ECommerceQR = ECommerceQR + PriceDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + DiscountDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SessionID2 + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SelectDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + "TWN:2/" + + Else + Var SessionID2 = "1:00000" Var CreditAmount1 = "" Var ServiceAmountFlow = "" Var TelephoneNumberQR = "0899999999" Var ServiceType = "locker" Var ECommerceQR = "locker5/" + Var ECommerceQR = ECommerceQR + PriceDrink Var ECommerceQR = ECommerceQR + "/" Var ECommerceQR = ECommerceQR + DiscountDrink @@ -132,7 +157,8 @@ Var ECommerceQR = ECommerceQR + "/" Var ECommerceQR = ECommerceQR + ServiceCredit Var ECommerceQR = ECommerceQR + "/" - Var ECommerceQR = ECommerceQR + "TWN:2/" + Var ECommerceQR = ECommerceQR + "TWN:2/" + EndIf @@ -170,7 +196,11 @@ Var ReqPayInfoFlag = 3 Var ReqPayInfoFromCashOther = 1 - Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" + Else + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" + EndIf @@ -196,14 +226,37 @@ ;CoinVending OFF VendingQR ON - - Var SessionID2 = "1:00000" + If Seeker.thankToppingFlag = 1 Then + Var SelectSlot = "2" + Var SessionID2 = SelectSlot + ":00000" + ;Var SessionID2 = "1:00000" + Var SelectDrink = "00-00-00-0000" + Var DiscountDrink = 0 + + Var CreditAmount1 = "" + Var ServiceAmountFlow = "" + Var TelephoneNumberQR = "0899999999" + Var ServiceType = "coffee-multi" + Var ECommerceQR = "" + Var ECommerceQR = ECommerceQR + PriceDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + DiscountDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SessionID2 + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SelectDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + "AIR:2/" + + Else + Var SessionID2 = "1:00000" Var CreditAmount1 = "" Var ServiceAmountFlow = "" Var TelephoneNumberQR = "0899999999" Var ServiceType = "locker" Var ECommerceQR = "locker5/" + Var ECommerceQR = ECommerceQR + PriceDrink Var ECommerceQR = ECommerceQR + "/" Var ECommerceQR = ECommerceQR + DiscountDrink @@ -212,7 +265,9 @@ Var ECommerceQR = ECommerceQR + "/" Var ECommerceQR = ECommerceQR + ServiceCredit Var ECommerceQR = ECommerceQR + "/" - Var ECommerceQR = ECommerceQR + "AIR:2/" + Var ECommerceQR = ECommerceQR + "AIR:2/" + EndIf + @@ -250,7 +305,11 @@ Var ReqPayInfoFlag = 2 Var ReqPayInfoFromCashOther = 1 - Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" + Else + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" + EndIf @@ -277,14 +336,36 @@ ;CoinVending OFF VendingQR ON - - Var SessionID2 = "1:00000" + If Seeker.thankToppingFlag = 1 Then + Var SelectSlot = "2" + Var SessionID2 = SelectSlot + ":00000" + ;Var SessionID2 = "1:00000" + Var SelectDrink = "00-00-00-0000" + Var DiscountDrink = 0 + + Var CreditAmount1 = "" + Var ServiceAmountFlow = "" + Var TelephoneNumberQR = "0899999999" + Var ServiceType = "coffee-multi" + Var ECommerceQR = "" + Var ECommerceQR = ECommerceQR + PriceDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + DiscountDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SessionID2 + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SelectDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + "DOL:2/" + Else + Var SessionID2 = "1:00000" Var CreditAmount1 = "" Var ServiceAmountFlow = "" Var TelephoneNumberQR = "0899999999" Var ServiceType = "locker" Var ECommerceQR = "locker5/" + Var ECommerceQR = ECommerceQR + PriceDrink Var ECommerceQR = ECommerceQR + "/" Var ECommerceQR = ECommerceQR + DiscountDrink @@ -293,7 +374,9 @@ Var ECommerceQR = ECommerceQR + "/" Var ECommerceQR = ECommerceQR + ServiceCredit Var ECommerceQR = ECommerceQR + "/" - Var ECommerceQR = ECommerceQR + "DOL:2/" + Var ECommerceQR = ECommerceQR + "DOL:2/" + EndIf + @@ -331,7 +414,11 @@ Var ReqPayInfoFlag = 4 Var ReqPayInfoFromCashOther = 1 - Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" + Else + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" + EndIf @@ -360,14 +447,37 @@ VendingQR ON - - Var SessionID2 = "1:00000" + If Seeker.thankToppingFlag = 1 Then + Var SelectSlot = "2" + Var SessionID2 = SelectSlot + ":00000" + Var SelectDrink = "00-00-00-0000" + Var DiscountDrink = 0 + + + Var CreditAmount1 = "" + Var ServiceAmountFlow = "" + Var TelephoneNumberQR = "0899999999" + Var ServiceType = "coffee-multi" + Var ECommerceQR = "" + Var ECommerceQR = ECommerceQR + PriceDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + DiscountDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SessionID2 + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + SelectDrink + Var ECommerceQR = ECommerceQR + "/" + Var ECommerceQR = ECommerceQR + "LPY:2/" + Else + + Var SessionID2 = "1:00000" Var CreditAmount1 = "" Var ServiceAmountFlow = "" Var TelephoneNumberQR = "0899999999" Var ServiceType = "locker" Var ECommerceQR = "locker5/" + Var ECommerceQR = ECommerceQR + PriceDrink Var ECommerceQR = ECommerceQR + "/" Var ECommerceQR = ECommerceQR + DiscountDrink @@ -377,7 +487,7 @@ Var ECommerceQR = ECommerceQR + ServiceCredit Var ECommerceQR = ECommerceQR + "/" Var ECommerceQR = ECommerceQR + "LPY:2/" - + EndIf If Seeker.IntVendingCampaign > 0 Then Var ECommerceQR = ECommerceQR + Seeker.VendingCode @@ -412,7 +522,11 @@ Var ReqPayInfoFlag = 5 Var ReqPayInfoFromCashOther = 1 - Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" + Else + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" + EndIf @@ -442,11 +556,15 @@ SoundVolume - Var QR_POPUP = "/img_popup8.png" - Var alphaState = "Enable" - Coin CARD - Var ReqPayInfoFromCashOther = 2 - Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" + Var QR_POPUP = "/img_popup8.png" + Var alphaState = "Enable" + Coin CARD + Var ReqPayInfoFromCashOther = 2 + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" + Else + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" + EndIf @@ -497,8 +615,8 @@ Var PayState2 = "Enable" Var QRChannel = 0 Var Seeker.CodeChannel = 0 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf diff --git a/spiral/xml/page_spiral_payment_code.xml b/spiral/xml/page_spiral_payment_code.xml index 6b37986a..c951b74c 100644 --- a/spiral/xml/page_spiral_payment_code.xml +++ b/spiral/xml/page_spiral_payment_code.xml @@ -27,6 +27,12 @@ Var ShowErrorText = "Invisible" Var Tel_Confirm_State = "Invisible" Var ErrorCause = "" + Var Seeker.ExtendData = "" + + If Seeker.thankToppingFlag = 1 Then + Var Seeker.ExtendData = "10000" + EndIf + If show_eng = "true" Then @@ -53,6 +59,7 @@ Var RemainAmount = 0 ;PrepareDrink SelectDrink SelectSugarID + Var SessionID2 = SelectSlot + ":" Var SessionID2 = SessionID2 + Seeker.ExtendData @@ -80,6 +87,10 @@ Var GetScore = "" Var OperatorName = "" Var SessionID = "" + + DEBUGVAR SessionID2 + DEBUGVAR Seeker.ExtendData + DEBUGVAR Seeker.thankToppingFlag GetPayInfo TelephoneNumber2 ECommerce ServiceType ServiceParameter SessionID OperatorName CreditAmount1 ServiceAmountFlow GetScore tc @@ -99,6 +110,9 @@ 1000 ;Open "ROOT/xml/page_board.xml" + DEBUGVAR SessionID2 + DEBUGVAR Seeker.ExtendData + DEBUGVAR Seeker.thankToppingFlag @@ -111,8 +125,8 @@ Var PayState2 = "Enable" Var QRChannel = 0 Var Seeker.CodeChannel = 0 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf @@ -147,7 +161,10 @@ - + DEBUGVAR SessionID2 + DEBUGVAR Seeker.ExtendData + DEBUGVAR Seeker.thankToppingFlag + If Seeker.CodeChannel = 1 Then @@ -244,8 +261,9 @@ Var Seeker.CodeChannel = 1 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Var SpiralCodeOk = 1 + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Var SpiralCodeOk = 1 Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" @@ -317,8 +335,8 @@ Var Seeker.CodeChannel = 1 Var QRCODE99 = "" Var QRCODETMP = "" - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf @@ -672,8 +690,8 @@ Var PayState2 = "Enable" Var QRChannel = 0 Var Seeker.CodeChannel = 0 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf diff --git a/spiral/xml/page_spiral_payment_codeAIS.xml b/spiral/xml/page_spiral_payment_codeAIS.xml index 4ff4a406..5b8e9169 100644 --- a/spiral/xml/page_spiral_payment_codeAIS.xml +++ b/spiral/xml/page_spiral_payment_codeAIS.xml @@ -156,8 +156,9 @@ Var Seeker.CodeChannel = 1 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Var SpiralCodeOk = 1 + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Var SpiralCodeOk = 1 Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" diff --git a/spiral/xml/page_spiral_payment_codeDtac.xml b/spiral/xml/page_spiral_payment_codeDtac.xml index 68fde42e..53804113 100644 --- a/spiral/xml/page_spiral_payment_codeDtac.xml +++ b/spiral/xml/page_spiral_payment_codeDtac.xml @@ -159,8 +159,9 @@ Var Seeker.CodeChannel = 1 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Var SpiralCodeOk = 1 + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Var SpiralCodeOk = 1 Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" diff --git a/spiral/xml/page_spiral_payment_codeGLX.xml b/spiral/xml/page_spiral_payment_codeGLX.xml index 4a1c7b1a..87ebb634 100644 --- a/spiral/xml/page_spiral_payment_codeGLX.xml +++ b/spiral/xml/page_spiral_payment_codeGLX.xml @@ -159,8 +159,9 @@ Var Seeker.CodeChannel = 1 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Var SpiralCodeOk = 1 + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Var SpiralCodeOk = 1 Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" diff --git a/spiral/xml/page_spiral_payment_codeLH.xml b/spiral/xml/page_spiral_payment_codeLH.xml index faa3fbf4..4059a3c7 100644 --- a/spiral/xml/page_spiral_payment_codeLH.xml +++ b/spiral/xml/page_spiral_payment_codeLH.xml @@ -156,8 +156,9 @@ Var Seeker.CodeChannel = 1 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Var SpiralCodeOk = 1 + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Var SpiralCodeOk = 1 Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" diff --git a/spiral/xml/page_spiral_payment_codeLotus.xml b/spiral/xml/page_spiral_payment_codeLotus.xml index 53873c9d..8922a9ca 100644 --- a/spiral/xml/page_spiral_payment_codeLotus.xml +++ b/spiral/xml/page_spiral_payment_codeLotus.xml @@ -159,8 +159,9 @@ Var Seeker.CodeChannel = 1 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Var SpiralCodeOk = 1 + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Var SpiralCodeOk = 1 Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" diff --git a/spiral/xml/page_spiral_payment_codeOther.xml b/spiral/xml/page_spiral_payment_codeOther.xml index e05b578e..3dca9bd1 100644 --- a/spiral/xml/page_spiral_payment_codeOther.xml +++ b/spiral/xml/page_spiral_payment_codeOther.xml @@ -51,8 +51,8 @@ Var PayState2 = "Enable" Var QRChannel = 0 Var Seeker.CodeChannel = 0 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf @@ -251,8 +251,8 @@ Var PayState2 = "Enable" Var QRChannel = 0 Var Seeker.CodeChannel = 0 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf diff --git a/spiral/xml/page_spiral_payment_codeSCG.xml b/spiral/xml/page_spiral_payment_codeSCG.xml index 1d7b3e56..b1b5e2de 100644 --- a/spiral/xml/page_spiral_payment_codeSCG.xml +++ b/spiral/xml/page_spiral_payment_codeSCG.xml @@ -159,8 +159,9 @@ Var Seeker.CodeChannel = 1 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Var SpiralCodeOk = 1 + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Var SpiralCodeOk = 1 Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" diff --git a/spiral/xml/page_spiral_payment_codeThe1.xml b/spiral/xml/page_spiral_payment_codeThe1.xml index f741a5e6..28da755e 100644 --- a/spiral/xml/page_spiral_payment_codeThe1.xml +++ b/spiral/xml/page_spiral_payment_codeThe1.xml @@ -159,8 +159,9 @@ Var Seeker.CodeChannel = 1 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Var SpiralCodeOk = 1 + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Var SpiralCodeOk = 1 Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" diff --git a/spiral/xml/page_spiral_payment_codeTrue.xml b/spiral/xml/page_spiral_payment_codeTrue.xml index d04cbb9b..283c5776 100644 --- a/spiral/xml/page_spiral_payment_codeTrue.xml +++ b/spiral/xml/page_spiral_payment_codeTrue.xml @@ -159,8 +159,9 @@ Var Seeker.CodeChannel = 1 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Var SpiralCodeOk = 1 + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Var SpiralCodeOk = 1 Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" diff --git a/spiral/xml/page_spiral_payment_credit.xml b/spiral/xml/page_spiral_payment_credit.xml index 3fca4fd3..71299ccb 100644 --- a/spiral/xml/page_spiral_payment_credit.xml +++ b/spiral/xml/page_spiral_payment_credit.xml @@ -70,8 +70,8 @@ Var PayState2 = "Enable" Var QRChannel = 0 Var Seeker.CodeChannel = 0 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf @@ -612,8 +612,8 @@ Var PayState2 = "Enable" Var QRChannel = 0 Var Seeker.CodeChannel = 0 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf diff --git a/spiral/xml/page_spiral_payment_credit2.xml b/spiral/xml/page_spiral_payment_credit2.xml index bb5a2c90..69d416ce 100644 --- a/spiral/xml/page_spiral_payment_credit2.xml +++ b/spiral/xml/page_spiral_payment_credit2.xml @@ -103,8 +103,8 @@ Var PayState2 = "Enable" Var QRChannel = 0 Var Seeker.CodeChannel = 0 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf diff --git a/spiral/xml/page_spiral_payment_credit3.xml b/spiral/xml/page_spiral_payment_credit3.xml index e18ba15e..5f95bbe4 100644 --- a/spiral/xml/page_spiral_payment_credit3.xml +++ b/spiral/xml/page_spiral_payment_credit3.xml @@ -106,8 +106,8 @@ Var PayState2 = "Enable" Var QRChannel = 0 Var Seeker.CodeChannel = 0 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf @@ -178,8 +178,9 @@ Var Seeker.StoreCreditFlag = 1 - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Var SpiralKeepCredit = 1 + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Var SpiralKeepCredit = 1 Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" @@ -252,8 +253,8 @@ Var QRChannel = 0 Var Seeker.CodeChannel = 0 SAVELOG "payment_credit3-p121." - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf diff --git a/spiral/xml/page_spiral_payment_storeCredit.xml b/spiral/xml/page_spiral_payment_storeCredit.xml index 6a2caa11..7e299a57 100644 --- a/spiral/xml/page_spiral_payment_storeCredit.xml +++ b/spiral/xml/page_spiral_payment_storeCredit.xml @@ -53,8 +53,8 @@ EndIf Else CoinVending BILLREJECT - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf @@ -64,8 +64,8 @@ If FlagWaitUpdateCoinAmount = 1 Then If Timeout > 2 Then - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf @@ -107,7 +107,7 @@ If ViewBill < RemainAmount Then CoinVending BILLSTACKALL - + Var SpiralKeepCredit = 1 Var FlagWaitUpdateCoinAmount = 1 Var Timeout = 0 Else @@ -627,8 +627,8 @@ EndIf Else CoinVending BILLREJECT - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf diff --git a/spiral/xml/page_spiral_payment_storeCredit2-2.xml b/spiral/xml/page_spiral_payment_storeCredit2-2.xml index 19b4ef8e..a23d5210 100644 --- a/spiral/xml/page_spiral_payment_storeCredit2-2.xml +++ b/spiral/xml/page_spiral_payment_storeCredit2-2.xml @@ -56,8 +56,8 @@ If FlagWaitUpdateCoinAmount = 1 Then If Timeout > 2 Then - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/xml/page_payment_cash.xml" EndIf diff --git a/spiral/xml/page_spiral_payment_storeCredit2.xml b/spiral/xml/page_spiral_payment_storeCredit2.xml index 036f484a..5bcab783 100644 --- a/spiral/xml/page_spiral_payment_storeCredit2.xml +++ b/spiral/xml/page_spiral_payment_storeCredit2.xml @@ -47,8 +47,8 @@ If FlagWaitUpdateCoinAmount = 1 Then If Timeout > 2 Then - If CART_COUNT >= 1 Then - Open "ROOT/taobin_project/xml/page_payment_cashMore.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cashMore.xml" Else Open "ROOT/taobin_project/spiral/xml/page_spiral_payment_cash.xml" EndIf diff --git a/spiral/xml/page_spiral_select.xml b/spiral/xml/page_spiral_select.xml index dacf39b5..4d9a7845 100644 --- a/spiral/xml/page_spiral_select.xml +++ b/spiral/xml/page_spiral_select.xml @@ -5,16 +5,36 @@ "0xeae6e1" SoundVolume + Var PayType = "" + Var PayReference = "" + Var ServiceAmountSum = 0 + + Var Seeker.thankToppingFlag = 0 Var y_topping_bg = 912 WEB "DISABLE" ; Var DrinkDescriptionTH = $01-00-00-0001.description + Var PicSpiralOption = "Invisible" + Var StrawState = "Invisible" + Var LidDeactiveButton = "Invisible" + Var SpiralIce_STAGE = $12-05-02-0017.Button + Var PriceDrinkTopping = 10 - + If SpiralOption = 1 Then + Var PicSpiralOption = "Enable" + Var StrawState = "Enable" + Var LidDeactiveButton = "Invisible" + If SpiralIce_STAGE = "Disable" Then + Var StrawState = "Disable" + Var LidDeactiveButton = "Enable" + EndIf + EndIf + + DEBUGVAR video_menu_0 - + Var DisableUsingCode = "false" Var ShowLidStraw = "Invisible" Var ShowLidOnly = "Invisible" @@ -58,6 +78,8 @@ Var SpiralSelectdetail = SpiralSelectdetail2E Var DirImage = "ROOT/taobin_project/image/topping_en" + Var DirImage2 = "ROOT/taobin_project/spiral/image/page_spiral" + Var DirImage3 = "ROOT/taobin_project/spiral/image/page_spiral/en_" Var show_btp = "ROOT/taobin_project/image/bn_thai_lang_press.png" Var show_btn = "ROOT/taobin_project/image/bn_thai_lang.png" Var showname = NameDrink @@ -74,6 +96,8 @@ Var SpiralSelectdetail = SpiralSelectdetail2 Var DirImage = "ROOT/taobin_project/image/topping" + Var DirImage2 = "ROOT/taobin_project/spiral/image/page_spiral" + Var DirImage3 = "ROOT/taobin_project/spiral/image/page_spiral/" Var show_btp = "ROOT/taobin_project/image/bn_eng_lang_press.png" Var show_btn = "ROOT/taobin_project/image/bn_eng_lang.png" Var showname = NameDrinkTH @@ -98,7 +122,9 @@ ;- Begin Var PriceDrinkNoTop = PriceDrink Var PriceDrinkTmp = PriceDrink + Var PriceDrinkTmp2 = PriceDrink Var PriceDrinkTmpShow = charOfBaht + PriceDrinkTmp + Var PriceDrinkTmpShow2 = charOfBaht + PriceDrinkTmp Var Timeout = 0 SAVELOG PriceDrinkTmp @@ -252,7 +278,7 @@ 80 KanitMediumTTF ColorOrange - PriceDrinkTmpShow + PriceDrinkTmpShow2 @@ -265,8 +291,7 @@ "/mnt/sdcard/coffeevending/wav/click.wav" SoundVolume - Open "ROOT/taobin_project/xml/page_catalog.xml" - + Open "ROOT/taobin_project/xml/page_catalog.xml" @@ -340,6 +365,71 @@ ; ; + +; SpiralOption + + 52 + 1610 + PicSpiralOption + Var( DirImage3 + "spiral_option_ice.png" ) + + + +; topping left + + + + + + ; next @@ -508,12 +607,56 @@ Else Var show_eng = "true" EndIf - Open CurrentXMLFileName2 + + If show_eng = "true" Then + + Var SpiralSelectdetail = SpiralSelectdetail1E + Var SpiralSelectheader = SpiralSelectheader2E + Var SpiralSelectdetail = SpiralSelectdetail2E + + Var DirImage = "ROOT/taobin_project/image/topping_en" + Var DirImage2 = "ROOT/taobin_project/spiral/image/page_spiral" + Var DirImage3 = "ROOT/taobin_project/spiral/image/page_spiral/en_" + Var show_btp = "ROOT/taobin_project/image/bn_thai_lang_press.png" + Var show_btn = "ROOT/taobin_project/image/bn_thai_lang.png" + Var showname = NameDrink + Var showdesc = DrinkDescription + Var ShowHeadSpiralSelect = "ROOT/taobin_project/spiral/image/page_spiral/spiral_text_detail_en.png" + Var ShowHeadSpiralCash = "ROOT/taobin_project/spiral/image/page_spiral/spiral_text_choose_money_en.png" + + Var lid_straw_bg_iamge = DirImage + "/block_strawonly.png" + + Else + + Var SpiralSelectdetail = SpiralSelectdetail1 + Var SpiralSelectheader = SpiralSelectheader2 + Var SpiralSelectdetail = SpiralSelectdetail2 + + Var DirImage = "ROOT/taobin_project/image/topping" + Var DirImage2 = "ROOT/taobin_project/spiral/image/page_spiral" + Var DirImage3 = "ROOT/taobin_project/spiral/image/page_spiral/" + Var show_btp = "ROOT/taobin_project/image/bn_eng_lang_press.png" + Var show_btn = "ROOT/taobin_project/image/bn_eng_lang.png" + Var showname = NameDrinkTH + Var showdesc = DrinkDescriptionTH + Var ShowHeadSpiralSelect = "ROOT/taobin_project/spiral/image/page_spiral/spiral_text_detail.png" + Var ShowHeadSpiralCash = "ROOT/taobin_project/spiral/image/page_spiral/spiral_text_choose_money.png + + EndIf + + + CRLFToSpace showname + RefreshAll + - - + + LidDeactiveButton + 650 + 1677 + Var( DirImage3 + "unavalible.png" ) + Open "/media/bt/xml/security_alarm.xml" diff --git a/spiral/xml/page_spiral_select_topping.xml b/spiral/xml/page_spiral_select_topping.xml new file mode 100644 index 00000000..f54d91f4 --- /dev/null +++ b/spiral/xml/page_spiral_select_topping.xml @@ -0,0 +1,544 @@ + + "Enable" + 1080 + 1920 + "0xeae6e1" +; "ROOT/taobin_project/sounds/chaching.mp3" + SoundVolume + + Var Timeout = 0 + Var StrawState = "Enable" + Var LidState = "Enable" + Topping "Load" "12-05-02-0017" + + If show_eng = "true" Then + + Var DirImage = "ROOT/taobin_project/image/topping2_en" + Var show_btp = "ROOT/taobin_project/image/bn_thai_lang_press.png" + Var show_btn = "ROOT/taobin_project/image/bn_thai_lang.png" + + Var text_show_thai = "Invisible" + Var text_show_eng = "Enable" + + Var topping_shot_price_x = 630 + Var text_x_add_oreo_price = 510 + Var text_show_normal_x = 408 + Else + + Var DirImage = "ROOT/taobin_project/image/topping2" + Var show_btp = "ROOT/taobin_project/image/bn_eng_lang_press.png" + Var show_btn = "ROOT/taobin_project/image/bn_eng_lang.png" + + Var text_show_thai = "Enable" + Var text_show_eng = "Invisible" + + Var topping_shot_price_x = 600 + Var text_x_add_oreo_price = 490 + Var text_show_normal_x = 386 + + EndIf + + Var bg_strawlid = DirImage + "/bg_strawlid.png" + Var bg_straw_only = DirImage + "/bg_straw_only.png" + Var bg_lid_only = DirImage + "/bg_lid_only.png" + + If IgnoreLidStraw = "true" Then + Var IgnoreLidStraw = "false" + Var ShowLidStraw = "Invisible" + Var ShowLidOnly = "Invisible" + Var ShowStrawOnly = "Invisible" + + + Else + Var ShowLidStraw = "Enable" + + + If StrawState = "Press" Then + Var Seeker.thankStrawFlag = 1 + Else + Var Seeker.thankStrawFlag = 0 + EndIf + + + If LidState = "Enable" Then + If MAT_ID_9601 = "Enable" Then + Var LidState = MAT_ID_9601 + Else + Var LidState = MAT_ID_9601 + EndIf + EndIf + + EndIf + + ; Override all + If Service_LidStraw = "Disable" Then + Var ShowLidStraw = "Enable" + ;Var ShowLidOnly = "Invisible" + ;Var ShowStawOnly = "Invisible" + + + Var StrawState = "Disable" + Var LidState = "Disable" + + EndIf + + If StrawState = "Enable" Then + Var StrawDeactiveButton = "Invisible" + Else + If StrawState = "Press" Then + Var StrawDeactiveButton = "Invisible" + Else + Var StrawDeactiveButton = "Enable" + EndIf + EndIf + + + If LidState = "Enable" Then + Var LidDeactiveButton = "Invisible" + Else + If LidState = "Press" Then + Var LidDeactiveButton = "Invisible" + Else + Var LidDeactiveButton = "Enable" + EndIf + EndIf + + + DEBUGVAR StrawDeactiveButton + DEBUGVAR LidDeactiveButton + DEBUGVAR StrawState + + + 1000 + + Var Timeout = Timeout + 1 + + + If Timeout > 30 Then + Var Timeout = 0 + Open "ROOT/taobin_project/xml/page_back_to_main.xml" + EndIf + Refresh + TimerReset + + + + 0 + 380 + 1080 + 864 + 0xFFFFFF + + + + 0 + 555 + 1080 + 437 + SpiralProduct + + + + 143 + 360 + ShowHeadSpiralSelect + + + + + + 0 + 982 + 1080 + Center + 65 + KanitMediumTTF + ColorBrown2 + showname + + + + + 0 + 1058 + 1080 + Center + 40 + KanitTTF + ColorBrown + showdesc + + + + + + 85 + 1232 + 956 + 405 + Spiraldetail + + + + + +;-BEGIN Lid straw + + 47 + 1307 + 986 + 240 + 20 + bg_strawlid + + +; straw left + + + +; straw + + + +; LID left + + +; LID + + + + + + StrawDeactiveButton + 643 + 1252 + Var( DirImage + "/text20.png" ) + + + + + LidDeactiveButton + 643 + 1452 + Var( DirImage + "/text21.png" ) + + + +; back + + +; next + + + + 0 + 1127 + 1080 + Center + 80 + KanitMediumTTF + ColorOrange + PriceDrinkTmpShow2 + + + + 924 + 1804 + KanitTTF + 36 + 1080 + 0xFFFFFF + + + "OnValueChange" + + PriceDrinkTmpShow + + + + + + diff --git a/spiral/xml/page_spiral_thankyou.xml b/spiral/xml/page_spiral_thankyou.xml index 119a4e3b..85a58236 100644 --- a/spiral/xml/page_spiral_thankyou.xml +++ b/spiral/xml/page_spiral_thankyou.xml @@ -6,13 +6,16 @@ ; "ROOT/taobin_project/sounds/chaching.mp3" SoundVolume - - + Var Rraiwa = "Young" + Var SaveCoinAmount = 0 + Var SaveCoinAmount = CoinAmount + Var MachineState_Result = 0 Var SwapVDO = 0 Var TimeSwapVDO = 0 Var ShowSwapVDO = "ROOT/taobin_project/spiral/video/sp01.mp4" - - + Var CheckCoin = 0 + Var KeepServiceCredit = "" + Var KeepServiceCredit = ServiceCredit Var PayFlagCoinQR = 0 Var SetFlagCoinQR = 0 Var SetFlagCoinQRTimer = 999999 @@ -20,6 +23,7 @@ Var Timeout = 0 Var ServiceType = "locker" Var ServiceCharge = 0 + Var PayReferenceTmp = "" If TelephoneNumber = "" Then Var TelephoneNumber = "0899999999" EndIf @@ -30,7 +34,22 @@ Var VendingCampaign = IntVendingCampaign Var PayType = "" - + If Seeker.thankToppingFlag = 1 Then + Var PayType = "multi" + ;Var PayReference = "123456" + + If Seeker.PayWithQR = 1 Then + DEBUGVAR PayReference + Else + Var PayReference = "" + GenHashWithTimeStamp PayReference + EndIf + + + Var PriceDrink = PriceDrinkTmp2 + Var ServiceAmountSum = PriceDrinkTmp2 + PriceDrinkTopping + EndIf + Var PayOk = 0 Var ChangeFlag = 0 @@ -79,6 +98,16 @@ Var CreditReference = Seeker.CreditReferenceTmp Var VendingDiscount = Seeker.VendingDiscount Var VendingCampaign = Seeker.VendingCampaign + + If Seeker.thankToppingFlag = 1 Then + If SpiralCodeOk = 1 Then + If Seeker.VendingCampaign >= PayAmount Then + Var VendingCampaign = Seeker.VendingCampaign - PriceDrinkTopping + Else + Var VendingCampaign = 0 + EndIf + EndIf + EndIf ;SendSpiralResult = spiral-success , spiral-failed , spiral-valid , spiral-invalid If SellLeaw = 1 Then @@ -88,11 +117,46 @@ Var TestSellSpiral = 2 DEBUGVAR TestSellSpiral Var SellLeaw = 1 + If Seeker.thankToppingFlag = 1 Then + Topping "Select" SelectDrink + ; Pack + Topping "Pack" ExtendDataCurr + + + If StrawState = "Press" Then + Machine StrawOrder + Var LedLidBlink = "true" + EndIf + + If LidState = "Press" Then + Machine LidOrder + Var LedLidBlink = "true" + EndIf + Var SelectDrink = "12-05-02-0017" + Var SelectSugarID = 0 + MakeDrinkV1 SelectDrink SelectSugarID + EndIf EndIf 1000 DEBUGVAR LastMakeSpiralResult + DEBUGVAR LastMakeDrinkResult + DEBUGVAR MachineState_Result + DEBUGVAR MachineStage + + DEBUGVAR Seeker.thankToppingFlag + DEBUGVAR VendingCampaign + DEBUGVAR Seeker.VendingCampaign + DEBUGVAR SpiralCodeOk + DEBUGVAR SetFlagCoinQR + DEBUGVAR Rraiwa + DEBUGVAR Seeker.StoreCreditFlag + DEBUGVAR SetFlagCoinQR + DEBUGVAR CheckCoin + DEBUGVAR KeepServiceCredit + DEBUGVAR ChangeOK + Var Timeout = Timeout + 1 Var ChangeTimeout = ChangeTimeout - 1 Var CheckAckCodeTimer = CheckAckCodeTimer - 1 @@ -179,13 +243,29 @@ ;Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID2 ServiceAmount2 ServiceCharge Donate Else If Seeker.StoreCreditFlag = 1 Then - Var VendingDiscount = 0 - Var VendingCampaign = 0 - Var CreditReference = "" - Var ServiceType = "credit" - Var SessionID2 = SelectDrink - Var ServiceCredit = "locker" - Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID2 ServiceAmount2 ServiceCharge Donate + + Var CheckCoin = CoinAmount + If CheckCoin > 0 Then + Var VendingDiscount = 0 + Var VendingCampaign = 0 + Var CreditReference = "" + Var ServiceType = "credit" + Var SessionID2 = SelectDrink + Var ServiceCredit = "locker" + Var Rraiwa = "PAY" + Var PayReferenceTmp = PayReference + Var PayReference = "" + Var PayType = "" + + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID2 ServiceAmount2 ServiceCharge Donate + + + Var ServiceCredit = KeepServiceCredit + Var ServiceType = "locker" + Var PayReference = PayReferenceTmp + Var PayType = "multi" + + EndIf EndIf EndIf EndIf @@ -212,6 +292,7 @@ EndIf If SetFlagCoinQR = 2 Then + DEBUGVAR "tube2" Var SetFlagCoinQR = 3 Var TelephoneNumber = "0899999999" @@ -222,7 +303,19 @@ Var ServiceType = "credit" Var SessionID2 = SelectDrink Var ServiceCredit = "locker" + Var Rraiwa = "PAY2" + + Var PayReferenceTmp = PayReference + Var PayReference = "" + Var PayType = "" + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID2 ServiceAmount2 ServiceCharge Donate + + Var PayReference = PayReferenceTmp + Var PayType = "multi" + Var ServiceCredit = KeepServiceCredit + Var ServiceType = "locker" + EndIf If LastMakeSpiralResult = 1 Then @@ -237,10 +330,14 @@ Var SessionID3 = SessionID3 + MachineSpiralSlotID If SpiralCodeOk = 1 Then - Var SessionID3 = SessionID3 + "/" - Var SessionID3 = SessionID3 + Seeker.VendingCode - Var SessionID3 = SessionID3 + "/" - Var SessionID3 = SessionID3 + Seeker.CodeNumber + If Seeker.thankToppingFlag = 1 Then + Var VendingCampaign = 0 + Else + Var SessionID3 = SessionID3 + "/" + Var SessionID3 = SessionID3 + Seeker.VendingCode + Var SessionID3 = SessionID3 + "/" + Var SessionID3 = SessionID3 + Seeker.CodeNumber + EndIf EndIf Var PayOk = 1 @@ -258,12 +355,22 @@ Else Var ACC = Seeker.TNumberTaobinCredit EndIf - PAYEXT SVT ACC VendingTSIDTmp DEE - Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou2.xml" + + If Seeker.thankToppingFlag = 1 Then + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID3 PriceDrink ServiceCharge Donate + Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou3.xml" + Else + PAYEXT SVT ACC VendingTSIDTmp DEE + Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou2.xml" + EndIf EndIf Else Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID3 PriceDrink ServiceCharge Donate - Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou2.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou3.xml" + Else + Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou2.xml" + EndIf EndIf EndIf EndIf @@ -301,12 +408,24 @@ Else Var ACC = Seeker.TNumberTaobinCredit EndIf - PAYEXT SVT ACC VendingTSIDTmp DEE - Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou2.xml" + + If Seeker.thankToppingFlag = 1 Then + ;edit test + Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID3 PriceDrink ServiceCharge Donate + Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou3.xml" + Else + ;edit test + PAYEXT SVT ACC VendingTSIDTmp DEE + Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou2.xml" + EndIf EndIf Else Pay ServiceType TelephoneNumber ServiceCredit SuggestID SessionID3 PriceDrink ServiceCharge Donate - Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou2.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou3.xml" + Else + Open "ROOT/taobin_project/spiral/xml/page_spiral_thankyou2.xml" + EndIf EndIf EndIf @@ -361,7 +480,11 @@ EndIf If LastMakeSpiralResult = 2 Then - Open "ROOT/taobin_project/spiral/xml/page_spiral_fail.xml" + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_failmuti.xml" + Else + Open "ROOT/taobin_project/spiral/xml/page_spiral_fail.xml" + EndIf EndIf ;If LastMakeSpiralResult = 2 Then @@ -425,7 +548,12 @@ If Timeout > 180 Then Var LastMakeSpiralResult = 2 SAVELOG "Spiral Timeout 180 sec" - Open "ROOT/taobin_project/spiral/xml/page_spiral_fail.xml" + + If Seeker.thankToppingFlag = 1 Then + Open "ROOT/taobin_project/spiral/xml/page_spiral_failmuti.xml" + Else + Open "ROOT/taobin_project/spiral/xml/page_spiral_fail.xml" + EndIf EndIf @@ -500,12 +628,9 @@ "Reload" "true" ShowSwapVDO -;Filename> "ROOT/taobin_project/spiral/video/sp01.mp4" +; "ROOT/taobin_project/spiral/video/sp01.mp4" - - - If SpiralCodeOk = 1 Then @@ -555,14 +680,6 @@ -; -; 89 -; 700 -; 902 -; 902 -; "ROOT/taobin_project/spiral/image/page_spiral/thankyou.png" -; -