Files
MyClub/frontend/build/static/js/791.2cae987d.chunk.js
T
Tomas Dvorak 84a8acf944 update
2026-03-02 20:20:56 +01:00

2 lines
11 KiB
JavaScript

"use strict";(self.webpackChunkfrontend=self.webpackChunkfrontend||[]).push([[791],{23791:(e,s,i)=>{i.r(s),i.d(s,{default:()=>B});var n=i(89379),a=i(65043),t=i(96870),l=i(88787),c=i(85871),r=i(87139),d=i(22107),o=i(98662),h=i(42703),j=i(83169),x=i(24330),u=i(26201),p=i(98939),m=i(5371),v=i(73225),k=i(10804),g=i(76668),y=i(73212),z=i(35699),b=i(45973),C=i(29244),f=i(67516),S=i(35929),A=i(56529),T=i(15071),w=i(11054),I=i(78460),N=i(85421),E=i(96148),M=i(10202),O=i(80511),$=i(82595),F=i(67813),J=i(83201),K=i(3313),L=i(55395),W=i(30502),Z=i(99956),D=i(28846),H=i(39081),U=i(12733),P=i(12730),R=i(58584),V=i(99973),X=i(46291),q=i(6583),_=i(70579);const B=()=>{const[e,s]=(0,a.useState)([]),[i,B]=(0,a.useState)(null),[G,Q]=(0,a.useState)(!1),[Y,ee]=(0,a.useState)(""),[se,ie]=(0,a.useState)(!1),[ne,ae]=(0,a.useState)(!1),[te,le]=(0,a.useState)(!1),{isOpen:ce,onOpen:re,onClose:de}=(0,t.j)(),oe=(0,W.d)(),[he,je]=(0,a.useState)({name:"",ico:"",dic:"",address:"",city:"",zip:"",country:"\u010cesk\xe1 republika",email:"",phone:""}),[xe,ue]=(0,a.useState)({});(0,a.useEffect)(()=>{pe()},[]),(0,a.useEffect)(()=>{const e=he.ico.replace(/\s/g,"");8===e.length&&/^\d{8}$/.test(e)&&(he.name.trim()&&(he.address.trim()||he.city.trim())||ve())},[he.ico]);const pe=async()=>{try{Q(!0);const e=await X.FH.get("/admin/invoices/customers");s(e.data.customers||[])}catch(e){oe({title:"Chyba p\u0159i na\u010d\xedt\xe1n\xed kontakt\u016f",description:"Nepoda\u0159ilo se na\u010d\xedst seznam kontakt\u016f",status:"error",duration:3e3})}finally{Q(!1)}},me=()=>{const e={};return he.name.trim()||(e.name="N\xe1zev je povinn\xfd"),he.ico.trim()?/^\d{8}$/.test(he.ico.replace(/\s/g,""))||(e.ico="I\u010cO mus\xed m\xedt 8 \u010d\xedslic"):e.ico="I\u010cO je povinn\xe9",he.address.trim()||(e.address="Adresa je povinn\xe1"),he.city.trim()||(e.city="M\u011bsto je povinn\xe9"),he.zip.trim()?/^\d{3}\s?\d{2}$/.test(he.zip)||(e.zip="PS\u010c mus\xed m\xedt form\xe1t 123 45 nebo 12345"):e.zip="PS\u010c je povinn\xe9",he.email&&!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(he.email)&&(e.email="Neplatn\xfd form\xe1t emailu"),ue(e),0===Object.keys(e).length},ve=async()=>{if(!he.ico||he.ico.length<8)oe({title:"Chyba",description:"Zadejte platn\xe9 I\u010cO (8 \u010d\xedslic)",status:"warning",duration:3e3});else try{le(!0);const e=await X.FH.get("/admin/invoices/customers/autofill?ico=".concat(he.ico));e.data&&(je((0,n.A)((0,n.A)({},he),{},{name:e.data.name||he.name,address:e.data.address||he.address,city:e.data.city||he.city,zip:e.data.zip||he.zip,dic:e.data.dic||he.dic})),oe({title:"Data dopln\u011bna",description:"\xdadaje byly automaticky dopln\u011bny z ARES",status:"success",duration:3e3}))}catch(i){var e,s;oe({title:"Chyba p\u0159i dopl\u0148ov\xe1n\xed dat",description:(null===i||void 0===i||null===(e=i.response)||void 0===e||null===(s=e.data)||void 0===s?void 0:s.message)||"Nepoda\u0159ilo se z\xedskat data z ARES",status:"warning",duration:3e3})}finally{le(!1)}},ke=()=>{je({name:"",ico:"",dic:"",address:"",city:"",zip:"",country:"\u010cesk\xe1 republika",email:"",phone:""}),ue({}),B(null)},ge=e.filter(e=>e.name.toLowerCase().includes(Y.toLowerCase())||e.ico.toLowerCase().includes(Y.toLowerCase())||e.email.toLowerCase().includes(Y.toLowerCase()));return(0,_.jsx)(q.A,{children:(0,_.jsx)(p.m,{maxW:"container.xl",py:8,children:(0,_.jsxs)(M.T,{spacing:6,align:"stretch",children:[(0,_.jsxs)(m.s,{justify:"space-between",align:"center",children:[(0,_.jsx)(D.D,{size:"lg",children:"Spr\xe1va kontakt\u016f"}),(0,_.jsx)(o.$,{leftIcon:(0,_.jsx)(P.R,{}),colorScheme:"blue",onClick:()=>{ke(),ie(!0)},children:"Nov\xfd kontakt"})]}),(0,_.jsx)(j.Z,{children:(0,_.jsx)(x.b,{children:(0,_.jsxs)(v.MJ,{children:[(0,_.jsx)(g.l,{children:"Vyhled\xe1v\xe1n\xed"}),(0,_.jsxs)(b.M,{children:[(0,_.jsx)(C.W,{children:(0,_.jsx)(U.W,{color:"gray.400"})}),(0,_.jsx)(z.p,{placeholder:"Hledat podle jm\xe9na, I\u010cO nebo emailu...",value:Y,onChange:e=>ee(e.target.value),pl:10})]})]})})}),(0,_.jsx)(j.Z,{overflow:"hidden",children:(0,_.jsx)(d.a,{overflowX:"auto",children:(0,_.jsxs)(O.X,{variant:"simple",children:[(0,_.jsx)(K.d,{children:(0,_.jsxs)(L.Tr,{children:[(0,_.jsx)(J.Th,{children:"N\xe1zev"}),(0,_.jsx)(J.Th,{children:"I\u010cO"}),(0,_.jsx)(J.Th,{children:"DI\u010c"}),(0,_.jsx)(J.Th,{children:"Adresa"}),(0,_.jsx)(J.Th,{children:"Kontakt"}),(0,_.jsx)(J.Th,{children:"Akce"})]})}),(0,_.jsx)($.N,{children:ge.map(e=>(0,_.jsxs)(L.Tr,{children:[(0,_.jsx)(F.Td,{children:(0,_.jsxs)(M.T,{align:"start",spacing:0,children:[(0,_.jsx)(H.E,{fontWeight:"medium",children:e.name}),"\u010cesk\xe1 republika"!==e.country&&(0,_.jsx)(r.E,{size:"sm",colorScheme:"gray",children:e.country})]})}),(0,_.jsx)(F.Td,{children:(0,_.jsx)(H.E,{fontFamily:"mono",children:e.ico})}),(0,_.jsx)(F.Td,{children:(0,_.jsx)(H.E,{fontFamily:"mono",children:e.dic||"-"})}),(0,_.jsx)(F.Td,{children:(0,_.jsxs)(M.T,{align:"start",spacing:0,children:[(0,_.jsx)(H.E,{fontSize:"sm",children:e.address}),(0,_.jsxs)(H.E,{fontSize:"sm",children:[e.zip," ",e.city]})]})}),(0,_.jsx)(F.Td,{children:(0,_.jsxs)(M.T,{align:"start",spacing:0,children:[e.email&&(0,_.jsx)(H.E,{fontSize:"sm",color:"blue.600",children:e.email}),e.phone&&(0,_.jsx)(H.E,{fontSize:"sm",children:e.phone})]})}),(0,_.jsx)(F.Td,{children:(0,_.jsxs)(E.z,{spacing:2,children:[(0,_.jsx)(Z.m,{label:"Upravit",children:(0,_.jsx)(h.K,{icon:(0,_.jsx)(V.q,{}),variant:"ghost",size:"sm",onClick:()=>(e=>{B(e),je({name:e.name,ico:e.ico,dic:e.dic,address:e.address,city:e.city,zip:e.zip,country:e.country,email:e.email,phone:e.phone}),ae(!0)})(e),"aria-label":"Upravit kontakt"})}),(0,_.jsx)(Z.m,{label:"Smazat",children:(0,_.jsx)(h.K,{icon:(0,_.jsx)(R.d,{}),variant:"ghost",size:"sm",colorScheme:"red",onClick:()=>{B(e),re()},"aria-label":"Smazat kontakt"})})]})})]},e.id))})]})})}),(0,_.jsxs)(I.aF,{isOpen:se||ne,onClose:()=>{ie(!1),ae(!1),ke()},size:"2xl",children:[(0,_.jsx)(w.m,{}),(0,_.jsxs)(N.$,{children:[(0,_.jsx)(T.r,{children:se?"Nov\xfd kontakt":"Upravit kontakt"}),(0,_.jsx)(S.s,{}),(0,_.jsx)(f.c,{children:(0,_.jsxs)(M.T,{spacing:4,align:"stretch",children:[(0,_.jsxs)(j.Z,{children:[(0,_.jsx)(u.a,{children:(0,_.jsx)(D.D,{size:"sm",children:"Z\xe1kladn\xed \xfadaje"})}),(0,_.jsx)(x.b,{children:(0,_.jsxs)(M.T,{spacing:4,align:"stretch",children:[(0,_.jsxs)(y.r,{columns:{base:1,md:2},spacing:4,children:[(0,_.jsxs)(v.MJ,{isInvalid:!!xe.name,children:[(0,_.jsx)(g.l,{children:"N\xe1zev"}),(0,_.jsx)(z.p,{value:he.name,onChange:e=>je((0,n.A)((0,n.A)({},he),{},{name:e.target.value})),placeholder:"N\xe1zev firmy"}),(0,_.jsx)(k.Wt,{children:xe.name})]}),(0,_.jsxs)(v.MJ,{isInvalid:!!xe.ico,children:[(0,_.jsx)(g.l,{children:"I\u010cO"}),(0,_.jsxs)(E.z,{children:[(0,_.jsx)(z.p,{value:he.ico,onChange:e=>je((0,n.A)((0,n.A)({},he),{},{ico:e.target.value})),placeholder:"12345678",maxLength:8}),(0,_.jsx)(o.$,{onClick:ve,isLoading:te,isDisabled:he.ico.length<8,size:"sm",children:"Naj\xedt"})]}),(0,_.jsx)(k.Wt,{children:xe.ico})]})]}),(0,_.jsxs)(y.r,{columns:{base:1,md:2},spacing:4,children:[(0,_.jsxs)(v.MJ,{children:[(0,_.jsx)(g.l,{children:"DI\u010c"}),(0,_.jsx)(z.p,{value:he.dic,onChange:e=>je((0,n.A)((0,n.A)({},he),{},{dic:e.target.value})),placeholder:"CZ1234567890"})]}),(0,_.jsxs)(v.MJ,{children:[(0,_.jsx)(g.l,{children:"St\xe1t"}),(0,_.jsx)(z.p,{value:he.country,onChange:e=>je((0,n.A)((0,n.A)({},he),{},{country:e.target.value})),placeholder:"\u010cesk\xe1 republika"})]})]})]})})]}),(0,_.jsxs)(j.Z,{children:[(0,_.jsx)(u.a,{children:(0,_.jsx)(D.D,{size:"sm",children:"Adresa"})}),(0,_.jsx)(x.b,{children:(0,_.jsxs)(M.T,{spacing:4,align:"stretch",children:[(0,_.jsxs)(v.MJ,{isInvalid:!!xe.address,children:[(0,_.jsx)(g.l,{children:"Ulice a \u010d\xedslo"}),(0,_.jsx)(z.p,{value:he.address,onChange:e=>je((0,n.A)((0,n.A)({},he),{},{address:e.target.value})),placeholder:"Hlavn\xed 123"}),(0,_.jsx)(k.Wt,{children:xe.address})]}),(0,_.jsxs)(y.r,{columns:{base:1,md:2},spacing:4,children:[(0,_.jsxs)(v.MJ,{isInvalid:!!xe.city,children:[(0,_.jsx)(g.l,{children:"M\u011bsto"}),(0,_.jsx)(z.p,{value:he.city,onChange:e=>je((0,n.A)((0,n.A)({},he),{},{city:e.target.value})),placeholder:"Praha"}),(0,_.jsx)(k.Wt,{children:xe.city})]}),(0,_.jsxs)(v.MJ,{isInvalid:!!xe.zip,children:[(0,_.jsx)(g.l,{children:"PS\u010c"}),(0,_.jsx)(z.p,{value:he.zip,onChange:e=>je((0,n.A)((0,n.A)({},he),{},{zip:e.target.value})),placeholder:"123 45",maxLength:6}),(0,_.jsx)(k.Wt,{children:xe.zip})]})]})]})})]}),(0,_.jsxs)(j.Z,{children:[(0,_.jsx)(u.a,{children:(0,_.jsx)(D.D,{size:"sm",children:"Kontakt"})}),(0,_.jsx)(x.b,{children:(0,_.jsx)(M.T,{spacing:4,align:"stretch",children:(0,_.jsxs)(y.r,{columns:{base:1,md:2},spacing:4,children:[(0,_.jsxs)(v.MJ,{isInvalid:!!xe.email,children:[(0,_.jsx)(g.l,{children:"Email"}),(0,_.jsx)(z.p,{type:"email",value:he.email,onChange:e=>je((0,n.A)((0,n.A)({},he),{},{email:e.target.value})),placeholder:"email@firma.cz"}),(0,_.jsx)(k.Wt,{children:xe.email})]}),(0,_.jsxs)(v.MJ,{children:[(0,_.jsx)(g.l,{children:"Telefon"}),(0,_.jsx)(z.p,{value:he.phone,onChange:e=>je((0,n.A)((0,n.A)({},he),{},{phone:e.target.value})),placeholder:"+420 123 456 789"})]})]})})})]})]})}),(0,_.jsxs)(A.j,{children:[(0,_.jsx)(o.$,{variant:"outline",mr:3,onClick:()=>{ie(!1),ae(!1),ke()},children:"Zru\u0161it"}),(0,_.jsx)(o.$,{colorScheme:"blue",onClick:se?async()=>{if(me())try{await X.FH.post("/admin/invoices/customers",he),oe({title:"Kontakt vytvo\u0159en",description:"Kontakt byl \xfasp\u011b\u0161n\u011b vytvo\u0159en",status:"success",duration:3e3}),ie(!1),ke(),pe()}catch(i){var e,s;oe({title:"Chyba p\u0159i vytv\xe1\u0159en\xed kontaktu",description:(null===i||void 0===i||null===(e=i.response)||void 0===e||null===(s=e.data)||void 0===s?void 0:s.message)||"Nepoda\u0159ilo se vytvo\u0159it kontakt",status:"error",duration:3e3})}}:async()=>{if(i&&me())try{await X.FH.put("/admin/invoices/customers/".concat(i.id),he),oe({title:"Kontakt aktualizov\xe1n",description:"Kontakt byl \xfasp\u011b\u0161n\u011b aktualizov\xe1n",status:"success",duration:3e3}),ae(!1),ke(),pe()}catch(n){var e,s;oe({title:"Chyba p\u0159i aktualizaci kontaktu",description:(null===n||void 0===n||null===(e=n.response)||void 0===e||null===(s=e.data)||void 0===s?void 0:s.message)||"Nepoda\u0159ilo se aktualizovat kontakt",status:"error",duration:3e3})}},isLoading:G,children:se?"Vytvo\u0159it":"Ulo\u017eit"})]})]})]}),(0,_.jsxs)(I.aF,{isOpen:ce,onClose:de,children:[(0,_.jsx)(w.m,{}),(0,_.jsxs)(N.$,{children:[(0,_.jsx)(T.r,{children:"Smazat kontakt"}),(0,_.jsx)(S.s,{}),(0,_.jsx)(f.c,{children:(0,_.jsxs)(l.F,{status:"warning",children:[(0,_.jsx)(c._,{}),"Opravdu chcete smazat kontakt ",null===i||void 0===i?void 0:i.name,"? Tuto akci nelze vr\xe1tit zp\u011bt."]})}),(0,_.jsxs)(A.j,{children:[(0,_.jsx)(o.$,{variant:"outline",mr:3,onClick:de,children:"Zru\u0161it"}),(0,_.jsx)(o.$,{colorScheme:"red",onClick:()=>i&&(async e=>{try{await X.FH.delete("/admin/invoices/customers/".concat(e)),oe({title:"Kontakt smaz\xe1n",description:"Kontakt byl \xfasp\u011b\u0161n\u011b smaz\xe1n",status:"success",duration:3e3}),de(),pe()}catch(n){var s,i;oe({title:"Chyba p\u0159i maz\xe1n\xed kontaktu",description:(null===n||void 0===n||null===(s=n.response)||void 0===s||null===(i=s.data)||void 0===i?void 0:i.message)||"Nepoda\u0159ilo se smazat kontakt",status:"error",duration:3e3})}})(i.id),children:"Smazat"})]})]})]})]})})})}}}]);
//# sourceMappingURL=791.2cae987d.chunk.js.map