Files
nademitex_admin/dist/assets/CustomersView-D5oj1Urm.js
T

1 line
17 KiB
JavaScript
Raw Normal View History

2026-09-24 22:29:28 +03:30
import{B as e,O as t,Ot as n,R as r,T as i,Tt as a,V as o,Y as s,Z as c,at as l,c as u,d,g as f,h as p,j as m,l as h,m as g,r as _,s as v,t as y,u as b}from"./_plugin-vue_export-helper-OaxA6A2f.js";import{a as x,f as S,m as C,t as w}from"./http-Djf2pGxE.js";import{L as T,T as E,V as D,j as O,o as ee,p as k,s as te,x as ne,y as A}from"./index-CznUUXv3.js";import{t as re}from"./AdminPageSkeleton-CTgUqaAu.js";import{t as ie}from"./BaseSwitch-TV5Yvtf7.js";import{t as ae}from"./BaseEmptyState-D6sk-aI_.js";import{t as j}from"./AdminSelect-DK-_otkw.js";import{r as M}from"./adminLabels-Cz9ccm1Z.js";import{t as N}from"./ActiveSwitchCell-CLCpM6ho.js";var P={class:`suggestions-panel`},F={key:0,class:`suggestions-panel__loading`},I={class:`suggestions-panel__add`},L={class:`field`},R={key:0,class:`suggestions-panel__picked`},z=[`onClick`],B={class:`field`},V=[`disabled`],H={key:0,class:`suggestions-panel__list`},U={class:`muted`,dir:`ltr`},W={key:0,class:`note`},G={class:`suggestions-panel__actions`},K=[`onClick`],q={key:1,class:`suggestions-panel__empty`},oe=y(f({__name:`CustomerSuggestionsPanel`,props:{customerId:{}},setup(e){let s=e,l=x(),f=c(!0),h=c(!1),y=c([]),C=c([]),T=c([]),D=c(``),ee=v(()=>C.value.filter(e=>!y.value.some(t=>t.productId===e.id&&t.isActive)).map(e=>({value:e.id,label:`${e.name} (${e.productCode})`})));async function k(){if(s.customerId){f.value=!0;try{let[e,t]=await Promise.all([O.list(s.customerId),E.list()]);y.value=e,C.value=t}catch(e){l.error(e instanceof w?e.message:`بارگذاری پیشنهادها ناموفق بود`)}finally{f.value=!1}}}async function te(){if(T.value.length){h.value=!0;try{for(let e of T.value)await O.create({customerId:s.customerId,productId:e,note:D.value.trim()||void 0});T.value=[],D.value=``,l.success(`پیشنهادها به صفحه خانه مشتری اضافه شد`),await k()}catch(e){l.error(e instanceof w?e.message:`ثبت پیشنهاد ناموفق بود`)}finally{h.value=!1}}}async function ne(e){try{await O.setActive(e.id,!e.isActive),await k()}catch(e){l.error(e instanceof w?e.message:`به‌روزرسانی ناموفق بود`)}}function A(e){e&&(T.value.includes(e)||(T.value=[...T.value,e]))}function re(e){T.value=T.value.filter(t=>t!==e)}return r(()=>s.customerId,()=>{k()}),i(()=>{k()}),(e,r)=>(t(),d(`section`,P,[r[4]||=u(`header`,{class:`suggestions-panel__head`},[u(`div`,null,[u(`h3`,{class:`suggestions-panel__title`},`پیشنهاد اختصاصی در اپ`),u(`p`,{class:`suggestions-panel__hint`},` محصولات انتخاب‌شده در بخش «پیشنهاد اختصاصی ما برای شما» در صفحه خانه مشتری نمایش داده می‌شوند. `)])],-1),f.value?(t(),d(`div`,F,`در حال بارگذاری...`)):(t(),d(_,{key:1},[u(`div`,I,[u(`label`,L,[r[1]||=g(` افزودن محصول (کد کالیته) `,-1),p(j,{"model-value":``,options:[{value:``,label:`انتخاب محصول...`},...ee.value],"onUpdate:modelValue":A},null,8,[`options`])]),T.value.length?(t(),d(`div`,R,[(t(!0),d(_,null,m(T.value,e=>(t(),d(`span`,{key:e,class:`suggestions-panel__chip`},[g(n(C.value.find(t=>t.id===e)?.productCode||e)+` `,1),u(`button`,{type:`button`,"aria-label":`حذف`,onClick:t=>re(e)},`×`,8,z)]))),128))])):b(``,!0),u(`label`,B,[r[2]||=g(` یادداشت (اختیاری) `,-1),o(u(`textarea`,{"onUpdate:modelValue":r[0]||=e=>D.value=e,class:`admin-input`,rows:`2`,placeholder:`دلیل پیشنهاد برای مشتری`},null,512),[[S,D.value]])]),u(`button`,{type:`button`,class:`admin-btn admin-btn--primary admin-btn--sm`,disabled:!T.value.length||h.value,onClick:te},` افزودن به صفحه خانه مشتری `,8,V)]),y.value.length?(t(),d(`div`,H,[r[3]||=u(`h4`,{class:`suggestions-panel__sub`},`پیشنهادهای ثبت‌شده`,-1),u(`ul`,null,[(t(!0),d(_,null,m(y.value,e=>(t(),d(`li`,{key:e.id,class:`suggestions-panel__row`},[u(`div`,null,[u(`strong`,null,n(e.productName),1),u(`span`,U,`(`+n(e.productCode)+`)`,1),e.note?(t(),d(`p`,W,n(e.note),1)):b(``,!0)]),u(`div`,G,[u(`span`,{class:a(e.isActive?`on`:`off`)},n(e.isActive