PageSourceSearch

https://elysian.co.kr/chunks/EshopProductDetails-ba541e45.js

js elysian.co.kr collected 2026-10-04 05:46:28 UTC 14,168 bytes, 1 lines download raw bytes

1import{v as nt,i as R,r as n,c as Ot,p as I,o as kt,B as Tt,a as m,b as p,g as e,d as ut,q as E,I as v,u as h,W as Pt,f as it,w as rt,D as G,G as M,T as dt,F as w,e as j,Y as Ct,Z as Ut,H as x,$ as It,j as wt,a0 as qt}from"../entry/index-8d9c8467.js";import{_ as Bt}from"./down-arrow-mbl-421ba18a.js";import{B as Ht}from"./BreadcumNew-b36de75a.js";import{r as Yt}from"./roomReservation-fd9f1939.js";const $t={class:"wrapper-innr"},Vt={class:"breaudcum-area"},Lt={class:"container"},Qt={key:0,class:"no-details-found"},Rt={key:1,class:"detail-sec common-gap mbt-0"},Gt={class:"container"},jt={class:"detail-top-otr"},xt={class:"detail-top-left additional-pro-details-left"},Ft={class:"detail-pic"},Kt=["src"],Jt={class:"detail-tab"},zt={class:"scroll-item product-information",id:"product-information",style:{"scroll-margin-top":"150px"}},Wt={class:"instructor-otr mb-48"},Zt={class:"instructor-left"},Xt=["src"],te={class:"instructor-right"},ee={class:"font-28"},ae={class:"mb-24"},oe=["innerHTML"],le={class:"scroll-item product-details",id:"product-details",style:{"scroll-margin-top":"150px"}},se={class:"tckt-hdr"},ne={class:"mb-48"},ue=["src"],ie={class:"scroll-item notice",id:"notice",style:{"scroll-margin-top":"150px"}},re={class:"bullet-listing notice-list"},de=["innerHTML"],ce={class:"detail-top-right additional-pro-details-rght"},ve={class:"form-content"},me={key:0,class:"detail-tag green"},pe={key:1,class:"detail-tag brown"},_e={class:"detail-sub-txt lng",style:{"white-space":"pre-wrap"}},De={class:"purchase-part-top"},ge={key:0,class:"form-group"},ye=["onClick"],fe=["onClick"],he={class:"form-group"},Ae=["disabled"],Se=["value"],Ne={class:"form-group mb-0"},be=["disabled"],Ee=["value"],Me={class:"purchase-part-btm"},Oe={class:"ticket-details-top"},ke={key:0},Te={key:1},Pe=["onClick"],Ce={class:"ticket-details-btm"},Ue={class:"number-input"},Ie=["disabled","onClick"],we=["onUpdate:modelValue"],qe=["onClick"],Be={class:"total-reservation-amount"},He=["disabled"],Re={__name:"EshopProductDetails",setup(Ye){const F=nt.useRouter(),A=new qt,K=R("dateFormatStore"),u=nt.useRoute(),_=n(""),q=n([]),D=n(""),g=n(""),J=n(""),z=n(""),s=n([]),B=n([]),H=n(0),O=n(0),T=n(null),S=n(!1);u.query.loc;const c=n({}),ct=n([{breadName:"Home",routeName:"Home"},{breadName:"스페셜 오퍼",routeName:"EshopProducts"},{breadName:"일반상품 구매",routeName:""}]),Y=n(null),vt=R("commonStore"),W=R("authenticateStore"),P=n(!1),Z=n(""),X=n("");n(!1);const C=n({}),N=n(!1),y=n(1),$=n({}),f=n([{content:{style:{color:"#333"}},dates:[]},{content:{style:{color:"#C87CA0"}},dates:[]},{content:{style:{color:"#E0E0E0"}},dates:[]}]),tt=async()=>{const a=[],t=new Date;for(let l=0;l<4;l++){const o=new Date(t.getFullYear(),t.getMonth()+l,1),i=`${o.getFullYear()}${String(o.getMonth()+1).padStart(2,"0")}`;a.push(i)}f.value[0].dates=[],f.value[1].dates=[],f.value[2].dates=[];for(const l of a){const o={select_date:l,LOCATION:"g",MEMBER_NO:W.methods.isAuthenticate()?localStorage.getItem("memberno"):null};(await Yt.roomStatus(o)).data.data.forEach(r=>{const b=Number(l.substring(0,4)),Q=Number(l.substring(4,6))-1,st=Number(r.DAYS),k=new Date(b,Q,st),Et=`${b}-${String(Q+1).padStart(2,"0")}-${String(st).padStart(2,"0")}`,Mt={status:r.B_GUBUN??"0",count:r.R_COUNT??0};$.value[Et]=Mt,k instanceof Date&&!isNaN(k)&&(r.R_COUNT>0?f.value[0].dates.push(k):r.R_COUNT<0?f.value[1].dates.push(k):f.value[2].dates.push(k))})}},V=n({start:null,end:null}),mt=a=>{if(!a||!a.start||!a.end){_.value="";return}const t=at(a.start),l=at(a.end),o=ot(t),i=ot(l);if(o||i){alert("선택한 날짜 중 예약 불가한 날짜가 있습니다."),V.value={start:null,end:null},_.value="";return}_.value=`${et(a.start)} ~ ${et(a.end)}`},et=a=>{const t=a.getFullYear(),l=String(a.getMonth()+1).padStart(2,"0"),o=String(a.getDate()).padStart(2,"0");return`${t}.${l}.${o}`},at=a=>{const t=a.getFullYear(),l=String(a.getMonth()+1).padStart(2,"0"),o=String(a.getDate()).padStart(2,"0");return`${t}-${l}-${o}`},ot=a=>{const t=$.value[a];return!t||t.status!=="1"||t.count<=0},L=a=>{y.value=a,a==1?document.querySelector(".product-information").scrollIntoView({behavior:"smooth",block:"start"}):a==2?document.querySelector(".product-details").scrollIntoView({behavior:"smooth",block:"start"}):a==3&&document.querySelector(".notice").scrollIntoView({behavior:"smooth",block:"start"})},pt=Ot(()=>u.query.DATE_YN==="Y"?_.value!==""&&D.value!==""&&g.value!=="":D.value!==""&&g.value!=="");I(()=>_.value,async(a,t)=>{a&&(D.value="",g.value="",O.value=0,N.value=!1,s.value=[])}),I(()=>D.value,async(a,t)=>{a&&yt()}),I(()=>pt.value,async(a,t)=>{a&&At()}),I(()=>T.value,a=>{if(u.query.pId==="1001"){const t=`${d.getFullYear()}${String(d.getMonth()+1).padStart(2,"0")}`;$.value[t]||tt()}});const _t=()=>{const a=document.querySelectorAll(".scroll-item");let t=null;a.forEach(o=>{const i=o.getBoundingClientRect();i.top<=window.innerHeight/2&&i.bottom>=window.innerHeight/2&&(t=o)});const l=t?t.id:null;l=="product-information"&&(y.value=1),l=="product-details"&&(y.value=2),l=="notice"&&(y.value=3)},Dt=()=>{A.productDetails(u.query.pId,u.query.loc==="강촌"?"g":"j").then(a=>{c.value=a.data.ListDetails[0],ft()})},gt=()=>{A.optionOne(u.query.pId,u.query.loc==="강촌"?"g":"j").then(a=>{q.value=a.data.ListDetails})},yt=()=>{A.optionTwo(u.query.pId,D.value,u.query.loc==="강촌"?"g":"j").then(a=>{B.value=a.data.ListDetails})},lt=(a,t)=>{a==="plus"?s.value[t].amountDetailsQuantity=s.value[t].amountDetailsQuantity+1:s.value[t].amountDetailsQuantity===1?s.value[t].amountDetailsQuantity=1:s.value[t].amountDetailsQuantity=s.value[t].amountDetailsQuantity-1,s.value[t].amountDetailsAmount=s.value[t].amountDetailsQuantity*s.value[t].amountDetailsPerQAmount,O.value=s.value.reduce((l,o)=>l+o.amountDetailsAmount,0)},U=a=>
1{if(a!=null){let t=new Date(a),l=t.getFullYear(),o=t.getMonth(),i=t.getDate(),r=new Date(l,o,i);const b={year:"numeric",month:"2-digit",day:"2-digit",weekday:"short"};return r.toLocaleDateString("ko-KR",b).replace(/\//g,".")}},ft=()=>{A.additionalProductShopNumber(u.query.loc==="강촌"?"g":"j").then(a=>{Y.value=a.data.data.ASHOP_NO1})},ht=async()=>{if(!W.methods.isAuthenticate())P.value=!0,Z.value="로그인이 필요한 서비스입니다. 로그인 하시겠습니까?",X.value="로그인 필요";else{let a=[];for(let t=0;t<s.value.length;t++)a.push({ASHOP_NO1:Y.value.toString(),ASHOP_GUBUN_A:c.value.SHOP_GUBUN_A.toString(),ASHOP_GUBUN_B:s.value[t].amountDetailsEventID,ASHOP_GUBUN_C:s.value[t].amountDetailsTypeID,AYAEYAK_DATE:u.query.DATE_YN==="Y"?_.value.replaceAll("-",""):null,AMEMBER_NO:C.value.MEMBER_NO,ANORMAL_AMT:s.value[t].amountDetailsPerQAmount.toString(),ASALE_CNT:s.value[t].amountDetailsQuantity.toString(),ASALE_AMT:s.value[t].amountDetailsPerQAmount.toString(),AUPDATE_EMP_NO:C.value.MEMBER_NO,AUPDATE_IP:localStorage.getItem("ipAddress")});A.additionalProductSaveTemp(a,u.query.loc==="강촌"?"g":"j").then(t=>{St(t.data.data)})}},At=()=>{let a={gubun_A:u.query.pId,gubun_B:D.value,gubun_C:g.value,sale_Dt:K.formatDate(new Date,""),location:u.query.loc==="강촌"?"g":"j",AMEMBER_NO:C.value.MEMBER_NO};A.productAmount(a).then(t=>{H.value=t.data.AmountData[0].AMOUNT;const l=q.value.filter(r=>r.SHOP_GUBUN_B===D.value);J.value=l[0].SHOP_NAME;const o=B.value.filter(r=>r.SHOP_GUBUN_C===g.value);z.value=o[0].SHOP_NAME;const i=s.value.find(r=>r.amountDetailsEventID===D.value&&r.amountDetailsTypeID===g.value);i?(i.amountDetailsQuantity+=1,i.amountDetailsAmount=i.amountDetailsQuantity*i.amountDetailsPerQAmount):s.value.push({amountDetailsDate:_.value.replaceAll("-","."),amountDetailsEventID:D.value,amountDetailsTypeID:g.value,amountDetailsEvent:J.value,amountDetailsType:z.value,amountDetailsQuantity:1,amountDetailsPerQAmount:H.value,amountDetailsAmount:H.value}),setTimeout(()=>{D.value="",g.value=""},1e3),O.value=s.value.reduce((r,b)=>r+b.amountDetailsAmount,0),N.value=!0})},St=a=>{const t={amountDetails:s.value,totalAmount:s.value.reduce((l,o)=>l+o.amountDetailsAmount,0),productDetails:c.value,savedData:a,shopNo:Y.value,location:u.query.loc,DAY_TYPE:u.query.DAY_TYPE,pId:u.query.pId};vt.methods.setAdditionalProductData(t),F.push({path:"/eshop-product-payment"})},Nt=a=>{s.value.splice(a,1),O.value=s.value.reduce((t,l)=>t+l.amountDetailsAmount,0),s.value.length===0&&(N.value=!1)},bt=a=>{a==="로그인 필요"?F.push({name:"LogIn"}):P.value=!1};return kt(()=>{Dt(),gt(),C.value=JSON.parse(localStorage.getItem("userDetails")),window.addEventListener("scroll",_t),u.query.pId==="1001"&&tt()}),(a,t)=>{const l=Tt("VDatePicker");return m(),p(w,null,[e("div",$t,[e("div",Vt,[e("div",Lt,[ut(Ht,{breadData:ct.value},null,8,["breadData"])])]),Object.keys(c.value).length===0?(m(),p("div",Qt," No Details Found ")):(m(),p("div",Rt,[e("div",Gt,[e("div",jt,[e("div",xt,[e("figure",Ft,[e("img",{src:c.value.PRODUCT_BANNER_IMAGE,alt:""},null,8,Kt)]),e("div",Jt,[e("ul",null,[e("li",{class:E(["nav-link",{active:y.value==1}])},[e("a",{onClick:t[0]||(t[0]=o=>L(1)),href:"javascript:void(0)"},"상품 정보")],2),e("li",{class:E(["nav-link",{active:y.value==2}])},[e("a",{onClick:t[1]||(t[1]=o=>L(2)),href:"javascript:void(0)"},"상품 상세정보")],2),e("li",{class:E(["nav-link",{active:y.value==3}])},[e("a",{onClick:t[2]||(t[2]=o=>L(3)),href:"javascript:void(0)"},"유의사항")],2)])]),e("div",zt,[t[14]||(t[14]=e("div",{class:"border-heading page-section clr-grey"},[e("h4",null,"상품을 소개합니다.")],-1)),e("div",Wt,[e("div",Zt,[e("img",{src:c.value.PRODUCT_THUMBNAIL_IMAGE,alt:"product_Image"},null,8,Xt)]),e("div",te,[e("h3",ee,v(c.value.SHOP_NAME),1),e("div",ae,[e("h5",null,v(U(c.value.FROM_DATE))+" / "+v(U(c.value.TO_DATE)),1)]),e("p",{innerHTML:c.value.PRODUCT_INFROMATION},null,8,oe)])])]),e("div",le,[t[15]||(t[15]=e("div",{class:"border-heading page-section clr-grey"},[e("h4",null,"어떤 상품인가요?")],-1)),e("h4",se,v(c.value.SHOP_NAME),1),e("figure",ne,[e("img",{class:"wd-100",src:c.value.PACKAGE_IMAGE,alt:""},null,8,ue)])]),e("div",ie,[t[16]||(t[16]=e("div",{class:"border-heading page-section clr-grey"},[e("h4",null,"유의사항")],-1)),e("ul",re,[e("li",{innerHTML:c.value.NOTICE},null,8,de)])])]),e("div",ce,[e("div",ve,[h(u).query.loc==="강촌"?(m(),p("span",me,"강촌")):(m(),p("span",pe,"제주")),e("h3",null,v(c.value.SHOP_NAME),1),e("p",_e,v(c.value.BASIC_INTRODUCTION),1),e("h5",null,v(U(c.value.FROM_DATE))+" / "+v(U(c.value.TO_DATE)),1)]),e("form",{onClick:t[12]||(t[12]=Pt(()=>{},["prevent"]))},[e("div",{class:E(["purchase-part",{show:S.value}])}
1,[e("div",De,[e("span",{class:"toggle-icon",onClick:t[3]||(t[3]=o=>S.value=!S.value)},t[17]||(t[17]=[e("img",{src:Bt,alt:""},null,-1)])),h(u).query.DATE_YN==="Y"?(m(),p("div",ge,[t[18]||(t[18]=e("label",null,"이용 일자",-1)),h(u).query.pId==="1001"?(m(),it(l,{key:0,modelValue:V.value,"onUpdate:modelValue":[t[5]||(t[5]=o=>V.value=o),mt],modelModifiers:{range:!0},mode:"range","min-date":new Date,locale:"ko",attributes:f.value},{default:rt(({togglePopover:o})=>[M(e("input",{type:"text",placeholder:"이용 일자를 선택해 주세요",class:"form-control datepicker",onClick:o,"onUpdate:modelValue":t[4]||(t[4]=i=>_.value=i),readonly:""},null,8,ye),[[x,_.value]])]),_:1},8,["modelValue","min-date","attributes"])):(m(),it(l,{key:1,modelValue:T.value,"onUpdate:modelValue":t[7]||(t[7]=o=>T.value=o),"min-date":new Date,"is-required":"",locale:"ko",onDayclick:t[8]||(t[8]=o=>_.value=h(K).formatDate(T.value,"-"))},{default:rt(({togglePopover:o})=>[M(e("input",{type:"text",placeholder:"이용 일자를 선택해 주세요",class:"form-control datepicker",onClick:o,"onUpdate:modelValue":t[6]||(t[6]=i=>_.value=i)},null,8,fe),[[x,_.value]])]),_:1},8,["modelValue","min-date"]))])):G("",!0),e("div",he,[t[20]||(t[20]=e("label",null,"옵션 1",-1)),M(e("select",{class:"form-control","onUpdate:modelValue":t[9]||(t[9]=o=>D.value=o),disabled:h(u).query.DATE_YN==="Y"&&_.value==""},[t[19]||(t[19]=e("option",{selected:"selected",value:"",disabled:""}," 옵션을 선택해 주세요 ",-1)),(m(!0),p(w,null,j(q.value,o=>(m(),p("option",{value:o.SHOP_GUBUN_B,key:o.SHOP_GUBUN_B},v(o.SHOP_NAME),9,Se))),128))],8,Ae),[[dt,D.value]])]),e("div",Ne,[t[22]||(t[22]=e("label",null,"옵션 2",-1)),M(e("select",{class:"form-control","onUpdate:modelValue":t[10]||(t[10]=o=>g.value=o),disabled:D.value==""},[t[21]||(t[21]=e("option",{selected:"selected",value:"",disabled:""}," 옵션을 선택해 주세요 ",-1)),(m(!0),p(w,null,j(B.value,o=>(m(),p("option",{value:o.SHOP_GUBUN_C,key:o.SHOP_GUBUN_C},v(o.SHOP_NAME),9,Ee))),128))],8,be),[[dt,g.value]])])]),M(e("div",Me,[(m(!0),p(w,null,j(s.value,(o,i)=>(m(),p("div",{class:"ticket-details-otr",key:i},[e("div",Oe,[h(u).query.DATE_YN==="Y"?(m(),p("p",ke,v(o.amountDetailsDate)+" / "+v(o.amountDetailsEvent)+" / "+v(o.amountDetailsType),1)):G("",!0),h(u).query.DATE_YN==="N"?(m(),p("p",Te,v(o.amountDetailsEvent)+" / "+v(o.amountDetailsType),1)):G("",!0),e("a",{href:"javascript:void(0);",onClick:r=>Nt(i),class:"cross-icon"},t[23]||(t[23]=[e("img",{src:It,alt:""},null,-1)]),8,Pe)]),e("div",Ce,[e("div",Ue,[e("button",{disabled:o.amountDetailsQuantity===1,onClick:r=>lt("minus",i),class:"minus"},null,8,Ie),M(e("input",{class:"quantity form-control",min:"1","onUpdate:modelValue":r=>o.amountDetailsQuantity=r,type:"number",readonly:""},null,8,we),[[x,o.amountDetailsQuantity]]),e("button",{onClick:r=>lt("plus",i),class:"plus"},null,8,qe)]),e("h6",null,[wt(v((o.amountDetailsPerQAmount*o.amountDetailsQuantity).toLocaleString("en-US")),1),t[24]||(t[24]=e("span",null,"원",-1))])])]))),128)),e("div",Be,[t[25]||(t[25]=e("h6",null,"총 결제 금액",-1)),e("p",null,v(O.value.toLocaleString("en-US"))+"원",1)])],512),[[Ct,N.value]])],2),e("div",{class:E(["sticky-btn",{show:S.value}])},[e("button",{class:"btn btn2",onClick:t[11]||(t[11]=o=>S.value=!S.value)}," 바로 구매하기 "),e("button",{class:E(["btn btn1",{disable:!N.value}]),disabled:!N.value,onClick:ht}," 구매하기 ",10,He)],2)])])])])]))]),ut(Ut,{isModal:P.value,popupMessage:Z.value,headerMessage:X.value,onConfirm:bt,onCloseModal:t[13]||(t[13]=o=>P.value=!1)},null,8,["isModal","popupMessage","headerMessage"])],64)}}};export{Re as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.