Files
nademitex_user/dist/assets/ReminderDetailView-D3dPDcww.js
T
2026-09-13 16:43:38 +03:30

1 line
5.0 KiB
JavaScript

import{A as e,D as t,J as n,K as r,L as i,M as a,N as o,R as s,Tt as c,X as l,_ as u,et as d,g as f,k as p,n as m,pt as h,wt as g,xt as _}from"./BasicIcon-B6lR-mG3.js";import{c as v}from"./index-DNdnTjwr.js";import{t as ee}from"./PageSkeleton-BImjuI6S.js";import{t as y}from"./crm-DbcoqKAF.js";import{t as b}from"./PageHeader-B6RmxP5Y.js";var x={key:0,class:`page reminder-detail`},S={class:`page__scroll detail-scroll`},C={key:0,class:`form-error`},w={class:`layout`},T={class:`panel`},E={class:`field`},D={class:`field`},O={class:`customer-line`},k={class:`field`},A={class:`field`},j={class:`field`},M={class:`actions`},N=[`disabled`],P={class:`panel`},F={class:`panel chart-panel`},I={class:`bars`},L={class:`stats-grid`},R={key:1,class:`page empty`},z={key:2,class:`page empty`},B=m(s({__name:`ReminderDetailView`,setup(s){let m=f(),B=u(),V=y(),H=v(),U=p(()=>String(m.query.id??``)),W=h(null),G=h(null),K=h([]),q=h(!0),J=h(!1),Y=h(null);async function X(){if(!U.value){W.value=null,q.value=!1;return}q.value=!0,Y.value=null;try{let e=await V.loadReminderDetail(U.value);W.value=e.reminder,G.value=e.customer,K.value=e.history}catch(e){W.value=null,Y.value=e instanceof Error?e.message:`یادآور یافت نشد.`}finally{q.value=!1}}r(X),d(U,X);function Z(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس تلفنی`:e===`message`?`پیام`:`یادداشت`}async function Q(){if(!(!W.value||W.value.completed)){J.value=!0,Y.value=null;try{await V.markReminderComplete(W.value.id),W.value={...W.value,completed:!0},B.push(`/reminders?filter=today`)}catch(e){Y.value=e instanceof Error?e.message:`تکمیل یادآور ناموفق بود.`}finally{J.value=!1}}}let te=p(()=>H.fullName||`واسطه`),$=p(()=>{let e=K.value;return{total:e.length,inPerson:e.filter(e=>e.type===`in_person`).length,call:e.filter(e=>e.type===`call`).length,other:e.filter(e=>e.type===`message`||e.type===`note`).length}}),ne=p(()=>{let e=Array.from({length:6},()=>({a:0,b:0,c:0}));K.value.forEach((t,n)=>{let r=e[n%6];r&&(t.type===`in_person`?r.a+=1:t.type===`call`?r.b+=1:r.c+=1)});let t=Math.max(1,...e.map(e=>e.a+e.b+e.c));return e.map(e=>({a:`${e.a/t*100}%`,b:`${e.b/t*100}%`,c:`${e.c/t*100}%`}))});return(r,s)=>W.value&&G.value?(n(),o(`div`,x,[i(b,{title:`جزئیات یادآور`,"show-back":``,centered:``,onBack:s[0]||=e=>_(B).back()}),e(`div`,S,[Y.value?(n(),o(`p`,C,c(Y.value),1)):a(``,!0),e(`div`,w,[e(`section`,T,[s[8]||=e(`h2`,null,`جزئیات یادآور`,-1),e(`div`,E,[s[3]||=e(`span`,null,`عنوان`,-1),e(`strong`,null,c(W.value.title)+` — `+c(W.value.description),1)]),e(`div`,D,[s[4]||=e(`span`,null,`مشتری`,-1),e(`div`,O,[e(`div`,{class:`avatar`,style:g({background:G.value.avatarColor})},c(G.value.avatarLetter),5),e(`div`,null,[e(`strong`,null,c(G.value.name),1),e(`p`,null,c(G.value.contactName),1)])])]),e(`div`,k,[s[5]||=e(`span`,null,`فروشنده حامل حضوری`,-1),e(`strong`,null,c(te.value),1)]),e(`div`,A,[s[6]||=e(`span`,null,`تاریخ و زمان`,-1),e(`strong`,null,c(W.value.date)+` — `+c(W.value.time),1)]),e(`div`,j,[s[7]||=e(`span`,null,`یادداشت`,-1),e(`strong`,null,c(W.value.note||`—`),1)]),e(`div`,M,[e(`button`,{type:`button`,class:`btn-outline`,onClick:s[1]||=e=>_(B).back()},`ویرایش`),e(`button`,{type:`button`,class:`btn-primary`,disabled:J.value||W.value.completed,onClick:Q},c(W.value.completed?`تکمیل‌شده`:J.value?`...`:`تکمیل شد`),9,N)])]),e(`section`,P,[s[9]||=e(`h2`,null,`تاریخچه تعاملات`,-1),(n(!0),o(t,null,l(K.value,t=>(n(),o(`article`,{key:t.id,class:`history-row`},[e(`div`,null,[e(`strong`,null,c(Z(t.type)),1),e(`p`,null,c(t.description),1)]),e(`span`,null,c(t.date),1)]))),128)),e(`button`,{type:`button`,class:`see-all`,onClick:s[2]||=e=>_(B).push({path:`/customer`,query:{id:G.value.id,tab:`reports`}})},` مشاهده همه `)]),e(`section`,F,[s[14]||=e(`div`,{class:`chart-panel__head`},[e(`h2`,null,`نمودار فعالیت`),e(`span`,null,`تعاملات ثبت‌شده`)],-1),e(`div`,I,[(n(!0),o(t,null,l(ne.value,(e,t)=>(n(),o(`div`,{key:t,class:`bar`},[e.c===`0%`?a(``,!0):(n(),o(`span`,{key:0,class:`seg seg--c`,style:g({height:e.c})},null,4)),e.b===`0%`?a(``,!0):(n(),o(`span`,{key:1,class:`seg seg--b`,style:g({height:e.b})},null,4)),e.a===`0%`?a(``,!0):(n(),o(`span`,{key:2,class:`seg seg--a`,style:g({height:e.a})},null,4))]))),128))]),e(`div`,L,[e(`div`,null,[s[10]||=e(`span`,null,`کل تعاملات`,-1),e(`strong`,null,c($.value.total.toLocaleString(`fa-IR`))+` مورد`,1)]),e(`div`,null,[s[11]||=e(`span`,null,`ملاقات حضوری`,-1),e(`strong`,null,c($.value.inPerson.toLocaleString(`fa-IR`))+` مورد`,1)]),e(`div`,null,[s[12]||=e(`span`,null,`تماس تلفنی`,-1),e(`strong`,null,c($.value.call.toLocaleString(`fa-IR`))+` مورد`,1)]),e(`div`,null,[s[13]||=e(`span`,null,`یادداشت و پیام`,-1),e(`strong`,null,c($.value.other.toLocaleString(`fa-IR`))+` مورد`,1)])])])])])])):q.value?(n(),o(`div`,R,[i(ee,{variant:`detail`})])):(n(),o(`div`,z,[e(`p`,null,c(Y.value||`یادآور یافت نشد.`),1)]))}}),[[`__scopeId`,`data-v-9fc8e0f1`]]);export{B as default};