Files
nademitex_user/dist/assets/RemindersView-CyB53lja.js
T

1 line
6.8 KiB
JavaScript
Raw Normal View History

import{A as e,C as ee,Ct as t,D as te,Et as n,L as r,M as ne,N as i,O as a,P as o,R as s,St as c,Tt as re,Y as l,Z as u,_ as d,g as ie,it as f,j as p,mt as m,n as ae,q as oe,tt as se,w as h,z as g}from"./BasicIcon-C6boaehV.js";import{o as _}from"./format-BHJptHdF.js";import{i as ce,s as le,y as ue}from"./index-DzzUgmYT.js";import{t as de}from"./IconChevronBack-DORV2H0q.js";import{t as fe}from"./IconMoreVertical-BPkOm_2U.js";import{t as pe}from"./PageSkeleton-uO-jhbNm.js";import{t as me}from"./crm-CtglbPsN.js";import{t as he}from"./useGoBack-CgNp0uP9.js";var ge={class:`page reminders-page`},_e={class:`top`},v={class:`top__actions`},y={class:`page__scroll page__scroll--with-nav reminders-scroll`},b={class:`filters`},x=[`onClick`],S={key:0,class:`count-badge`},C={key:1},w={key:2,class:`create-panel`},T={key:0,class:`create-error`},E=[`value`],D={class:`create-row`},O={class:`create-actions`},k=[`disabled`],A={key:3,class:`summary`},j={class:`summary__head`},M={class:`summary__label`},N={class:`summary__count`},P=[`onClick`],F={class:`time`},I=[`onClick`],L={class:`reminder-card__body`},ve={class:`reminder-card__top`},ye={class:`customer`},be={class:`contact`},xe={class:`desc`},R=ae(g({__name:`RemindersView`,setup(ae){let g=ie(),R=d(),{goBack:z}=he(`/`),B=me(),V=e(()=>String(g.query.filter??`today`)),H=m([]),U=m([]),W=m(!0),G=m(null),K=m(!1),q=m(!1),J=m({customerId:``,title:``,date:``,time:`10:00`,note:``}),Se=[{id:`all`,label:`همه`},{id:`today`,label:`امروز`},{id:`week`,label:`هفته آینده`},{id:`past`,label:`گذشته`}],Y=e(()=>H.value.filter(e=>!e.completed)),X=e(()=>H.value.filter(e=>e.completed)),Ce=e(()=>Y.value.length),Z=e(()=>X.value.length);async function Q(){W.value=!0,G.value=null;try{H.value=await B.loadReminders(V.value)}catch(e){G.value=e instanceof Error?e.message:`بارگذاری یادآورها ناموفق بود.`,H.value=[]}finally{W.value=!1}}oe(Q),se(V,Q);function $(e){R.replace({path:`/reminders`,query:{filter:e}})}async function we(e){try{await B.markReminderComplete(e),await Q()}catch(e){G.value=e instanceof Error?e.message:`تکمیل یادآور ناموفق بود.`}}function Te(e){return e===`in_person`?`ملاقات حضوری`:e===`call`?`تماس تلفنی`:e===`message`?`پیام`:`یادداشت`}function Ee(e){return e===`in_person`?`tag--green`:e===`call`?`tag--blue`:`tag--purple`}let De=e(()=>V.value===`today`?`پیگیری‌های امروز`:V.value===`week`?`پیگیری‌های هفته آینده`:V.value===`past`?`پیگیری‌های گذشته`:`پیگیری‌های باز`);async function Oe(){K.value=!0,G.value=null;try{if(U.value=await B.loadCustomers(),!J.value.customerId&&U.value[0]&&(J.value.customerId=U.value[0].id),!J.value.date){let e=new Date;J.value.date=`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}}catch(e){G.value=e instanceof Error?e.message:`بارگذاری مشتریان ناموفق بود.`}}async function ke(){if(!J.value.customerId||!J.value.title.trim()||!J.value.date||!J.value.time){G.value=`مشتری، عنوان، تاریخ و ساعت الزامی است.`;return}q.value=!0,G.value=null;try{await B.createReminder({customerId:J.value.customerId,title:J.value.title.trim(),date:J.value.date,time:J.value.time,note:J.value.note.trim()||void 0,description:J.value.note.trim()||void 0}),K.value=!1,J.value.title=``,J.value.note=``,await Q()}catch(e){G.value=e instanceof Error?e.message:`ثبت یادآور ناموفق بود.`}finally{q.value=!1}}return(e,d)=>(l(),o(`div`,ge,[p(`header`,_e,[p(`button`,{type:`button`,class:`icon-btn`,"aria-label":`بازگشت`,onClick:d[0]||=(...e)=>c(z)&&c(z)(...e)},[s(de,{size:20})]),d[9]||=p(`h1`,null,`یادآورها`,-1),p(`div`,v,[s(ce,{variant:`inline`}),p(`button`,{type:`button`,class:`icon-btn`,"aria-label":`اعلان‌ها`,onClick:d[1]||=e=>c(R).push(`/profile/notifications`)},[s(le,{size:18})])])]),p(`div`,y,[p(`div`,b,[(l(),o(a,null,u(Se,e=>p(`button`,{key:e.id,type:`button`,class:t([`filter`,{"filter--active":V.value===e.id}]),on