Replace standalone customer create and meeting report pages with overlays, add TimeInput, remove opaque input backgrounds app-wide, improve desktop layouts/skeletons, and refresh shopping, customer, and reminder screens.
1 line
5.7 KiB
JavaScript
1 line
5.7 KiB
JavaScript
import{A as e,Ct as t,Et as n,M as r,N as i,O as a,P as o,R as s,St as ee,Tt as te,Y as c,Z as ne,_ as l,g as re,it as u,j as d,mt as f,n as p,q as ie,rt as ae,w as m,z as h}from"./BasicIcon-C6boaehV.js";import{t as g}from"./IconCheckCircleOutline-Bx3NxSDX.js";import{t as _}from"./IconPhone-C0bnM4fV.js";import{t as oe}from"./IconEditPen-DLV3_yq2.js";import{t as se}from"./IconClipboardEmpty-5Av_Gh0W.js";import{t as ce}from"./PageSkeleton-uO-jhbNm.js";import{t as le}from"./crm-CtglbPsN.js";import{t as ue}from"./PageHeader-BFnKSFNh.js";import{t as de}from"./IconMail-wulYTzHn.js";var fe={class:`page meeting-page`},pe=[`disabled`],me={class:`page__scroll meeting-scroll`},he={key:1,class:`form-error`},v={key:2,class:`customer-card`},y={dir:`ltr`},b={class:`type-grid`},x=[`onClick`],S={class:`two-cols`},C={class:`field`},w={class:`field`},T={class:`field`},E={class:`field`},D={class:`reminder-box`},O={class:`reminder-box__head`},k=[`aria-pressed`],A={class:`field`},j={class:`two-cols`},M={class:`field`},N={class:`field`},ge={class:`field`},P={class:`footer`},F=[`disabled`],I=p(h({__name:`MeetingReportView`,setup(p){let h=re(),I=l(),L=le(),R=e(()=>String(h.query.customerId??``)),z=f(null),B=f(!0),V=f(!1),H=f(null),U=f(`in_person`),W=f(``),G=f(``),K=f(``),q=f(``),J=f(!0),Y=f(``),X=f(``),Z=f(``),Q=f(``),_e=[{id:`in_person`,label:`ملاقات حضوری`,icon:`clipboard`},{id:`call`,label:`تماس تلفنی`,icon:`phone`},{id:`message`,label:`پیام`,icon:`mail`},{id:`note`,label:`یادداشت`,icon:`pen`}];ie(async()=>{if(!R.value){B.value=!1,H.value=`مشتری مشخص نشده است.`;return}try{let e=await L.loadCustomerDetail(R.value);z.value=e.customer}catch(e){H.value=e instanceof Error?e.message:`بارگذاری مشتری ناموفق بود.`}finally{B.value=!1}});async function $(){if(!R.value||!K.value.trim()||!W.value.trim()){H.value=`موضوع و تاریخ الزامی است.`;return}V.value=!0,H.value=null;try{await L.submitMeeting({customerId:R.value,type:U.value,title:K.value.trim(),subject:K.value.trim(),content:q.value.trim()||void 0,description:q.value.trim()||void 0,date:W.value.trim(),time:G.value.trim()||void 0,createReminder:J.value,reminderTitle:J.value?Y.value.trim()||K.value.trim():void 0,reminderDate:J.value?X.value.trim()||W.value.trim():void 0,reminderTime:J.value?Z.value.trim()||G.value.trim()||`10:00`:void 0,reminderNote:J.value&&Q.value.trim()||void 0}),I.push({path:`/customer`,query:{id:R.value,tab:`reports`}})}catch(e){H.value=e instanceof Error?e.message:`ثبت گزارش ناموفق بود.`}finally{V.value=!1}}return(e,l)=>(c(),o(`div`,fe,[s(ue,{title:`ثبت گزارش ملاقات`,"show-back":``,centered:``,onBack:l[0]||=e=>ee(I).back()},{trailing:ae(()=>[d(`button`,{type:`button`,class:`submit-icon-btn`,"aria-label":`ثبت گزارش`,disabled:V.value,onClick:$},[s(g,{size:22})],8,pe)]),_:1}),d(`div`,me,[B.value?(c(),r(ce,{key:0,variant:`form`})):H.value?(c(),o(`p`,he,n(H.value),1)):i(``,!0),z.value?(c(),o(`section`,v,[d(`div`,{class:`avatar`,style:te({background:z.value.avatarColor})},n(z.value.avatarLetter),5),d(`div`,null,[d(`strong`,null,n(z.value.name),1),d(`p`,null,n(z.value.contactName),1),d(`p`,y,n(z.value.phone),1)])])):i(``,!0),d(`section`,null,[l[10]||=d(`h3`,null,`نوع تعامل`,-1),d(`div`,b,[(c(),o(a,null,ne(_e,e=>d(`button`,{key:e.id,type:`button`,class:t([`type-btn`,{"type-btn--active":U.value===e.id}]),onClick:t=>U.value=e.id},[e.icon===`clipboard`?(c(),r(se,{key:0,size:22})):e.icon===`phone`?(c(),r(_,{key:1,size:22})):e.icon===`mail`?(c(),r(de,{key:2,size:22})):(c(),r(oe,{key:3,size:22})),d(`span`,null,n(e.label),1)],10,x)),64))])]),d(`section`,null,[l[13]||=d(`h3`,null,`تاریخ و زمان`,-1),d(`div`,S,[d(`label`,C,[l[11]||=d(`span`,null,`تاریخ`,-1),u(d(`input`,{"onUpdate:modelValue":l[1]||=e=>W.value=e,type:`text`},null,512),[[m,W.value]])]),d(`label`,w,[l[12]||=d(`span`,null,`ساعت`,-1),u(d(`input`,{"onUpdate:modelValue":l[2]||=e=>G.value=e,type:`text`},null,512),[[m,G.value]])])])]),d(`label`,T,[l[14]||=d(`span`,null,`موضوع گزارش`,-1),u(d(`input`,{"onUpdate:modelValue":l[3]||=e=>K.value=e,type:`text`},null,512),[[m,K.value]])]),d(`label`,E,[l[15]||=d(`span`,null,`محتوای گزارش`,-1),u(d(`textarea`,{"onUpdate:modelValue":l[4]||=e=>q.value=e,rows:`5`,maxlength:`1000`},null,512),[[m,q.value]]),d(`em`,null,n(q.value.length.toLocaleString(`fa-IR`))+`/۱۰۰۰`,1)]),l[22]||=d(`section`,null,[d(`h3`,null,`تصاویر و فایلها`),d(`div`,{class:`files`},[d(`div`,{class:`file-thumb`}),d(`div`,{class:`file-thumb`}),d(`button`,{type:`button`,class:`file-add`,"aria-label":`افزودن فایل`},`+`)])],-1),d(`section`,D,[d(`div`,O,[l[17]||=d(`h3`,null,`یادآور`,-1),d(`button`,{type:`button`,class:t([`toggle`,{"toggle--on":J.value}]),"aria-pressed":J.value,onClick:l[5]||=e=>J.value=!J.value},[...l[16]||=[d(`span`,null,null,-1)]],10,k)]),J.value?(c(),o(a,{key:0},[d(`label`,A,[l[18]||=d(`span`,null,`عنوان یادآور`,-1),u(d(`input`,{"onUpdate:modelValue":l[6]||=e=>Y.value=e,type:`text`},null,512),[[m,Y.value]])]),d(`div`,j,[d(`label`,M,[l[19]||=d(`span`,null,`تاریخ یادآور`,-1),u(d(`input`,{"onUpdate:modelValue":l[7]||=e=>X.value=e,type:`text`},null,512),[[m,X.value]])]),d(`label`,N,[l[20]||=d(`span`,null,`ساعت یادآور`,-1),u(d(`input`,{"onUpdate:modelValue":l[8]||=e=>Z.value=e,type:`text`},null,512),[[m,Z.value]])])]),d(`label`,ge,[l[21]||=d(`span`,null,`یادداشت یادآور (اختیاری)`,-1),u(d(`input`,{"onUpdate:modelValue":l[9]||=e=>Q.value=e,type:`text`},null,512),[[m,Q.value]])])],64)):i(``,!0)])]),d(`footer`,P,[d(`button`,{type:`button`,class:`submit`,disabled:V.value,onClick:$},n(V.value?`در حال ثبت...`:`ثبت گزارش و یادآور`),9,F)])]))}}),[[`__scopeId`,`data-v-e8f8b993`]]);export{I as default}; |