dealpos 25.48.1 → 25.48.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/browser/{chunk-DZ6FWYAF.js → chunk-2RYEXHZV.js} +1 -1
  2. package/browser/{chunk-YLLLGS4S.js → chunk-356KM5DR.js} +1 -1
  3. package/browser/{chunk-4RYYICV5.js → chunk-36NP63VM.js} +2 -2
  4. package/browser/{chunk-HS44M5L3.js → chunk-3DAJFE6H.js} +1 -1
  5. package/browser/{chunk-UILJOKEL.js → chunk-3ESMPFFS.js} +1 -1
  6. package/browser/{chunk-P6LF5RPW.js → chunk-3G264AW4.js} +1 -1
  7. package/browser/{chunk-HUYWGTVQ.js → chunk-3VQBBLWE.js} +1 -1
  8. package/browser/{chunk-SVECNUUA.js → chunk-3YHMSAWW.js} +1 -1
  9. package/browser/{chunk-YU4JSVLL.js → chunk-4ISL77CE.js} +1 -1
  10. package/browser/{chunk-NDSWUR7R.js → chunk-4NNOZ2BP.js} +1 -1
  11. package/browser/{chunk-2YJP5PQJ.js → chunk-4VSJH5SL.js} +1 -1
  12. package/browser/{chunk-GHBBRGW2.js → chunk-5K7KFVM3.js} +1 -1
  13. package/browser/{chunk-4KLLS7S5.js → chunk-6EJSHQWL.js} +1 -1
  14. package/browser/{chunk-22Q4GFCS.js → chunk-6ONTAEOO.js} +1 -1
  15. package/browser/{chunk-3N7EBSCG.js → chunk-6PR53KNR.js} +1 -1
  16. package/browser/{chunk-N7SUEV3C.js → chunk-6YHYVBRQ.js} +1 -1
  17. package/browser/{chunk-BWEEC6HM.js → chunk-7HRIPBOK.js} +1 -1
  18. package/browser/{chunk-DEOVGQZC.js → chunk-7MD5PKPB.js} +2 -2
  19. package/browser/{chunk-RDAIK2LU.js → chunk-7NEKXENA.js} +1 -1
  20. package/browser/{chunk-T2IWW7SS.js → chunk-7V3SLYOQ.js} +1 -1
  21. package/browser/{chunk-KR2YGW5S.js → chunk-7ZUYXNKP.js} +2 -2
  22. package/browser/{chunk-GTJDUG56.js → chunk-ANPUR4EP.js} +1 -1
  23. package/browser/{chunk-NETNL55X.js → chunk-BJF3WGIP.js} +1 -1
  24. package/browser/{chunk-M3CGB5RK.js → chunk-BOLUBS5R.js} +2 -2
  25. package/browser/{chunk-MP4RQSWT.js → chunk-BYFPLENU.js} +2 -2
  26. package/browser/{chunk-CDFNRJAQ.js → chunk-CFU6YCXT.js} +1 -1
  27. package/browser/{chunk-QA67WF7E.js → chunk-CLX7PIH6.js} +1 -1
  28. package/browser/{chunk-6QBYWFJ4.js → chunk-DHY5NYN2.js} +1 -1
  29. package/browser/{chunk-7DCWSNUN.js → chunk-DV63TLIP.js} +1 -1
  30. package/browser/{chunk-62V34GYI.js → chunk-DWNXML7N.js} +1 -1
  31. package/browser/{chunk-IMSDBLRH.js → chunk-E55DAXRW.js} +1 -1
  32. package/browser/{chunk-GEMHTJVB.js → chunk-E5IXDLDT.js} +1 -1
  33. package/browser/{chunk-UAIR26OK.js → chunk-E7AQSX2U.js} +1 -1
  34. package/browser/{chunk-REBD6XHD.js → chunk-EIHC54J5.js} +1 -1
  35. package/browser/{chunk-KQYNW4DG.js → chunk-F7KTXCW4.js} +2 -2
  36. package/browser/{chunk-HVFAKTAO.js → chunk-FO5ZTXDH.js} +1 -1
  37. package/browser/{chunk-GZ7UUU3F.js → chunk-G4G5P6ZQ.js} +1 -1
  38. package/browser/{chunk-CZYGX5TM.js → chunk-GCP2MGQL.js} +1 -1
  39. package/browser/{chunk-T2ECIFZW.js → chunk-HCCADOVL.js} +1 -1
  40. package/browser/{chunk-HNK3XQEI.js → chunk-I7FZGSZZ.js} +1 -1
  41. package/browser/{chunk-3VKLSTEH.js → chunk-IVJVUXLS.js} +1 -1
  42. package/browser/{chunk-M4HEF65P.js → chunk-IVVSNJJ3.js} +1 -1
  43. package/browser/{chunk-L5KVMIM3.js → chunk-J76F72FK.js} +1 -1
  44. package/browser/{chunk-O5CTER4C.js → chunk-K6CUAFH7.js} +2 -2
  45. package/browser/{chunk-W4ZCLNTU.js → chunk-KD24MXAU.js} +1 -1
  46. package/browser/{chunk-3ALHEPKV.js → chunk-KPHOGUDM.js} +1 -1
  47. package/browser/{chunk-5U73W2IZ.js → chunk-KRPYY55C.js} +1 -1
  48. package/browser/{chunk-ETLWM6MW.js → chunk-KZBNUY2K.js} +1 -1
  49. package/browser/{chunk-A4TTSCQT.js → chunk-LELZTT7A.js} +1 -1
  50. package/browser/{chunk-X2JCAGKP.js → chunk-LLHBXZ6B.js} +1 -1
  51. package/browser/{chunk-EHJXCRPX.js → chunk-MFLQHYOR.js} +1 -1
  52. package/browser/{chunk-FY3CQQFL.js → chunk-N3L2CE6S.js} +1 -1
  53. package/browser/{chunk-IMM4P55U.js → chunk-NJD4GKTM.js} +1 -1
  54. package/browser/{chunk-4OD3JW2M.js → chunk-NZ4SK6LY.js} +1 -1
  55. package/browser/{chunk-33ZBZA3U.js → chunk-OTUYSGSK.js} +1 -1
  56. package/browser/{chunk-LVC4ZU2C.js → chunk-OWGJVIYJ.js} +1 -1
  57. package/browser/{chunk-S3K63CGI.js → chunk-P7BRWWWC.js} +1 -1
  58. package/browser/{chunk-QFWPOP7L.js → chunk-R36QPCUA.js} +1 -1
  59. package/browser/{chunk-ZQGXWDT6.js → chunk-RJMVCGIG.js} +1 -1
  60. package/browser/{chunk-7T6YO3VY.js → chunk-S7X7547X.js} +1 -1
  61. package/browser/{chunk-FYMATMVS.js → chunk-SLDKONZE.js} +1 -1
  62. package/browser/{chunk-THUJIHI7.js → chunk-TARA6KGA.js} +1 -1
  63. package/browser/{chunk-6F4WKG7M.js → chunk-TON7E347.js} +1 -1
  64. package/browser/{chunk-CSURZQS6.js → chunk-TT2F5I7H.js} +1 -1
  65. package/browser/{chunk-37E4SNZ3.js → chunk-U4N5AZIO.js} +1 -1
  66. package/browser/{chunk-E7ISSVA3.js → chunk-U5LNORQV.js} +1 -1
  67. package/browser/{chunk-3DZLNGPO.js → chunk-UAQU4IQS.js} +1 -1
  68. package/browser/{chunk-BXOQMC5N.js → chunk-UCOXEQFM.js} +1 -1
  69. package/browser/{chunk-HIQKF5X3.js → chunk-UQ5F3YKZ.js} +1 -1
  70. package/browser/{chunk-P32JEM3L.js → chunk-USMW7JHL.js} +1 -1
  71. package/browser/{chunk-EX6JLLRB.js → chunk-UZKEO2IO.js} +1 -1
  72. package/browser/{chunk-A5WQMHVO.js → chunk-VNBCF2XF.js} +1 -1
  73. package/browser/{chunk-UHVNH2XA.js → chunk-VVYOMXKJ.js} +1 -1
  74. package/browser/{chunk-PD5SVXID.js → chunk-WBFJWUUR.js} +1 -1
  75. package/browser/{chunk-D2JKYGM3.js → chunk-WKXWWL55.js} +1 -1
  76. package/browser/{chunk-W7CJ25G5.js → chunk-WQMNK3UX.js} +1 -1
  77. package/browser/{chunk-N5SEZOII.js → chunk-WXH4A4T7.js} +1 -1
  78. package/browser/{chunk-NHWTJY64.js → chunk-X3UFVTIQ.js} +1 -1
  79. package/browser/{chunk-VAVKHKIO.js → chunk-XSHCTIUH.js} +1 -1
  80. package/browser/{chunk-327LILIU.js → chunk-YBIA6E5J.js} +1 -1
  81. package/browser/{chunk-4F6J35GL.js → chunk-YBVDBTTE.js} +1 -1
  82. package/browser/{chunk-CUU2G2CM.js → chunk-YQOU4WGG.js} +1 -1
  83. package/browser/{chunk-OU7YY2CV.js → chunk-YV4LSCS5.js} +1 -1
  84. package/browser/index.html +2 -2
  85. package/browser/{main-NN7FZ4DK.js → main-BTMX7TBF.js} +2 -2
  86. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import{b as Et}from"./chunk-QIJEAKQK.js";import{e as Rt}from"./chunk-4HCSE44G.js";import{a as Ke,b as Qe,c as Ge,d as $e,e as je}from"./chunk-KHR4NBM3.js";import{a as kt,b as Dt,c as Mt}from"./chunk-HUYWGTVQ.js";import{a as St,b as It}from"./chunk-Q2A4MYK3.js";import{e as xt}from"./chunk-S3K63CGI.js";import{e as Tt,f as We}from"./chunk-X57HWGVJ.js";import{b as qe}from"./chunk-5SFUSWFY.js";import{a as Ct}from"./chunk-TGEQUV6Z.js";import{d as wt}from"./chunk-3VKLSTEH.js";import{a as Z,b as _,c as vt}from"./chunk-CS6HBROS.js";import{a as _t,e as yt}from"./chunk-6SGN7MNX.js";import{b as ae,c as re,d as ge,e as m,j as Ce,k as D,l as se}from"./chunk-L76WVZW6.js";import{W as Fe,X as Ie,ia as mt,ja as Ne,ka as ft,la as gt,oa as oe,pa as Q,xa as le}from"./chunk-O5SLP4JK.js";import{F as Me,a as ve,g as ut,h as ht,o as bt}from"./chunk-RNLSEEMX.js";import{$b as Ee,Ab as it,Ac as lt,Bb as nt,Cb as r,Db as R,Eb as E,Fb as z,Gb as A,Hb as N,Hc as Se,Ia as S,Ib as O,Jb as M,Kb as F,Kc as rt,Lb as y,Mb as te,Nb as W,Ob as K,Pc as X,Qb as c,Tb as f,Ub as G,Vb as h,Vc as st,Wb as b,Xa as s,Xc as g,Ya as v,Yc as V,Za as Ve,_b as Pe,ac as at,bc as Te,cc as T,cd as dt,d as ye,db as pe,dc as He,ec as ot,ed as ct,fd as De,hb as k,ib as ue,id as pt,jb as Re,jd as ie,ka as we,la as $,lb as I,ma as ce,mb as ee,na as Y,nb as p,pa as x,rd as ne,sc as U,sd as fe,ta as j,tb as B,ua as q,uc as J,va as L,vb as he,vc as me,xa as tt,xb as be,xc as Ae,yc as ke,zc as xe}from"./chunk-JYZTRN6N.js";import{a as Oe,b as et}from"./chunk-SNAKHGZS.js";var Ft=`
1
+ import{b as Et}from"./chunk-QIJEAKQK.js";import{e as Rt}from"./chunk-4HCSE44G.js";import{a as Ke,b as Qe,c as Ge,d as $e,e as je}from"./chunk-KHR4NBM3.js";import{a as kt,b as Dt,c as Mt}from"./chunk-3VQBBLWE.js";import{a as St,b as It}from"./chunk-Q2A4MYK3.js";import{e as xt}from"./chunk-P7BRWWWC.js";import{e as Tt,f as We}from"./chunk-X57HWGVJ.js";import{b as qe}from"./chunk-5SFUSWFY.js";import{a as Ct}from"./chunk-TGEQUV6Z.js";import{d as wt}from"./chunk-IVJVUXLS.js";import{a as Z,b as _,c as vt}from"./chunk-CS6HBROS.js";import{a as _t,e as yt}from"./chunk-6SGN7MNX.js";import{b as ae,c as re,d as ge,e as m,j as Ce,k as D,l as se}from"./chunk-L76WVZW6.js";import{W as Fe,X as Ie,ia as mt,ja as Ne,ka as ft,la as gt,oa as oe,pa as Q,xa as le}from"./chunk-O5SLP4JK.js";import{F as Me,a as ve,g as ut,h as ht,o as bt}from"./chunk-RNLSEEMX.js";import{$b as Ee,Ab as it,Ac as lt,Bb as nt,Cb as r,Db as R,Eb as E,Fb as z,Gb as A,Hb as N,Hc as Se,Ia as S,Ib as O,Jb as M,Kb as F,Kc as rt,Lb as y,Mb as te,Nb as W,Ob as K,Pc as X,Qb as c,Tb as f,Ub as G,Vb as h,Vc as st,Wb as b,Xa as s,Xc as g,Ya as v,Yc as V,Za as Ve,_b as Pe,ac as at,bc as Te,cc as T,cd as dt,d as ye,db as pe,dc as He,ec as ot,ed as ct,fd as De,hb as k,ib as ue,id as pt,jb as Re,jd as ie,ka as we,la as $,lb as I,ma as ce,mb as ee,na as Y,nb as p,pa as x,rd as ne,sc as U,sd as fe,ta as j,tb as B,ua as q,uc as J,va as L,vb as he,vc as me,xa as tt,xb as be,xc as Ae,yc as ke,zc as xe}from"./chunk-JYZTRN6N.js";import{a as Oe,b as et}from"./chunk-SNAKHGZS.js";var Ft=`
2
2
  .p-datatable {
3
3
  position: relative;
4
4
  display: block;
@@ -1,4 +1,4 @@
1
- import{a as Dt}from"./chunk-QFON23YX.js";import{b as kt}from"./chunk-FIUZN6JU.js";import{b as At,d as Pt,e as Nt}from"./chunk-S3K63CGI.js";import{a as Mt,b as Ft,c as Et,d as Lt,e as Bt}from"./chunk-X57HWGVJ.js";import{a as wt}from"./chunk-5SFUSWFY.js";import{a as Vt}from"./chunk-534MIVWD.js";import{b as Ot,c as Le}from"./chunk-3VKLSTEH.js";import{b as Tt}from"./chunk-CS6HBROS.js";import{a as tt}from"./chunk-RLQLFW36.js";import{a as vt,c as Ct,d as It}from"./chunk-6SGN7MNX.js";import{b as ct,c as ft,d as gt,e as bt,g as yt,j as xt,k as se,l as St}from"./chunk-L76WVZW6.js";import{A as lt,F as ot,T as at,V as z,W as Q,X as le,_ as oe,da as rt,fa as st,ka as pt,la as dt,ma as ut,na as mt,oa as _t,pa as ae,qa as re,w as ve,x as H,xa as ht,z as nt}from"./chunk-O5SLP4JK.js";import{F as ne,a as ye,h as te,o as ie}from"./chunk-RNLSEEMX.js";import{$ as Ne,$b as Ve,Bc as ge,Ca as B,Cb as r,Cc as be,Db as _,Eb as h,Fb as R,Hc as L,Ia as Te,Jb as C,Kb as I,Kc as G,Lb as M,Lc as We,Mb as T,Ob as x,Oc as Ye,Pc as V,Qb as s,Rb as je,Sb as Me,Tb as S,Ub as k,Vb as f,Wb as g,Xa as c,Xc as v,Y as Pe,Ya as w,Yc as X,Za as $e,_b as Y,aa as Re,bc as he,ca as He,cc as y,cd as Ze,d as Ie,db as _e,dc as E,ec as A,ed as Je,ee as it,fa as de,fc as fe,fd as Fe,ga as ze,hb as W,ib as qe,ic as K,id as Xe,jc as $,jd as Ee,ka as ue,kc as q,kd as et,la as me,lb as we,ma as Qe,mb as Ge,na as Oe,nb as p,o as Ae,oa as Ke,pa as F,rd as ee,sc as Z,t as pe,ta as u,tb as O,tc as ke,ua as m,uc as D,va as U,vb as P,vc as J,wc as Ue,xb as N}from"./chunk-JYZTRN6N.js";import{a as Be,b as De}from"./chunk-SNAKHGZS.js";var Rt=`
1
+ import{a as Dt}from"./chunk-QFON23YX.js";import{b as kt}from"./chunk-FIUZN6JU.js";import{b as At,d as Pt,e as Nt}from"./chunk-P7BRWWWC.js";import{a as Mt,b as Ft,c as Et,d as Lt,e as Bt}from"./chunk-X57HWGVJ.js";import{a as wt}from"./chunk-5SFUSWFY.js";import{a as Vt}from"./chunk-534MIVWD.js";import{b as Ot,c as Le}from"./chunk-IVJVUXLS.js";import{b as Tt}from"./chunk-CS6HBROS.js";import{a as tt}from"./chunk-RLQLFW36.js";import{a as vt,c as Ct,d as It}from"./chunk-6SGN7MNX.js";import{b as ct,c as ft,d as gt,e as bt,g as yt,j as xt,k as se,l as St}from"./chunk-L76WVZW6.js";import{A as lt,F as ot,T as at,V as z,W as Q,X as le,_ as oe,da as rt,fa as st,ka as pt,la as dt,ma as ut,na as mt,oa as _t,pa as ae,qa as re,w as ve,x as H,xa as ht,z as nt}from"./chunk-O5SLP4JK.js";import{F as ne,a as ye,h as te,o as ie}from"./chunk-RNLSEEMX.js";import{$ as Ne,$b as Ve,Bc as ge,Ca as B,Cb as r,Cc as be,Db as _,Eb as h,Fb as R,Hc as L,Ia as Te,Jb as C,Kb as I,Kc as G,Lb as M,Lc as We,Mb as T,Ob as x,Oc as Ye,Pc as V,Qb as s,Rb as je,Sb as Me,Tb as S,Ub as k,Vb as f,Wb as g,Xa as c,Xc as v,Y as Pe,Ya as w,Yc as X,Za as $e,_b as Y,aa as Re,bc as he,ca as He,cc as y,cd as Ze,d as Ie,db as _e,dc as E,ec as A,ed as Je,ee as it,fa as de,fc as fe,fd as Fe,ga as ze,hb as W,ib as qe,ic as K,id as Xe,jc as $,jd as Ee,ka as ue,kc as q,kd as et,la as me,lb as we,ma as Qe,mb as Ge,na as Oe,nb as p,o as Ae,oa as Ke,pa as F,rd as ee,sc as Z,t as pe,ta as u,tb as O,tc as ke,ua as m,uc as D,va as U,vb as P,vc as J,wc as Ue,xb as N}from"./chunk-JYZTRN6N.js";import{a as Be,b as De}from"./chunk-SNAKHGZS.js";var Rt=`
2
2
  .p-multiselect {
3
3
  display: inline-flex;
4
4
  cursor: pointer;
@@ -1 +1 @@
1
- import{a as de}from"./chunk-QFWPOP7L.js";import{e as le,f as se}from"./chunk-YLLLGS4S.js";import"./chunk-3VKLSTEH.js";import{b as re}from"./chunk-HIQKF5X3.js";import"./chunk-CS6HBROS.js";import"./chunk-JUS6LLVX.js";import{u as oe,v as ae,w as ne}from"./chunk-BA3BDB5Y.js";import"./chunk-C4WJKF7R.js";import"./chunk-T25N3EEG.js";import{e as ee,f as te,g as ie}from"./chunk-A45GTZVV.js";import"./chunk-NWSIPELM.js";import"./chunk-L76WVZW6.js";import{a as $}from"./chunk-2FWFPV5I.js";import"./chunk-O5SLP4JK.js";import{A as J,E as Q,F as X,c as q,h as G,o as z}from"./chunk-RNLSEEMX.js";import"./chunk-E7ISSVA3.js";import"./chunk-HVFAKTAO.js";import{a as H}from"./chunk-USJ6ILEE.js";import"./chunk-NETNL55X.js";import{Ab as Y,Bb as L,Bc as k,Ca as E,Cb as _,Cc as F,Db as o,E as P,Eb as a,Fb as g,Mb as w,Ob as f,Qb as p,Wd as K,Xa as d,_b as h,be as W,cd as B,db as C,dc as r,ec as N,ee as Z,fc as I,hb as b,ic as O,jc as R,kc as x,lb as V,od as U,rd as j,ta as m,ua as c,uc as y,vb as T,xb as S,zb as A}from"./chunk-JYZTRN6N.js";import"./chunk-WFMAM73Y.js";import"./chunk-SNAKHGZS.js";var D=(s=>(s.TRANSACTIONS="TRANSACTIONS",s.PRODUCTS="PRODUCTS",s.CONTACTS="CONTACTS",s.LOYALTY_POINTS="LOYALTY_POINTS",s.RECYCLE_BIN="RECYCLE_BIN",s.INVENTORY="INVENTORY",s))(D||{});function Ce(n,l){if(n&1&&(o(0,"div",3)(1,"div",4)(2,"div",16),g(3,"i",17),o(4,"span"),r(5),a()()()()),n&2){let i=p();d(5),I(" ",i.selectedClearData.message," ")}}function fe(n,l){n&1&&(o(0,"small",8),r(1," *Subdomain is required "),a())}function _e(n,l){n&1&&(o(0,"small",8),r(1," *Password is required "),a())}function Te(n,l){n&1&&g(0,"i",14)}function Se(n,l){n&1&&g(0,"i",15)}var v=class n{constructor(l,i,t){this.data=l;this.dialogRef=i;this.fb=t;this.modalConfig.title=this.modalTitle[this.data.type],this.subdomain="",this.subdomainPlaceholder=l.subDomain}clearData=[{type:"TRANSACTIONS",api:"Setup/Data/ClearTransaction",message:"Your Invoice, Bill, Adjustment, TransferOrder will be deleted"},{type:"PRODUCTS",api:"Setup/Data/ClearProduct",message:"Your Category, Product and Variant will be deleted"},{type:"LOYALTY_POINTS",api:"Setup/Data/ClearLoyaltyPoint"},{type:"RECYCLE_BIN",api:"Setup/Data/ClearRecycleBin"},{type:"INVENTORY",api:"Setup/Data/ClearInventory",message:"Your Product Inventory will be set to 0"},{type:"CONTACTS",api:"Setup/Data/ClearContact",message:"Your Customer, Supplier and Sales Person will be deleted"}];selectedClearData;modalConfig=new oe;modalTitle={TRANSACTIONS:"Clear Transactions",PRODUCTS:"Clear Products",LOYALTY_POINTS:"Clear Loyalty Points",RECYCLE_BIN:"Clear Recycle Bin",CONTACTS:"Clear Contacts",INVENTORY:"Clear Inventory"};subdomain;subdomainPlaceholder;password;form;passwordVisibility=E(!1);ngOnInit(){this.initSelectedClearData(),this.form=this.fb.group({subdomain:[""],password:[""]})}initSelectedClearData(){this.selectedClearData=this.clearData.find(l=>l.type===this.data.type)}onSubmit(){let l={password:this.password,subdomain:this.subdomain,apiUrl:this.selectedClearData.api};this.dialogRef.close(l)}static \u0275fac=function(i){return new(i||n)(C(te),C(ee),C(Q))};static \u0275cmp=b({type:n,selectors:[["app-confirmation-modal"]],decls:24,vars:10,consts:[["subdomainCtrl","ngModel"],["passwordCtrl","ngModel"],[3,"onOk","onClose","onCancel","config","dynamicValidated"],[1,"row"],[1,"col-12"],[1,"form-floating-outline","mt-5"],["type","text","id","subdomain","placeholder","Subdomain","name","subdomain","autofocus","","required","",1,"form-control",3,"ngModelChange","ngModel"],["for","subdomain"],[1,"control-label","text-danger"],[1,"form-floating-outline"],["id","pass","placeholder","Password","name","password","required","",1,"form-control",3,"ngModelChange","type","ngModel"],["for","pass"],[1,"password-visibility"],["type","button",1,"btn","btn-link",3,"click"],[1,"fa-solid","fa-eye"],[1,"fa-solid","fa-eye-slash"],[1,"alert","alert-warning","cursor","w-100"],[1,"fa-solid","fa-circle-exclamation","me-2"]],template:function(i,t){if(i&1){let e=w();o(0,"modal-material",2),f("onOk",function(){return m(e),c(t.onSubmit())})("onClose",function(){return m(e),c(t.dialogRef.close())})("onCancel",function(){return m(e),c(t.dialogRef.close())}),o(1,"content"),T(2,Ce,6,1,"div",3),o(3,"div",3)(4,"div",4)(5,"strong"),r(6),a(),o(7,"div",5)(8,"input",6,0),x("ngModelChange",function(s){return m(e),R(t.subdomain,s)||(t.subdomain=s),c(s)}),a(),o(10,"label",7),r(11,"Subdomain"),a(),T(12,fe,2,0,"small",8),a()(),o(13,"div",4)(14,"div",9)(15,"input",10,1),x("ngModelChange",function(s){return m(e),R(t.password,s)||(t.password=s),c(s)}),a(),o(17,"label",11),r(18,"Password"),a(),T(19,_e,2,0,"small",8),o(20,"div",12)(21,"button",13),f("click",function(){return m(e),c(t.passwordVisibility.set(!t.passwordVisibility()))}),T(22,Te,1,0,"i",14)(23,Se,1,0,"i",15),a()()()()()()()}if(i&2){let e=h(9),u=h(16);_("config",t.modalConfig)("dynamicValidated",t.password&&t.subdomain),d(2),S(t.selectedClearData.message?2:-1),d(4),I("Enter the following subdomain to confirm: ",t.subdomainPlaceholder),d(2),O("ngModel",t.subdomain),d(4),S(e.invalid&&(e.dirty||e.touched)?12:-1),d(3),_("type",t.passwordVisibility()?"text":"password"),O("ngModel",t.password),d(4),S(u.invalid&&(u.dirty||u.touched)?19:-1),d(3),S(t.passwordVisibility()?22:23)}},dependencies:[ne,ae,X,q,G,J,z],styles:[".password-visibility[_ngcontent-%COMP%]{position:absolute;right:0;top:50%;transform:translateY(-50%);cursor:pointer;font-size:1.5rem}"]})};var M=n=>({"border border-0":n});function be(n,l){if(n&1&&(o(0,"tr",21)(1,"td",21),r(2),a(),o(3,"td",22),r(4),k(5,"number"),a()()),n&2){let i=l.$implicit,t=l.$index,e=p(2);_("ngClass",y(7,M,t==e.data.Data.length-1)),d(),_("ngClass",y(9,M,t==e.data.Data.length-1)),d(),N(i.Key),d(),_("ngClass",y(11,M,t==e.data.Data.length-1)),d(),N(F(5,5,i.Value))}}function ge(n,l){if(n&1){let i=w();o(0,"mainpanel-cmp",0)(1,"actions")(2,"div",1)(3,"div",2)(4,"button",3),r(5," Format Data "),a(),o(6,"ul",4)(7,"li")(8,"a",5),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.TRANSACTIONS))}),r(9," 1. Clear Transactions "),a()(),o(10,"li")(11,"a",6),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.INVENTORY))}),r(12," 2. Clear Inventory "),a()(),o(13,"li")(14,"a",7),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.PRODUCTS))}),r(15," 3. Clear Products "),a()(),o(16,"li")(17,"a",8),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.CONTACTS))}),r(18," 4. Clear Contacts "),a()(),o(19,"li")(20,"a",9),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.LOYALTY_POINTS))}),r(21," 5. Clear Loyalty Point "),a()(),o(22,"li")(23,"a",10),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.RECYCLE_BIN))}),r(24," 6. Clear Recycle Bin "),a()()()()()(),o(25,"content")(26,"div",11)(27,"div",12)(28,"div",13)(29,"h5"),r(30,"Database Records"),a(),o(31,"i"),r(32,"Current data count"),a()(),o(33,"div",14)(34,"div",15)(35,"div",16)(36,"table",17)(37,"thead",18)(38,"tr",19)(39,"th"),r(40,"Table"),a(),o(41,"th",20),r(42,"Rows"),a()()(),o(43,"tbody"),Y(44,be,6,13,"tr",21,A),a()()()()()()()()()}if(n&2){let i=p();_("pageData",i.menuData)("hideSearchDropdown",!0)("hideSearchBox",!0),d(44),L(i.data.Data)}}var me=class n extends de{constructor(i,t,e,u,s){super(i,t,"Setup/DataLoader/clearformatdata",e);this.httpService=t;this.activatedRoute=e;this.toaster=u;this.dialog=s}clearDataType=D;onClearRecord(i){this.dialog.open(v,{data:{type:i,subDomain:this.data.SubDomain}}).afterClosed().pipe(P(t=>H.IsNotEmpty(t))).subscribe(t=>{this.formData={Subdomain:t.subdomain,Password:t.password},this.onSubmit(t.apiUrl),i=="PRODUCTS"?this.data.Data.find(e=>e.Key=="Product").Value=0:i=="CONTACTS"?this.data.Data.find(e=>e.Key=="Customer").Value=0:i=="INVENTORY"?this.data.Data.find(e=>e.Key=="ItemTransfer").Value=0:i=="LOYALTY_POINTS"?this.data.Data.find(e=>e.Key=="JournalHeader").Value=0:i=="RECYCLE_BIN"?this.data.Data.find(e=>e.Key=="Recycle Bin").Value=0:i=="TRANSACTIONS"&&(this.data.Data.find(e=>e.Key=="SalesOrder").Value=0)})}onSubmitSuccess(i){this.toaster.success(i.Message,$.Success)}static \u0275fac=function(t){return new(t||n)(C(re),C(Z),C(K),C(W),C(ie))};static \u0275cmp=b({type:n,selectors:[["POS-format-data"]],features:[V],decls:1,vars:1,consts:[[3,"pageData","hideSearchDropdown","hideSearchBox"],[1,"d-flex"],[1,"dropdown"],["type","button","data-bs-toggle","dropdown","aria-expanded","false","confirm-message","Are you sure you want to clear the record?",1,"btn","btn-outline-secondary","dropdown-toggle"],[1,"dropdown-menu","dropdown-menu-end"],["role","button","matTooltipPosition","above","matTooltip","Clear Transaction",1,"dropdown-item",3,"click"],["role","button","matTooltipPosition","above","matTooltip","Clear Inventory",1,"dropdown-item",3,"click"],["role","button","matTooltipPosition","above","matTooltip","Clear Products",1,"dropdown-item",3,"click"],["role","button","matTooltipPosition","above","matTooltip","Clear Contacts",1,"dropdown-item",3,"click"],["role","button","matTooltipPosition","above","matTooltip","Clear Loyalty Point",1,"dropdown-item",3,"click"],["role","button","matTooltipPosition","above","matTooltip","Clear Recycle Bin",1,"dropdown-item",3,"click"],[1,"container","pt-3"],[1,"row","border-bottom","mt-10","ms-2"],[1,"col-sm-2"],[1,"col-sm-10"],[1,"row"],[1,"col-md-12"],["id","tableGrid",1,"table",2,"width","250px"],[1,"thead-light","sticky-top-thead"],[1,"header"],[1,"text-end"],[3,"ngClass"],[1,"text-end",3,"ngClass"]],template:function(t,e){t&1&&T(0,ge,46,3,"mainpanel-cmp",0),t&2&&S(e.formData?0:-1)},dependencies:[j,B,se,le,U],encapsulation:2})};export{me as FormatDataComponent};
1
+ import{a as de}from"./chunk-R36QPCUA.js";import{e as le,f as se}from"./chunk-356KM5DR.js";import"./chunk-IVJVUXLS.js";import{b as re}from"./chunk-UQ5F3YKZ.js";import"./chunk-CS6HBROS.js";import"./chunk-JUS6LLVX.js";import{u as oe,v as ae,w as ne}from"./chunk-BA3BDB5Y.js";import"./chunk-C4WJKF7R.js";import"./chunk-T25N3EEG.js";import{e as ee,f as te,g as ie}from"./chunk-A45GTZVV.js";import"./chunk-NWSIPELM.js";import"./chunk-L76WVZW6.js";import{a as $}from"./chunk-2FWFPV5I.js";import"./chunk-O5SLP4JK.js";import{A as J,E as Q,F as X,c as q,h as G,o as z}from"./chunk-RNLSEEMX.js";import"./chunk-U5LNORQV.js";import"./chunk-FO5ZTXDH.js";import{a as H}from"./chunk-USJ6ILEE.js";import"./chunk-BJF3WGIP.js";import{Ab as Y,Bb as L,Bc as k,Ca as E,Cb as _,Cc as F,Db as o,E as P,Eb as a,Fb as g,Mb as w,Ob as f,Qb as p,Wd as K,Xa as d,_b as h,be as W,cd as B,db as C,dc as r,ec as N,ee as Z,fc as I,hb as b,ic as O,jc as R,kc as x,lb as V,od as U,rd as j,ta as m,ua as c,uc as y,vb as T,xb as S,zb as A}from"./chunk-JYZTRN6N.js";import"./chunk-WFMAM73Y.js";import"./chunk-SNAKHGZS.js";var D=(s=>(s.TRANSACTIONS="TRANSACTIONS",s.PRODUCTS="PRODUCTS",s.CONTACTS="CONTACTS",s.LOYALTY_POINTS="LOYALTY_POINTS",s.RECYCLE_BIN="RECYCLE_BIN",s.INVENTORY="INVENTORY",s))(D||{});function Ce(n,l){if(n&1&&(o(0,"div",3)(1,"div",4)(2,"div",16),g(3,"i",17),o(4,"span"),r(5),a()()()()),n&2){let i=p();d(5),I(" ",i.selectedClearData.message," ")}}function fe(n,l){n&1&&(o(0,"small",8),r(1," *Subdomain is required "),a())}function _e(n,l){n&1&&(o(0,"small",8),r(1," *Password is required "),a())}function Te(n,l){n&1&&g(0,"i",14)}function Se(n,l){n&1&&g(0,"i",15)}var v=class n{constructor(l,i,t){this.data=l;this.dialogRef=i;this.fb=t;this.modalConfig.title=this.modalTitle[this.data.type],this.subdomain="",this.subdomainPlaceholder=l.subDomain}clearData=[{type:"TRANSACTIONS",api:"Setup/Data/ClearTransaction",message:"Your Invoice, Bill, Adjustment, TransferOrder will be deleted"},{type:"PRODUCTS",api:"Setup/Data/ClearProduct",message:"Your Category, Product and Variant will be deleted"},{type:"LOYALTY_POINTS",api:"Setup/Data/ClearLoyaltyPoint"},{type:"RECYCLE_BIN",api:"Setup/Data/ClearRecycleBin"},{type:"INVENTORY",api:"Setup/Data/ClearInventory",message:"Your Product Inventory will be set to 0"},{type:"CONTACTS",api:"Setup/Data/ClearContact",message:"Your Customer, Supplier and Sales Person will be deleted"}];selectedClearData;modalConfig=new oe;modalTitle={TRANSACTIONS:"Clear Transactions",PRODUCTS:"Clear Products",LOYALTY_POINTS:"Clear Loyalty Points",RECYCLE_BIN:"Clear Recycle Bin",CONTACTS:"Clear Contacts",INVENTORY:"Clear Inventory"};subdomain;subdomainPlaceholder;password;form;passwordVisibility=E(!1);ngOnInit(){this.initSelectedClearData(),this.form=this.fb.group({subdomain:[""],password:[""]})}initSelectedClearData(){this.selectedClearData=this.clearData.find(l=>l.type===this.data.type)}onSubmit(){let l={password:this.password,subdomain:this.subdomain,apiUrl:this.selectedClearData.api};this.dialogRef.close(l)}static \u0275fac=function(i){return new(i||n)(C(te),C(ee),C(Q))};static \u0275cmp=b({type:n,selectors:[["app-confirmation-modal"]],decls:24,vars:10,consts:[["subdomainCtrl","ngModel"],["passwordCtrl","ngModel"],[3,"onOk","onClose","onCancel","config","dynamicValidated"],[1,"row"],[1,"col-12"],[1,"form-floating-outline","mt-5"],["type","text","id","subdomain","placeholder","Subdomain","name","subdomain","autofocus","","required","",1,"form-control",3,"ngModelChange","ngModel"],["for","subdomain"],[1,"control-label","text-danger"],[1,"form-floating-outline"],["id","pass","placeholder","Password","name","password","required","",1,"form-control",3,"ngModelChange","type","ngModel"],["for","pass"],[1,"password-visibility"],["type","button",1,"btn","btn-link",3,"click"],[1,"fa-solid","fa-eye"],[1,"fa-solid","fa-eye-slash"],[1,"alert","alert-warning","cursor","w-100"],[1,"fa-solid","fa-circle-exclamation","me-2"]],template:function(i,t){if(i&1){let e=w();o(0,"modal-material",2),f("onOk",function(){return m(e),c(t.onSubmit())})("onClose",function(){return m(e),c(t.dialogRef.close())})("onCancel",function(){return m(e),c(t.dialogRef.close())}),o(1,"content"),T(2,Ce,6,1,"div",3),o(3,"div",3)(4,"div",4)(5,"strong"),r(6),a(),o(7,"div",5)(8,"input",6,0),x("ngModelChange",function(s){return m(e),R(t.subdomain,s)||(t.subdomain=s),c(s)}),a(),o(10,"label",7),r(11,"Subdomain"),a(),T(12,fe,2,0,"small",8),a()(),o(13,"div",4)(14,"div",9)(15,"input",10,1),x("ngModelChange",function(s){return m(e),R(t.password,s)||(t.password=s),c(s)}),a(),o(17,"label",11),r(18,"Password"),a(),T(19,_e,2,0,"small",8),o(20,"div",12)(21,"button",13),f("click",function(){return m(e),c(t.passwordVisibility.set(!t.passwordVisibility()))}),T(22,Te,1,0,"i",14)(23,Se,1,0,"i",15),a()()()()()()()}if(i&2){let e=h(9),u=h(16);_("config",t.modalConfig)("dynamicValidated",t.password&&t.subdomain),d(2),S(t.selectedClearData.message?2:-1),d(4),I("Enter the following subdomain to confirm: ",t.subdomainPlaceholder),d(2),O("ngModel",t.subdomain),d(4),S(e.invalid&&(e.dirty||e.touched)?12:-1),d(3),_("type",t.passwordVisibility()?"text":"password"),O("ngModel",t.password),d(4),S(u.invalid&&(u.dirty||u.touched)?19:-1),d(3),S(t.passwordVisibility()?22:23)}},dependencies:[ne,ae,X,q,G,J,z],styles:[".password-visibility[_ngcontent-%COMP%]{position:absolute;right:0;top:50%;transform:translateY(-50%);cursor:pointer;font-size:1.5rem}"]})};var M=n=>({"border border-0":n});function be(n,l){if(n&1&&(o(0,"tr",21)(1,"td",21),r(2),a(),o(3,"td",22),r(4),k(5,"number"),a()()),n&2){let i=l.$implicit,t=l.$index,e=p(2);_("ngClass",y(7,M,t==e.data.Data.length-1)),d(),_("ngClass",y(9,M,t==e.data.Data.length-1)),d(),N(i.Key),d(),_("ngClass",y(11,M,t==e.data.Data.length-1)),d(),N(F(5,5,i.Value))}}function ge(n,l){if(n&1){let i=w();o(0,"mainpanel-cmp",0)(1,"actions")(2,"div",1)(3,"div",2)(4,"button",3),r(5," Format Data "),a(),o(6,"ul",4)(7,"li")(8,"a",5),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.TRANSACTIONS))}),r(9," 1. Clear Transactions "),a()(),o(10,"li")(11,"a",6),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.INVENTORY))}),r(12," 2. Clear Inventory "),a()(),o(13,"li")(14,"a",7),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.PRODUCTS))}),r(15," 3. Clear Products "),a()(),o(16,"li")(17,"a",8),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.CONTACTS))}),r(18," 4. Clear Contacts "),a()(),o(19,"li")(20,"a",9),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.LOYALTY_POINTS))}),r(21," 5. Clear Loyalty Point "),a()(),o(22,"li")(23,"a",10),f("click",function(){m(i);let e=p();return c(e.onClearRecord(e.clearDataType.RECYCLE_BIN))}),r(24," 6. Clear Recycle Bin "),a()()()()()(),o(25,"content")(26,"div",11)(27,"div",12)(28,"div",13)(29,"h5"),r(30,"Database Records"),a(),o(31,"i"),r(32,"Current data count"),a()(),o(33,"div",14)(34,"div",15)(35,"div",16)(36,"table",17)(37,"thead",18)(38,"tr",19)(39,"th"),r(40,"Table"),a(),o(41,"th",20),r(42,"Rows"),a()()(),o(43,"tbody"),Y(44,be,6,13,"tr",21,A),a()()()()()()()()()}if(n&2){let i=p();_("pageData",i.menuData)("hideSearchDropdown",!0)("hideSearchBox",!0),d(44),L(i.data.Data)}}var me=class n extends de{constructor(i,t,e,u,s){super(i,t,"Setup/DataLoader/clearformatdata",e);this.httpService=t;this.activatedRoute=e;this.toaster=u;this.dialog=s}clearDataType=D;onClearRecord(i){this.dialog.open(v,{data:{type:i,subDomain:this.data.SubDomain}}).afterClosed().pipe(P(t=>H.IsNotEmpty(t))).subscribe(t=>{this.formData={Subdomain:t.subdomain,Password:t.password},this.onSubmit(t.apiUrl),i=="PRODUCTS"?this.data.Data.find(e=>e.Key=="Product").Value=0:i=="CONTACTS"?this.data.Data.find(e=>e.Key=="Customer").Value=0:i=="INVENTORY"?this.data.Data.find(e=>e.Key=="ItemTransfer").Value=0:i=="LOYALTY_POINTS"?this.data.Data.find(e=>e.Key=="JournalHeader").Value=0:i=="RECYCLE_BIN"?this.data.Data.find(e=>e.Key=="Recycle Bin").Value=0:i=="TRANSACTIONS"&&(this.data.Data.find(e=>e.Key=="SalesOrder").Value=0)})}onSubmitSuccess(i){this.toaster.success(i.Message,$.Success)}static \u0275fac=function(t){return new(t||n)(C(re),C(Z),C(K),C(W),C(ie))};static \u0275cmp=b({type:n,selectors:[["POS-format-data"]],features:[V],decls:1,vars:1,consts:[[3,"pageData","hideSearchDropdown","hideSearchBox"],[1,"d-flex"],[1,"dropdown"],["type","button","data-bs-toggle","dropdown","aria-expanded","false","confirm-message","Are you sure you want to clear the record?",1,"btn","btn-outline-secondary","dropdown-toggle"],[1,"dropdown-menu","dropdown-menu-end"],["role","button","matTooltipPosition","above","matTooltip","Clear Transaction",1,"dropdown-item",3,"click"],["role","button","matTooltipPosition","above","matTooltip","Clear Inventory",1,"dropdown-item",3,"click"],["role","button","matTooltipPosition","above","matTooltip","Clear Products",1,"dropdown-item",3,"click"],["role","button","matTooltipPosition","above","matTooltip","Clear Contacts",1,"dropdown-item",3,"click"],["role","button","matTooltipPosition","above","matTooltip","Clear Loyalty Point",1,"dropdown-item",3,"click"],["role","button","matTooltipPosition","above","matTooltip","Clear Recycle Bin",1,"dropdown-item",3,"click"],[1,"container","pt-3"],[1,"row","border-bottom","mt-10","ms-2"],[1,"col-sm-2"],[1,"col-sm-10"],[1,"row"],[1,"col-md-12"],["id","tableGrid",1,"table",2,"width","250px"],[1,"thead-light","sticky-top-thead"],[1,"header"],[1,"text-end"],[3,"ngClass"],[1,"text-end",3,"ngClass"]],template:function(t,e){t&1&&T(0,ge,46,3,"mainpanel-cmp",0),t&2&&S(e.formData?0:-1)},dependencies:[j,B,se,le,U],encapsulation:2})};export{me as FormatDataComponent};
@@ -1 +1 @@
1
- import{a as Ce}from"./chunk-PJCGIZLH.js";import{a as ge}from"./chunk-BCUIYEEN.js";import"./chunk-DLNZDHGS.js";import"./chunk-BYXBJQAS.js";import{a as te}from"./chunk-XA4TVPAS.js";import{d as ue,e as _e}from"./chunk-QPOOLLKY.js";import"./chunk-CSFFF2YO.js";import"./chunk-3RK6DDJD.js";import"./chunk-WNZKCNMC.js";import"./chunk-LOD3JYZW.js";import"./chunk-3KSZCJ6T.js";import"./chunk-6GLKD66N.js";import"./chunk-CBSYYTXQ.js";import{d as pe,e as me}from"./chunk-GN3HVOCN.js";import"./chunk-G4IW5GPY.js";import{a as se,b as ce}from"./chunk-I3ABVEQL.js";import{c as de}from"./chunk-EHJXCRPX.js";import{b as ee}from"./chunk-T2H2XAEJ.js";import{a as Z}from"./chunk-LVC4ZU2C.js";import"./chunk-7DCWSNUN.js";import"./chunk-QFON23YX.js";import"./chunk-FIUZN6JU.js";import{e as ae,f as le}from"./chunk-YLLLGS4S.js";import"./chunk-S3K63CGI.js";import"./chunk-JEL3OND6.js";import"./chunk-VX5HH3BW.js";import"./chunk-VYQEM4T2.js";import"./chunk-UTAQ3FRE.js";import"./chunk-M43HNBJQ.js";import"./chunk-KKLNFVVN.js";import"./chunk-X57HWGVJ.js";import"./chunk-5SFUSWFY.js";import"./chunk-534MIVWD.js";import"./chunk-TGEQUV6Z.js";import"./chunk-3VKLSTEH.js";import{b as ie}from"./chunk-HIQKF5X3.js";import"./chunk-CS6HBROS.js";import"./chunk-JUS6LLVX.js";import{F as oe,G as re}from"./chunk-BA3BDB5Y.js";import"./chunk-C4WJKF7R.js";import{O as ne}from"./chunk-T25N3EEG.js";import"./chunk-7TBS7SPQ.js";import"./chunk-RLQLFW36.js";import"./chunk-EQLHPWVB.js";import{g as $}from"./chunk-A45GTZVV.js";import"./chunk-NWSIPELM.js";import"./chunk-6SGN7MNX.js";import"./chunk-L76WVZW6.js";import"./chunk-2FWFPV5I.js";import"./chunk-O5SLP4JK.js";import{F as Q,c as z,h as K,o as J}from"./chunk-RNLSEEMX.js";import"./chunk-E7ISSVA3.js";import"./chunk-HVFAKTAO.js";import{d as Y}from"./chunk-USJ6ILEE.js";import"./chunk-NETNL55X.js";import{$d as G,Ab as O,Bb as L,Bc as f,Ca as H,Cb as u,Cc as I,Db as t,Dc as w,Eb as i,Fb as N,Hc as U,Mb as P,Ob as h,Qb as d,Xa as a,Zd as q,cc as k,db as M,dc as l,ec as S,ee as X,fc as D,fd as B,hb as T,ic as C,jc as x,kc as y,lb as V,md as R,nb as E,od as A,pa as F,rd as j,ta as s,tc as W,ua as c,uc as v,vb as _,xb as g,yb as b}from"./chunk-JYZTRN6N.js";import"./chunk-WFMAM73Y.js";import"./chunk-SNAKHGZS.js";var xe=o=>({ID:o}),fe=()=>["/menu/Contacts/Contact/Customers/Info"],Pe=o=>({"text-danger":o});function Se(o,m){if(o&1){let e=P();t(0,"button",15),h("click",function(){s(e);let n=d();return c(n.openExportModal())}),N(1,"i",16),l(2," Export "),i()}}function De(o,m){if(o&1){let e=P();t(0,"h6"),l(1,"User"),i(),t(2,"autocompleteV2",27),y("ngModelChange",function(n){s(e);let p=d(2);return x(p.pageData.Filter.UserID,n)||(p.pageData.Filter.UserID=n),c(n)}),i()}if(o&2){let e=d(2);a(2),C("ngModel",e.pageData.Filter.UserID)}}function he(o,m){if(o&1){let e=P();t(0,"div",17)(1,"h6"),l(2,"Outlets"),i(),t(3,"outlet-selector",18),y("ngModelChange",function(n){s(e);let p=d();return x(p.pageData.Filter.ListOutletID,n)||(p.pageData.Filter.ListOutletID=n),c(n)}),i(),t(4,"h6"),l(5,"Customer"),i(),t(6,"autocompleteV2",19),y("ngModelChange",function(n){s(e);let p=d();return x(p.pageData.Filter.CustomerID,n)||(p.pageData.Filter.CustomerID=n),c(n)}),i(),t(7,"h6"),l(8,"From - To"),i(),t(9,"div",20)(10,"div",21)(11,"datepicker",22),y("dateChange",function(n){s(e);let p=d();return x(p.pageData.Filter.From,n)||(p.pageData.Filter.From=n),c(n)}),i()(),t(12,"div",23)(13,"datepicker",24),y("dateChange",function(n){s(e);let p=d();return x(p.pageData.Filter.To,n)||(p.pageData.Filter.To=n),c(n)}),i()()(),t(14,"h6"),l(15,"Printed"),i(),t(16,"radio-options",25),y("modelChange",function(n){s(e);let p=d();return x(p.pageData.Filter.Printed,n)||(p.pageData.Filter.Printed=n),c(n)}),i(),_(17,De,3,1),t(18,"h6"),l(19,"Page Size"),i(),t(20,"div")(21,"input",26),y("ngModelChange",function(n){s(e);let p=d();return x(p.pageData.Filter.RowCount,n)||(p.pageData.Filter.RowCount=n),c(n)}),i()()()}if(o&2){let e=d();a(3),C("ngModel",e.pageData.Filter.ListOutletID),u("multiple",!0),a(3),C("ngModel",e.pageData.Filter.CustomerID),a(5),u("isFloatingLabel",!1),C("date",e.pageData.Filter.From),a(2),u("isFloatingLabel",!1),C("date",e.pageData.Filter.To),a(3),C("model",e.pageData.Filter.Printed),u("options",e.pageData.Options.PrintedOptions),a(),g(e.pageData.Filter.Printed!==0?17:-1),a(4),C("ngModel",e.pageData.Filter.RowCount)}}function we(o,m){o&1&&(t(0,"th",10),l(1,"Print By"),i())}function ve(o,m){o&1&&(t(0,"th",8),l(1,"Print Date"),i())}function Fe(o,m){o&1&&(t(0,"th",11),l(1,"Time"),i())}function Me(o,m){if(o&1&&(t(0,"td"),l(1),i()),o&2){let e=d().$implicit;a(),S(e.CreatorName)}}function Ee(o,m){if(o&1&&(t(0,"td"),l(1),f(2,"date"),i()),o&2){let e=d().$implicit;a(),D(" ",e.Created==="0001-01-01T00:00:00"?"":w(2,1,e.Created,"dd MMM yyyy")," ")}}function Ie(o,m){if(o&1&&(t(0,"td"),l(1),f(2,"date"),i()),o&2){let e=d().$implicit;a(),D(" ",e.Created==="0001-01-01T00:00:00"?"":w(2,1,e.Created,"HH:mm")," ")}}function He(o,m){if(o&1&&(t(0,"td",32),l(1),f(2,"amountFraction"),i()),o&2){let e=d().$implicit;k(v(5,Pe,e.InvoiceAmount<0)),a(),D(" ",I(2,3,e.InvoiceAmount)," ")}}function Te(o,m){if(o&1){let e=P();t(0,"tr")(1,"td"),l(2),i(),t(3,"td")(4,"a",28),l(5),i()(),t(6,"td")(7,"a",29),l(8),i()(),t(9,"td"),l(10),f(11,"date"),i(),t(12,"td"),l(13),f(14,"date"),i(),_(15,Me,2,1,"td"),_(16,Ee,3,4,"td"),_(17,Ie,3,4,"td"),E(18,He,3,7,"td",30),t(19,"td",31),h("click",function(){let n=s(e).$implicit,p=d();return c(p.onInvoiceCountClick(n))}),l(20),f(21,"number"),i()()}if(o&2){let e=m.$implicit,r=d();a(2),S(e.EntityName),a(2),u("queryParams",v(21,xe,e.InvoiceID)),a(),S(e.Number),a(2),u("routerLink",W(23,fe))("queryParams",v(24,xe,e.CustomerID)),a(),D(" ",e.CustomerName," "),a(2),S(w(11,13,e.InvoiceDate,"dd MMM yyyy")),a(3),S(w(14,16,e.InvoiceDueDate,"dd MMM")),a(2),g(r.isNotUnprintedOnly()?15:-1),a(),g(r.isNotUnprintedOnly()?16:-1),a(),g(r.isNotUnprintedOnly()?17:-1),a(),u("ngIf",r.roleService.sell.PriceVisible),a(2),D(" ",I(21,19,e.Count)," ")}}var ye=class o extends Z{roleService=F(Y);dialog=F($);isNotUnprintedOnly=H(!0);constructor(m,e){super(m,e,"invoice/GetPrintHistoryList","invoiceLoader/GetPrintHistoryList")}openExportModal(){this.pageData.Filter.Export=!0,this.dialog.open(ee,{data:{title:"Print History",exportTypes:[{ID:"invoice/GetPrintHistoryList",Value:"Default",FileName:"Print History"}],filterExport:this.pageData.Filter,pagination:!0}}).afterClosed().subscribe(()=>{this.pageData.Filter.Export=!1})}onSubmit(){let m=this.pageData.Filter.Printed!==0;this.isNotUnprintedOnly.set(m),this.getListData()}onInvoiceCountClick(m){let e=`${ne.InvoicePrintHistory}/${m.InvoiceID}`;this.httpService.get(e).subscribe(r=>{this.dialog.open(Ce,{data:r?.Data})})}static \u0275fac=function(e){return new(e||o)(M(ie),M(X))};static \u0275cmp=T({type:o,selectors:[["app-print-history"]],features:[V],decls:32,vars:10,consts:[["pageFilterTemplate",""],[3,"onSubmit","pageData","hideSearchBox","isFilterOnDropdown"],[1,"btn","btn-outline-secondary","me-3"],[1,"container-fluid","mt-5"],["matSort","",1,"table"],[1,"thead-light","sticky-top-thead"],[2,"width","130px"],[2,"width","150px"],[2,"width","100px"],[2,"width","90px"],[2,"width","80px"],[2,"width","30px"],[1,"text-end",2,"width","100px"],[1,"text-end",2,"width","30px"],[3,"jumpToPage","previousPage","nextPage","total","totalAllData","pageData"],[1,"btn","btn-outline-secondary","me-3",3,"click"],["aria-hidden","true",1,"fa-solid","fa-upload"],[1,"dialog-filter"],[3,"ngModelChange","ngModel","multiple"],["name","Key","requestUrl","/API/AC/GetCustomerSuggestion","placeholder","Search Customer",1,"w-100","ac-filter",3,"ngModelChange","ngModel"],[1,"row"],[1,"col-6","pe-2"],["placeholder","From","appearance","outline",3,"dateChange","isFloatingLabel","date"],[1,"col-6","ps-2"],["placeholder","To","appearance","outline",3,"dateChange","isFloatingLabel","date"],[3,"modelChange","model","options"],["type","text","placeholder","Page Size","autoNum","",1,"form-control",3,"ngModelChange","ngModel"],["requestUrl","/API/AC/GetUserSuggestion",1,"w-100","ac-filter",3,"ngModelChange","ngModel"],["routerLink","/menu/Orders/Orders/Customer_Invoice/Info",1,"link-primary","cursor-pointer",3,"queryParams"],[1,"link-primary","cursor-pointer",3,"routerLink","queryParams"],["class","text-end",3,"class",4,"ngIf"],[1,"cursor-pointer","text-end","link-primary",3,"click"],[1,"text-end"]],template:function(e,r){if(e&1){let n=P();t(0,"mainpanel-cmp",1),h("onSubmit",function(){return s(n),c(r.onSubmit())}),t(1,"actions"),_(2,Se,3,0,"button",2),i(),t(3,"filters"),E(4,he,22,11,"ng-template",null,0,U),i(),t(6,"content")(7,"div",3)(8,"table",4)(9,"thead",5)(10,"tr")(11,"th",6),l(12,"Outlet"),i(),t(13,"th",7),l(14,"Number"),i(),t(15,"th"),l(16,"Customer"),i(),t(17,"th",8),l(18,"Date"),i(),t(19,"th",9),l(20,"Due"),i(),_(21,we,2,0,"th",10),_(22,ve,2,0,"th",8),_(23,Fe,2,0,"th",11),t(24,"th",12),l(25,"Amount"),i(),t(26,"th",13),l(27,"Count"),i()()(),t(28,"tbody"),O(29,Te,22,26,"tr",null,b),i()(),t(31,"POS-complex-pagination",14),h("jumpToPage",function(){return s(n),c(r.getListData())})("previousPage",function(){return s(n),c(r.getListData())})("nextPage",function(){return s(n),c(r.getListData())}),i()()()()}e&2&&(u("pageData",r.menuData)("hideSearchBox",!0)("isFilterOnDropdown",!1),a(2),g(r.roleService.global.Export?2:-1),a(19),g(r.isNotUnprintedOnly()?21:-1),a(),g(r.isNotUnprintedOnly()?22:-1),a(),g(r.isNotUnprintedOnly()?23:-1),a(6),L(r.data==null?null:r.data.Data),a(2),u("total",r.data==null||r.data.Data==null?null:r.data.Data.length)("totalAllData",r.data==null?null:r.data.ListTotal)("pageData",r.pageData))},dependencies:[j,B,le,ae,de,Q,z,K,J,_e,ue,ce,se,ge,G,q,re,oe,me,pe,A,R,te],encapsulation:2})};export{ye as PrintHistoryComponent};
1
+ import{a as Ce}from"./chunk-PJCGIZLH.js";import{a as ge}from"./chunk-BCUIYEEN.js";import"./chunk-DLNZDHGS.js";import"./chunk-BYXBJQAS.js";import{a as te}from"./chunk-XA4TVPAS.js";import{d as ue,e as _e}from"./chunk-QPOOLLKY.js";import"./chunk-CSFFF2YO.js";import"./chunk-3RK6DDJD.js";import"./chunk-WNZKCNMC.js";import"./chunk-LOD3JYZW.js";import"./chunk-3KSZCJ6T.js";import"./chunk-6GLKD66N.js";import"./chunk-CBSYYTXQ.js";import{d as pe,e as me}from"./chunk-GN3HVOCN.js";import"./chunk-G4IW5GPY.js";import{a as se,b as ce}from"./chunk-I3ABVEQL.js";import{c as de}from"./chunk-MFLQHYOR.js";import{b as ee}from"./chunk-T2H2XAEJ.js";import{a as Z}from"./chunk-OWGJVIYJ.js";import"./chunk-DV63TLIP.js";import"./chunk-QFON23YX.js";import"./chunk-FIUZN6JU.js";import{e as ae,f as le}from"./chunk-356KM5DR.js";import"./chunk-P7BRWWWC.js";import"./chunk-JEL3OND6.js";import"./chunk-VX5HH3BW.js";import"./chunk-VYQEM4T2.js";import"./chunk-UTAQ3FRE.js";import"./chunk-M43HNBJQ.js";import"./chunk-KKLNFVVN.js";import"./chunk-X57HWGVJ.js";import"./chunk-5SFUSWFY.js";import"./chunk-534MIVWD.js";import"./chunk-TGEQUV6Z.js";import"./chunk-IVJVUXLS.js";import{b as ie}from"./chunk-UQ5F3YKZ.js";import"./chunk-CS6HBROS.js";import"./chunk-JUS6LLVX.js";import{F as oe,G as re}from"./chunk-BA3BDB5Y.js";import"./chunk-C4WJKF7R.js";import{O as ne}from"./chunk-T25N3EEG.js";import"./chunk-7TBS7SPQ.js";import"./chunk-RLQLFW36.js";import"./chunk-EQLHPWVB.js";import{g as $}from"./chunk-A45GTZVV.js";import"./chunk-NWSIPELM.js";import"./chunk-6SGN7MNX.js";import"./chunk-L76WVZW6.js";import"./chunk-2FWFPV5I.js";import"./chunk-O5SLP4JK.js";import{F as Q,c as z,h as K,o as J}from"./chunk-RNLSEEMX.js";import"./chunk-U5LNORQV.js";import"./chunk-FO5ZTXDH.js";import{d as Y}from"./chunk-USJ6ILEE.js";import"./chunk-BJF3WGIP.js";import{$d as G,Ab as O,Bb as L,Bc as f,Ca as H,Cb as u,Cc as I,Db as t,Dc as w,Eb as i,Fb as N,Hc as U,Mb as P,Ob as h,Qb as d,Xa as a,Zd as q,cc as k,db as M,dc as l,ec as S,ee as X,fc as D,fd as B,hb as T,ic as C,jc as x,kc as y,lb as V,md as R,nb as E,od as A,pa as F,rd as j,ta as s,tc as W,ua as c,uc as v,vb as _,xb as g,yb as b}from"./chunk-JYZTRN6N.js";import"./chunk-WFMAM73Y.js";import"./chunk-SNAKHGZS.js";var xe=o=>({ID:o}),fe=()=>["/menu/Contacts/Contact/Customers/Info"],Pe=o=>({"text-danger":o});function Se(o,m){if(o&1){let e=P();t(0,"button",15),h("click",function(){s(e);let n=d();return c(n.openExportModal())}),N(1,"i",16),l(2," Export "),i()}}function De(o,m){if(o&1){let e=P();t(0,"h6"),l(1,"User"),i(),t(2,"autocompleteV2",27),y("ngModelChange",function(n){s(e);let p=d(2);return x(p.pageData.Filter.UserID,n)||(p.pageData.Filter.UserID=n),c(n)}),i()}if(o&2){let e=d(2);a(2),C("ngModel",e.pageData.Filter.UserID)}}function he(o,m){if(o&1){let e=P();t(0,"div",17)(1,"h6"),l(2,"Outlets"),i(),t(3,"outlet-selector",18),y("ngModelChange",function(n){s(e);let p=d();return x(p.pageData.Filter.ListOutletID,n)||(p.pageData.Filter.ListOutletID=n),c(n)}),i(),t(4,"h6"),l(5,"Customer"),i(),t(6,"autocompleteV2",19),y("ngModelChange",function(n){s(e);let p=d();return x(p.pageData.Filter.CustomerID,n)||(p.pageData.Filter.CustomerID=n),c(n)}),i(),t(7,"h6"),l(8,"From - To"),i(),t(9,"div",20)(10,"div",21)(11,"datepicker",22),y("dateChange",function(n){s(e);let p=d();return x(p.pageData.Filter.From,n)||(p.pageData.Filter.From=n),c(n)}),i()(),t(12,"div",23)(13,"datepicker",24),y("dateChange",function(n){s(e);let p=d();return x(p.pageData.Filter.To,n)||(p.pageData.Filter.To=n),c(n)}),i()()(),t(14,"h6"),l(15,"Printed"),i(),t(16,"radio-options",25),y("modelChange",function(n){s(e);let p=d();return x(p.pageData.Filter.Printed,n)||(p.pageData.Filter.Printed=n),c(n)}),i(),_(17,De,3,1),t(18,"h6"),l(19,"Page Size"),i(),t(20,"div")(21,"input",26),y("ngModelChange",function(n){s(e);let p=d();return x(p.pageData.Filter.RowCount,n)||(p.pageData.Filter.RowCount=n),c(n)}),i()()()}if(o&2){let e=d();a(3),C("ngModel",e.pageData.Filter.ListOutletID),u("multiple",!0),a(3),C("ngModel",e.pageData.Filter.CustomerID),a(5),u("isFloatingLabel",!1),C("date",e.pageData.Filter.From),a(2),u("isFloatingLabel",!1),C("date",e.pageData.Filter.To),a(3),C("model",e.pageData.Filter.Printed),u("options",e.pageData.Options.PrintedOptions),a(),g(e.pageData.Filter.Printed!==0?17:-1),a(4),C("ngModel",e.pageData.Filter.RowCount)}}function we(o,m){o&1&&(t(0,"th",10),l(1,"Print By"),i())}function ve(o,m){o&1&&(t(0,"th",8),l(1,"Print Date"),i())}function Fe(o,m){o&1&&(t(0,"th",11),l(1,"Time"),i())}function Me(o,m){if(o&1&&(t(0,"td"),l(1),i()),o&2){let e=d().$implicit;a(),S(e.CreatorName)}}function Ee(o,m){if(o&1&&(t(0,"td"),l(1),f(2,"date"),i()),o&2){let e=d().$implicit;a(),D(" ",e.Created==="0001-01-01T00:00:00"?"":w(2,1,e.Created,"dd MMM yyyy")," ")}}function Ie(o,m){if(o&1&&(t(0,"td"),l(1),f(2,"date"),i()),o&2){let e=d().$implicit;a(),D(" ",e.Created==="0001-01-01T00:00:00"?"":w(2,1,e.Created,"HH:mm")," ")}}function He(o,m){if(o&1&&(t(0,"td",32),l(1),f(2,"amountFraction"),i()),o&2){let e=d().$implicit;k(v(5,Pe,e.InvoiceAmount<0)),a(),D(" ",I(2,3,e.InvoiceAmount)," ")}}function Te(o,m){if(o&1){let e=P();t(0,"tr")(1,"td"),l(2),i(),t(3,"td")(4,"a",28),l(5),i()(),t(6,"td")(7,"a",29),l(8),i()(),t(9,"td"),l(10),f(11,"date"),i(),t(12,"td"),l(13),f(14,"date"),i(),_(15,Me,2,1,"td"),_(16,Ee,3,4,"td"),_(17,Ie,3,4,"td"),E(18,He,3,7,"td",30),t(19,"td",31),h("click",function(){let n=s(e).$implicit,p=d();return c(p.onInvoiceCountClick(n))}),l(20),f(21,"number"),i()()}if(o&2){let e=m.$implicit,r=d();a(2),S(e.EntityName),a(2),u("queryParams",v(21,xe,e.InvoiceID)),a(),S(e.Number),a(2),u("routerLink",W(23,fe))("queryParams",v(24,xe,e.CustomerID)),a(),D(" ",e.CustomerName," "),a(2),S(w(11,13,e.InvoiceDate,"dd MMM yyyy")),a(3),S(w(14,16,e.InvoiceDueDate,"dd MMM")),a(2),g(r.isNotUnprintedOnly()?15:-1),a(),g(r.isNotUnprintedOnly()?16:-1),a(),g(r.isNotUnprintedOnly()?17:-1),a(),u("ngIf",r.roleService.sell.PriceVisible),a(2),D(" ",I(21,19,e.Count)," ")}}var ye=class o extends Z{roleService=F(Y);dialog=F($);isNotUnprintedOnly=H(!0);constructor(m,e){super(m,e,"invoice/GetPrintHistoryList","invoiceLoader/GetPrintHistoryList")}openExportModal(){this.pageData.Filter.Export=!0,this.dialog.open(ee,{data:{title:"Print History",exportTypes:[{ID:"invoice/GetPrintHistoryList",Value:"Default",FileName:"Print History"}],filterExport:this.pageData.Filter,pagination:!0}}).afterClosed().subscribe(()=>{this.pageData.Filter.Export=!1})}onSubmit(){let m=this.pageData.Filter.Printed!==0;this.isNotUnprintedOnly.set(m),this.getListData()}onInvoiceCountClick(m){let e=`${ne.InvoicePrintHistory}/${m.InvoiceID}`;this.httpService.get(e).subscribe(r=>{this.dialog.open(Ce,{data:r?.Data})})}static \u0275fac=function(e){return new(e||o)(M(ie),M(X))};static \u0275cmp=T({type:o,selectors:[["app-print-history"]],features:[V],decls:32,vars:10,consts:[["pageFilterTemplate",""],[3,"onSubmit","pageData","hideSearchBox","isFilterOnDropdown"],[1,"btn","btn-outline-secondary","me-3"],[1,"container-fluid","mt-5"],["matSort","",1,"table"],[1,"thead-light","sticky-top-thead"],[2,"width","130px"],[2,"width","150px"],[2,"width","100px"],[2,"width","90px"],[2,"width","80px"],[2,"width","30px"],[1,"text-end",2,"width","100px"],[1,"text-end",2,"width","30px"],[3,"jumpToPage","previousPage","nextPage","total","totalAllData","pageData"],[1,"btn","btn-outline-secondary","me-3",3,"click"],["aria-hidden","true",1,"fa-solid","fa-upload"],[1,"dialog-filter"],[3,"ngModelChange","ngModel","multiple"],["name","Key","requestUrl","/API/AC/GetCustomerSuggestion","placeholder","Search Customer",1,"w-100","ac-filter",3,"ngModelChange","ngModel"],[1,"row"],[1,"col-6","pe-2"],["placeholder","From","appearance","outline",3,"dateChange","isFloatingLabel","date"],[1,"col-6","ps-2"],["placeholder","To","appearance","outline",3,"dateChange","isFloatingLabel","date"],[3,"modelChange","model","options"],["type","text","placeholder","Page Size","autoNum","",1,"form-control",3,"ngModelChange","ngModel"],["requestUrl","/API/AC/GetUserSuggestion",1,"w-100","ac-filter",3,"ngModelChange","ngModel"],["routerLink","/menu/Orders/Orders/Customer_Invoice/Info",1,"link-primary","cursor-pointer",3,"queryParams"],[1,"link-primary","cursor-pointer",3,"routerLink","queryParams"],["class","text-end",3,"class",4,"ngIf"],[1,"cursor-pointer","text-end","link-primary",3,"click"],[1,"text-end"]],template:function(e,r){if(e&1){let n=P();t(0,"mainpanel-cmp",1),h("onSubmit",function(){return s(n),c(r.onSubmit())}),t(1,"actions"),_(2,Se,3,0,"button",2),i(),t(3,"filters"),E(4,he,22,11,"ng-template",null,0,U),i(),t(6,"content")(7,"div",3)(8,"table",4)(9,"thead",5)(10,"tr")(11,"th",6),l(12,"Outlet"),i(),t(13,"th",7),l(14,"Number"),i(),t(15,"th"),l(16,"Customer"),i(),t(17,"th",8),l(18,"Date"),i(),t(19,"th",9),l(20,"Due"),i(),_(21,we,2,0,"th",10),_(22,ve,2,0,"th",8),_(23,Fe,2,0,"th",11),t(24,"th",12),l(25,"Amount"),i(),t(26,"th",13),l(27,"Count"),i()()(),t(28,"tbody"),O(29,Te,22,26,"tr",null,b),i()(),t(31,"POS-complex-pagination",14),h("jumpToPage",function(){return s(n),c(r.getListData())})("previousPage",function(){return s(n),c(r.getListData())})("nextPage",function(){return s(n),c(r.getListData())}),i()()()()}e&2&&(u("pageData",r.menuData)("hideSearchBox",!0)("isFilterOnDropdown",!1),a(2),g(r.roleService.global.Export?2:-1),a(19),g(r.isNotUnprintedOnly()?21:-1),a(),g(r.isNotUnprintedOnly()?22:-1),a(),g(r.isNotUnprintedOnly()?23:-1),a(6),L(r.data==null?null:r.data.Data),a(2),u("total",r.data==null||r.data.Data==null?null:r.data.Data.length)("totalAllData",r.data==null?null:r.data.ListTotal)("pageData",r.pageData))},dependencies:[j,B,le,ae,de,Q,z,K,J,_e,ue,ce,se,ge,G,q,re,oe,me,pe,A,R,te],encapsulation:2})};export{ye as PrintHistoryComponent};
@@ -1 +1 @@
1
- import{a as Z}from"./chunk-4QM23MMO.js";import{e as R,f as ie}from"./chunk-YLLLGS4S.js";import"./chunk-3VKLSTEH.js";import{a as B,b as j}from"./chunk-HIQKF5X3.js";import"./chunk-CS6HBROS.js";import"./chunk-JUS6LLVX.js";import{D as Q}from"./chunk-BA3BDB5Y.js";import"./chunk-C4WJKF7R.js";import{F as ee,N as te}from"./chunk-T25N3EEG.js";import"./chunk-A45GTZVV.js";import"./chunk-NWSIPELM.js";import"./chunk-L76WVZW6.js";import"./chunk-2FWFPV5I.js";import"./chunk-O5SLP4JK.js";import"./chunk-RNLSEEMX.js";import"./chunk-E7ISSVA3.js";import"./chunk-HVFAKTAO.js";import{d as Y}from"./chunk-USJ6ILEE.js";import"./chunk-NETNL55X.js";import{$d as z,Ab as v,Bb as C,Bc as u,Cb as k,Cc as b,Db as n,Dc as T,Eb as i,Ec as J,Fb as O,Mb as D,Ob as y,Qb as c,Xa as o,be as X,d as F,da as _,db as f,dc as r,ec as S,ee as L,fc as p,gc as q,hb as w,ib as M,lb as $,ma as P,md as V,od as N,rd as K,ta as g,ua as E,vb as s,xb as m,zb as x}from"./chunk-JYZTRN6N.js";import"./chunk-WFMAM73Y.js";import"./chunk-SNAKHGZS.js";function ue(t,a){if(t&1){let e=D();n(0,"a",18),y("click",function(){g(e);let l=c();return E(l.convertToCsv())}),O(1,"i",19),r(2," Export Fail"),i()}}function _e(t,a){if(t&1){let e=D();n(0,"a",20),y("click",function(){g(e);let l=c();return E(l.uploadOrders())}),O(1,"i",21),r(2," Send Transaction"),i()}}function fe(t,a){t&1&&(n(0,"th",13)(1,"i"),r(2,"Actions"),i()())}function xe(t,a){if(t&1&&(n(0,"span"),r(1),i()),t&2){let e=c().$implicit;o(),S(e==null||e.Variant==null?null:e.Variant.Name)}}function ve(t,a){if(t&1&&(n(0,"div",22),s(1,xe,2,1,"span"),i()),t&2){let e=a.$implicit;o(),m(e!=null?1:-1)}}function Ce(t,a){if(t&1&&(n(0,"span"),r(1),i()),t&2){let e=c().$implicit;o(),p(" ",e==null?null:e.Quantity," ")}}function Se(t,a){if(t&1&&(n(0,"div",23),s(1,Ce,2,1,"span"),i()),t&2){let e=a.$implicit;o(),m(e!=null?1:-1)}}function he(t,a){if(t&1&&(n(0,"span"),r(1),u(2,"number"),i()),t&2){let e=c().$implicit;o(),p(" ",b(2,1,e.Price)," ")}}function Oe(t,a){if(t&1&&(n(0,"div",23),s(1,he,3,3,"span"),i()),t&2){let e=a.$implicit;o(),m(e!=null?1:-1)}}function ye(t,a){if(t&1&&(n(0,"span"),r(1),u(2,"number"),i()),t&2){let e=c().$implicit;o(),p(" ",b(2,1,e.Quantity*e.UnitQuantity*e.Price*(1-e.Discount/100)-e.DiscountAmount)," ")}}function be(t,a){if(t&1&&(n(0,"div",23),s(1,ye,3,3,"span"),i()),t&2){let e=a.$implicit;o(),m(e!=null?1:-1)}}function ge(t,a){if(t&1){let e=D();n(0,"td",24)(1,"i",25),y("click",function(){g(e);let l=c().$implicit,h=c(2);return E(h.removeOrder(l))}),i()()}}function Ee(t,a){if(t&1&&(n(0,"tr")(1,"td"),r(2),i(),n(3,"td"),r(4),u(5,"date"),i(),n(6,"td"),v(7,ve,2,1,"div",22,x),i(),n(9,"td"),v(10,Se,2,1,"div",23,x),i(),n(12,"td"),v(13,Oe,2,1,"div",23,x),i(),n(15,"td"),v(16,be,2,1,"div",23,x),i(),s(18,ge,2,0,"td",24),i()),t&2){let e=a.$implicit,d=c(2);o(2),S(e.Order.Number),o(2),S(T(5,3,e.Order.Date,"dd MMM yyyy")),o(3),C(e.CartItems),o(3),C(e.CartItems),o(3),C(e.CartItems),o(3),C(e.CartItems),o(2),m(d.roleService.sell.Delete?18:-1)}}function De(t,a){if(t&1&&v(0,Ee,19,6,"tr",null,x),t&2){let e=c();C(e.offlineOrders)}}function Te(t,a){t&1&&(n(0,"td",14)(1,"h4",26),r(2,"There is no Offline Order"),i()())}function Ie(t,a){if(t&1&&(n(0,"span"),r(1),n(2,"strong"),r(3),i(),n(4,"strong"),r(5),u(6,"number"),i(),n(7,"strong"),r(8),u(9,"number"),i()()),t&2){let e=c().$implicit;o(),p("",e==null||e.Variant==null?null:e.Variant.Name," "),o(2),p(" ",e.Quantity+" x"," "),o(2),p(" ",b(6,4,e.Price)+" ="," "),o(3),p(" ",b(9,6,e.Quantity*e.UnitQuantity*e.Price*(1-e.Discount/100)-e.DiscountAmount)," ")}}function Fe(t,a){if(t&1&&(n(0,"div",27),s(1,Ie,10,8,"span"),i()),t&2){let e=a.$implicit;o(),m(e!=null?1:-1)}}function Pe(t,a){if(t&1&&(n(0,"div",28),r(1),i()),t&2){let e=c().$implicit;o(),p(" ",e.Message," ")}}function we(t,a){if(t&1){let e=D();n(0,"a",33),y("click",function(){g(e);let l=c().$implicit,h=c(2);return E(h.removeFailedOrder(l))}),O(1,"i",34),i()}}function Me(t,a){if(t&1){let e=D();n(0,"tr")(1,"td"),r(2),i(),n(3,"td"),r(4),u(5,"date"),i(),n(6,"td"),v(7,Fe,2,1,"div",27,x),i(),n(9,"td"),s(10,Pe,2,1,"div",28),i(),n(11,"td",29)(12,"a",30),y("click",function(){let l=g(e).$implicit,h=c(2);return E(h.uploadFailedOrder(l))}),O(13,"i",31),i(),s(14,we,2,0,"a",32),i()()}if(t&2){let e=a.$implicit,d=c(2);o(2),S(e.Order.Number),o(2),S(T(5,4,e.Order.Date,"dd MMM yyyy")),o(3),C(e.CartItems),o(3),m(e.Message?10:-1),o(4),m(d.roleService.sell.Delete?14:-1)}}function $e(t,a){if(t&1&&v(0,Me,15,7,"tr",null,x),t&2){let e=c();C(e.failedOrders)}}function ke(t,a){t&1&&(n(0,"td",17)(1,"h4",26),r(2,"There is no Failed Order"),i()())}var H=class t extends B{constructor(e,d,l,h,I,W){super(e);this.httpService=d;this.localData=l;this.csvConverter=h;this.toastr=I;this.roleService=W;this.destroy$=new F,this.pageData={Header:"Offline Orders"}}pageData;offlineOrders=[];failedOrders=[];destroy$;ngOnInit(){this.menuData$.pipe(_(this.destroy$)).subscribe(()=>{this.getOfflineOrders(),this.getFailedOrders()})}removeOrder(e){this.localData.removeOrder(e.id).subscribe({next:()=>{this.toastr.success("Successfully removed order "+e.Order.Number,"Offline Order Deleted!"),this.getOfflineOrders()},error:d=>{this.toastr.warning("Failed to remove order "+e.Order.Number,"Failed to delete order!")}})}getOfflineOrders(){this.localData.findAllOrders().pipe(_(this.destroy$)).subscribe({next:e=>{this.offlineOrders=e},error:e=>{this.toastr.error(e.message,"Error!")}})}getFailedOrders(){this.localData.getFailedOrders().pipe(_(this.destroy$)).subscribe({next:e=>{this.failedOrders=e},error:e=>{this.toastr.error(e.message,"Error!")}})}uploadFailedOrder(e){this.localData.uploadFailedOrder(e).pipe(_(this.destroy$)).subscribe({next:()=>{this.toastr.success("Successfully uploaded order "+e.Order.Number,"Sync Successful!"),this.getFailedOrders()},error:()=>{this.toastr.error("Failed to sync failed order "+e.Order.Number,"Error!")}})}removeFailedOrder(e){this.localData.removeFailedOrder(e.id).pipe(_(this.destroy$)).subscribe({next:d=>{this.toastr.success("Success to remove failed offline order","Error!"),this.getFailedOrders()},error:d=>{this.toastr.error("Failed to remove failed offline order","Error!")}})}uploadOrders(){this.localData.uploadOrders().pipe(_(this.destroy$)).subscribe({next:e=>{e?this.getOfflineOrders():(this.getOfflineOrders(),this.getFailedOrders())},error:e=>{this.getOfflineOrders(),this.getFailedOrders()}})}convertToCsv(){this.csvConverter.convertToCSV(this.getExportData(),"Fail_Transaction.csv")}getExportData(){let e=[["Number","Date","Item","Qty","Price","Total"]];return this.failedOrders.forEach(d=>{d.Items.forEach(l=>{let h=d.Order.Number.toString(),I=d.Order.Date.toLocaleString(),W=l.Quantity.toString(),re=l.Price.toString(),oe=(l.Quantity*l.UnitQuantity*(l.Price*(1-l.Discount/100))-l.DiscountAmount).toString(),ae=[h,I,l.Variant.Name,W,re,oe];e.push(ae)})}),e}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static \u0275fac=function(d){return new(d||t)(f(j),f(L),f(Q),f(Z),f(X),f(Y))};static \u0275cmp=w({type:t,selectors:[["pos-orders"]],standalone:!1,features:[$],decls:52,vars:8,consts:[[3,"pageData","hideSearchDropdown","hideSearchBox"],["matTooltipPosition","above","matTooltip","Export",1,"btn","btn-outline-secondary","me-6"],["value","Send Transaction","matTooltipPosition","above","matTooltip","Send Transaction",1,"btn","btn-outline-secondary"],[1,"container-fluid"],[1,"row","mt-10","mb-12"],[1,"col-md"],[1,"table","mt-5"],[1,"thead-light","sticky-top-thead"],[1,"border-end",2,"width","130px"],[1,"border-end",2,"width","90px"],[1,"border-end"],[1,"border-end","text-end",2,"width","103px"],[1,"border-end","text-end",2,"width","200px"],[1,"text-center",2,"width","90px"],["colspan","7"],[1,"row","mt-12"],[1,"border-end",2,"width","102px"],["colSpan","5"],["matTooltipPosition","above","matTooltip","Export",1,"btn","btn-outline-secondary","me-6",3,"click"],["aria-hidden","true",1,"fa","fa-upload"],["value","Send Transaction","matTooltipPosition","above","matTooltip","Send Transaction",1,"btn","btn-outline-secondary",3,"click"],["aria-hidden","true",1,"fa","fa-paper-plane"],[1,"list-unstyled","text-start"],[1,"list-unstyled","text-end"],[1,"text-center","text-danger"],[1,"fa-solid","fa-xmark","fa-2x","cursor-pointer",3,"click"],[1,"text-center","mt-2"],[1,"list-inline","text-start"],[1,"text-danger"],[1,"d-flex","justify-content-center"],["matTooltipPosition","above","matTooltip","Sync",1,"ms-2","me-2","cursor-pointer",3,"click"],["aria-hidden","true",1,"fa-solid","fa-cloud-arrow-up","text-primary","fa-2x"],["matTooltipPosition","above","matTooltip","Remove",1,"ms-5","cursor-pointer"],["matTooltipPosition","above","matTooltip","Remove",1,"ms-5","cursor-pointer",3,"click"],["aria-hidden","true",1,"fa-regular","fa-xmark-circle","text-primary","fa-2x"]],template:function(d,l){d&1&&(n(0,"mainpanel-cmp",0)(1,"actions"),s(2,ue,3,0,"a",1),s(3,_e,3,0,"a",2),i(),n(4,"content")(5,"div",3)(6,"div",4)(7,"div",5)(8,"h5"),r(9,"Offline Orders"),i(),n(10,"i"),r(11,"Waiting to be uploaded to the server!"),i(),n(12,"table",6)(13,"thead",7)(14,"tr")(15,"th",8),r(16,"Number"),i(),n(17,"th",9),r(18,"Date"),i(),n(19,"th",10),r(20,"item"),i(),n(21,"th",11),r(22,"Qty"),i(),n(23,"th",12),r(24,"Price"),i(),n(25,"th",12),r(26,"Total"),i(),s(27,fe,3,0,"th",13),i()(),n(28,"tbody"),s(29,De,2,0)(30,Te,3,0,"td",14),i()()()(),n(31,"div",15)(32,"div",5)(33,"h5"),r(34,"Synchronization Errors"),i(),n(35,"i"),r(36,"Exception occured when trying to upload these orders"),i(),n(37,"table",6)(38,"thead",7)(39,"tr")(40,"th",9),r(41,"Number"),i(),n(42,"th",9),r(43,"Date"),i(),n(44,"th",10),r(45,"item"),i(),n(46,"th",10),r(47,"Sync exception"),i(),O(48,"th",16),i()(),n(49,"tbody"),s(50,$e,2,0)(51,ke,3,0,"td",17),i()()()()()()()),d&2&&(k("pageData",l.menuData)("hideSearchDropdown",!0)("hideSearchBox",!0),o(2),m((l.failedOrders==null?null:l.failedOrders.length)>0?2:-1),o(),m(l.offlineOrders.length>0?3:-1),o(24),m(l.roleService.sell.Delete?27:-1),o(2),m(l.offlineOrders.length>0?29:30),o(21),m(l.failedOrders.length>0?50:51))},dependencies:[R,N,V],styles:[".cursor-pointer[_ngcontent-%COMP%]{cursor:pointer}"]})};function Ve(t,a){if(t&1&&(n(0,"div",1),O(1,"i",5),r(2),u(3,"date"),i()),t&2){let e=c();o(2),p(" ",T(3,1,e.LastSync,"dd MMM yyyy HH:mm:ss")," ")}}function Ne(t,a){if(t&1&&(n(0,"tr")(1,"td",12),r(2),i(),n(3,"td",13),r(4),i(),n(5,"td"),r(6),i(),n(7,"td",9),r(8),u(9,"number"),i()()),t&2){let e=a.$implicit,d=c(2);o(2),S(e.ID),o(2),S(e.Name),o(2),S(e.Code),o(2),q(" ",d.currency," ",T(9,5,e.UnitPrice,"1.0-4")," ")}}function Le(t,a){if(t&1&&(n(0,"table",3)(1,"thead",6)(2,"tr",7)(3,"th",8),r(4,"ID"),i(),n(5,"th",8),r(6,"Name"),i(),n(7,"th",8),r(8,"Code"),i(),n(9,"th",9),r(10,"Unit Price"),i()()(),n(11,"tbody"),v(12,Ne,10,8,"tr",null,x),u(14,"sortBy"),i(),n(15,"tfoot")(16,"tr",10)(17,"td",11)(18,"strong"),r(19),u(20,"number"),i()()()()()),t&2){let e=c();o(12),C(J(14,1,e.variantList,"asc","Name")),o(7),p("",b(20,5,e.variantList.length)," Product ")}}function Be(t,a){t&1&&(n(0,"h3",4),r(1,"Product has not been synced yet!"),i())}var A=class t extends B{constructor(e,d,l){super(e);this.httpService=d;this._localDataService=l;this.destroy$=new F}variantList=[];OriginalList=[];LastSync;currency;destroy$;ngOnInit(){this.menuData$.subscribe(e=>{this.getVariants(),this.getSyncDate(),this.getCurrency()})}getVariants(){this._localDataService.findAllVariant().pipe(_(this.destroy$)).subscribe({next:e=>{this.OriginalList=e,this.variantList=this.OriginalList},error:e=>{console.error(e)}})}getSyncDate(){this._localDataService.getSyncTime().pipe(_(this.destroy$)).subscribe(e=>{this.LastSync=new Date(e.time)})}getCurrency(){this._localDataService.getPOSStorage().pipe(_(this.destroy$)).subscribe(e=>{e&&(this.currency=e.Currencies[0].Symbol)})}filterList(e){this.variantList=this.OriginalList.filter(d=>d.Name.includes(e))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static \u0275fac=function(d){return new(d||t)(f(j),f(L),f(Q))};static \u0275cmp=w({type:t,selectors:[["pos-products"]],standalone:!1,features:[$],decls:7,vars:4,consts:[[3,"textChange","pageData","hideSearchDropdown"],[1,"h5"],[1,"container-fluid","mt-5"],["id","tableGrid",1,"table"],[1,"text-center","mt-4"],[1,"fa-solid","fa-sync-alt"],[1,"thead-light","sticky-top-thead"],[1,"header"],[1,"text-start"],[1,"text-end"],[1,"table-footer"],["colspan","4",1,"text-start","empty-column"],[2,"max-width","100px"],[2,"max-width","300px"]],template:function(d,l){d&1&&(n(0,"mainpanel-cmp",0),y("textChange",function(I){return l.filterList(I)}),n(1,"actions"),s(2,Ve,4,4,"div",1),i(),n(3,"content")(4,"div",2),s(5,Le,21,7,"table",3)(6,Be,2,0,"h3",4),i()()()),d&2&&(k("pageData",l.menuData)("hideSearchDropdown",!0),o(2),m(l.LastSync?2:-1),o(3),m(l.variantList.length>0?5:6))},dependencies:[R,N,V,ee],encapsulation:2})};var je=[{path:"Products",component:A},{path:"Orders",component:H},{path:"**",redirectTo:"Products",pathMatch:"full"}],U=class t{static \u0275fac=function(e){return new(e||t)};static \u0275mod=M({type:t});static \u0275inj=P({imports:[z.forChild(je),z]})};var ne=class t{static \u0275fac=function(e){return new(e||t)};static \u0275mod=M({type:t});static \u0275inj=P({imports:[K,U,ie,te]})};export{ne as OfflineModule};
1
+ import{a as Z}from"./chunk-4QM23MMO.js";import{e as R,f as ie}from"./chunk-356KM5DR.js";import"./chunk-IVJVUXLS.js";import{a as B,b as j}from"./chunk-UQ5F3YKZ.js";import"./chunk-CS6HBROS.js";import"./chunk-JUS6LLVX.js";import{D as Q}from"./chunk-BA3BDB5Y.js";import"./chunk-C4WJKF7R.js";import{F as ee,N as te}from"./chunk-T25N3EEG.js";import"./chunk-A45GTZVV.js";import"./chunk-NWSIPELM.js";import"./chunk-L76WVZW6.js";import"./chunk-2FWFPV5I.js";import"./chunk-O5SLP4JK.js";import"./chunk-RNLSEEMX.js";import"./chunk-U5LNORQV.js";import"./chunk-FO5ZTXDH.js";import{d as Y}from"./chunk-USJ6ILEE.js";import"./chunk-BJF3WGIP.js";import{$d as z,Ab as v,Bb as C,Bc as u,Cb as k,Cc as b,Db as n,Dc as T,Eb as i,Ec as J,Fb as O,Mb as D,Ob as y,Qb as c,Xa as o,be as X,d as F,da as _,db as f,dc as r,ec as S,ee as L,fc as p,gc as q,hb as w,ib as M,lb as $,ma as P,md as V,od as N,rd as K,ta as g,ua as E,vb as s,xb as m,zb as x}from"./chunk-JYZTRN6N.js";import"./chunk-WFMAM73Y.js";import"./chunk-SNAKHGZS.js";function ue(t,a){if(t&1){let e=D();n(0,"a",18),y("click",function(){g(e);let l=c();return E(l.convertToCsv())}),O(1,"i",19),r(2," Export Fail"),i()}}function _e(t,a){if(t&1){let e=D();n(0,"a",20),y("click",function(){g(e);let l=c();return E(l.uploadOrders())}),O(1,"i",21),r(2," Send Transaction"),i()}}function fe(t,a){t&1&&(n(0,"th",13)(1,"i"),r(2,"Actions"),i()())}function xe(t,a){if(t&1&&(n(0,"span"),r(1),i()),t&2){let e=c().$implicit;o(),S(e==null||e.Variant==null?null:e.Variant.Name)}}function ve(t,a){if(t&1&&(n(0,"div",22),s(1,xe,2,1,"span"),i()),t&2){let e=a.$implicit;o(),m(e!=null?1:-1)}}function Ce(t,a){if(t&1&&(n(0,"span"),r(1),i()),t&2){let e=c().$implicit;o(),p(" ",e==null?null:e.Quantity," ")}}function Se(t,a){if(t&1&&(n(0,"div",23),s(1,Ce,2,1,"span"),i()),t&2){let e=a.$implicit;o(),m(e!=null?1:-1)}}function he(t,a){if(t&1&&(n(0,"span"),r(1),u(2,"number"),i()),t&2){let e=c().$implicit;o(),p(" ",b(2,1,e.Price)," ")}}function Oe(t,a){if(t&1&&(n(0,"div",23),s(1,he,3,3,"span"),i()),t&2){let e=a.$implicit;o(),m(e!=null?1:-1)}}function ye(t,a){if(t&1&&(n(0,"span"),r(1),u(2,"number"),i()),t&2){let e=c().$implicit;o(),p(" ",b(2,1,e.Quantity*e.UnitQuantity*e.Price*(1-e.Discount/100)-e.DiscountAmount)," ")}}function be(t,a){if(t&1&&(n(0,"div",23),s(1,ye,3,3,"span"),i()),t&2){let e=a.$implicit;o(),m(e!=null?1:-1)}}function ge(t,a){if(t&1){let e=D();n(0,"td",24)(1,"i",25),y("click",function(){g(e);let l=c().$implicit,h=c(2);return E(h.removeOrder(l))}),i()()}}function Ee(t,a){if(t&1&&(n(0,"tr")(1,"td"),r(2),i(),n(3,"td"),r(4),u(5,"date"),i(),n(6,"td"),v(7,ve,2,1,"div",22,x),i(),n(9,"td"),v(10,Se,2,1,"div",23,x),i(),n(12,"td"),v(13,Oe,2,1,"div",23,x),i(),n(15,"td"),v(16,be,2,1,"div",23,x),i(),s(18,ge,2,0,"td",24),i()),t&2){let e=a.$implicit,d=c(2);o(2),S(e.Order.Number),o(2),S(T(5,3,e.Order.Date,"dd MMM yyyy")),o(3),C(e.CartItems),o(3),C(e.CartItems),o(3),C(e.CartItems),o(3),C(e.CartItems),o(2),m(d.roleService.sell.Delete?18:-1)}}function De(t,a){if(t&1&&v(0,Ee,19,6,"tr",null,x),t&2){let e=c();C(e.offlineOrders)}}function Te(t,a){t&1&&(n(0,"td",14)(1,"h4",26),r(2,"There is no Offline Order"),i()())}function Ie(t,a){if(t&1&&(n(0,"span"),r(1),n(2,"strong"),r(3),i(),n(4,"strong"),r(5),u(6,"number"),i(),n(7,"strong"),r(8),u(9,"number"),i()()),t&2){let e=c().$implicit;o(),p("",e==null||e.Variant==null?null:e.Variant.Name," "),o(2),p(" ",e.Quantity+" x"," "),o(2),p(" ",b(6,4,e.Price)+" ="," "),o(3),p(" ",b(9,6,e.Quantity*e.UnitQuantity*e.Price*(1-e.Discount/100)-e.DiscountAmount)," ")}}function Fe(t,a){if(t&1&&(n(0,"div",27),s(1,Ie,10,8,"span"),i()),t&2){let e=a.$implicit;o(),m(e!=null?1:-1)}}function Pe(t,a){if(t&1&&(n(0,"div",28),r(1),i()),t&2){let e=c().$implicit;o(),p(" ",e.Message," ")}}function we(t,a){if(t&1){let e=D();n(0,"a",33),y("click",function(){g(e);let l=c().$implicit,h=c(2);return E(h.removeFailedOrder(l))}),O(1,"i",34),i()}}function Me(t,a){if(t&1){let e=D();n(0,"tr")(1,"td"),r(2),i(),n(3,"td"),r(4),u(5,"date"),i(),n(6,"td"),v(7,Fe,2,1,"div",27,x),i(),n(9,"td"),s(10,Pe,2,1,"div",28),i(),n(11,"td",29)(12,"a",30),y("click",function(){let l=g(e).$implicit,h=c(2);return E(h.uploadFailedOrder(l))}),O(13,"i",31),i(),s(14,we,2,0,"a",32),i()()}if(t&2){let e=a.$implicit,d=c(2);o(2),S(e.Order.Number),o(2),S(T(5,4,e.Order.Date,"dd MMM yyyy")),o(3),C(e.CartItems),o(3),m(e.Message?10:-1),o(4),m(d.roleService.sell.Delete?14:-1)}}function $e(t,a){if(t&1&&v(0,Me,15,7,"tr",null,x),t&2){let e=c();C(e.failedOrders)}}function ke(t,a){t&1&&(n(0,"td",17)(1,"h4",26),r(2,"There is no Failed Order"),i()())}var H=class t extends B{constructor(e,d,l,h,I,W){super(e);this.httpService=d;this.localData=l;this.csvConverter=h;this.toastr=I;this.roleService=W;this.destroy$=new F,this.pageData={Header:"Offline Orders"}}pageData;offlineOrders=[];failedOrders=[];destroy$;ngOnInit(){this.menuData$.pipe(_(this.destroy$)).subscribe(()=>{this.getOfflineOrders(),this.getFailedOrders()})}removeOrder(e){this.localData.removeOrder(e.id).subscribe({next:()=>{this.toastr.success("Successfully removed order "+e.Order.Number,"Offline Order Deleted!"),this.getOfflineOrders()},error:d=>{this.toastr.warning("Failed to remove order "+e.Order.Number,"Failed to delete order!")}})}getOfflineOrders(){this.localData.findAllOrders().pipe(_(this.destroy$)).subscribe({next:e=>{this.offlineOrders=e},error:e=>{this.toastr.error(e.message,"Error!")}})}getFailedOrders(){this.localData.getFailedOrders().pipe(_(this.destroy$)).subscribe({next:e=>{this.failedOrders=e},error:e=>{this.toastr.error(e.message,"Error!")}})}uploadFailedOrder(e){this.localData.uploadFailedOrder(e).pipe(_(this.destroy$)).subscribe({next:()=>{this.toastr.success("Successfully uploaded order "+e.Order.Number,"Sync Successful!"),this.getFailedOrders()},error:()=>{this.toastr.error("Failed to sync failed order "+e.Order.Number,"Error!")}})}removeFailedOrder(e){this.localData.removeFailedOrder(e.id).pipe(_(this.destroy$)).subscribe({next:d=>{this.toastr.success("Success to remove failed offline order","Error!"),this.getFailedOrders()},error:d=>{this.toastr.error("Failed to remove failed offline order","Error!")}})}uploadOrders(){this.localData.uploadOrders().pipe(_(this.destroy$)).subscribe({next:e=>{e?this.getOfflineOrders():(this.getOfflineOrders(),this.getFailedOrders())},error:e=>{this.getOfflineOrders(),this.getFailedOrders()}})}convertToCsv(){this.csvConverter.convertToCSV(this.getExportData(),"Fail_Transaction.csv")}getExportData(){let e=[["Number","Date","Item","Qty","Price","Total"]];return this.failedOrders.forEach(d=>{d.Items.forEach(l=>{let h=d.Order.Number.toString(),I=d.Order.Date.toLocaleString(),W=l.Quantity.toString(),re=l.Price.toString(),oe=(l.Quantity*l.UnitQuantity*(l.Price*(1-l.Discount/100))-l.DiscountAmount).toString(),ae=[h,I,l.Variant.Name,W,re,oe];e.push(ae)})}),e}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static \u0275fac=function(d){return new(d||t)(f(j),f(L),f(Q),f(Z),f(X),f(Y))};static \u0275cmp=w({type:t,selectors:[["pos-orders"]],standalone:!1,features:[$],decls:52,vars:8,consts:[[3,"pageData","hideSearchDropdown","hideSearchBox"],["matTooltipPosition","above","matTooltip","Export",1,"btn","btn-outline-secondary","me-6"],["value","Send Transaction","matTooltipPosition","above","matTooltip","Send Transaction",1,"btn","btn-outline-secondary"],[1,"container-fluid"],[1,"row","mt-10","mb-12"],[1,"col-md"],[1,"table","mt-5"],[1,"thead-light","sticky-top-thead"],[1,"border-end",2,"width","130px"],[1,"border-end",2,"width","90px"],[1,"border-end"],[1,"border-end","text-end",2,"width","103px"],[1,"border-end","text-end",2,"width","200px"],[1,"text-center",2,"width","90px"],["colspan","7"],[1,"row","mt-12"],[1,"border-end",2,"width","102px"],["colSpan","5"],["matTooltipPosition","above","matTooltip","Export",1,"btn","btn-outline-secondary","me-6",3,"click"],["aria-hidden","true",1,"fa","fa-upload"],["value","Send Transaction","matTooltipPosition","above","matTooltip","Send Transaction",1,"btn","btn-outline-secondary",3,"click"],["aria-hidden","true",1,"fa","fa-paper-plane"],[1,"list-unstyled","text-start"],[1,"list-unstyled","text-end"],[1,"text-center","text-danger"],[1,"fa-solid","fa-xmark","fa-2x","cursor-pointer",3,"click"],[1,"text-center","mt-2"],[1,"list-inline","text-start"],[1,"text-danger"],[1,"d-flex","justify-content-center"],["matTooltipPosition","above","matTooltip","Sync",1,"ms-2","me-2","cursor-pointer",3,"click"],["aria-hidden","true",1,"fa-solid","fa-cloud-arrow-up","text-primary","fa-2x"],["matTooltipPosition","above","matTooltip","Remove",1,"ms-5","cursor-pointer"],["matTooltipPosition","above","matTooltip","Remove",1,"ms-5","cursor-pointer",3,"click"],["aria-hidden","true",1,"fa-regular","fa-xmark-circle","text-primary","fa-2x"]],template:function(d,l){d&1&&(n(0,"mainpanel-cmp",0)(1,"actions"),s(2,ue,3,0,"a",1),s(3,_e,3,0,"a",2),i(),n(4,"content")(5,"div",3)(6,"div",4)(7,"div",5)(8,"h5"),r(9,"Offline Orders"),i(),n(10,"i"),r(11,"Waiting to be uploaded to the server!"),i(),n(12,"table",6)(13,"thead",7)(14,"tr")(15,"th",8),r(16,"Number"),i(),n(17,"th",9),r(18,"Date"),i(),n(19,"th",10),r(20,"item"),i(),n(21,"th",11),r(22,"Qty"),i(),n(23,"th",12),r(24,"Price"),i(),n(25,"th",12),r(26,"Total"),i(),s(27,fe,3,0,"th",13),i()(),n(28,"tbody"),s(29,De,2,0)(30,Te,3,0,"td",14),i()()()(),n(31,"div",15)(32,"div",5)(33,"h5"),r(34,"Synchronization Errors"),i(),n(35,"i"),r(36,"Exception occured when trying to upload these orders"),i(),n(37,"table",6)(38,"thead",7)(39,"tr")(40,"th",9),r(41,"Number"),i(),n(42,"th",9),r(43,"Date"),i(),n(44,"th",10),r(45,"item"),i(),n(46,"th",10),r(47,"Sync exception"),i(),O(48,"th",16),i()(),n(49,"tbody"),s(50,$e,2,0)(51,ke,3,0,"td",17),i()()()()()()()),d&2&&(k("pageData",l.menuData)("hideSearchDropdown",!0)("hideSearchBox",!0),o(2),m((l.failedOrders==null?null:l.failedOrders.length)>0?2:-1),o(),m(l.offlineOrders.length>0?3:-1),o(24),m(l.roleService.sell.Delete?27:-1),o(2),m(l.offlineOrders.length>0?29:30),o(21),m(l.failedOrders.length>0?50:51))},dependencies:[R,N,V],styles:[".cursor-pointer[_ngcontent-%COMP%]{cursor:pointer}"]})};function Ve(t,a){if(t&1&&(n(0,"div",1),O(1,"i",5),r(2),u(3,"date"),i()),t&2){let e=c();o(2),p(" ",T(3,1,e.LastSync,"dd MMM yyyy HH:mm:ss")," ")}}function Ne(t,a){if(t&1&&(n(0,"tr")(1,"td",12),r(2),i(),n(3,"td",13),r(4),i(),n(5,"td"),r(6),i(),n(7,"td",9),r(8),u(9,"number"),i()()),t&2){let e=a.$implicit,d=c(2);o(2),S(e.ID),o(2),S(e.Name),o(2),S(e.Code),o(2),q(" ",d.currency," ",T(9,5,e.UnitPrice,"1.0-4")," ")}}function Le(t,a){if(t&1&&(n(0,"table",3)(1,"thead",6)(2,"tr",7)(3,"th",8),r(4,"ID"),i(),n(5,"th",8),r(6,"Name"),i(),n(7,"th",8),r(8,"Code"),i(),n(9,"th",9),r(10,"Unit Price"),i()()(),n(11,"tbody"),v(12,Ne,10,8,"tr",null,x),u(14,"sortBy"),i(),n(15,"tfoot")(16,"tr",10)(17,"td",11)(18,"strong"),r(19),u(20,"number"),i()()()()()),t&2){let e=c();o(12),C(J(14,1,e.variantList,"asc","Name")),o(7),p("",b(20,5,e.variantList.length)," Product ")}}function Be(t,a){t&1&&(n(0,"h3",4),r(1,"Product has not been synced yet!"),i())}var A=class t extends B{constructor(e,d,l){super(e);this.httpService=d;this._localDataService=l;this.destroy$=new F}variantList=[];OriginalList=[];LastSync;currency;destroy$;ngOnInit(){this.menuData$.subscribe(e=>{this.getVariants(),this.getSyncDate(),this.getCurrency()})}getVariants(){this._localDataService.findAllVariant().pipe(_(this.destroy$)).subscribe({next:e=>{this.OriginalList=e,this.variantList=this.OriginalList},error:e=>{console.error(e)}})}getSyncDate(){this._localDataService.getSyncTime().pipe(_(this.destroy$)).subscribe(e=>{this.LastSync=new Date(e.time)})}getCurrency(){this._localDataService.getPOSStorage().pipe(_(this.destroy$)).subscribe(e=>{e&&(this.currency=e.Currencies[0].Symbol)})}filterList(e){this.variantList=this.OriginalList.filter(d=>d.Name.includes(e))}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}static \u0275fac=function(d){return new(d||t)(f(j),f(L),f(Q))};static \u0275cmp=w({type:t,selectors:[["pos-products"]],standalone:!1,features:[$],decls:7,vars:4,consts:[[3,"textChange","pageData","hideSearchDropdown"],[1,"h5"],[1,"container-fluid","mt-5"],["id","tableGrid",1,"table"],[1,"text-center","mt-4"],[1,"fa-solid","fa-sync-alt"],[1,"thead-light","sticky-top-thead"],[1,"header"],[1,"text-start"],[1,"text-end"],[1,"table-footer"],["colspan","4",1,"text-start","empty-column"],[2,"max-width","100px"],[2,"max-width","300px"]],template:function(d,l){d&1&&(n(0,"mainpanel-cmp",0),y("textChange",function(I){return l.filterList(I)}),n(1,"actions"),s(2,Ve,4,4,"div",1),i(),n(3,"content")(4,"div",2),s(5,Le,21,7,"table",3)(6,Be,2,0,"h3",4),i()()()),d&2&&(k("pageData",l.menuData)("hideSearchDropdown",!0),o(2),m(l.LastSync?2:-1),o(3),m(l.variantList.length>0?5:6))},dependencies:[R,N,V,ee],encapsulation:2})};var je=[{path:"Products",component:A},{path:"Orders",component:H},{path:"**",redirectTo:"Products",pathMatch:"full"}],U=class t{static \u0275fac=function(e){return new(e||t)};static \u0275mod=M({type:t});static \u0275inj=P({imports:[z.forChild(je),z]})};var ne=class t{static \u0275fac=function(e){return new(e||t)};static \u0275mod=M({type:t});static \u0275inj=P({imports:[K,U,ie,te]})};export{ne as OfflineModule};
@@ -1,4 +1,4 @@
1
- import{a as zt,b as Yt}from"./chunk-JFLT7NX3.js";import{a as xo}from"./chunk-YXCPHYC5.js";import{a as Di}from"./chunk-W3VF2RCW.js";import{a as Bo}from"./chunk-DXBQR3VL.js";import{e as wo}from"./chunk-64RUCACD.js";import{b as ko}from"./chunk-YQUQYWX3.js";import{d as Ao}from"./chunk-B3STLAM7.js";import{a as No}from"./chunk-RJJYGGF6.js";import{a as Io}from"./chunk-GODXDKX5.js";import{a as he,b as Re,e as Lo}from"./chunk-PSJRHKCL.js";import{a as Do,b as Vo,c as Fo}from"./chunk-NVCUDJUL.js";import{a as Mo}from"./chunk-2MCEIRJY.js";import{a as jo}from"./chunk-23PKMU5D.js";import{b as Dn,c as Oo}from"./chunk-LS5TMLIT.js";import{a as lo}from"./chunk-AFBBEIKR.js";import{a as xt}from"./chunk-IFOBYW26.js";import{a as To}from"./chunk-SVUUS5JD.js";import{a as Mi,b as xi,c as Ii}from"./chunk-76RLGANX.js";import{b as Eo}from"./chunk-KYAKLZR7.js";import{a as Ro}from"./chunk-VP2ZEIJA.js";import{a as Ho}from"./chunk-3GPGJFQV.js";import{a as Ke}from"./chunk-J6U6UYNI.js";import{a as Oi,b as xe}from"./chunk-7PN2DG6D.js";import{a as Pn,b as Jt,c as On}from"./chunk-Z6RY34PQ.js";import{a as tt,b as mt,c as me}from"./chunk-NSNUUKNK.js";import{b as Po}from"./chunk-6H5P35AP.js";import{a as So}from"./chunk-DLNZDHGS.js";import{g as bo}from"./chunk-5DQ4MJJT.js";import{d as Pi}from"./chunk-QPOOLLKY.js";import{p as mo}from"./chunk-LOD3JYZW.js";import{d as co}from"./chunk-6GLKD66N.js";import{g as po}from"./chunk-M43HNBJQ.js";import{a as go,c as Dt}from"./chunk-KKLNFVVN.js";import{B as _o,C as oe,D as Oe,G as yo,u as ie,v as ne,w as Ot}from"./chunk-BA3BDB5Y.js";import{b as yi,c as $t}from"./chunk-C4WJKF7R.js";import{F as Mt,N as Si,O as U,g as fo,n as bi,o as ho,q as Co,t as vo}from"./chunk-T25N3EEG.js";import{d as Pt,e as uo}from"./chunk-7TBS7SPQ.js";import{a as rt}from"./chunk-RLQLFW36.js";import{a as fi,c as hi}from"./chunk-EQLHPWVB.js";import{a as ee,b as so,e as te,f as fe,g as we}from"./chunk-A45GTZVV.js";import{a as de}from"./chunk-2FWFPV5I.js";import{A as ro,B as ao,F as vi,c as Te,e as Ci,h as Pe,i as Xn,k as eo,l as et,n as to,o as Ee,p as io,s as St,x as no,y as oo}from"./chunk-RNLSEEMX.js";import{a as f,d as _i}from"./chunk-USJ6ILEE.js";import{a as Zn}from"./chunk-NETNL55X.js";import{$ as li,$b as Bn,$d as Kn,Ab as K,Bb as Z,Bc as y,Bd as $n,Ca as R,Cb as p,Cc as x,Db as a,Dc as X,E as ce,Eb as s,Ec as yt,Fb as b,Fd as Jn,Gb as V,Hb as Q,Hc as Qn,I as nt,Ib as Xe,Jb as Ct,Kb as vt,Kc as ae,Lb as pi,M as ht,Mb as E,N as Qe,Nb as Fn,Ob as S,Oc as bt,Pb as Ln,Pc as qt,Q as Fe,Qa as Je,Qb as m,Sa as dt,Ta as Vn,Tc as gi,Ub as Ut,Vb as Wt,Wb as Gt,Xa as l,Y as Le,Yd as zn,Zd as Yn,_b as ue,aa as Y,b as ri,be as F,cc as ui,cd as Be,d as Me,da as Ie,db as P,dc as d,e as be,ec as M,ed as Un,ee as ge,fa as le,fc as D,fd as Wn,gc as _t,hb as N,hc as Hn,ib as di,ic as B,id as Gn,jc as A,jd as qn,k as gt,kc as H,kd as ze,la as I,ma as ci,md as Ye,n as An,nb as $,o as ke,oa as g,od as q,p as ft,pa as T,q as ai,r as si,rd as Se,t as J,ta as v,tb as mi,u as $e,ua as _,uc as j,v as kn,vb as h,vc as Ue,wb as Sn,xb as C,xc as jn,yb as ot,zb as ve}from"./chunk-JYZTRN6N.js";import{a as ni,i as Ze,k as oi}from"./chunk-SNAKHGZS.js";var We=class{constructor(e){this.roleService=e;e&&this.setRole()}_Retrieve;_DateEditor;_NumberEditor;_PriceVisible;_UnitPriceEditor;_PricebookSelector;_Cost;_Return;_Discount;_SalesPerson;_PriceMinimum;_Payment;_CreditSalesLock;_CustomerInputLock;_PaymentCodeLock;_Shipping;_Tax;_DeleteItem;_BundlingPrice;_EmailRestriction;_ParkedDeletionAuthorized;_SellEditor;_ContactCreate;_PrepaidPackageCreate;_Order;_Reprint;_Contacts;_ContactsCreate;_InventoryView;_DebtView;_ClearCart;_SellDelete;_DeliveryEditor;_CouponInputLock;_Park;_Commission;setRole(){this._Retrieve=this.roleService.sell.RetrieveR,this._DateEditor=this.roleService.global.Date,this._NumberEditor=this.roleService.sell.Number,this._PriceVisible=this.roleService.sell.PriceVisible,this._SalesPerson=this.roleService.sell.SalesPerson,this._UnitPriceEditor=this.roleService.sell.UnitPriceEditor,this._PricebookSelector=this.roleService.sell.PricebookSelector,this._Cost=this.roleService.product.Cost,this._Return=this.roleService.sell.Return,this._Discount=this.roleService.sell.Discount,this._PriceMinimum=this.roleService.sell.PriceMinimum,this._Payment=this.roleService.sell.Payment,this._CreditSalesLock=this.roleService.sell.CreditSalesLock,this._CustomerInputLock=this.roleService.sell.CustomerInputLock,this._PaymentCodeLock=this.roleService.sell.PaymentCodeLock,this._Shipping=this.roleService.sell.Shipping,this._Tax=this.roleService.sell.Tax,this._DeleteItem=this.roleService.sell.DeleteItem,this._BundlingPrice=this.roleService.sell.BundlingPrice,this._EmailRestriction=this.roleService.sell.Email,this._SellEditor=this.roleService.sell.Edit,this._ContactCreate=this.roleService.contact.Create,this._PrepaidPackageCreate=this.roleService.prepaidPackage.Create,this._Order=this.roleService.order.View,this._Contacts=this.roleService.contact.View,this._ContactsCreate=this.roleService.contact.Create,this._InventoryView=this.roleService.inventory.View,this._DebtView=this.roleService.debt.View,this._ClearCart=this.roleService.sell.DeleteItem,this._SellDelete=this.roleService.sell.Delete,this._DeliveryEditor=this.roleService.logistic.Edit,this._Reprint=this.roleService.order.Print,this._CouponInputLock=this.roleService.sell.CouponInputLock,this._Park=this.roleService.sell.Park,this._Commission=this.roleService.product.CommissionView}get Park(){return this._Park}get CouponInputLock(){return this._CouponInputLock}set CouponInputLock(e){this._CouponInputLock=e}get Retrieve(){return this._Retrieve}get DateEditor(){return this._DateEditor}set DateEditor(e){this._DateEditor=e}get NumberEditor(){return this._NumberEditor}set NumberEditor(e){this._NumberEditor=e}get PriceVisible(){return this._PriceVisible}get UnitPriceEditor(){return this._UnitPriceEditor}set UnitPriceEditor(e){this._UnitPriceEditor=e}get PricebookSelector(){return this._PricebookSelector}set PricebookSelector(e){this._PricebookSelector=e}get Cost(){return this._Cost}get Return(){return this._Return}set Return(e){this._Return=e}get Discount(){return this._Discount}set Discount(e){this._Discount=e}get SalesPerson(){return this._SalesPerson}get PriceMinimum(){return this._PriceMinimum}get Payment(){return this._Payment}get CreditSalesLock(){return this._CreditSalesLock}get CustomerInputLock(){return this._CustomerInputLock}get PaymentCodeLock(){return this._PaymentCodeLock}get Shipping(){return this._Shipping}get Tax(){return this._Tax}set Tax(e){this._Tax=e}get DeleteItem(){return this._DeleteItem}set DeleteItem(e){this._DeleteItem=e}get BundlingPrice(){return this._BundlingPrice}get Email(){return this._EmailRestriction}get ParkedDeletionAuthorized(){return this._ParkedDeletionAuthorized}set ParkedDeletionAuthorized(e){this._ParkedDeletionAuthorized=e}get SellEditor(){return this._SellEditor}get PrepaidPackageCreate(){return this._PrepaidPackageCreate}get Order(){return this._Order}get Reprint(){return this._Reprint}get Contacts(){return this._Contacts}get ContactsCreate(){return this._ContactsCreate}get InventoryView(){return this._InventoryView}get DebtView(){return this._DebtView}get ClearCartRestriction(){return this._ClearCart}get SellDelete(){return this._SellDelete}get DeliveryEditor(){return this._DeliveryEditor}get Commission(){return this._Commission}};var Kt=class{DeliveryEntityID;Type;NewOrderID;constructor(){this.DeliveryEntityID="",this.Type=3}};var Ti=class{Type;Amount;Notification;ApplyToProduct;Requirement};var G=class{Order;Invoice;Shipping;Action;Payments;Items;CartItems;Promotion;ContactName;SplitParkLabel;get cartQuantity(){let e=0;for(let t of this.CartItems)e+=t.Quantity;return e}constructor(){this.Order=new Dn,this.Invoice=new Jt,this.Shipping=new On,this.Action=new Kt,this.Payments=Array(),this.Items=Array(),this.CartItems=Array(),this.ContactName=""}get TotalPaidAmount(){let e=0;return this.Payments.forEach(t=>{e+=t.PaidAmount}),e}get RedeemableAmount(){let e=this.CartItems.filter(t=>t.Variant.PaymentTypeID!=1);return this.GetAmountByCart(e)}get TotalQuantity(){let e=0;return this.CartItems.forEach(t=>{t.PromotionGift||(e+=t.Quantity)}),e}get CashOnlyAmount(){let e=this.CartItems.filter(t=>t.Variant.PaymentTypeID==1);return this.GetAmountByCart(e)}get PointOnlyAmount(){let e=this.CartItems.filter(t=>t.Variant.PaymentTypeID==2);return this.GetAmountByCart(e)}get PrepaidPackageItem(){return this.CartItems.filter(t=>t.Variant.TypeID==10)}GetAmountByCart(e){let t=0;return e.forEach(i=>{t+=i.Total}),t=t*(100-this.Order.Discount)/100,t=t*(100-this.Order.Discount2)/100,t}getRewards(){return this.CartItems.filter(t=>t.PromotionGift)}};Ze([tt(()=>Dn)],G.prototype,"Order",2),Ze([tt(()=>Jt)],G.prototype,"Invoice",2),Ze([tt(()=>On)],G.prototype,"Shipping",2),Ze([tt(()=>Kt)],G.prototype,"Action",2),Ze([tt(()=>Ke)],G.prototype,"Payments",2),Ze([tt(()=>Oi)],G.prototype,"Items",2),Ze([tt(()=>xe)],G.prototype,"CartItems",2),Ze([tt(()=>Ti)],G.prototype,"Promotion",2);var Ei=class{Success;Message;message;ObjectID;SalesOrderID;OutDeliveryID;Contact;LoyaltyPoint;InvoiceNumber;Creator;OrderTimeString;PrintMode;PaymentStateID;PaymentStateLabel;Final;InvoiceNumberResult;constructor(){this.Success=!0,this.Message="",this.ObjectID="",this.SalesOrderID="",this.OutDeliveryID="",this.Contact=null,this.LoyaltyPoint="",this.InvoiceNumber="",this.Creator="",this.OrderTimeString="",this.PrintMode=0,this.PaymentStateID=0,this.PaymentStateLabel="",this.Final=0}};var It=class n{constructor(e,t,i,o){this.httpService=e;this._localDataService=t;this._onlineStatusService=i;this._toastrService=o;this._onlineStatusService.getOnlineStatus$().subscribe(r=>{this.isOnline=r})}_Data=new be(null);Data$=this._Data.pipe(Fe(),ce(e=>e!==null));isOnline;get Data(){return this._Data.value}pushNewValue(e){this._Data.next(e)}getSalesOrderPrint(e){return this.httpService.post("/API/POS/GetSalesOrderPrint",{TemplateID:e})}submitOrder(e,t){let i=this.generatePOSDataForSubmission(e,this.isOnline);if(this.isOnline)return this.submitOnline(i).pipe(this.handleTimeOutError(i));if(t.ModuleSell.EnableOfflineTransaction)return this._localDataService.syncOrder(i).pipe(J(()=>this.generateCompleteData(i)));this._toastrService.warning("Offline order is not Supported!","Info!")}uploadOfflineOrder(e){return this._localDataService.uploadSingleOrder(e).pipe(nt(t=>t?.message?.includes("objectStore does not exists")?this.submitOnline(e):ft(()=>t)))}submitOnline(e){return this.httpService.post(U.SubmitOrder,e,Zn.pos.submitOrderTimeout)}handleTimeOutError(e){return ri(nt(t=>{if(t instanceof si||t?.name=="TimeoutError"){let i=this.generateCompleteData(e);this.pushNewValue(i)}throw t}))}generatePOSDataForSubmission(e,t=!0){let i=Object.assign(new G,e);i.Items=[],i.Order.CustomerID==null&&(i.Order.CustomerID=f.GuidEmpty),i.Order.SalesID==null&&(i.Order.SalesID=f.GuidEmpty);let o=1;i.Payments=i.Payments.map(c=>(c.Date=i.Order.Date,c.Index=o,o++,delete c.TypeID,c));let r=1;for(let c of i.CartItems){let u=new Oi;u.ID=c.ID,u.VariantID=c.VariantID,u.Quantity=c.Quantity,u.Cost=c.Cost,u.Price=c.Price,u.Discount=c.Discount,u.DiscountAmount=c.DiscountAmount,u.Note=c.Note,u.Taxable=c.Variant.Taxable,u.LoyaltyPoint=c.LoyaltyPoint,u.UnitCost=c.Cost,u.UnitPrice=c.Price,u.UnitPriceOriginal=c.UnitPriceOriginal,u.UnitExpense=c.UnitExpense,u.EntityID=c.EntityID,u.Index=r,u.UnitQuantity=c.UnitQuantity,u.PriceTypeID=c.PriceTypeID,u.PriceNote=c.PriceNote,u.Splited=c.SplitQuantity>0,u.SplitQuantity=c.SplitQuantity,u.InventoryTypeID=c.Variant.TypeID,u.SalesID="",u.Serial=c.Serial,c.SalesID&&(u.SalesID=c.SalesID),delete c.CouponDiscount,i.Items.push(u),r++}return t?(delete i.CartItems,delete i.Order.ClientTimestamp):i.Order.ClientTimestamp=new Date,i}generateCompleteData(e){let t=new Ei;return t.InvoiceNumber=e.Order.Number,t.OrderTimeString=new Date().toString(),t.PaymentStateID=e.Action?.Type,t.PaymentStateLabel="Offline",t.Success=!0,t.OutDeliveryID=e.Action.DeliveryEntityID,t}GetReturnInvoice(e,t){return this.httpService.get(U.ReturInvoice,[{key:"EntityID",value:t},{key:"Number",value:e}])}GetInvoiceBySoID(e){return this.httpService.get(U.GetPOSDataByID,[{key:"ID",value:e}])}UploadCSV(e,t){let i={CartItems:e,EntityID:t};return this.httpService.post(U.UploadCsv,i)}sendEmail(e,t){return new Promise((i,o)=>{this._localDataService.isProductFromServer().subscribe(r=>{if(r){let c={invoiceID:t,email:e};this.httpService.post(U.SendInvoiceEmail,c).subscribe({next:u=>{i(u)},error:u=>{o(u)}})}else o(oe.wrongOfflineAction)})})}sendWhatsaap(e,t){let i={InvoiceID:e,PhoneNumber:t};return this.httpService.post(U.SendInvoiceWhatsapp,i)}createCustomerByInvoice(e,t){let i={InvoiceID:e,Mobile:t};return this.httpService.post(U.CreateCustomerInvoice,i)}saveCommission(e,t){let i={SOID:e,commission:t};return this.httpService.POSText("/API/Transaction/SetCommission",i)}generateReceiptA4(e){let t={ID:e};return this.httpService.post(U.InvoiceA4,t)}getVacant(e){return this.httpService.get(U.GetVacant,[{key:"EntityID",value:e}])}static \u0275fac=function(t){return new(t||n)(g(ge),g(Oe),g(he),g(F))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var Xt=(r=>(r[r.cash=1]="cash",r[r.card=2]="card",r[r.emoney=3]="emoney",r[r.other=4]="other",r[r.ECR=99]="ECR",r))(Xt||{});var L=class n{constructor(e,t,i){this._OrderHttpService=e;this._customerHttpService=t;this._toastrService=i}_Data=new be(new G);transaction_id;Data$=this._Data.asObservable();get Data(){return this._Data.value}pushNewValue(e){if(e)this._Data.next(e);else{let t=this.Data;this._Data.next(t)}}submitOrder(e){return new Promise((t,i)=>{this.checkTransactionId(),this._OrderHttpService.submitOrder(this.Data,e).subscribe({next:o=>{t(o)},error:o=>{this.Data.Items=[],i(o)}})})}uploadOfflineOrder(){return this.checkTransactionId(),this._OrderHttpService.uploadOfflineOrder(this.Data)}checkTransactionId(){let t=this.Data.Payments.find(i=>i.TypeID==3);f.IsNotEmpty(t)&&f.IsEmpty(this.transaction_id)&&this._toastrService.warning("Midtrans transaction_id is empty. Please verify manually!","Mobile Payment Failure")}updateCustomerID(e){return this.Data.Order.CustomerID=e,this.pushNewValue(this.Data),new Promise((t,i)=>{this._customerHttpService.GetPrivilegeByID(e,this.Data.Order.EntityID).subscribe({next:o=>{this._customerHttpService.Data=o,this.pushNewValue(this.Data),t(o)},error:o=>{this.Data.Order.CustomerID=null,this.Data.ContactName=null;let r=o.error?.Message;o.status==409?this._toastrService.warning(r,"Warning"):this._toastrService.error(r,`API Error - ${o.status}`),i(o)}})})}static \u0275fac=function(t){return new(t||n)(g(It),g(Re),g(F))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var z=class n{constructor(e,t,i){this._localDataService=e;this._onlineStatusService=t;this._httpService=i;this._onlineStatusService.getOnlineStatus$().subscribe(o=>{this.isOnline=o})}_Data=new be(null);Data$=this._Data.asObservable().pipe(ce(e=>e!==null),Fe());isOnline;get Data(){return this._Data.value}pushNewValue(e){this._Data.next(e)}requestObservable(){return this.isOnline?this._httpService.get(U.GetPOSStorage).pipe(J(e=>({data:e,type:"Online"}))):this._localDataService.getPOSStorage().pipe(ce(e=>e!=null),J(e=>({data:e,type:"Offline"})))}getOutletName(e){return this.Data.Entities.find(i=>i.ID==e)?.Name}static \u0275fac=function(t){return new(t||n)(g(Oe),g(he),g(ge))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var De=class n{constructor(e){this.roleService=e;this.pushNewValue(new We(e))}_Data=new be(new We(null));get Data(){return this._Data.value}Data$=this._Data.asObservable();pushNewValue(e){this._Data.next(e)}static \u0275fac=function(t){return new(t||n)(g(_i))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var ti=class{ID;Code;EntityID;Name;Description;Start;StartDisplay;State;Open;CashierID;OpeningCash;EntityName;LoginID;Active;CustomerDisplayEnabled;OvoConfigurationID;CustomerDisplayID;ListImage;Suspended};var wi=class n{odsConfigType=R(0);setODSConfig(e){this.odsConfigType.set(e)}isEnabled(){return this.odsConfigType()>0}static \u0275fac=function(t){return new(t||n)};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var sr=n=>({active:n}),lr=n=>({gray:n});function cr(n,e){if(n&1){let t=E();a(0,"span",15),S("click",function(o){v(t);let r=m().$implicit;return m().closeRegister(r),_(o.stopPropagation())}),s()}}function dr(n,e){n&1&&(a(0,"div")(1,"span",16),d(2,"VACANT"),s()())}function mr(n,e){if(n&1&&(a(0,"div")(1,"span",17),b(2,"i",18),a(3,"span",19),d(4),s()(),a(5,"span",20),b(6,"i",21),a(7,"span",19),d(8),s()()()),n&2){let t=m().$implicit;l(4),M(t.LoginID),l(4),D("",t.StartDisplay.split(" ")[3]," - Now")}}function pr(n,e){if(n&1){let t=E();a(0,"div",8)(1,"div",9)(2,"div",10)(3,"h5",11),S("click",function(){let o=v(t).$implicit,r=m();return _(r.select(o))}),a(4,"span"),b(5,"i",12),d(6),y(7,"limitTo"),s(),h(8,cr,1,0,"span",13),s(),a(9,"div",14),S("click",function(){let o=v(t).$implicit,r=m();return _(r.select(o))}),h(10,dr,3,0,"div")(11,mr,9,2,"div"),s()()()()}if(n&2){let t,i=e.$implicit,o=m();l(),p("ngClass",i.Active?"active":""),l(),p("ngClass",j(9,sr,(i==null?null:i.ID)==(o.selectedRegister==null?null:o.selectedRegister.ID))),l(),p("ngClass",j(11,lr,i!=o.selectedRegister)),l(3),M(X(7,6,i.Name,15)),l(2),C(i.State!="Close"?8:-1),l(2),C((t=i.State)==="Close"?10:t==="Open"?11:-1)}}var Ri=class n{constructor(e,t,i,o,r,c,u){this._dialogRef=e;this._outletService=t;this._posService=i;this._userRoleService=o;this.router=r;this.httpService=c;this._odsService=u}originalSelectedRegister=null;registers;searchInput="";selectedRegister=new ti;modalConfig=new ie;role;get AppConfigJSON(){return this._posService.Data.AppConfigJSON}destroy$=new Me;ngOnInit(){this.subscribeToObsChanges(),this.initModalConfig()}subscribeToObsChanges(){this._posService.Data$.pipe(Ie(this.destroy$)).subscribe(e=>{this.registers=e.Registers}),this._outletService.Data$.pipe(Ie(this.destroy$)).subscribe(e=>{this.selectedRegister=this.findOutletRegisterById(e.RegisterID),this.originalSelectedRegister=this.selectedRegister?ni({},this.selectedRegister):null}),this._userRoleService.Data$.pipe(Ie(this.destroy$)).subscribe(e=>{this.role=e})}findOutletRegisterById(e){let t=this.registers.find(i=>i.ID===e);return t||new ti}initModalConfig(){this.modalConfig.hideFooter=!0,this.modalConfig.hideScrollbar=!0,this.modalConfig.title="Choose an outlet"}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}onClose(){this._dialogRef.close()}select(e){if(this.AppConfigJSON.ModuleShift.Closure.Enabled)if(this.selectedRegister.ID!=null&&this.selectedRegister.Open&&e.CashierID==null)confirm("You already have an active register with "+this.selectedRegister.Name+`!
1
+ import{a as zt,b as Yt}from"./chunk-JFLT7NX3.js";import{a as xo}from"./chunk-YXCPHYC5.js";import{a as Di}from"./chunk-W3VF2RCW.js";import{a as Bo}from"./chunk-DXBQR3VL.js";import{e as wo}from"./chunk-64RUCACD.js";import{b as ko}from"./chunk-YQUQYWX3.js";import{d as Ao}from"./chunk-B3STLAM7.js";import{a as No}from"./chunk-RJJYGGF6.js";import{a as Io}from"./chunk-GODXDKX5.js";import{a as he,b as Re,e as Lo}from"./chunk-PSJRHKCL.js";import{a as Do,b as Vo,c as Fo}from"./chunk-NVCUDJUL.js";import{a as Mo}from"./chunk-2MCEIRJY.js";import{a as jo}from"./chunk-23PKMU5D.js";import{b as Dn,c as Oo}from"./chunk-LS5TMLIT.js";import{a as lo}from"./chunk-AFBBEIKR.js";import{a as xt}from"./chunk-IFOBYW26.js";import{a as To}from"./chunk-SVUUS5JD.js";import{a as Mi,b as xi,c as Ii}from"./chunk-76RLGANX.js";import{b as Eo}from"./chunk-KYAKLZR7.js";import{a as Ro}from"./chunk-VP2ZEIJA.js";import{a as Ho}from"./chunk-3GPGJFQV.js";import{a as Ke}from"./chunk-J6U6UYNI.js";import{a as Oi,b as xe}from"./chunk-7PN2DG6D.js";import{a as Pn,b as Jt,c as On}from"./chunk-Z6RY34PQ.js";import{a as tt,b as mt,c as me}from"./chunk-NSNUUKNK.js";import{b as Po}from"./chunk-6H5P35AP.js";import{a as So}from"./chunk-DLNZDHGS.js";import{g as bo}from"./chunk-5DQ4MJJT.js";import{d as Pi}from"./chunk-QPOOLLKY.js";import{p as mo}from"./chunk-LOD3JYZW.js";import{d as co}from"./chunk-6GLKD66N.js";import{g as po}from"./chunk-M43HNBJQ.js";import{a as go,c as Dt}from"./chunk-KKLNFVVN.js";import{B as _o,C as oe,D as Oe,G as yo,u as ie,v as ne,w as Ot}from"./chunk-BA3BDB5Y.js";import{b as yi,c as $t}from"./chunk-C4WJKF7R.js";import{F as Mt,N as Si,O as U,g as fo,n as bi,o as ho,q as Co,t as vo}from"./chunk-T25N3EEG.js";import{d as Pt,e as uo}from"./chunk-7TBS7SPQ.js";import{a as rt}from"./chunk-RLQLFW36.js";import{a as fi,c as hi}from"./chunk-EQLHPWVB.js";import{a as ee,b as so,e as te,f as fe,g as we}from"./chunk-A45GTZVV.js";import{a as de}from"./chunk-2FWFPV5I.js";import{A as ro,B as ao,F as vi,c as Te,e as Ci,h as Pe,i as Xn,k as eo,l as et,n as to,o as Ee,p as io,s as St,x as no,y as oo}from"./chunk-RNLSEEMX.js";import{a as f,d as _i}from"./chunk-USJ6ILEE.js";import{a as Zn}from"./chunk-BJF3WGIP.js";import{$ as li,$b as Bn,$d as Kn,Ab as K,Bb as Z,Bc as y,Bd as $n,Ca as R,Cb as p,Cc as x,Db as a,Dc as X,E as ce,Eb as s,Ec as yt,Fb as b,Fd as Jn,Gb as V,Hb as Q,Hc as Qn,I as nt,Ib as Xe,Jb as Ct,Kb as vt,Kc as ae,Lb as pi,M as ht,Mb as E,N as Qe,Nb as Fn,Ob as S,Oc as bt,Pb as Ln,Pc as qt,Q as Fe,Qa as Je,Qb as m,Sa as dt,Ta as Vn,Tc as gi,Ub as Ut,Vb as Wt,Wb as Gt,Xa as l,Y as Le,Yd as zn,Zd as Yn,_b as ue,aa as Y,b as ri,be as F,cc as ui,cd as Be,d as Me,da as Ie,db as P,dc as d,e as be,ec as M,ed as Un,ee as ge,fa as le,fc as D,fd as Wn,gc as _t,hb as N,hc as Hn,ib as di,ic as B,id as Gn,jc as A,jd as qn,k as gt,kc as H,kd as ze,la as I,ma as ci,md as Ye,n as An,nb as $,o as ke,oa as g,od as q,p as ft,pa as T,q as ai,r as si,rd as Se,t as J,ta as v,tb as mi,u as $e,ua as _,uc as j,v as kn,vb as h,vc as Ue,wb as Sn,xb as C,xc as jn,yb as ot,zb as ve}from"./chunk-JYZTRN6N.js";import{a as ni,i as Ze,k as oi}from"./chunk-SNAKHGZS.js";var We=class{constructor(e){this.roleService=e;e&&this.setRole()}_Retrieve;_DateEditor;_NumberEditor;_PriceVisible;_UnitPriceEditor;_PricebookSelector;_Cost;_Return;_Discount;_SalesPerson;_PriceMinimum;_Payment;_CreditSalesLock;_CustomerInputLock;_PaymentCodeLock;_Shipping;_Tax;_DeleteItem;_BundlingPrice;_EmailRestriction;_ParkedDeletionAuthorized;_SellEditor;_ContactCreate;_PrepaidPackageCreate;_Order;_Reprint;_Contacts;_ContactsCreate;_InventoryView;_DebtView;_ClearCart;_SellDelete;_DeliveryEditor;_CouponInputLock;_Park;_Commission;setRole(){this._Retrieve=this.roleService.sell.RetrieveR,this._DateEditor=this.roleService.global.Date,this._NumberEditor=this.roleService.sell.Number,this._PriceVisible=this.roleService.sell.PriceVisible,this._SalesPerson=this.roleService.sell.SalesPerson,this._UnitPriceEditor=this.roleService.sell.UnitPriceEditor,this._PricebookSelector=this.roleService.sell.PricebookSelector,this._Cost=this.roleService.product.Cost,this._Return=this.roleService.sell.Return,this._Discount=this.roleService.sell.Discount,this._PriceMinimum=this.roleService.sell.PriceMinimum,this._Payment=this.roleService.sell.Payment,this._CreditSalesLock=this.roleService.sell.CreditSalesLock,this._CustomerInputLock=this.roleService.sell.CustomerInputLock,this._PaymentCodeLock=this.roleService.sell.PaymentCodeLock,this._Shipping=this.roleService.sell.Shipping,this._Tax=this.roleService.sell.Tax,this._DeleteItem=this.roleService.sell.DeleteItem,this._BundlingPrice=this.roleService.sell.BundlingPrice,this._EmailRestriction=this.roleService.sell.Email,this._SellEditor=this.roleService.sell.Edit,this._ContactCreate=this.roleService.contact.Create,this._PrepaidPackageCreate=this.roleService.prepaidPackage.Create,this._Order=this.roleService.order.View,this._Contacts=this.roleService.contact.View,this._ContactsCreate=this.roleService.contact.Create,this._InventoryView=this.roleService.inventory.View,this._DebtView=this.roleService.debt.View,this._ClearCart=this.roleService.sell.DeleteItem,this._SellDelete=this.roleService.sell.Delete,this._DeliveryEditor=this.roleService.logistic.Edit,this._Reprint=this.roleService.order.Print,this._CouponInputLock=this.roleService.sell.CouponInputLock,this._Park=this.roleService.sell.Park,this._Commission=this.roleService.product.CommissionView}get Park(){return this._Park}get CouponInputLock(){return this._CouponInputLock}set CouponInputLock(e){this._CouponInputLock=e}get Retrieve(){return this._Retrieve}get DateEditor(){return this._DateEditor}set DateEditor(e){this._DateEditor=e}get NumberEditor(){return this._NumberEditor}set NumberEditor(e){this._NumberEditor=e}get PriceVisible(){return this._PriceVisible}get UnitPriceEditor(){return this._UnitPriceEditor}set UnitPriceEditor(e){this._UnitPriceEditor=e}get PricebookSelector(){return this._PricebookSelector}set PricebookSelector(e){this._PricebookSelector=e}get Cost(){return this._Cost}get Return(){return this._Return}set Return(e){this._Return=e}get Discount(){return this._Discount}set Discount(e){this._Discount=e}get SalesPerson(){return this._SalesPerson}get PriceMinimum(){return this._PriceMinimum}get Payment(){return this._Payment}get CreditSalesLock(){return this._CreditSalesLock}get CustomerInputLock(){return this._CustomerInputLock}get PaymentCodeLock(){return this._PaymentCodeLock}get Shipping(){return this._Shipping}get Tax(){return this._Tax}set Tax(e){this._Tax=e}get DeleteItem(){return this._DeleteItem}set DeleteItem(e){this._DeleteItem=e}get BundlingPrice(){return this._BundlingPrice}get Email(){return this._EmailRestriction}get ParkedDeletionAuthorized(){return this._ParkedDeletionAuthorized}set ParkedDeletionAuthorized(e){this._ParkedDeletionAuthorized=e}get SellEditor(){return this._SellEditor}get PrepaidPackageCreate(){return this._PrepaidPackageCreate}get Order(){return this._Order}get Reprint(){return this._Reprint}get Contacts(){return this._Contacts}get ContactsCreate(){return this._ContactsCreate}get InventoryView(){return this._InventoryView}get DebtView(){return this._DebtView}get ClearCartRestriction(){return this._ClearCart}get SellDelete(){return this._SellDelete}get DeliveryEditor(){return this._DeliveryEditor}get Commission(){return this._Commission}};var Kt=class{DeliveryEntityID;Type;NewOrderID;constructor(){this.DeliveryEntityID="",this.Type=3}};var Ti=class{Type;Amount;Notification;ApplyToProduct;Requirement};var G=class{Order;Invoice;Shipping;Action;Payments;Items;CartItems;Promotion;ContactName;SplitParkLabel;get cartQuantity(){let e=0;for(let t of this.CartItems)e+=t.Quantity;return e}constructor(){this.Order=new Dn,this.Invoice=new Jt,this.Shipping=new On,this.Action=new Kt,this.Payments=Array(),this.Items=Array(),this.CartItems=Array(),this.ContactName=""}get TotalPaidAmount(){let e=0;return this.Payments.forEach(t=>{e+=t.PaidAmount}),e}get RedeemableAmount(){let e=this.CartItems.filter(t=>t.Variant.PaymentTypeID!=1);return this.GetAmountByCart(e)}get TotalQuantity(){let e=0;return this.CartItems.forEach(t=>{t.PromotionGift||(e+=t.Quantity)}),e}get CashOnlyAmount(){let e=this.CartItems.filter(t=>t.Variant.PaymentTypeID==1);return this.GetAmountByCart(e)}get PointOnlyAmount(){let e=this.CartItems.filter(t=>t.Variant.PaymentTypeID==2);return this.GetAmountByCart(e)}get PrepaidPackageItem(){return this.CartItems.filter(t=>t.Variant.TypeID==10)}GetAmountByCart(e){let t=0;return e.forEach(i=>{t+=i.Total}),t=t*(100-this.Order.Discount)/100,t=t*(100-this.Order.Discount2)/100,t}getRewards(){return this.CartItems.filter(t=>t.PromotionGift)}};Ze([tt(()=>Dn)],G.prototype,"Order",2),Ze([tt(()=>Jt)],G.prototype,"Invoice",2),Ze([tt(()=>On)],G.prototype,"Shipping",2),Ze([tt(()=>Kt)],G.prototype,"Action",2),Ze([tt(()=>Ke)],G.prototype,"Payments",2),Ze([tt(()=>Oi)],G.prototype,"Items",2),Ze([tt(()=>xe)],G.prototype,"CartItems",2),Ze([tt(()=>Ti)],G.prototype,"Promotion",2);var Ei=class{Success;Message;message;ObjectID;SalesOrderID;OutDeliveryID;Contact;LoyaltyPoint;InvoiceNumber;Creator;OrderTimeString;PrintMode;PaymentStateID;PaymentStateLabel;Final;InvoiceNumberResult;constructor(){this.Success=!0,this.Message="",this.ObjectID="",this.SalesOrderID="",this.OutDeliveryID="",this.Contact=null,this.LoyaltyPoint="",this.InvoiceNumber="",this.Creator="",this.OrderTimeString="",this.PrintMode=0,this.PaymentStateID=0,this.PaymentStateLabel="",this.Final=0}};var It=class n{constructor(e,t,i,o){this.httpService=e;this._localDataService=t;this._onlineStatusService=i;this._toastrService=o;this._onlineStatusService.getOnlineStatus$().subscribe(r=>{this.isOnline=r})}_Data=new be(null);Data$=this._Data.pipe(Fe(),ce(e=>e!==null));isOnline;get Data(){return this._Data.value}pushNewValue(e){this._Data.next(e)}getSalesOrderPrint(e){return this.httpService.post("/API/POS/GetSalesOrderPrint",{TemplateID:e})}submitOrder(e,t){let i=this.generatePOSDataForSubmission(e,this.isOnline);if(this.isOnline)return this.submitOnline(i).pipe(this.handleTimeOutError(i));if(t.ModuleSell.EnableOfflineTransaction)return this._localDataService.syncOrder(i).pipe(J(()=>this.generateCompleteData(i)));this._toastrService.warning("Offline order is not Supported!","Info!")}uploadOfflineOrder(e){return this._localDataService.uploadSingleOrder(e).pipe(nt(t=>t?.message?.includes("objectStore does not exists")?this.submitOnline(e):ft(()=>t)))}submitOnline(e){return this.httpService.post(U.SubmitOrder,e,Zn.pos.submitOrderTimeout)}handleTimeOutError(e){return ri(nt(t=>{if(t instanceof si||t?.name=="TimeoutError"){let i=this.generateCompleteData(e);this.pushNewValue(i)}throw t}))}generatePOSDataForSubmission(e,t=!0){let i=Object.assign(new G,e);i.Items=[],i.Order.CustomerID==null&&(i.Order.CustomerID=f.GuidEmpty),i.Order.SalesID==null&&(i.Order.SalesID=f.GuidEmpty);let o=1;i.Payments=i.Payments.map(c=>(c.Date=i.Order.Date,c.Index=o,o++,delete c.TypeID,c));let r=1;for(let c of i.CartItems){let u=new Oi;u.ID=c.ID,u.VariantID=c.VariantID,u.Quantity=c.Quantity,u.Cost=c.Cost,u.Price=c.Price,u.Discount=c.Discount,u.DiscountAmount=c.DiscountAmount,u.Note=c.Note,u.Taxable=c.Variant.Taxable,u.LoyaltyPoint=c.LoyaltyPoint,u.UnitCost=c.Cost,u.UnitPrice=c.Price,u.UnitPriceOriginal=c.UnitPriceOriginal,u.UnitExpense=c.UnitExpense,u.EntityID=c.EntityID,u.Index=r,u.UnitQuantity=c.UnitQuantity,u.PriceTypeID=c.PriceTypeID,u.PriceNote=c.PriceNote,u.Splited=c.SplitQuantity>0,u.SplitQuantity=c.SplitQuantity,u.InventoryTypeID=c.Variant.TypeID,u.SalesID="",u.Serial=c.Serial,c.SalesID&&(u.SalesID=c.SalesID),delete c.CouponDiscount,i.Items.push(u),r++}return t?(delete i.CartItems,delete i.Order.ClientTimestamp):i.Order.ClientTimestamp=new Date,i}generateCompleteData(e){let t=new Ei;return t.InvoiceNumber=e.Order.Number,t.OrderTimeString=new Date().toString(),t.PaymentStateID=e.Action?.Type,t.PaymentStateLabel="Offline",t.Success=!0,t.OutDeliveryID=e.Action.DeliveryEntityID,t}GetReturnInvoice(e,t){return this.httpService.get(U.ReturInvoice,[{key:"EntityID",value:t},{key:"Number",value:e}])}GetInvoiceBySoID(e){return this.httpService.get(U.GetPOSDataByID,[{key:"ID",value:e}])}UploadCSV(e,t){let i={CartItems:e,EntityID:t};return this.httpService.post(U.UploadCsv,i)}sendEmail(e,t){return new Promise((i,o)=>{this._localDataService.isProductFromServer().subscribe(r=>{if(r){let c={invoiceID:t,email:e};this.httpService.post(U.SendInvoiceEmail,c).subscribe({next:u=>{i(u)},error:u=>{o(u)}})}else o(oe.wrongOfflineAction)})})}sendWhatsaap(e,t){let i={InvoiceID:e,PhoneNumber:t};return this.httpService.post(U.SendInvoiceWhatsapp,i)}createCustomerByInvoice(e,t){let i={InvoiceID:e,Mobile:t};return this.httpService.post(U.CreateCustomerInvoice,i)}saveCommission(e,t){let i={SOID:e,commission:t};return this.httpService.POSText("/API/Transaction/SetCommission",i)}generateReceiptA4(e){let t={ID:e};return this.httpService.post(U.InvoiceA4,t)}getVacant(e){return this.httpService.get(U.GetVacant,[{key:"EntityID",value:e}])}static \u0275fac=function(t){return new(t||n)(g(ge),g(Oe),g(he),g(F))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var Xt=(r=>(r[r.cash=1]="cash",r[r.card=2]="card",r[r.emoney=3]="emoney",r[r.other=4]="other",r[r.ECR=99]="ECR",r))(Xt||{});var L=class n{constructor(e,t,i){this._OrderHttpService=e;this._customerHttpService=t;this._toastrService=i}_Data=new be(new G);transaction_id;Data$=this._Data.asObservable();get Data(){return this._Data.value}pushNewValue(e){if(e)this._Data.next(e);else{let t=this.Data;this._Data.next(t)}}submitOrder(e){return new Promise((t,i)=>{this.checkTransactionId(),this._OrderHttpService.submitOrder(this.Data,e).subscribe({next:o=>{t(o)},error:o=>{this.Data.Items=[],i(o)}})})}uploadOfflineOrder(){return this.checkTransactionId(),this._OrderHttpService.uploadOfflineOrder(this.Data)}checkTransactionId(){let t=this.Data.Payments.find(i=>i.TypeID==3);f.IsNotEmpty(t)&&f.IsEmpty(this.transaction_id)&&this._toastrService.warning("Midtrans transaction_id is empty. Please verify manually!","Mobile Payment Failure")}updateCustomerID(e){return this.Data.Order.CustomerID=e,this.pushNewValue(this.Data),new Promise((t,i)=>{this._customerHttpService.GetPrivilegeByID(e,this.Data.Order.EntityID).subscribe({next:o=>{this._customerHttpService.Data=o,this.pushNewValue(this.Data),t(o)},error:o=>{this.Data.Order.CustomerID=null,this.Data.ContactName=null;let r=o.error?.Message;o.status==409?this._toastrService.warning(r,"Warning"):this._toastrService.error(r,`API Error - ${o.status}`),i(o)}})})}static \u0275fac=function(t){return new(t||n)(g(It),g(Re),g(F))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var z=class n{constructor(e,t,i){this._localDataService=e;this._onlineStatusService=t;this._httpService=i;this._onlineStatusService.getOnlineStatus$().subscribe(o=>{this.isOnline=o})}_Data=new be(null);Data$=this._Data.asObservable().pipe(ce(e=>e!==null),Fe());isOnline;get Data(){return this._Data.value}pushNewValue(e){this._Data.next(e)}requestObservable(){return this.isOnline?this._httpService.get(U.GetPOSStorage).pipe(J(e=>({data:e,type:"Online"}))):this._localDataService.getPOSStorage().pipe(ce(e=>e!=null),J(e=>({data:e,type:"Offline"})))}getOutletName(e){return this.Data.Entities.find(i=>i.ID==e)?.Name}static \u0275fac=function(t){return new(t||n)(g(Oe),g(he),g(ge))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var De=class n{constructor(e){this.roleService=e;this.pushNewValue(new We(e))}_Data=new be(new We(null));get Data(){return this._Data.value}Data$=this._Data.asObservable();pushNewValue(e){this._Data.next(e)}static \u0275fac=function(t){return new(t||n)(g(_i))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var ti=class{ID;Code;EntityID;Name;Description;Start;StartDisplay;State;Open;CashierID;OpeningCash;EntityName;LoginID;Active;CustomerDisplayEnabled;OvoConfigurationID;CustomerDisplayID;ListImage;Suspended};var wi=class n{odsConfigType=R(0);setODSConfig(e){this.odsConfigType.set(e)}isEnabled(){return this.odsConfigType()>0}static \u0275fac=function(t){return new(t||n)};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var sr=n=>({active:n}),lr=n=>({gray:n});function cr(n,e){if(n&1){let t=E();a(0,"span",15),S("click",function(o){v(t);let r=m().$implicit;return m().closeRegister(r),_(o.stopPropagation())}),s()}}function dr(n,e){n&1&&(a(0,"div")(1,"span",16),d(2,"VACANT"),s()())}function mr(n,e){if(n&1&&(a(0,"div")(1,"span",17),b(2,"i",18),a(3,"span",19),d(4),s()(),a(5,"span",20),b(6,"i",21),a(7,"span",19),d(8),s()()()),n&2){let t=m().$implicit;l(4),M(t.LoginID),l(4),D("",t.StartDisplay.split(" ")[3]," - Now")}}function pr(n,e){if(n&1){let t=E();a(0,"div",8)(1,"div",9)(2,"div",10)(3,"h5",11),S("click",function(){let o=v(t).$implicit,r=m();return _(r.select(o))}),a(4,"span"),b(5,"i",12),d(6),y(7,"limitTo"),s(),h(8,cr,1,0,"span",13),s(),a(9,"div",14),S("click",function(){let o=v(t).$implicit,r=m();return _(r.select(o))}),h(10,dr,3,0,"div")(11,mr,9,2,"div"),s()()()()}if(n&2){let t,i=e.$implicit,o=m();l(),p("ngClass",i.Active?"active":""),l(),p("ngClass",j(9,sr,(i==null?null:i.ID)==(o.selectedRegister==null?null:o.selectedRegister.ID))),l(),p("ngClass",j(11,lr,i!=o.selectedRegister)),l(3),M(X(7,6,i.Name,15)),l(2),C(i.State!="Close"?8:-1),l(2),C((t=i.State)==="Close"?10:t==="Open"?11:-1)}}var Ri=class n{constructor(e,t,i,o,r,c,u){this._dialogRef=e;this._outletService=t;this._posService=i;this._userRoleService=o;this.router=r;this.httpService=c;this._odsService=u}originalSelectedRegister=null;registers;searchInput="";selectedRegister=new ti;modalConfig=new ie;role;get AppConfigJSON(){return this._posService.Data.AppConfigJSON}destroy$=new Me;ngOnInit(){this.subscribeToObsChanges(),this.initModalConfig()}subscribeToObsChanges(){this._posService.Data$.pipe(Ie(this.destroy$)).subscribe(e=>{this.registers=e.Registers}),this._outletService.Data$.pipe(Ie(this.destroy$)).subscribe(e=>{this.selectedRegister=this.findOutletRegisterById(e.RegisterID),this.originalSelectedRegister=this.selectedRegister?ni({},this.selectedRegister):null}),this._userRoleService.Data$.pipe(Ie(this.destroy$)).subscribe(e=>{this.role=e})}findOutletRegisterById(e){let t=this.registers.find(i=>i.ID===e);return t||new ti}initModalConfig(){this.modalConfig.hideFooter=!0,this.modalConfig.hideScrollbar=!0,this.modalConfig.title="Choose an outlet"}ngOnDestroy(){this.destroy$.next(!0),this.destroy$.complete()}onClose(){this._dialogRef.close()}select(e){if(this.AppConfigJSON.ModuleShift.Closure.Enabled)if(this.selectedRegister.ID!=null&&this.selectedRegister.Open&&e.CashierID==null)confirm("You already have an active register with "+this.selectedRegister.Name+`!
2
2
  Do you want to end your session?`)&&(this.onClose(),this.router.navigate(["menu/Shift/Main/My_Shift"],{queryParams:{RegisterID:e.ID}}));else if(!e.Open||this.selectedRegister.ID==e.ID)this.selectedRegister=e,this.onSubmitSelectedRegister();else{if(this.role.SellEditor==!1){alert("You cannot end shift for Register "+e.Name+" - Unauthorized Access");return}alert("This Register has already active register, Are you sure you want to end this register?"),this.onClose(),this.router.navigate(["/menu/Shift/Main/My_Shift"],{queryParams:{RegisterID:e.ID}})}else this.selectedRegister=e,this.onSubmitSelectedRegister()}onSubmitSelectedRegister(){if(this.selectedRegister.ID==null){alert("Please select a register first!");return}this._outletService.pushNewRegister(this.selectedRegister),this.loadOdsConfig(this.selectedRegister.EntityID),this._dialogRef.close({selectedRegister:this.selectedRegister,openStartingCashDialog:this.selectedRegister.ID!=this.originalSelectedRegister?.ID})}closeRegister(e){let t=this.selectedRegister.ID;if(this.role.SellEditor==!1){alert("You cannot end shift for Register "+e.Name+" - Unauthorized Access");return}t==e.ID?this.router.navigate(["/menu/Shift/Main/My_Shift"]):this.router.navigate(["/menu/Shift/Main/My_Shift"],{queryParams:{RegisterID:e.ID}}),this.onClose()}loadOdsConfig(e){this.httpService.get(`/api/outlet/GetOrderDisplayBroadcastMode?EntityID=${e}`).pipe(le(t=>{this._odsService.setODSConfig(t.form.OrderDisplayBroadcastMode)})).subscribe()}static \u0275fac=function(t){return new(t||n)(P(te),P(re),P(z),P(De),P(zn),P(ge),P(wi))};static \u0275cmp=N({type:n,selectors:[["pos-modal-register"]],standalone:!1,decls:12,vars:6,consts:[[3,"onClose","config"],[1,"ms-0","mb-8","search-container",3,"hidden"],[1,"input-group","mb-3","rounded-start-1"],[1,"input-group-text","txtFilter","rounded-end-0"],["aria-hidden","true",1,"fa","fa-magnifying-glass"],["data-cy","SearchOutlet","type","text","placeholder","Filter by Name","aria-label","Search",1,"txtFilter","form-control","border-start-0","rounded-1","rounded-start-0",3,"ngModelChange","ngModel"],[1,"container","custom-scroll"],[1,"row",2,"width","600px"],["data-cy","registers",1,"col-4"],[1,"card","border-0",3,"ngClass"],[1,"card-body","p-0",3,"ngClass"],[1,"card-title","mb-0",3,"click","ngClass"],[1,"fa-solid","fa-house","pe-1","fs-6"],[1,"fa","fa-xmark-circle","fa-lg","position-absolute",2,"text-shadow","0 1px 0 #afafaf","right","5px","top","16px"],[1,"card-text","px-0","py-2",3,"click"],[1,"fa","fa-xmark-circle","fa-lg","position-absolute",2,"text-shadow","0 1px 0 #afafaf","right","5px","top","16px",3,"click"],[1,"idle"],[1,"cashier"],["aria-hidden","true",1,"fa","fa-user","pe-2"],[1,"d-inline"],[1,"open"],["aria-hidden","true",1,"fa-regular","fa-clock","pe-2"]],template:function(t,i){t&1&&(a(0,"modal-material",0),S("onClose",function(){return i.onClose()}),a(1,"content")(2,"div",1)(3,"div",2)(4,"span",3),b(5,"i",4),s(),a(6,"input",5),H("ngModelChange",function(r){return A(i.searchInput,r)||(i.searchInput=r),r}),s()()(),a(7,"div",6)(8,"div",7),K(9,pr,12,13,"div",8,ve),y(11,"FilterByName"),s()()()()),t&2&&(p("config",i.modalConfig),l(2),p("hidden",i.registers.length<=6),l(4),B("ngModel",i.searchInput),l(3),Z(X(11,3,i.registers,i.searchInput)))},dependencies:[Be,Te,Pe,Ee,ne,bi,vo],styles:[".text-warning[_ngcontent-%COMP%]{color:var(--bs-warning)!important}.bg-light-gray[_ngcontent-%COMP%]{background-color:var(--bs-light-gray);--bs-bg-opacity: .15 !important}.bg-gradient-danger[_ngcontent-%COMP%]{background:repeating-linear-gradient(-60deg,#f8d7da,#f8d7da 15px,#f5c6cb 15px 30px)!important}.bg-gradient-success[_ngcontent-%COMP%]{background:repeating-linear-gradient(-60deg,#beeebb,#beeebb 15px,#afeba8 15px 30px)!important}.bg-gradient-warning[_ngcontent-%COMP%]{background:repeating-linear-gradient(-60deg,#fcf3cf,#fcf3cf 15px,#f9e79f 15px 30px)!important}.bg-light-orange[_ngcontent-%COMP%]{background-color:var(--bs-light-orange);--bs-bg-opacity: .15 !important}.text-danger[_ngcontent-%COMP%]{color:#fb404b!important}.text-dark[_ngcontent-%COMP%]{color:#5e5e5e!important}.text-success[_ngcontent-%COMP%]{color:#87cb16!important}.text-black[_ngcontent-%COMP%]{color:#000!important}.text-white[_ngcontent-%COMP%]{color:var(--bs-white)!important}.btn-light-blue[_ngcontent-%COMP%]{color:#212529;background-color:#dfeffc!important;border-color:#dfeffc}.btn-light-blue[_ngcontent-%COMP%]:hover{color:#212529;background-color:#bcdef9;border-color:#b0d8f8}.btn-light-blue[_ngcontent-%COMP%]:focus, .btn-light-blue.focus[_ngcontent-%COMP%]{color:#212529;background-color:#bcdef9;border-color:#b0d8f8;box-shadow:0 0 0 .2rem #c3d1dc80}.btn-light-blue.disabled[_ngcontent-%COMP%], .btn-light-blue[_ngcontent-%COMP%]:disabled{color:#212529;background-color:#dfeffc;border-color:#dfeffc}.btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active, .btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active, .show[_ngcontent-%COMP%] > .btn-light-blue.dropdown-toggle[_ngcontent-%COMP%]{color:#212529;background-color:#b0d8f8;border-color:#a5d2f7}.btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active:focus, .btn-light-blue[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active:focus, .show[_ngcontent-%COMP%] > .btn-light-blue.dropdown-toggle[_ngcontent-%COMP%]:focus{box-shadow:0 0 0 .2rem #c3d1dc80}.btn-light-danger[_ngcontent-%COMP%]{color:#212529;background-color:#f8d7da!important;border-color:#f8d7da}.btn-light-danger[_ngcontent-%COMP%]:hover{color:#212529;background-color:#f5c2c7;border-color:#f1aeb5}.btn-light-danger[_ngcontent-%COMP%]:focus, .btn-light-danger.focus[_ngcontent-%COMP%]{color:#212529;background-color:#f5c2c7;border-color:#f1aeb5;box-shadow:0 0 0 .2rem #dc354540}.btn-light-danger.disabled[_ngcontent-%COMP%], .btn-light-danger[_ngcontent-%COMP%]:disabled{color:#212529;background-color:#f8d7da;border-color:#f8d7da}.btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active, .btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active, .show[_ngcontent-%COMP%] > .btn-light-danger.dropdown-toggle[_ngcontent-%COMP%]{color:#212529;background-color:#f1aeb5;border-color:#ea868f}.btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled):active:focus, .btn-light-danger[_ngcontent-%COMP%]:not(:disabled):not(.disabled).active:focus, .show[_ngcontent-%COMP%] > .btn-light-danger.dropdown-toggle[_ngcontent-%COMP%]:focus{box-shadow:0 0 0 .2rem #dc354540}.search-container[_ngcontent-%COMP%]{transition:all .3s ease;width:97%}.search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%]{position:relative;transition:all .3s ease;height:2.3rem}.search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%]:hover, .search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%]:focus-within{box-shadow:0 0 0 2px #89b03e4d,0 0 8px 4px #89b03e33;border-radius:4px}.search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%] .txtFilter.form-control[_ngcontent-%COMP%]{transition:all .3s ease;border-left:none!important}.search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%] .txtFilter.form-control[_ngcontent-%COMP%]:focus{box-shadow:none!important;border-color:#ced4da!important}.search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%] .input-group-text[_ngcontent-%COMP%]{transition:all .3s ease;background-color:#fff;border-right:none!important}.search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%]:hover .input-group-text[_ngcontent-%COMP%], .search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%]:focus-within .input-group-text[_ngcontent-%COMP%]{background-color:#89b03e1a;border-color:#84cc16!important}.search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%] .fa-magnifying-glass[_ngcontent-%COMP%]{transition:all .3s ease}.search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%]:hover .fa-magnifying-glass[_ngcontent-%COMP%], .search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%]:focus-within .fa-magnifying-glass[_ngcontent-%COMP%]{color:#84cc16!important}.search-container[_ngcontent-%COMP%] .input-group[_ngcontent-%COMP%]:focus-within{box-shadow:0 0 0 2px #89b03e66,0 0 12px 6px #89b03e40!important}.custom-scroll[_ngcontent-%COMP%]::-webkit-scrollbar{width:6px}.custom-scroll[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.custom-scroll[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#89b03e;border-radius:3px}.custom-scroll[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#7a9e37}.container[_ngcontent-%COMP%]{overflow-y:auto;overflow-x:hidden;max-height:260px;min-height:150px}.col-4[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%]{width:180px;min-height:95px;margin-right:17px;margin-bottom:17px;position:relative}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%]{display:block;outline:0;border:1px solid #B1AAAA;border-radius:5px;cursor:pointer}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] h5[_ngcontent-%COMP%]{height:30px;border-radius:4px;padding:5px 10px;color:#fff;background:#b1aaaa;overflow:hidden}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] h5[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{margin-right:5px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%]:hover, .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.active[_ngcontent-%COMP%], .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.vacant[_ngcontent-%COMP%]{background:#ffffe1;border:1px solid #89b03e}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%]:hover > h5[_ngcontent-%COMP%], .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.active[_ngcontent-%COMP%] > h5[_ngcontent-%COMP%], .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.vacant[_ngcontent-%COMP%] > h5[_ngcontent-%COMP%]{background:#89b03e}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%], .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%]:hover{border:1px solid #c9302c}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%] > h6[_ngcontent-%COMP%], .col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%]:hover > h6[_ngcontent-%COMP%]{background:#c9302c!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%] span.alias[_ngcontent-%COMP%]{background:#c9302c}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.occupied[_ngcontent-%COMP%]:hover{background:#fff}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%]{border:1px solid #f6a828}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%] > h6[_ngcontent-%COMP%]{background:#f6a828!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%]:hover{border:1px solid #f6a828;background:#fff}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%]:hover > strong[_ngcontent-%COMP%]{background:#f6a828!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%] span.alias[_ngcontent-%COMP%]{background:#f6a828}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body.preparing[_ngcontent-%COMP%] div[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{font-size:.75rem!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{height:80px;padding:15px 10px;position:relative}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:block;font-weight:400;font-size:.875rem;width:100%;margin-bottom:5px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:first-child{margin-top:-10px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:last-child{margin-bottom:0}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%] span.alias[_ngcontent-%COMP%]{text-align:center;position:absolute;bottom:0;right:0;width:auto;background-color:#b1aaaa;border-radius:3px;padding:2px 5px;color:#fff;display:none!important}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > .card-body[_ngcontent-%COMP%] div[_ngcontent-%COMP%] span.idle[_ngcontent-%COMP%]{display:block;font-size:1.25rem;text-align:center}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{position:absolute;width:27px;height:28px;cursor:pointer;top:5px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > span[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{color:#000}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]:last-of-type{right:-5px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]:nth-last-of-type(2){right:15px}.col-4[_ngcontent-%COMP%] .card[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{bottom:20px;right:5px;position:absolute}.col-4[_ngcontent-%COMP%] .duration[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{border:1px solid!important;position:absolute;bottom:-3px;left:58px;background:#fff;border-radius:5px}"]})};var ur=["inputCash"],Ni=class n{constructor(e,t){this.dialogRef=e;this.data=t;this.generateModalTitle$.subscribe()}registerService=T(re);loadPOSService=T(z);register=this.registerService.Data;username=this.loadPOSService?.Data?.UserName;amount=R(0);config=new ie;currentRegisterName;generateModalTitle$=this.registerService.Data$.pipe(ce(e=>f.IsNotEmpty(e)),le(()=>{let e=this.registerService.getOutletRegister(),t=e?.Name?.length>18?`${e?.Name?.substring(0,18)}...`:e?.Name;this.config.title="Open Shift",this.currentRegisterName=t}),ee());today=new Date;inputCashEl;ngOnInit(){this.config.customWidth="350px",this.config.hideCancel=!0}ngAfterViewInit(){this.inputCashEl?.nativeElement?.focus()}onOk(){this.dialogRef.close({amount:this.amount()})}static \u0275fac=function(t){return new(t||n)(P(te),P(fe))};static \u0275cmp=N({type:n,selectors:[["POS-modal-opening-cash"]],viewQuery:function(t,i){if(t&1&&Ut(ur,5),t&2){let o;Wt(o=Gt())&&(i.inputCashEl=o.first)}},standalone:!1,decls:25,vars:8,consts:[["inputCash",""],[3,"onOk","onCancel","onClose","config"],[1,"table","fs-5","text"],[1,"py-3"],[1,"text-end","pe-3"],[1,"py-4"],[1,"text-end"],["data-cy","InputCash","autoNum","",1,"border","form-control-lg","text-end","w-100",3,"ngModelChange","ngModel"]],template:function(t,i){if(t&1){let o=E();a(0,"modal-material",1),S("onOk",function(){return v(o),_(i.onOk())})("onCancel",function(){return v(o),_(i.dialogRef.close())})("onClose",function(){return v(o),_(i.dialogRef.close())}),a(1,"content")(2,"table",2)(3,"tr")(4,"td",3),d(5,"Outlet Register"),s(),a(6,"td",4),d(7),s()(),a(8,"tr")(9,"td",5),d(10,"Current User"),s(),a(11,"td",4),d(12),s()(),a(13,"tr")(14,"td",5),d(15,"Starting Time"),s(),a(16,"td",4),d(17),y(18,"date"),s()(),a(19,"tr")(20,"td",3),d(21,"Starting Cash"),s(),a(22,"td",6)(23,"input",7,0),H("ngModelChange",function(c){return v(o),A(i.amount,c)||(i.amount=c),_(c)}),s()()()()()()}t&2&&(p("config",i.config),l(7),M(i.currentRegisterName),l(5),M(i.username),l(5),M(X(18,5,i.today,"EEEE, HH:mm")),l(6),B("ngModel",i.amount))},dependencies:[Te,Pe,Ee,ne,Dt,Ye],styles:[".table-title-width[_ngcontent-%COMP%]{width:120px}"]})};var Ai=class{OrderNumberElement;InvoiceNumberElement;NewOrderID};var Et=class n{constructor(e,t,i){this._httpService=e;this._onlineStatusService=t;this._localDataService=i;this._onlineStatusService.getOnlineStatus$().subscribe(o=>{this.isOnline=o})}isOnline;GenerateNumber(e,t){if(this.isOnline)return this._httpService.get(U.GenerateNumber,[{key:"EntityID",value:e},{key:"TypeID",value:1}]);{let i=new Ai;return f.IsNotEmpty(t.NumberElement)&&(t.NumberElement.Seed+=1),f.IsNotEmpty(t.InvoiceNumberElement)&&(t.InvoiceNumberElement.Seed+=1),i.InvoiceNumberElement=t.InvoiceNumberElement,i.OrderNumberElement=t.NumberElement,i.NewOrderID=f.Guid_NewGuid(),ke(i)}}findRegisterById(e){return new Promise(t=>{this._localDataService.isConfigFromServer().subscribe(i=>{i?this._httpService.get(U.GetRegisterInfo,[{key:"RegisterID",value:e}]).subscribe(o=>{t(o)}):this._localDataService.findRegisterByID(e).subscribe(o=>{t(o)})})})}recordOpeningCash(e){return ai(this._httpService.post("/API/POS/RecordOpeningCash",e))}static \u0275fac=function(t){return new(t||n)(g(ge),g(he),g(Oe))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var re=class n{constructor(e,t,i,o,r,c){this._signalRClientService=e;this._matDialog=t;this._posHttpResponseService=i;this._CoreHttpService=o;this._toastrService=r;this._roleService=c}datePipe=T(Ye);_Data=new be(null);Data$=this._Data.asObservable().pipe(ce(e=>e!==null),Fe());get Data(){return this._Data.value}getSalesname(e){return this.Data&&this.Data.ListSales?this._Data.value.ListSales.find(t=>t.ID==e)?.Name:""}setActiveRegisterFromOptions(e,t){let o=this._posHttpResponseService.Data.AppConfigJSON.ModuleShift.Closure.Enabled;if(e.length>1){let r=e.find(c=>c.LoginID==t);if(r)this.pushNewRegister(r);else{let c=this.getOutletRegisterFromLocalStorage(),u=this.Data?.RegisterID?this.Data.RegisterID:c?.ID;e.some(k=>k.ID==u)?o?this.openChooseRegisterModal():this.initRegisterFromLocalStorage():this.openChooseRegisterModal()}}e.length==1&&(this.pushNewRegister(e[0]),f.IsEmpty(e[0].LoginID)&&f.IsEmpty(e[0].CashierID)&&this.openOpeningCashModal(e[0].ID)),e.length==0&&this._toastrService.warning("You do not have access to any OUTLET","Warning")}openChooseRegisterModal(){this._matDialog.open(Ri,{id:"registerModal",disableClose:!0}).afterClosed().pipe(ce(e=>f.IsNotEmpty(e?.selectedRegister))).subscribe(e=>{e.selectedRegister&&this.openOpeningCashModal(e.selectedRegister.ID)})}openOpeningCashModal(e){this._posHttpResponseService.Data.AppConfigJSON.ModuleShift.Closure.Enabled&&this._matDialog.open(Ni,{disableClose:!0}).afterClosed().pipe(ce(o=>f.IsNotEmpty(o))).subscribe(o=>{let r={RegisterID:e,OpAmount:o.amount};this._CoreHttpService.recordOpeningCash(r).then(()=>{this.updateRegisterList(r)})})}updateRegisterList(e){let i=this._posHttpResponseService.Data.Registers.map(r=>r.ID==e.RegisterID?this.mapRegisterAsActiveRegister(r,e):r),o=this._posHttpResponseService.Data;o.Registers=i,this._posHttpResponseService.pushNewValue(o)}mapRegisterAsActiveRegister(e,t){let i=localStorage.getItem("AccountInfo");if(i){let r=JSON.parse(i);e.LoginID=r.UserName}e.OpeningCash=t.OpAmount,e.Open=!0,e.State="Open";let o=this.datePipe.transform(new Date,"dd MM yyyy HH:mm");return e.StartDisplay=o,e}initRegisterFromLocalStorage(){if(this._roleService.Data.DeleteItem==!1){let t=this.getOutletRegisterFromLocalStorage();t&&this.pushNewRegister(t)}}pushNewRegister(e){let t=this._Data.value,i=t?t.RegisterID:null;i!=e.ID&&this._CoreHttpService.findRegisterById(e.ID).then(o=>{o.RegisterCode=e.Code,o.DefaultPrintTemplate=o.PrintTemplate,o.SplitPaymentEnabled=this.findSplitPaymentConfig(o.EntityID),this._signalRClientService.SubscribeGroup(o.RegisterID,i),this.saveOutletRegisterToLocalStorage(e),this.pushNewValue(o)})}getOutletRegister(){let e=this.Data.RegisterID;return this._posHttpResponseService.Data.Registers.find(o=>o.ID==e)}pushNewValue(e){this._Data.next(e)}saveOutletRegisterToLocalStorage(e){if(this._roleService.Data.DeleteItem==!1){let i=JSON.stringify(e);localStorage.setItem("outlet_register",i)}}getOutletRegisterFromLocalStorage(){let e=this._roleService.Data.DeleteItem,t=localStorage.getItem("outlet_register"),i=null;return t&&(e?localStorage.removeItem("outlet_register"):i=JSON.parse(t)),i}findOutletRegisterById(e){return this._posHttpResponseService.Data.Registers.find(o=>o.ID===e)}findSplitPaymentConfig(e){let i=this._posHttpResponseService.Data.Entities.find(o=>o.ID===e);return i?i.SplitPaymentEnabled:!1}static \u0275fac=function(t){return new(t||n)(g(rt),g(we),g(z),g(Et),g(F),g(De))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};function gr(n,e){if(n&1&&(a(0,"span",5),d(1),y(2,"number"),s()),n&2){let t=m(3);l(),D("-",x(2,1,t.coupon.Amount),"%")}}function fr(n,e){if(n&1&&(a(0,"span",5),d(1),y(2,"number"),s()),n&2){let t=m(3);l(),D(" -",x(2,1,t.coupon.Amount)," ")}}function hr(n,e){if(n&1){let t=E();a(0,"button",9),S("click",function(){v(t);let o=m().$implicit,r=m(2);return _(r.onRemoveCouponDiscount(o))}),d(1," Remove "),s()}}function Cr(n,e){if(n&1){let t=E();a(0,"button",10),S("click",function(){v(t);let o=m().$implicit,r=m(2);return _(r.onApplyCouponDiscount(o))}),d(1," Apply "),s()}if(n&2){let t=m(3);p("disabled",t.hasAppliedCouponDiscount())}}function vr(n,e){if(n&1&&(a(0,"tr")(1,"td"),d(2),s(),a(3,"td"),d(4),s(),a(5,"td",4),d(6),y(7,"number"),s(),a(8,"td",4),h(9,gr,3,3,"span",5)(10,fr,3,3,"span",5),s(),a(11,"td",6),h(12,hr,2,0,"button",7)(13,Cr,2,1,"button",8),s()()),n&2){let t=e.$implicit,i=m(2);l(2),M(t==null||t.Variant==null?null:t.Variant.Name),l(2),M(t==null||t.Variant==null?null:t.Variant.Code),l(2),M(x(7,5,t.UnitPrice)),l(3),C((i.coupon==null||i.coupon.Requirement==null?null:i.coupon.Requirement.Type)==i.couponType.DiscountPercentage?9:10),l(3),C((t==null?null:t.CouponDiscount)>0?12:13)}}function _r(n,e){if(n&1&&K(0,vr,14,7,"tr",null,ot),n&2){let t=m();Z(t.eligibleItems())}}function yr(n,e){n&1&&(a(0,"tr")(1,"td",11),b(2,"app-empty-state",12),s()())}var ki=class n{constructor(e){this.data=e;this.coupon=this.data.coupon,this.initModalConfig(),this.initEligibleItems()}dialogRef=T(te);config;eligibleItems=R([]);coupon;couponType=zt;hasAppliedCouponDiscount=R(!1);initModalConfig(){this.config=new ie,this.config.title="Choose Item to Apply Discount",this.config.hideFooter=!0}initEligibleItems(){let e=this.data.coupon?.ApplyToProduct.map(t=>t.ID);e&&(this.eligibleItems.update(()=>this.data.cartItems.filter(i=>e.includes(i.VariantID))),this.hasAppliedCouponDiscount.update(()=>this.eligibleItems().some(t=>t.CouponDiscount>0)))}onApplyCouponDiscount(e){let t=[e];this.hasAppliedCouponDiscount.update(()=>!0),this.dialogRef.close(t)}onRemoveCouponDiscount(e){this.eligibleItems.update(t=>{let i=t.findIndex(o=>o.VariantID===e.VariantID);return i>-1&&(t[i].Discount=0,t[i].CouponDiscount=0),t}),this.hasAppliedCouponDiscount.update(()=>!1)}onClose(){this.dialogRef.close()}static \u0275fac=function(t){return new(t||n)(P(fe))};static \u0275cmp=N({type:n,selectors:[["app-modal-coupon-selected-item"]],decls:17,vars:2,consts:[[3,"onCancel","onClose","config"],[1,"table","table-bordered"],[1,"thead-light"],["scope","col"],[1,"text-end"],[1,"text-danger"],[1,"text-center"],[1,"btn","btn-sm","btn-danger"],[1,"btn","btn-sm","btn-success",3,"disabled"],[1,"btn","btn-sm","btn-danger",3,"click"],[1,"btn","btn-sm","btn-success",3,"click","disabled"],["colspan","5"],["title","No eligible products","message","No products in the cart qualify for coupon use"]],template:function(t,i){t&1&&(a(0,"modal-material",0),S("onCancel",function(){return i.onClose()})("onClose",function(){return i.onClose()}),a(1,"content")(2,"table",1)(3,"thead",2)(4,"tr")(5,"th",3),d(6,"Name"),s(),a(7,"th",3),d(8,"Code"),s(),a(9,"th",3),d(10,"Price"),s(),a(11,"th",3),d(12,"Discount"),s(),b(13,"th",3),s()(),a(14,"tbody"),h(15,_r,2,0)(16,yr,3,0,"tr"),s()()()()),t&2&&(p("config",i.config),l(15),C(i.eligibleItems().length!==0?15:16))},dependencies:[Se,Ot,ne,So,q],encapsulation:2})};var st=class{ModuleSell;ApplicationLoyalty;ApplicationMath;CoreDefaults;ModuleDelivery;ApplicationParkAndRetrieve;ApplicationRegisterClosure;PaymentConfigGopay;PaymentConfigLink;PrintConfigInvoice;CorePrint;PaymentConfigEmpatKali;ApplicationSettings;PrintConfigGeneral;ModuleProducts;ModuleContact;ApplicationTransactionNumbering;ModuleOrders;ModuleShift;ModuleBuy;ModuleAdjustment;TadaCouponVisible;CouponRedemptionType;ProviderOption};var se=class n{constructor(e,t,i,o){this._orderDataService=e;this._posService=t;this.POSMATH=i;this.decimalPipe=o;this._orderDataService.Data$.pipe(Y(r=>this._posService.Data$.pipe(J(c=>({appConfig:c.AppConfigJSON,salesOrder:r}))))).subscribe(r=>{this.salesOrderData=r.salesOrder,this.appConfigJSON=r.appConfig,this.calculateDiscountAmount(),this.pushNewValue(this.grandTotal)})}_Data=new be(0);Data$=this._Data.asObservable().pipe(Fe());tax=new xo;discountAfterTax=0;currencySymbol="Rp";get Data(){return this._Data.value}salesOrderData=new G;appConfigJSON=new st;pushNewValue(e){this._Data.next(e)}get grandTotal(){let e=this.TotalAfterSurcharge;return isNaN(e)?0:e}setDecimalDigit(e){let t=this.decimalPipe.transform(e,"1.0-4");return e=parseFloat(t.split(",").join("")),e}get TotalAfterTax(){let e=this.TaxAmount,t=this.TotalBeforeTax+e;return t=this.POSMATH.Round(t,this.appConfigJSON.ApplicationMath.RoundingDigit.DecimalPlaceValue,this.appConfigJSON.ApplicationMath.RoundingDigit.RoundAlgorithm),t}get TotalBeforeTax(){let e=this.tax?.CalculationTypeID===1,t=0;return e?t=this.DiscountTotal-this.TaxAmount:t=this.DiscountTotal,t}get TotalAfterSurcharge(){let e=this.TotalAfterTax+this.SurchargeAmount;return this.POSMATH.Round(e,this.appConfigJSON.ApplicationMath.RoundingDigit.DecimalPlaceValue,this.appConfigJSON.ApplicationMath.RoundingDigit.RoundAlgorithm)}get TotalAfterDiscountTaxable(){return this.GrossTotalTaxable-this.DiscountTotal}get TaxAmount(){if(this.tax!=null){let e=0,t=this.appConfigJSON.ApplicationMath.RoundingTaxDigit.DecimalPlaceValue,i=this.appConfigJSON.ApplicationMath.RoundingTaxDigit.RoundAlgorithm,o=this.GrossTotalTaxable;return this.tax.CalculationTypeID==1?e=this.tax.Rate/(100+this.tax.Rate)*o:e=this.tax.Rate/100*o,e=this.POSMATH.Round(e,t,i),e}else return 0}get SurchargeAmount(){return this.TotalAfterTax*this.salesOrderData.Invoice.SurchargePcg/100}get Discount1Amount(){return this.GrossTotal*this.salesOrderData.Order.Discount/100}get AfterDiscount1Amount(){return this.GrossTotal-this.Discount1Amount}get Discount2Amount(){return this.AfterDiscount1Amount*this.salesOrderData.Order.Discount2/100}get AfterDiscount2Amount(){return this.AfterDiscount1Amount-this.Discount2Amount}get DiscountTotal(){return this.AfterDiscount2Amount-this.salesOrderData.Order.DiscountAmount}calculateDiscountAmount(){let e=this.salesOrderData.Order.DiscountAmount,t=0;this.AfterDiscount2Amount>=0&&e>0&&e>this.AfterDiscount2Amount&&(t=this.AfterDiscount2Amount),t!==0&&t<=e&&this.GrossTotal!==0&&(e=t),this.salesOrderData.Order.DiscountAmount=e}get GrossTotal(){return this.sum(this.salesOrderData.CartItems,"Total")}get GrossTotalTaxable(){let e=this.salesOrderData.CartItems.filter(i=>i.Taxable),t=this.sum(e,"Total");if(e.length!==0){let i=this.calculateDiscountTaxableItem(e);t=t*(100-this.salesOrderData.Order.Discount)/100,t=t*(100-this.salesOrderData.Order.Discount2)/100,t=t-i}return t}calculateDiscountTaxableItem(e){let t=this.GrossTotal,i=this.salesOrderData.Order.DiscountAmount,o=0,r=0,c=0,u=0;for(let O of e)o=O.getItemAfterDiscount/t,r=o*i,u=r*O.Quantity,c+=u;return c}get GrossTotalNonTaxable(){let e=this.salesOrderData.CartItems.filter(i=>i.Taxable==!1),t=this.sum(e,"Total");return t=t*(100-this.salesOrderData.Order.Discount)/100,t=t*(100-this.salesOrderData.Order.Discount2)/100,t=t-this.salesOrderData.Order.DiscountAmount,t}sum(e,t){let i=e.reduce((o,r)=>o+r[t],0);return i=this.setDecimalDigit(i),i}GetPointOnlyAmount(){let e=this.salesOrderData.CartItems.filter(t=>t.Variant.PaymentTypeID==2);return this.GetAmountByCart(e)}GetCashOnlyAmount(){let e=this.salesOrderData.CartItems.filter(t=>t.Variant.PaymentTypeID==1);return this.GetAmountByCart(e)}GetCashAndPointAmountCart(){let e=this.salesOrderData.CartItems.filter(t=>t.Variant.PaymentTypeID!=1);return this.GetAmountByCart(e)}GetAmountByCart(e){let t=this.sum(e,"Total");return t=t*(100-this.salesOrderData.Order.Discount)/100,t=t*(100-this.salesOrderData.Order.Discount2)/100,t}calculateGrossTotal(e){return this.sum(e,"Total")}static \u0275fac=function(t){return new(t||n)(g(L),g(z),g(Io),g(q))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var Vi=class{Code;Provider;EntityID;Customer;ShoppingCart};var wt=class n{salesOrderService=T(L);registerService=T(re);customerService=T(Re);orderCalculator=T(se);generateRedeemCouponDto(e,t){let i=new Vi,o=this.registerService.Data?.EntityID;return i.Code=e,i.Provider=t,i.ShoppingCart={Amount:this.orderCalculator.Data,Items:this.generateItems()},i.EntityID=o,i.Customer=this.generateCustomer(t),i}generateItems(){return this.salesOrderService.Data.CartItems.map(i=>({Price:i.Price,Quantity:i.Quantity,VariantID:i.VariantID,Code:i?.Variant?.Code}))}generateCustomer(e){let t=this.customerService.Data,i=this.salesOrderService?.Data?.Order?.CustomerID,o=null;return f.IsNotEmpty(i)&&(o={Phone:t.Mobile,Email:t.Email},e==="Internal"&&(o=ni({ID:i},o))),o}static \u0275fac=function(t){return new(t||n)};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var Rt=class n{constructor(e,t,i,o,r,c){this._httpService=e;this._orderDataService=t;this._userRoleService=i;this.toastr=o;this._invoiceCalculatorService=r;this.promotionCouponFactoryService=c;this.subscribeToObservable()}dialog=T(we);role;originalRoleData;_coupon=R(null);salesOrderBeforePromotion=R(null);isShowToastrInApplyCoupon=R(!1);get coupon(){return this._coupon()}subscribeToObservable(){this._userRoleService.Data$.subscribe(e=>{this.role=e,f.IsEmpty(this.originalRoleData)&&(this.originalRoleData=me(We,e))})}RedeemCoupon(e,t,i=!1){i||(this.isShowToastrInApplyCoupon.set(!0),this.copyOriginalSalesOrder());let o=this.promotionCouponFactoryService.generateRedeemCouponDto(e,"Internal");this._httpService.post(U.ValidateInternalCoupon,o).subscribe({next:r=>{switch(this._orderDataService.Data.Order.PromotionCoupon=e,this._orderDataService.Data.Order.PromotionNote=t,this._orderDataService.Data.Order.CouponType=1,r.Requirement?.Type){case 1:this.HandleDiscountPercentage(r);break;case 2:this.HandleDiscountAmount(r);break;case 3:this.handleCouponReturnAccess(r);break;case 4:this.handleCouponParkedDeletionAccess();break;case 5:this.handleFullAccessCoupon();break;case 6:this.handleDeleteItemCoupon();break}this._coupon.set(r),this.isShowToastrInApplyCoupon.set(!1)},error:r=>{this.removeAppliedCoupon(!1),this.isShowToastrInApplyCoupon.set(!1)}})}setCouponOnEdit(e){this._coupon.set(e),this.generateOriginalSalesOrderOnEdit()}generateOriginalSalesOrderOnEdit(){let e=me(G,this._orderDataService.Data);e.Order.PromotionCoupon=null,e.Order.PromotionNote=null,e.Order.Discount=0,e.Order.DiscountAmount=0,this.salesOrderBeforePromotion.set(e)}copyOriginalSalesOrder(){let e=me(G,this._orderDataService.Data);this.salesOrderBeforePromotion.set(e)}HandleDiscountPercentage(e,t=!1){e.Amount>0?e.Requirement?.MaximumDiscount>0?this.applyConfigMaxDiscount(e,t):e.Requirement?.FullPriceProductOnly?this.applyFullPriceDisc(e,t):this.applyDiscountPercentage(e,t):(this.role.Discount=t?this.originalRoleData.Discount:!0,this._userRoleService.pushNewValue(this.role))}applyFullPriceDisc(e,t=!1){let i=this._orderDataService.Data,o=this.filterItemWithDisc(i.CartItems),r=this.filterItemWithCouponDisc(i.CartItems);if(t)r.length>0?(i.CartItems=this.resetItemsDisc(i.CartItems),this._orderDataService.pushNewValue()):this.applyDiscountPercentage(e,t);else if(o.length>0){let c=this.filterItemWithoutDisc(i.CartItems);c.length>0?this.applyConfigItemsScope(e,c).subscribe(u=>{let O=this.applyItemsDisc(u,e);i.CartItems=this.updateCartItems(O,e),this._orderDataService.pushNewValue(i),this.showToastr(e)}):(this.removeAppliedCoupon(!1),this._orderDataService.pushNewValue(),this.toastr.error("No products in the cart qualify for coupon use","Coupon Not Applied"))}else this.applyDiscountPercentage(e,t)}updateCartItems(e,t){let o=this._orderDataService.Data.CartItems.map((r,c)=>{let u=e.find(O=>this.isSameCartItem(O,r));return u||r});return o=this.applyOneOfFirstQuantity(o,t),o}applyOneOfFirstQuantity(e,t){if(t?.Requirement?.RequirementDiscountType==2){let i=e.findIndex(o=>o.CouponDiscount>0);if(e[i]?.Quantity>1){let o=mt(xe,e[i]);o.Quantity=1,o.ID=f.GuidEmpty,e[i].Quantity=e[i].Quantity-1,e[i].CouponDiscount=0,e[i].Discount=0,e[i].DiscountAmount=0,e.push(o)}}return e}filterItemWithDisc(e){return e.filter(i=>i.Discount>0||i.DiscountAmount>0||i.Price!=i?.Variant?.UnitPrice||f.IsNotEmpty(i.PriceBookID)||i.PriceTypeID==2)}filterItemWithoutDisc(e){return e.filter(i=>this.itemConditionFullPriceOnly(i))}filterItemWithCouponDisc(e){return e.filter(i=>i.CouponDiscount>0)}applyDiscountPercentage(e,t=!1){let i=this._orderDataService.Data.Order.CustomerDiscountRate,o=e.Amount;if(t){let r=this._orderDataService.Data;this._orderDataService.Data.Order.Discount=0,r.CartItems=this.resetItemsDisc(r.CartItems),this._orderDataService.pushNewValue(r)}else o>=i?e.ApplyToProduct?.length>0?this.applyDiscountRequiredItems(e):(this._orderDataService.Data.Order.Discount=e.Amount,this._orderDataService.pushNewValue(),this.showToastr(e)):(this.toastr.warning("Member discount is applied because member discount is greater than Coupon Discount","Warning"),this.removeAppliedDiscountOnCustomerChange())}applyDiscountRequiredItems(e){let i=this._orderDataService.Data.CartItems.filter(o=>e.ApplyToProduct.map(r=>r.ID)?.includes(o.VariantID));this.applyConfigItemsScope(e,i).subscribe(o=>{let r=o.map(u=>(u.Discount=e.Amount,u.CouponDiscount=e.Amount,u)),c=this.updateCartItems(r,e);this._orderDataService.Data.CartItems=c,this._orderDataService.pushNewValue(),this.showToastr(e)})}showToastr(e){let t=e?.Requirement?.Notify;f.IsNotEmpty(t)&&this.isShowToastrInApplyCoupon()&&this.toastr.success(t,"Coupon Applied")}applyConfigMaxDiscount(e,t=!1){let i=this._orderDataService.Data.CartItems;e.Requirement?.FullPriceProductOnly&&(i=i.filter(o=>this.itemConditionFullPriceOnly(o))),this.applyConfigItemsScope(e,i,t).subscribe(o=>{this.applyMaxDiscount(e,o,t)})}applyConfigItemsScope(e,t,i=!1){let o=e.Requirement?.RequirementDiscountType;return(o==1||o==2)&&i==!1?this.dialog.open(ki,{data:{coupon:e,cartItems:t},id:"modal-coupon-selected-item"}).afterClosed().pipe(le(c=>{let k=this._orderDataService.Data.CartItems.some(W=>W.CouponDiscount>0);!c&&!k&&this.removeAppliedDiscountOnCustomerChange()}),ce(c=>!!c)):ke(t)}applyMaxDiscount(e,t,i=!1){let o=this._invoiceCalculatorService.calculateGrossTotal(t),r=this._orderDataService.Data,c=o*e.Amount/100,u=e.Requirement?.MaximumDiscount,O=t;c>=u?(r.Order.DiscountAmount=i?0:u,O=this.resetItemsDisc(t)):(r.Order.DiscountAmount=0,O=i?this.resetItemsDisc(t):this.applyItemsDisc(t,e)),r.CartItems=this.updateCartItems(O,e),this._orderDataService.pushNewValue(r),i||this.showToastr(e)}resetItemsDisc(e){return this.coupon?.Requirement?.RequirementDiscountType==2?e=this.resetConfigOneOfFirstQuantity(e):e=e.map(t=>(t.CouponDiscount>0&&(t.Discount=0,t.DiscountAmount=0,t.CouponDiscount=0),t)),e}resetConfigOneOfFirstQuantity(e){let t=e.findIndex(i=>i.CouponDiscount>0);if(t!==-1){let i=e.findIndex(o=>o.CouponDiscount==0&&e[t]?.VariantID==o?.VariantID);i!==-1?(e.splice(t,1),e[i].Quantity+=1):(e[t].CouponDiscount=0,e[t].Discount=0,e[t].DiscountAmount=0)}return e}applyItemsDisc(e,t){return t.ApplyToProduct?.length>0?e=this.applyDiscByVariant(e,t):e=e.map(i=>(i.Discount=t.Amount,i.CouponDiscount=t.Amount,i)),e}applyDiscByVariant(e,t){return e=e.map(i=>(t.ApplyToProduct.find(r=>r.ID==i.VariantID)&&this.itemConditionFullPriceOnly(i)&&(i.Discount=t.Amount,i.CouponDiscount=t.Amount),i)),e}itemConditionFullPriceOnly(e){return(e.Discount==0||e.CouponDiscount>0)&&e.DiscountAmount==0&&e.Price==e?.Variant?.UnitPrice&&f.IsEmpty(e.PriceBookID)}HandleDiscountAmount(e,t=!1){e.Amount>0?(e.ApplyToProduct?.length>0?this.applyDiscountInItem(e,t):(t?this._orderDataService.Data.Order.DiscountAmount=0:(this._orderDataService.Data.Order.DiscountAmount=e.Amount,this.showToastr(e)),this._orderDataService.pushNewValue()),this.resetCustomerPoint(t)):(this.role.Discount=t?this.originalRoleData.Discount:!0,this._userRoleService.pushNewValue(this.role))}applyDiscountInItem(e,t=!1){let i=this._orderDataService.Data;if(t)i.CartItems=this.resetItemsDisc(i.CartItems);else{let r=i.CartItems.filter(c=>e.ApplyToProduct.map(u=>u.ID)?.includes(c.VariantID));this.applyConfigItemsScope(e,r,t).subscribe(c=>{let u=c.map(O=>(O.DiscountAmount=e.Amount,O.CouponDiscount=e.Amount,O));i.CartItems=this.updateCartItems(u,e),this._orderDataService.pushNewValue(i),this.showToastr(e)})}}resetCustomerPoint(e){if(!e){let t=this._orderDataService.Data;t.Order.PointUsed=0}}handleCouponReturnAccess(e){let t=me(We,this.role);t.Return=!0,this._userRoleService.pushNewValue(t),this.isShowToastrInApplyCoupon()&&this.toastr.success("You got access to return a sales transaction!","Coupon Applied")}handleCouponParkedDeletionAccess(){let e=me(We,this.role);e.ParkedDeletionAuthorized=!0,this._userRoleService.pushNewValue(e),this.isShowToastrInApplyCoupon()&&this.toastr.success("You Have Access to delete park and delete item when retrieve!","Coupon Applied")}handleFullAccessCoupon(){let e=me(We,this.role);e.UnitPriceEditor=!0,e.Discount=!0,e.Return=!0,e.Tax=!0,e.NumberEditor=!0,e.DateEditor=!0,e.PricebookSelector=!0,e.DeleteItem=!0,e.ParkedDeletionAuthorized=!0,this._userRoleService.pushNewValue(e),this.isShowToastrInApplyCoupon()&&this.toastr.success("You now have Full Access for this Order!","Coupon Applied")}handleDeleteItemCoupon(){let e=me(We,this.role);e.DeleteItem=!0,this._userRoleService.pushNewValue(e),this.isShowToastrInApplyCoupon()&&this.toastr.success("You Have Access to delete item","Coupon Applied")}removeAppliedCoupon(e=!0){this._userRoleService.pushNewValue(this.originalRoleData),this._orderDataService.pushNewValue(this.salesOrderBeforePromotion()),this.salesOrderBeforePromotion.set(null),this._coupon.set(null),e&&this.toastr.warning("Coupon Cancelled","Warning")}resetCouponOnNewTransaction(){this._userRoleService.pushNewValue(this.originalRoleData),this._coupon.set(null)}removeAppliedDiscountOnCustomerChange(){if(this.coupon)switch(this.coupon.Requirement?.Type){case 1:this.HandleDiscountPercentage(this._coupon(),!0),this.removeAppliedCouponOnCustomerChange();break;case 2:this.HandleDiscountAmount(this._coupon(),!0),this.removeAppliedCouponOnCustomerChange();break}}removeAppliedCouponOnCustomerChange(){if(this.coupon){let e=this._orderDataService.Data;e.Order.PromotionCoupon=null,e.Order.PromotionNote=null,this._coupon.set(null),this._userRoleService.pushNewValue(this.originalRoleData),this._orderDataService.pushNewValue(e)}}isSameCartItem(e,t){return e.VariantID===t.VariantID&&e.Quantity===t.Quantity&&e.Price===t.Price&&e.Discount===t.Discount&&e.PriceBookID===t.PriceBookID}static \u0275fac=function(t){return new(t||n)(g(ge),g(L),g(De),g(F),g(se),g(wt))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};var Nt=class{CommissionID;ReturNumber;parkTemporaryItem;posState;InputTextValue;constructor(){this.posState=0,this.CommissionID="",this.ReturNumber="",this.parkTemporaryItem=[],this.InputTextValue=""}};var Fi=class n{constructor(e,t,i){this._promotionEventService=e;this._dialogRef=t;this.data=i;this.modalConfig=new ie,this.modalConfig.hideCancel=!0,this.modalConfig.hideClose=!0,this.modalConfig.headerType=de.Warning,this.modalConfig.title="Promotion Requirement unfulfilled!",this.modalConfig.customWidth="350px",this.modalConfig.okText="Ok",this.selectedPromotion=e.selectedPromotion}modalConfig;selectedPromotion;onOk(){this._promotionEventService.restoreOrder(),this._dialogRef.close()}static \u0275fac=function(t){return new(t||n)(P(Ae),P(te),P(fe))};static \u0275cmp=N({type:n,selectors:[["POS-modal-promotion-confirm"]],standalone:!1,decls:9,vars:4,consts:[[3,"onOk","config"],[1,"fst-italic","text-danger","mb-3"],[1,"mb-0"]],template:function(t,i){t&1&&(a(0,"modal-material",0),S("onOk",function(){return i.onOk()}),a(1,"content")(2,"div")(3,"h5"),d(4),s(),a(5,"p",1),d(6),s(),a(7,"p",2),d(8),s()()()()),t&2&&(p("config",i.modalConfig),l(4),M(i.selectedPromotion==null?null:i.selectedPromotion.Name),l(2),M(i.selectedPromotion==null?null:i.selectedPromotion.Description),l(2),M(i.data==null?null:i.data.message))},dependencies:[ne],encapsulation:2})};var Li=class extends xe{};var Vt=class n{constructor(e,t,i,o,r,c,u,O,k,W){this.variantService=e;this._posService=t;this._orderDataService=i;this.toastr=o;this._orderProcessorService=r;this._customerHttpService=c;this.promotionCouponService=u;this.promotionCouponExternalService=O;this.userRoleService=k;this.decimalPipe=W;this.subscribeToObservable()}salesOrderData;appConfigJson;entityID;audio=new Audio;subscribeToObservable(){this._posService.Data$.pipe(ee()).subscribe(e=>{this.appConfigJson=e.AppConfigJSON}),this._orderDataService.Data$.pipe(ee()).subscribe(e=>{this.salesOrderData=e,this.entityID=e.Order.EntityID}),this._orderProcessorService.Data$.pipe(ee()).subscribe(e=>{e.posState==3&&this.clearCartItemsInLocalStorage()})}addCartItemById(e,t,i=!0){return new Promise((o,r)=>{this.variantService.findVariantByID(e,this.entityID,i).then(c=>{this.createNewCartItem(c,t),o(c)}).catch(c=>{r(c)})})}addCartItemByCode(e){return new Promise((t,i)=>{let o=this.appConfigJson.ModuleSell.DigitalScale;o.Digit>0&&f.IsNotEmpty(o.Regex)&&e.length==o.Digit?this.parseDigitalScaleBarcodeWithRegex(e,o).then(c=>{c||(this.toastr.info("Matching Regex Rule to Barcode","Digital Scale"),this.findVariantByCode(e).then(u=>t(u)).catch(u=>i(u)))}):this.findVariantByCode(e).then(c=>t(c)).catch(c=>i(c))})}findVariantByCode(e){let t=this.appConfigJson.ModuleSell.BarcodeSerialEnabled;return new Promise((i,o)=>{this.variantService.findVariantByCode(e,this.entityID,t).then(r=>{i(r),this.createNewCartItem(r)}).catch(r=>{this.playBellRing(),o(r)})})}addItemBySerial(e){this.variantService.findVariantBySerial(e,this.entityID).subscribe(t=>{let i=this.salesOrderData.CartItems;if(i.length>0){let o,r=[],c=i.findIndex(u=>u.Variant.ID==t.ID);r=[],c!==-1?(o=i[c].Serial?.findIndex(u=>u.Number==e),r=[...i[c].Serial?i[c].Serial:[]],o==-1?(r.push({Number:e,Quantity:1}),i[c].Quantity=r.length):r.length>0?r[o].Quantity+=1:(r=[{Number:e,Quantity:1}],this.addNewSerials(t,e)),i[c].Serial=[...r],i[c].Quantity=i[c].calculateSerialQty(),this.updateCartItem(i[c],c)):this.addNewSerials(t,e)}else this.addNewSerials(t,e)})}addNewSerials(e,t){e.Serial=[{Number:t,Quantity:1}],this.createNewCartItem(e)}playBellRing(){this.audio.src="https://cdn.dealpos.xyz/web-audio/bell_ring.mp3",this.audio.load(),this.audio.play()}updateCartItem(e,t){this.salesOrderData.CartItems[t]=e,this._orderDataService.pushNewValue(this.salesOrderData),this.applyCustomerPoint(),this.reApplyPromotionCoupon(),this.saveItemsToLocalStorage()}deleteCartItem(e){this.salesOrderData.CartItems=this.salesOrderData.CartItems.filter(t=>t!==e),this._orderDataService.pushNewValue(this.salesOrderData),this.applyCustomerPoint(),this.isRemoveItemRequirement(e)&&this.reApplyPromotionCoupon()}parseDigitalScaleBarcodeWithRegex(e,t){return new Promise(i=>{let o=this.appConfigJson.ModuleSell.BarcodeSerialEnabled,r=new RegExp(t.Regex),c=e.match(r);if(console.log(c),f.IsNotEmpty(c)){let u=c[1],O=parseFloat(c[2]);console.log(O,"productQuantity"),O=O/t.QuantityDivider,this.variantService.findVariantByCode(u,this.entityID,o).then(k=>{this.createNewCartItem(k,null,O),i(!0)}).catch(()=>{i(!1)})}else i(!1)})}createNewCartItem(e,t,i){let o=new xe,r=this.appConfigJson.ModuleSell.ProductNotes.CopyProductDescription,c=this.appConfigJson.ModuleSell.ProductNotes.CopyPromotionName;o.patchByVariant(e,r,c),o=this.applyReward(o,t),f.IsEmpty(t)&&(o=this.applyPriceBook(o)),this.validateCartItem(o)&&(o.Quantity=i||o.Quantity,t?.PromotionType==2?this.handlingPromotionQuantity(o):this.pushNewItemToArray(o,o.PromotionGift),this.applyCustomerPoint()),this.addAvailableComponent(o)}applyCustomerPoint(){let e=this.salesOrderData.Order.CustomerID,t=f.IsEmpty(e);this._orderProcessorService.reedemPointToDiscount(t)}handlingPromotionQuantity(e){let t=me(xe,this.salesOrderData.CartItems),i=t.findIndex(o=>o.VariantID==e.VariantID&&o.PromotionGift);i!==-1?t[i].Quantity+=e.Quantity?e.Quantity:1:t=[...t,e],this.salesOrderData.CartItems=t,this._orderDataService.pushNewValue(this.salesOrderData)}applyPromotionProduct(e){let t=e.Variant.DiscountAmount;return t&&(e.Price=e.UnitPriceOriginal-t),e}applyReward(e,t){if(t){let i=this.appConfigJson.ModuleSell.ProductNotes.CopyPromotionName;e.Discount=t.Discount,e.Price=t.OriginalPrice;let o=t.OriginalPrice-t.UnitPrice;e.Price=e.UnitPriceOriginal-o,e.UnitPrice=e.UnitPriceOriginal-o,e.PromotionGift=!0,e.PromotionID=t.PromotionID,e.Quantity=t.Quantity?t.Quantity:1,e.PriceTypeID=3,e.Cost+=t.ExtraCost,e.UnitCost+=t.ExtraCost,e.PriceNote=t.PromotionName,i&&(e.Note=`${e.Note?e.Note:""} ${t.PromotionName} `)}return e}addAvailableComponent(e){let t=e.Price!=0,i=this.appConfigJson.ModuleSell.SellProductComponentDefaultPrice,o=e.Variant;if(o.Component!=null&&o.Component.length>0)for(let r of o.Component){let c=new Li;c.patchByVariant(r),c.Quantity=e.Quantity*r.Quantity,t&&!i&&(r.UnitPrice=0),c.Price=r.UnitPrice,this.pushNewItemToArray(c)}}pushNewItemToArray(e,t=!1){let i=this.salesOrderData.CartItems.findIndex(o=>o.VariantID==e.VariantID);if(e=this.applyPromotionProduct(e),i==-1||t)this.salesOrderData.CartItems.push(e);else{let o=this.appConfigJson.ModuleSell.QuickKey.NewRowBehaviour;if(o==2)this.salesOrderData.CartItems.push(e);else if(o==1)this._orderProcessorService.Data.posState==4?this.salesOrderData.CartItems.push(e):this.addingQuantityItem(i,e);else{if(!this.validatePrepaidPackage(e,i)){this.toastr.error("This prepaid package is already in the cart while editing. Please remove it first before adding again.","Cannot Add Item");return}this.addingQuantityItem(i,e)}}this._orderDataService.pushNewValue(this.salesOrderData),this.saveItemsToLocalStorage(),this.reApplyPromotionCoupon()}saveItemsToLocalStorage(){let e=this.userRoleService.Data.DeleteItem,t=this._orderProcessorService.Data?.posState;if(!e&&t!==4){let i=this._orderDataService.Data,o=i?.Order?.Number,r=i.CartItems,c={Number:o,CartItems:r};try{localStorage.setItem("cart_items",JSON.stringify(c))}catch(u){console.error("Error saving cart items to localStorage:",u)}}}clearCartItemsInLocalStorage(){localStorage.getItem("cart_items")&&(this.userRoleService.Data?.DeleteItem?this.clearCartItemsBasedOnCoupon():this.clearCartItemsStorage())}clearCartItemsBasedOnCoupon(){let e=this.promotionCouponService?.coupon;e&&(e.Requirement?.Type==5||e.Requirement?.Type==6)&&this.clearCartItemsStorage()}clearCartItemsStorage(){try{localStorage.removeItem("cart_items")}catch(e){console.error("Error clearing cart items from localStorage:",e)}}validatePrepaidPackage(e,t){let i=this.salesOrderData.CartItems[t],o=this._orderProcessorService.Data.posState,r=e.Variant.TypeID==10,c=f.IsNotEmpty(i.ID),u=!0;return o==2&&r&&c&&(u=!1),u}reApplyPromotionCoupon(){let e=this.salesOrderData.Order.CouponProvider,t=e=="Internal"||f.IsEmpty(e),i=this.salesOrderData.Order.PromotionCoupon,o=this.salesOrderData.Order.PromotionNote;f.IsNotEmpty(i)&&(t?this.promotionCouponService.RedeemCoupon(i,o,!0):this.promotionCouponExternalService.redeemCoupon(i,"External",o))}isRemoveItemRequirement(e){let t=this.promotionCouponService?.coupon,i=t?.ApplyToProduct,o=!0;return f.IsNotEmpty(t)&&i?.length>0&&(o=i.some(r=>r.ID==e.VariantID)),o}addingQuantityItem(e,t){let i=this.salesOrderData.CartItems.filter(u=>u.VariantID==t.VariantID),o=i.length,r=i.find(u=>!u.PromotionGift);this.salesOrderData.CartItems[e].PromotionGift&&o==1?this.salesOrderData.CartItems.push(t):(r.Quantity+=t.Quantity,r=this.applyPromotionProduct(r)),r&&(r=this.applyPriceBook(r))}validateCartItem(e){return e.Variant.CategoryTypeID==-1?(this.toastr.info(e.Variant.Name+" cannot be sold, check Category "+e.Variant.CategoryName+" settings","info"),!1):!(!this.validatePriceMinimum(e)||!this.validateSerialItem(e))}validatePriceMinimum(e){let t=!0,i=this.userRoleService.Data.PriceMinimum,o=this.appConfigJson.ModuleSell.ProductDialog.PriceMinimumTypeID;if(i){let r=0;switch(o){case 1:r=e.UnitPrice;break;case 2:r=e.UnitCost;break;case 3:r=e.UnitPriceMinimum;break}if(e.Price<r){t=!1;let c=f.StringFormat("You have no right to sell this item lower than {0}",this.decimalPipe.transform(r));alert(c)}}return t}validateSerialItem(e){let t=!0;if(e?.Serial?.length>0&&e.Variant.TypeID==4&&e.Quantity>0){let i=0;e?.Serial?.forEach(o=>{i+=o.Quantity}),i!=e.Quantity&&(this.toastr.error("Serial must be equal with the quantity","Error"),t=!1)}return t}applyPriceBook(e){let t=e.Variant.PriceBook!=null?e.Variant.PriceBook:[],i=this.findCustomerPricebook(t);if(t&&t.length!==0){let o=t.sort(function(r,c){return c.MinimumQuantity-r.MinimumQuantity}).filter(r=>e.Quantity>=r.MinimumQuantity&&r.MinimumQuantity!=0);o.length>0||f.IsNotEmpty(i)?f.IsNotEmpty(i)?e=this.applyPricebookToItem(e,i):e=this.applyPricebookToItem(e,o[0]):e=this.resetAppliedPricebook(e)}return e}resetAppliedPricebook(e){let i=(e?.Variant?.PriceBook).find(o=>o.ID==e.PriceBookID);return f.IsNotEmpty(i)&&(e.Discount=e.Variant.PriceDiscount,e.PriceBookID=f.GuidEmpty,e.Price=e.Variant.UnitPrice,e.UnitPrice=e.Variant.UnitPrice,e.PriceTypeID=0,e=this.applyPromotionProduct(e),e=this.removePromotionNote(e)),e}removePromotionNote(e){let t=this.appConfigJson.ModuleSell.ProductNotes;if(this.appConfigJson?.ModuleSell?.Pricebook?.PricebookVisible&&(e.Note=e.Note?.replace(e.PriceNote,""),e.PriceNote=""),t.CopyPromotionName){let o=e.Variant?.PriceNote;e.Note=`${o||""} ${e.Note?e.Note:""}`,e.PriceNote=o}return e}applyPricebookToItem(e,t){return e.Discount=t.PriceDiscount,e.UnitPrice=t.UnitPrice,e.PriceBookID=t.ID,e.Price=t.UnitPrice,e.PriceTypeID=2,e=this.assignItemNote(e,t),e}assignItemNote(e,t){return this.appConfigJson?.ModuleSell?.Pricebook?.PricebookVisible?(e.Note?.includes(e.PriceNote)?e.Note=e.Note?.replace(e.PriceNote,t.Name):e.Note=`${t.Name} ${e.Note?e.Note:""}`,e.PriceNote=t.Name):(e.Note="",e.PriceNote=""),e}findCustomerPricebook(e=[]){let t=this._customerHttpService.Data,i;return t&&(i=e.find(o=>o.ID==t.PricebookID)),i}static \u0275fac=function(t){return new(t||n)(g(Mo),g(z),g(L),g(F),g(je),g(Re),g(Rt),g(Bi),g(De),g(q))};static \u0275prov=I({token:n,factory:n.\u0275fac,providedIn:"root"})};function Or(n,e){if(n&1&&(a(0,"div",2)(1,"div",4),b(2,"input",8),s()()),n&2){let t=m();l(2),p("formControl",t.searchControl)}}function Dr(n,e){n&1&&(a(0,"span"),d(1,"Apply"),s())}function Mr(n,e){n&1&&(a(0,"span"),d(1,"Applying..."),s())}function xr(n,e){if(n&1){let t=E();a(0,"tr")(1,"td"),d(2),s(),a(3,"td"),d(4),s(),a(5,"td",9),d(6),y(7,"number"),s(),a(8,"td",9),d(9),y(10,"number"),s(),a(11,"td",10)(12,"button",11),S("click",function(){let o=v(t).$implicit,r=m();return _(r.onSelectReward(o))}),h(13,Dr,2,0,"span"),h(14,Mr,2,0,"span"),s()()()}if(n&2){let t=e.$implicit,i=m();l(2),M(t.VariantName),l(2),M(t.VariantCode),l(2),M(x(7,7,t.OriginalPrice)),l(3),M(x(10,9,t.UnitPrice)),l(3),p("disabled",i.isApplyingReward()),l(),C(i.isApplyingReward()?-1:13),l(),C(i.isApplyingReward()?14:-1)}}var ji=class n{constructor(e,t,i,o,r,c){this._dialogRef=e;this._matDialog=t;this._shoppingCartService=i;this._promotionEventService=o;this._toastr=r;this.data=c;this.selectedPromotion=this._promotionEventService.selectedPromotion}modalConfig=new ie;selectedPromotion;rewards$;searchControl=new et;isApplyingReward=R(!1);ngOnInit(){this.modalConfig.title="Select a Reward",this.modalConfig.hideFooter=!0,this.initRewards(!0)}initRewards(e){this.rewards$=this.searchControl.valueChanges.pipe(li(""),ht(e?0:500),Fe(),Y(t=>{let i;return i=ke(this.data.rewards).pipe(J(o=>o.filter(r=>this.findKeywordInValue(t,r?.VariantCode)||this.findKeywordInValue(t,r?.VariantName)))),e=!0,i}))}findKeywordInValue(e,t){return t?.toUpperCase()?.indexOf(e?.toUpperCase())>-1}onSelectReward(e){return oi(this,null,function*(){if(!this.isApplyingReward()){this.isApplyingReward.set(!0);try{e.PromotionType=this.data.promotion.TypeID,yield this._shoppingCartService.addCartItemById(e.VariantID,e,!0).then(()=>{this._matDialog.closeAll(),this._promotionEventService.pushNewValue(this._promotionEventService.Data),this.showToastAppliedPromo()})}finally{this.isApplyingReward.set(!1)}}})}showToastAppliedPromo(){this._toastr.success("Applied "+this.selectedPromotion.Name+" to order!","Applied successfully!")}close(){this._dialogRef.close()}static \u0275fac=function(t){return new(t||n)(P(te),P(we),P(Vt),P(Ae),P(F),P(fe))};static \u0275cmp=N({type:n,selectors:[["POS-modal-select-item"]],standalone:!1,decls:23,vars:8,consts:[[3,"onCancel","onClose","config"],[1,"container"],[1,"row","mb-3"],[1,"row"],[1,"col-12"],[1,"table","table-bordered"],[1,"thead-light"],["scope","col"],["type","text","placeholder","Type to filter reward",1,"form-control",3,"formControl"],[1,"text-end"],[1,"text-center"],[1,"btn","btn-sm","btn-success",3,"click","disabled"]],template:function(t,i){t&1&&(a(0,"modal-material",0),S("onCancel",function(){return i.close()})("onClose",function(){return i.close()}),a(1,"content")(2,"div",1),h(3,Or,3,1,"div",2),a(4,"div",3)(5,"div",4)(6,"table",5)(7,"thead",6)(8,"tr")(9,"th",7),d(10,"Name"),s(),a(11,"th",7),d(12,"Code"),s(),a(13,"th",7),d(14,"Price"),s(),a(15,"th",7),d(16,"Promo"),s(),b(17,"th",7),s()(),a(18,"tbody"),K(19,xr,15,11,"tr",null,ve),y(21,"async"),y(22,"sortBy"),s()()()()()()()),t&2&&(p("config",i.modalConfig),l(3),C((i.data==null||i.data.rewards==null?null:i.data.rewards.length)>5?3:-1),l(16),Z(yt(22,4,x(21,2,i.rewards$),"desc","VariantCode")))},dependencies:[Te,Pe,St,ne,ze,q,Mt],styles:[".table-scroll[_ngcontent-%COMP%]{max-height:400px;overflow-y:auto}table[_ngcontent-%COMP%]{max-width:600px!important;overflow-x:hidden}"]})};function Ir(n,e){if(n&1&&(a(0,"div",3)(1,"div",5),b(2,"input",10),s()()),n&2){let t=m();l(2),p("formControl",t.searchCtrl)}}function Tr(n,e){n&1&&(a(0,"th",9),d(1,"Qty"),s())}function Er(n,e){n&1&&b(0,"th",8)}function wr(n,e){if(n&1){let t=E();a(0,"td")(1,"input",13),H("ngModelChange",function(o){v(t);let r=m().$implicit;return A(r.Quantity,o)||(r.Quantity=o),_(o)}),s()()}if(n&2){let t=m().$implicit;l(),B("ngModel",t.Quantity)}}function Rr(n,e){n&1&&(a(0,"span"),d(1,"Apply"),s())}function Nr(n,e){n&1&&(a(0,"span"),d(1,"Applying..."),s())}function Ar(n,e){if(n&1){let t=E();a(0,"td",12)(1,"button",14),S("click",function(){v(t);let o=m().$implicit,r=m();return _(r.onApplyReward(o))}),h(2,Rr,2,0,"span"),h(3,Nr,2,0,"span"),s()()}if(n&2){let t=m(2);l(),p("disabled",t.isApplyingReward()),l(),C(t.isApplyingReward()?-1:2),l(),C(t.isApplyingReward()?3:-1)}}function kr(n,e){if(n&1&&(a(0,"tr")(1,"td"),d(2),s(),a(3,"td"),d(4),s(),a(5,"td",11),d(6),y(7,"number"),s(),a(8,"td",11),d(9),y(10,"number"),s(),h(11,wr,2,1,"td")(12,Ar,4,3,"td",12),s()),n&2){let t=e.$implicit,i=m();l(2),M(t.VariantName),l(2),M(t.VariantCode),l(2),M(x(7,5,t.OriginalPrice)),l(3),M(x(10,7,t.UnitPrice)),l(2),C(i.rewardQuantity>1?11:12)}}var Qi=class n{constructor(e,t,i,o,r,c){this.data=e;this.shoppingCartService=t;this.promotionEventService=i;this.dialogRef=o;this.matDialog=r;this.toastr=c;this.searchCtrl=new et,this.rewardQuantity=e.rewardQuantity,this.sourceRewards=[...e.rewards]}modalConfig;rewards$;rewardQuantity;rewards;sourceRewards=[];searchCtrl;isApplyingReward=R(!1);ngOnInit(){this.initModalConfig(),this.initSearchCtrl(!0)}initModalConfig(){this.modalConfig=new ie,this.modalConfig.title="Select a Reward",this.rewardQuantity<2&&(this.modalConfig.hideFooter=!0)}initSearchCtrl(e){this.rewards$=this.searchCtrl.valueChanges.pipe(li(""),ht(e?0:500),Fe(),Y(t=>{let i;return i=ke(this.sourceRewards).pipe(J(o=>(o.length===1&&(o[0].Quantity=this.rewardQuantity),o)),J(o=>o.filter(r=>this.findKeywordInValue(t,r?.VariantCode)||this.findKeywordInValue(t,r?.VariantName)))),e=!1,i}),le(t=>{this.rewards=t}))}findKeywordInValue(e,t){return t?.toUpperCase()?.indexOf(e.toUpperCase())>-1}onApplyReward(e){return oi(this,null,function*(){if(!this.isApplyingReward()){this.isApplyingReward.set(!0);try{yield this.addRewardToShoppingCart(e)}finally{this.isApplyingReward.set(!1)}}})}onClose(){this.dialogRef.close()}onOk(){this.calculateRewardQty()>this.rewardQuantity?this.toastr.warning("Product reward exceeds the maximum amount earned","Warning"):[...this.rewards].filter(i=>i.Quantity>0).forEach(i=>{this.addRewardToShoppingCart(i)})}calculateRewardQty(){let e=0;return this.rewards.forEach(t=>{e+=t.Quantity?t.Quantity:0}),e}addRewardToShoppingCart(e){return e.PromotionType=this.data.promotion.TypeID,this.shoppingCartService.addCartItemById(e.VariantID,e,!0).then(()=>{this.matDialog.closeAll(),this.promotionEventService.pushNewValue(this.promotionEventService.Data)})}static \u0275fac=function(t){return new(t||n)(P(fe),P(Vt),P(Ae),P(te),P(we),P(F))};static \u0275cmp=N({type:n,selectors:[["app-modal-quantity-reward"]],standalone:!1,decls:27,vars:10,consts:[[3,"onCancel","onOk","onClose","config"],[1,"ms-3"],[1,"container"],[1,"row","mb-3"],[1,"row","table-scroll"],[1,"col-12"],[1,"table","table-bordered"],[1,"thead-light"],["scope","col"],["scope","col",2,"width","66px"],["type","text","placeholder","Type to filter reward",1,"form-control",3,"formControl"],[1,"text-end"],[1,"text-center"],["type","text","autoNum","","min","0",1,"form-control",3,"ngModelChange","ngModel"],[1,"btn","btn-sm","btn-success",3,"click","disabled"]],template:function(t,i){t&1&&(a(0,"modal-material",0),S("onCancel",function(){return i.onClose()})("onOk",function(){return i.onOk()})("onClose",function(){return i.onClose()}),a(1,"header")(2,"small",1),d(3),s()(),a(4,"content")(5,"div",2),h(6,Ir,3,1,"div",3),a(7,"div",4)(8,"div",5)(9,"table",6)(10,"thead",7)(11,"tr")(12,"th",8),d(13,"Name"),s(),a(14,"th",8),d(15,"Code"),s(),a(16,"th",8),d(17,"Price"),s(),a(18,"th",8),d(19,"Promo"),s(),h(20,Tr,2,0,"th",9)(21,Er,1,0,"th",8),s()(),a(22,"tbody"),K(23,kr,13,9,"tr",null,ve),y(25,"async"),y(26,"sortBy"),s()()()()()()()),t&2&&(p("config",i.modalConfig),l(3),D(" ( ",i.rewardQuantity," products reward ) "),l(3),C((i.sourceRewards==null?null:i.sourceRewards.length)>5?6:-1),l(14),C(i.rewardQuantity>1?20:21),l(3),Z(yt(26,6,x(25,4,i.rewards$),"desc","VariantCode")))},dependencies:[Te,Pe,Ee,St,ne,Dt,ze,q,Mt],encapsulation:2})};var Ae=class n{constructor(e,t,i,o,r,c,u,O,k){this._orderDataService=e;this._outletService=t;this._invoiceCalculatorService=i;this._dialog=o;this._httpService=r;this._posService=c;this._toastr=u;this._signalrService=O;this.decimalPipe=k;this.previousQuantity=0,this.previousTotalEligible=0,this.subscribeNotification(),this._posService.Data$.subscribe(W=>{this.taxes=W.Taxes}),this._outletService.Data$.subscribe(W=>{this.loadPromotions(W.Promotion)}),this._orderDataService.Data$.pipe(ce(W=>{this.salesOrderData=W;let ye=this.calculateOrderReward(W.getRewards()),_n=this.calculateOrderReward(this.previousRewards);return this.previousQuantity!=W.TotalQuantity||_n<ye||this.isRestroreOrder}),ht(100)).subscribe(W=>{this.isRestroreOrder=!1,this.checkQtyPromotion(),this.applyQuantityPromotion(),this.previousRewards=[...W.getRewards()]}),this._invoiceCalculatorService.Data$.subscribe(W=>{this.checkEligiblePromotionWithMinSpend()})}_Data=new be([]);get Data(){return this._Data.getValue()}Data$=this._Data.asObservable();selectedPromotion=null;onClickToastPromo=new Me;previousQuantity;salesOrderData;orderDataBeforePromotion;taxes=[];previousTotalEligible;previousRewards=[];isRestroreOrder=!1;calculateOrderReward(e){let t=0;return e.length>0&&(t=e.map(i=>i.Quantity).reduce((i,o)=>i+o)),t}checkQtyPromotion(){let e=this._orderDataService.Data;this.checkEligibleQtyPromotion(e.CartItems),this.checkEligibleTierPromotion(e.CartItems),this.previousQuantity=e.TotalQuantity}subscribeNotification(){this._signalrService.OnPromotionEventChange.pipe(ee(),Y(()=>{let e=this._outletService.Data?.RegisterID;return this.getPromotions(e)})).subscribe(()=>{this._toastr.info("Promotion Event Updated","Promotion Update")})}getPromotions(e){return this._httpService.get(U.GetListPromotion,[{key:"RegisterID",value:e}]).pipe(le(t=>{this.loadPromotions(t)}))}loadPromotions(e){let t=this.getPromotionDesc(e);this.pushNewValue(t),this.checkQtyPromotion(),this.checkEligiblePromotionWithMinSpend()}pushNewValue(e){this.showToastEligiblePromotion(),this._Data.next(e)}checkSelectedPromotionRequirement(e){this.selectedPromotion!=null&&this.selectedPromotion.TypeID==e&&this.Data.find(i=>i.ID===this.selectedPromotion.ID)?.Eligible===!1&&(this._dialog.open(Fi,{id:"modal-promotion-confirm",data:{message:"Order will be restored to before the promotion is applied"},disableClose:!0}),this.isRestroreOrder=!0)}restoreOrder(){this._orderDataService.pushNewValue(this.orderDataBeforePromotion),this.selectedPromotion=null}getPromotionDesc(e=[]){return e?.map(i=>(i.Description=this.generatePromotionDesc(i),i))}checkEligiblePromotionWithMinSpend(){let e=this._invoiceCalculatorService.Data,t=this.Data?.filter(o=>(o.TypeID===1||o.TypeID==3)&&!this.checkExpiredPromotion(o)).map(o=>(e>=o.MinimumAmount?o.Eligible=!0:o.Eligible=!1,o)),i=this.mappingEligiblePromotion(t);this.pushNewValue(i),this.checkSelectedPromotionRequirement(1),this.checkSelectedPromotionRequirement(3)}checkEligibleQtyPromotion(e){let t=0,i=this.Data?.filter(r=>r.TypeID===2&&!this.checkExpiredPromotion(r)).map(r=>(r.Eligible=!1,r.ListVariant.length>0?(t=this.getQuantityByRequirementType(e,"variant",r.ListVariant),t>=r.MinimumAmount&&(r.Eligible=!0)):r.ListCategory.length>0?(t=this.getQuantityByRequirementType(e,"category",r.ListCategory),t>=r.MinimumAmount&&(r.Eligible=!0)):this.salesOrderData.TotalQuantity>=r.MinimumAmount&&(r.Eligible=!0),r)),o=this.mappingEligiblePromotion(i);this.pushNewValue(o)}checkEligibleTierPromotion(e){let t,i=this.Data?.filter(r=>r.TypeID===5&&!this.checkExpiredPromotion(r)).map(r=>(r.Eligible=!1,r.ListVariant.length>0?t=this.getQuantityByRequirementType(e,"variant",r.ListVariant):r.ListCategory.length>0?t=this.getQuantityByRequirementType(e,"category",r.ListCategory):t=this.salesOrderData.TotalQuantity,r.PromotionTieredQuantity.forEach(c=>{t>=c.Quantity&&(r.Eligible=!0)}),r)),o=this.mappingEligiblePromotion(i);this.pushNewValue(o)}getQuantityByRequirementType(e,t,i){let o=0,r;return t=="variant"?e.forEach(c=>{r=i.findIndex(u=>u.ID===c.VariantID),r!==-1&&(o+=c.Quantity)}):e.forEach(c=>{c.Variant&&(r=i.findIndex(u=>u.ID===c.Variant.CategoryID),r!==-1&&(o+=c.Quantity))}),o}mappingEligiblePromotion(e=[]){let t=this.Data;if(e?.length>0){let i;t=this.Data?.map(o=>(i=e.findIndex(r=>r.ID==o.ID),i!==-1&&(o=e[i]),o))}return t}checkExpiredPromotion(e){let t=new Date,i=new Date(e.StartDate),r=(f.IsEmpty(e.StartTime)?"00:00:00":e.StartTime).split(":").map(k=>parseInt(k));i.setHours(r[0],r[1],r[2]);let c=new Date(e.ExpirationDate),O=(f.IsEmpty(e.EndTime)?"23:59:59":e.EndTime).split(":").map(k=>parseInt(k));return c.setHours(O[0],O[1],O[2]),!(t.getTime()>=i.getTime()&&t.getTime()<=c.getTime())}showToastEligiblePromotion(){let e=this.getTotalEligiblePromotion(),t=f.IsNotEmpty(this.salesOrderData.Order.ID);this.previousTotalEligible!==e&&e>0&&!t&&this._toastr.info(e+" promotion(s) can be applied!","Promo available!",{timeOut:2e4}).onTap.pipe(Qe(1)).subscribe(()=>{this.onClickToastPromo.next(!0)}),this.previousTotalEligible=e}getTotalEligiblePromotion(){return this.Data?.filter(t=>t.Eligible).length}generatePromotionDesc(e){let t="";switch(e.TypeID){case 2:t+="Minimum "+this.decimalPipe.transform(e.MinimumAmount)+" ",e.ListVariant.length>0?(t=t+" piece of ",t+=this.generateItemListDescription(e.ListVariant)):e.ListCategory.length>0?(t+="from category ",t+=this.generateItemListDescription(e.ListCategory)):t+="items";break;case 1:t+="Minimum spend Rp. "+this.decimalPipe.transform(e.MinimumAmount);break;case 3:t+=`Apply
3
3
  ${e.Discount1!==0?"discount1 = "+e.Discount1+"%":""}
4
4
  ${e.Discount1!==0&&e.Discount2!==0?" and ":""}
@@ -1 +1 @@
1
- import{a as P}from"./chunk-7DCWSNUN.js";import{a as w}from"./chunk-YLLLGS4S.js";import{a as C}from"./chunk-M43HNBJQ.js";import{a as A}from"./chunk-HIQKF5X3.js";import{a as I}from"./chunk-A45GTZVV.js";import{a as l}from"./chunk-2FWFPV5I.js";import{a as c}from"./chunk-USJ6ILEE.js";import{fa as y,pa as f,t as L,z as S}from"./chunk-JYZTRN6N.js";import{a as F}from"./chunk-SNAKHGZS.js";var g=class{enabledDragItem;constructor(){this.enabledDragItem=!1}drop(o,t){C(t.Data,o.previousIndex,o.currentIndex)}toggleEnabledDragItem(){}onSaveDragAndDrop(o,t){this.enabledDragItem=!this.enabledDragItem,this.enabledDragItem||t.postListID(o,t.data.Data)}onPutSaveDragAndDrop(o,t){this.enabledDragItem=!this.enabledDragItem,this.enabledDragItem||t.putListID(o,t.data.Data)}};var u=class{constructor(o){this.httpService=o}exportCSV(o,t,e,i){e.pageData.Filter.Export=!0,e.pageData.Filter.FormatType=0,i=i||"export.csv",this.httpService.post(`/api/${t}`,e.pageData.Filter).subscribe(r=>{o.convertToCSV(r,i),e.pageData.Filter.Export=!1})}convertToCSV(o,t=!1,e){let i=this.ExportDataFromUI2(t);o.convertToCSV(i,e)}ExportDataFromUI2(o=!1){let t=document.getElementById("tableGrid"),e=[];return c.IsNotEmpty(t)&&t.querySelectorAll("tr").forEach(r=>{let a=new Object,s=0;r.querySelectorAll("th, td").forEach(n=>{s++;let b=parseInt(n.getAttribute("colspan"));for(let h=1;h<b;h++)a["column"+s]="",s++;let m=n.innerText,v=m.toString().split("");if(o&&v[0]==="0"&&v.length>1){let h="'"+m.trim();a["column"+s]=h}else a["column"+s]=m.trim()}),e.push(a)}),e}};var d=class{listTotal;pageSize;show;constructor(){this.listTotal=0,this.pageSize=0,this.show=!1}changePaginationData(o){this.pageSize=o.pageData.Filter.RowCount,this.listTotal=o.data?.ListTotal??o.data?.Data?.total?.value,this.show=this.pageSize<=this.listTotal}changePage(o,t,e){t.Filter.PageNumber=o.pageIndex+1,e.getListData()}};var x=class extends A{constructor(t,e,i,r,a,s,p){super(t);this.httpService=e;this.dataAPI=i;this.pageAPI=r;this.toastrService=a;this.route=s;this.initOpenDialog=p;this.exportHandler=new u(e),r?(s&&(this.loaderPayload=F({ListIDs:this.reportFilterService?.initOutletFilter()},s.snapshot.queryParams)),this.preInitLoader(),S([this.menuData$,this.httpService.post("/api/"+this.pageAPI,this.loaderPayload)]).pipe(L(([n,b])=>b)).pipe(I()).subscribe(n=>{this.pageData=n,this.pageData.Filter||(this.pageData.Filter={},this.pageData.Filter.RowCount=20),this.pageData.Filter.PageNumber=1,this.pageData.Filter.ID=this.loaderPayload.ID,this.preInitList(),p?this.openDialogFilter.openDialog():this.getListData()})):(this.pageData.Filter.RowCount=20,this.pageData.Filter.PageNumber=1,this.preInitList(),S({menuData:this.menuData$,listData:this.getListData$()}).pipe(I()).subscribe())}openDialogFilter=f(w);reportFilterService=f(P);pageData={Filter:{},Options:{},Roles:{},Config:{}};data;pagination=new d;dragDrop=new g;exportHandler;comparation=0;loaderPayload={};preInitLoader(){}preInitList(){}getListData(t){this.preGetList(),this.dataAPI&&this.httpService.post("/api/"+this.dataAPI,this.pageData.Filter).subscribe(e=>{this.data=e,this.postInit(e),this.pagination.changePaginationData(this),t&&(this.pageData.HideStoreApiCount=!1)})}getListData$(t){return this.preGetList(),this.httpService.post("/api/"+this.dataAPI,this.pageData.Filter).pipe(y(e=>{this.data=e,this.postInit(e),this.pagination.changePaginationData(this),t&&(this.pageData.HideStoreApiCount=!1)}))}searchFromPageOne(){this.preSearchFromPageOne(),this.pageData.Filter.PageNumber=1,this.getListData("filterMode")}postInit(t){t.PageTitle!=null&&(this.menuData.H=t.PageTitle)}preGetList(){this.pageData.Filter.From==null&&(this.pageData.Filter.From=c.MinDate),this.pageData.Filter.To==null&&(this.pageData.Filter.To=c.MinDate)}preSearchFromPageOne(){}onPaginationChange(t){this.pagination.changePage(t,this.pageData,this)}onSelectAllData(t){this.data.Data=this.data.Data.map(e=>(e.selected=t,e))}getSelectedData(){let t=[];return this.data&&(t=this.data.Data.filter(e=>e.selected)),t}httpPostListID(t,e,i){if(e||(e="Are you sure you want to selected record/s?"),confirm(e)==!1)return;let r=this.getSelectedData();r.length>0&&this.postListID(t,r,i)}httpPutListID(t,e,i){if(e||(e="Are you sure you want to selected record/s?"),confirm(e)==!1)return;let r=this.getSelectedData();r.length>0&&this.putListID(t,r,i)}httpDeleteListID(t,e,i){if(e||(e="Are you sure you want to delete selected record/s?"),confirm(e)==!1)return;let r=this.getSelectedData();r.length>0&&this.DeleteListID(t,r,i)}onSaveDragAndDrop(t){this.dragDrop.onSaveDragAndDrop(t,this)}onPutSaveDragAndDrop(t){this.dragDrop.onPutSaveDragAndDrop(t,this)}postListID(t,e,i){let r=e.map(a=>i?a[i]:a.ID);this.httpService.post(`/api/${t}`,r,1e6,!0).subscribe(a=>{this.toastrService.success(a.Message?a.Message:a,l.Success),this.getListData()},a=>{let s=a.status+" "+a.statusText;this.toastrService.error(a.error.Message!=""?a.error.Message:"An unknown error has occured!",s,{enableHtml:!0})})}putListID(t,e,i){let r=e.map(a=>i?a[i]:a.ID);this.httpService.put(`/api/${t}`,r).subscribe(a=>{this.toastrService.success(a.Message?a.Message:a,l.Success),this.afterPutListSuccess(),this.getListData()})}afterPutListSuccess(){}DeleteListID(t,e,i){let r=e.map(a=>i?a[i]:a.ID);this.httpService.delete(`/api/${t}`,{body:r}).subscribe(a=>{this.toastrService.success(a.Message?a.Message:a,l.Success),this.getListData()})}postData(t,e){this.httpService.post("/API/"+t,e).subscribe(i=>{this.getListData(),this.toastrService.success(i.Message?i.Message:i,l.Success)})}compare(t,e,i){return(t<e?-1:1)*(i?1:-1)}exportCSV(t,e,i){this.exportHandler.exportCSV(t,e,this,i)}s2ab(t){for(var e=new ArrayBuffer(t.length),i=new Uint8Array(e),r=0;r!=t.length;++r)i[r]=t.charCodeAt(r)&255;return e}exportXlsx(t,e){this.pageData.Filter.FormatType=1,this.pageData.Filter.Export=!0,this.httpService.post(`/api/${t}`,this.pageData.Filter).subscribe(i=>{e=decodeURI(e);let r=window.URL.createObjectURL(new Blob([this.s2ab(atob(i))],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,"})),a=document.createElement("a");a.href=r,a.setAttribute("download",e),document.body.appendChild(a),a.click(),window.URL.revokeObjectURL(r),a.remove()})}convertToCSV(t,e=!1,i){let r=this.exportHandler.ExportDataFromUI2(e);t.convertToCSV(r,i)}OnCompare(t){let e=t?this.data[t]:this.data;if(e.length<1)return;let i=Object.assign({},this.pageData.Filter);i.From=new Date(new Date(this.pageData.Filter.From).getFullYear(),new Date(this.pageData.Filter.From).getMonth()-1,1),i.To=new Date(new Date(this.pageData.Filter.To).getFullYear(),new Date(this.pageData.Filter.To).getMonth(),0).toDateString(),this.httpService.post("/API/"+this.dataAPI,i).subscribe(r=>{let a=t?r[t]:r;this.comparation=0,e.forEach(s=>{s.PrevIndex="-",s.CurrentIndex="-",s.Increase="-";let p=a.filter(n=>n.EntityID==s.EntityID);if(s.CurrentIndex=s.Rank,p.length>0){let n=p[0];s.PrevIndex=n.Rank,n.SalesNet?s.Increase=(s.SalesNet-n.SalesNet)/n.SalesNet*100:n.Sales&&(s.Increase=(s.Sales-n.Sales)/n.Sales*100),s.IsPositive=s.Increase>0,s.IsNegative=s.Increase<0,this.comparation+=s.Increase}})})}};export{x as a};
1
+ import{a as P}from"./chunk-DV63TLIP.js";import{a as w}from"./chunk-356KM5DR.js";import{a as C}from"./chunk-M43HNBJQ.js";import{a as A}from"./chunk-UQ5F3YKZ.js";import{a as I}from"./chunk-A45GTZVV.js";import{a as l}from"./chunk-2FWFPV5I.js";import{a as c}from"./chunk-USJ6ILEE.js";import{fa as y,pa as f,t as L,z as S}from"./chunk-JYZTRN6N.js";import{a as F}from"./chunk-SNAKHGZS.js";var g=class{enabledDragItem;constructor(){this.enabledDragItem=!1}drop(o,t){C(t.Data,o.previousIndex,o.currentIndex)}toggleEnabledDragItem(){}onSaveDragAndDrop(o,t){this.enabledDragItem=!this.enabledDragItem,this.enabledDragItem||t.postListID(o,t.data.Data)}onPutSaveDragAndDrop(o,t){this.enabledDragItem=!this.enabledDragItem,this.enabledDragItem||t.putListID(o,t.data.Data)}};var u=class{constructor(o){this.httpService=o}exportCSV(o,t,e,i){e.pageData.Filter.Export=!0,e.pageData.Filter.FormatType=0,i=i||"export.csv",this.httpService.post(`/api/${t}`,e.pageData.Filter).subscribe(r=>{o.convertToCSV(r,i),e.pageData.Filter.Export=!1})}convertToCSV(o,t=!1,e){let i=this.ExportDataFromUI2(t);o.convertToCSV(i,e)}ExportDataFromUI2(o=!1){let t=document.getElementById("tableGrid"),e=[];return c.IsNotEmpty(t)&&t.querySelectorAll("tr").forEach(r=>{let a=new Object,s=0;r.querySelectorAll("th, td").forEach(n=>{s++;let b=parseInt(n.getAttribute("colspan"));for(let h=1;h<b;h++)a["column"+s]="",s++;let m=n.innerText,v=m.toString().split("");if(o&&v[0]==="0"&&v.length>1){let h="'"+m.trim();a["column"+s]=h}else a["column"+s]=m.trim()}),e.push(a)}),e}};var d=class{listTotal;pageSize;show;constructor(){this.listTotal=0,this.pageSize=0,this.show=!1}changePaginationData(o){this.pageSize=o.pageData.Filter.RowCount,this.listTotal=o.data?.ListTotal??o.data?.Data?.total?.value,this.show=this.pageSize<=this.listTotal}changePage(o,t,e){t.Filter.PageNumber=o.pageIndex+1,e.getListData()}};var x=class extends A{constructor(t,e,i,r,a,s,p){super(t);this.httpService=e;this.dataAPI=i;this.pageAPI=r;this.toastrService=a;this.route=s;this.initOpenDialog=p;this.exportHandler=new u(e),r?(s&&(this.loaderPayload=F({ListIDs:this.reportFilterService?.initOutletFilter()},s.snapshot.queryParams)),this.preInitLoader(),S([this.menuData$,this.httpService.post("/api/"+this.pageAPI,this.loaderPayload)]).pipe(L(([n,b])=>b)).pipe(I()).subscribe(n=>{this.pageData=n,this.pageData.Filter||(this.pageData.Filter={},this.pageData.Filter.RowCount=20),this.pageData.Filter.PageNumber=1,this.pageData.Filter.ID=this.loaderPayload.ID,this.preInitList(),p?this.openDialogFilter.openDialog():this.getListData()})):(this.pageData.Filter.RowCount=20,this.pageData.Filter.PageNumber=1,this.preInitList(),S({menuData:this.menuData$,listData:this.getListData$()}).pipe(I()).subscribe())}openDialogFilter=f(w);reportFilterService=f(P);pageData={Filter:{},Options:{},Roles:{},Config:{}};data;pagination=new d;dragDrop=new g;exportHandler;comparation=0;loaderPayload={};preInitLoader(){}preInitList(){}getListData(t){this.preGetList(),this.dataAPI&&this.httpService.post("/api/"+this.dataAPI,this.pageData.Filter).subscribe(e=>{this.data=e,this.postInit(e),this.pagination.changePaginationData(this),t&&(this.pageData.HideStoreApiCount=!1)})}getListData$(t){return this.preGetList(),this.httpService.post("/api/"+this.dataAPI,this.pageData.Filter).pipe(y(e=>{this.data=e,this.postInit(e),this.pagination.changePaginationData(this),t&&(this.pageData.HideStoreApiCount=!1)}))}searchFromPageOne(){this.preSearchFromPageOne(),this.pageData.Filter.PageNumber=1,this.getListData("filterMode")}postInit(t){t.PageTitle!=null&&(this.menuData.H=t.PageTitle)}preGetList(){this.pageData.Filter.From==null&&(this.pageData.Filter.From=c.MinDate),this.pageData.Filter.To==null&&(this.pageData.Filter.To=c.MinDate)}preSearchFromPageOne(){}onPaginationChange(t){this.pagination.changePage(t,this.pageData,this)}onSelectAllData(t){this.data.Data=this.data.Data.map(e=>(e.selected=t,e))}getSelectedData(){let t=[];return this.data&&(t=this.data.Data.filter(e=>e.selected)),t}httpPostListID(t,e,i){if(e||(e="Are you sure you want to selected record/s?"),confirm(e)==!1)return;let r=this.getSelectedData();r.length>0&&this.postListID(t,r,i)}httpPutListID(t,e,i){if(e||(e="Are you sure you want to selected record/s?"),confirm(e)==!1)return;let r=this.getSelectedData();r.length>0&&this.putListID(t,r,i)}httpDeleteListID(t,e,i){if(e||(e="Are you sure you want to delete selected record/s?"),confirm(e)==!1)return;let r=this.getSelectedData();r.length>0&&this.DeleteListID(t,r,i)}onSaveDragAndDrop(t){this.dragDrop.onSaveDragAndDrop(t,this)}onPutSaveDragAndDrop(t){this.dragDrop.onPutSaveDragAndDrop(t,this)}postListID(t,e,i){let r=e.map(a=>i?a[i]:a.ID);this.httpService.post(`/api/${t}`,r,1e6,!0).subscribe(a=>{this.toastrService.success(a.Message?a.Message:a,l.Success),this.getListData()},a=>{let s=a.status+" "+a.statusText;this.toastrService.error(a.error.Message!=""?a.error.Message:"An unknown error has occured!",s,{enableHtml:!0})})}putListID(t,e,i){let r=e.map(a=>i?a[i]:a.ID);this.httpService.put(`/api/${t}`,r).subscribe(a=>{this.toastrService.success(a.Message?a.Message:a,l.Success),this.afterPutListSuccess(),this.getListData()})}afterPutListSuccess(){}DeleteListID(t,e,i){let r=e.map(a=>i?a[i]:a.ID);this.httpService.delete(`/api/${t}`,{body:r}).subscribe(a=>{this.toastrService.success(a.Message?a.Message:a,l.Success),this.getListData()})}postData(t,e){this.httpService.post("/API/"+t,e).subscribe(i=>{this.getListData(),this.toastrService.success(i.Message?i.Message:i,l.Success)})}compare(t,e,i){return(t<e?-1:1)*(i?1:-1)}exportCSV(t,e,i){this.exportHandler.exportCSV(t,e,this,i)}s2ab(t){for(var e=new ArrayBuffer(t.length),i=new Uint8Array(e),r=0;r!=t.length;++r)i[r]=t.charCodeAt(r)&255;return e}exportXlsx(t,e){this.pageData.Filter.FormatType=1,this.pageData.Filter.Export=!0,this.httpService.post(`/api/${t}`,this.pageData.Filter).subscribe(i=>{e=decodeURI(e);let r=window.URL.createObjectURL(new Blob([this.s2ab(atob(i))],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64,"})),a=document.createElement("a");a.href=r,a.setAttribute("download",e),document.body.appendChild(a),a.click(),window.URL.revokeObjectURL(r),a.remove()})}convertToCSV(t,e=!1,i){let r=this.exportHandler.ExportDataFromUI2(e);t.convertToCSV(r,i)}OnCompare(t){let e=t?this.data[t]:this.data;if(e.length<1)return;let i=Object.assign({},this.pageData.Filter);i.From=new Date(new Date(this.pageData.Filter.From).getFullYear(),new Date(this.pageData.Filter.From).getMonth()-1,1),i.To=new Date(new Date(this.pageData.Filter.To).getFullYear(),new Date(this.pageData.Filter.To).getMonth(),0).toDateString(),this.httpService.post("/API/"+this.dataAPI,i).subscribe(r=>{let a=t?r[t]:r;this.comparation=0,e.forEach(s=>{s.PrevIndex="-",s.CurrentIndex="-",s.Increase="-";let p=a.filter(n=>n.EntityID==s.EntityID);if(s.CurrentIndex=s.Rank,p.length>0){let n=p[0];s.PrevIndex=n.Rank,n.SalesNet?s.Increase=(s.SalesNet-n.SalesNet)/n.SalesNet*100:n.Sales&&(s.Increase=(s.Sales-n.Sales)/n.Sales*100),s.IsPositive=s.Increase>0,s.IsNegative=s.Increase<0,this.comparation+=s.Increase}})})}};export{x as a};
@@ -1,4 +1,4 @@
1
- import{a as xt}from"./chunk-JEL3OND6.js";import{a as ft,b as _t,c as gt,d as yt,e as vt}from"./chunk-X57HWGVJ.js";import{a as ht}from"./chunk-5SFUSWFY.js";import{a as mt}from"./chunk-534MIVWD.js";import{a as bt}from"./chunk-TGEQUV6Z.js";import{b as ut}from"./chunk-3VKLSTEH.js";import{a as dt,d as _e}from"./chunk-CS6HBROS.js";import{a as pt,d as ct}from"./chunk-6SGN7MNX.js";import{b as ue,c as ne,d as me,g as at,h as rt,k as U,l as j}from"./chunk-L76WVZW6.js";import{A as Je,F as Xe,H,P as et,Q as tt,S as Ee,T as it,V as de,W,X as nt,_ as Ve,a as te,fa as ot,g as We,h as Ue,i as je,ka as lt,m as k,oa as st,p as Ce,pa as ie,qa as he,t as ce,u as Ze,w as L,x as z,xa as fe,z as Ye}from"./chunk-O5SLP4JK.js";import{a as $e}from"./chunk-RNLSEEMX.js";import{$b as Pe,Ca as K,Cb as s,Db as f,Eb as m,Fb as D,Hc as A,Ia as R,Ib as He,Jb as I,Kb as O,Kc as $,Lb as w,Lc as pe,Mb as E,Ob as x,Pc as ee,Qb as a,Tb as v,Ub as M,Vb as d,Wb as u,Xa as p,Xc as h,Ya as C,Yc as V,Za as ae,_b as q,bc as ve,cc as _,db as G,dc as Q,ec as J,ed as Ge,fb as De,fc as xe,fd as Ie,hb as Y,ib as re,ic as Re,id as Oe,jb as Ae,jc as Ne,jd as we,ka as Be,kc as Qe,la as le,lb as N,ma as se,mb as ze,na as Z,nb as c,pa as F,rd as Se,sc as X,sd as qe,ta as y,tb as T,tc as Ke,ua as b,uc as S,va as B,vb as ye,vc as Te,xb as be}from"./chunk-JYZTRN6N.js";import{a as P,b as Me}from"./chunk-SNAKHGZS.js";var Tt=`
1
+ import{a as xt}from"./chunk-JEL3OND6.js";import{a as ft,b as _t,c as gt,d as yt,e as vt}from"./chunk-X57HWGVJ.js";import{a as ht}from"./chunk-5SFUSWFY.js";import{a as mt}from"./chunk-534MIVWD.js";import{a as bt}from"./chunk-TGEQUV6Z.js";import{b as ut}from"./chunk-IVJVUXLS.js";import{a as dt,d as _e}from"./chunk-CS6HBROS.js";import{a as pt,d as ct}from"./chunk-6SGN7MNX.js";import{b as ue,c as ne,d as me,g as at,h as rt,k as U,l as j}from"./chunk-L76WVZW6.js";import{A as Je,F as Xe,H,P as et,Q as tt,S as Ee,T as it,V as de,W,X as nt,_ as Ve,a as te,fa as ot,g as We,h as Ue,i as je,ka as lt,m as k,oa as st,p as Ce,pa as ie,qa as he,t as ce,u as Ze,w as L,x as z,xa as fe,z as Ye}from"./chunk-O5SLP4JK.js";import{a as $e}from"./chunk-RNLSEEMX.js";import{$b as Pe,Ca as K,Cb as s,Db as f,Eb as m,Fb as D,Hc as A,Ia as R,Ib as He,Jb as I,Kb as O,Kc as $,Lb as w,Lc as pe,Mb as E,Ob as x,Pc as ee,Qb as a,Tb as v,Ub as M,Vb as d,Wb as u,Xa as p,Xc as h,Ya as C,Yc as V,Za as ae,_b as q,bc as ve,cc as _,db as G,dc as Q,ec as J,ed as Ge,fb as De,fc as xe,fd as Ie,hb as Y,ib as re,ic as Re,id as Oe,jb as Ae,jc as Ne,jd as we,ka as Be,kc as Qe,la as le,lb as N,ma as se,mb as ze,na as Z,nb as c,pa as F,rd as Se,sc as X,sd as qe,ta as y,tb as T,tc as Ke,ua as b,uc as S,va as B,vb as ye,vc as Te,xb as be}from"./chunk-JYZTRN6N.js";import{a as P,b as Me}from"./chunk-SNAKHGZS.js";var Tt=`
2
2
  .p-tooltip {
3
3
  position: absolute;
4
4
  display: none;
@@ -1 +1 @@
1
- import{a}from"./chunk-HIQKF5X3.js";import{K as o}from"./chunk-JYZTRN6N.js";var s=class extends a{constructor(t,e,r,n){super(t);this.httpService=e;this.formDataAPI=r;this.route=n;let p=this.route.snapshot.queryParams;this.menuData$.pipe(o(()=>this.httpService.post(`/api/${this.formDataAPI}`,p))).subscribe(i=>{this.data=i,this.postBindForm(i)})}data={};get formData(){return this.data.Form}set formData(t){this.data.Form=t}get options(){return this.data.Options?this.data.Options:{}}get Roles(){return this.data.Roles?this.data.Roles:{}}postBindForm(t){}onSubmit(t,e=!1){this.preSubmitForm(),this.httpService.post(`/api/${t}`,this.formData).subscribe({next:r=>{this.onSubmitSuccess(r)},error:r=>{this.onSubmitError(r)}})}compare(t,e,r){return(t<e?-1:1)*(r?1:-1)}preSubmitForm(){}onSubmitSuccess(t){}onSubmitError(t){}};export{s as a};
1
+ import{a}from"./chunk-UQ5F3YKZ.js";import{K as o}from"./chunk-JYZTRN6N.js";var s=class extends a{constructor(t,e,r,n){super(t);this.httpService=e;this.formDataAPI=r;this.route=n;let p=this.route.snapshot.queryParams;this.menuData$.pipe(o(()=>this.httpService.post(`/api/${this.formDataAPI}`,p))).subscribe(i=>{this.data=i,this.postBindForm(i)})}data={};get formData(){return this.data.Form}set formData(t){this.data.Form=t}get options(){return this.data.Options?this.data.Options:{}}get Roles(){return this.data.Roles?this.data.Roles:{}}postBindForm(t){}onSubmit(t,e=!1){this.preSubmitForm(),this.httpService.post(`/api/${t}`,this.formData).subscribe({next:r=>{this.onSubmitSuccess(r)},error:r=>{this.onSubmitError(r)}})}compare(t,e,r){return(t<e?-1:1)*(r?1:-1)}preSubmitForm(){}onSubmitSuccess(t){}onSubmitError(t){}};export{s as a};