1 line
3.2 KiB
JavaScript
1 line
3.2 KiB
JavaScript
import{A as e,G as t,I as n,K as r,N as i,Nt as a,a as o,b as s,c,et as l,f as u,g as d,m as f,nt as p,o as m,p as h,t as g,x as _,y as v}from"./http-DH3a8ZHi.js";import{D as y,L as b,S as x,V as S,g as C}from"./index-tqT6UwOm.js";import{t as w}from"./AdminPageSkeleton-BcF2AzMt.js";import{t as T}from"./BaseEmptyState-CG1RbXkS.js";import{t as E}from"./AdminSelect-Dv_-57-E.js";var D={class:`admin-page`},O={class:`admin-page__head`},k={key:2,class:`admin-table`},A={class:`muted`,dir:`ltr`},j=[`onClick`],M={class:`field`},N={class:`field`},P={class:`field`},F=[`disabled`],I=m(_({__name:`SuggestionsView`,setup(m){let _=p([]),I=p(!0),L=p([]),R=p([]),z=p(!1),B=o(),V=l({customerId:``,productId:``,note:``}),H=u(()=>L.value.map(e=>({value:e.id,label:e.name?.trim()||e.phone}))),U=u(()=>R.value.map(e=>({value:e.id,label:`${e.name} (${e.productCode})`})));async function W(){I.value=!0;try{let[e,t,n]=await Promise.all([y.list(),C.list(),x.list()]);_.value=e,L.value=t,R.value=n}catch(e){B.error(e instanceof g?e.message:`بارگذاری ناموفق بود`)}finally{I.value=!1}}async function G(){try{await y.create({customerId:V.customerId,productId:V.productId,note:V.note.trim()||void 0}),z.value=!1,V.note=``,B.success(`پیشنهاد ثبت شد`),await W()}catch(e){B.error(e instanceof g?e.message:`ثبت ناموفق بود`)}}async function K(e){try{await y.setActive(e.id,!e.isActive),await W()}catch(e){B.error(e instanceof g?e.message:`بهروزرسانی ناموفق بود`)}}return e(()=>{W()}),(e,o)=>(i(),d(`div`,D,[h(`header`,O,[o[5]||=h(`div`,null,[h(`h1`,null,`پیشنهاد محصول`),h(`p`,null,`پیشنهاد دستی محصول به مشتری`)],-1),h(`button`,{type:`button`,class:`admin-btn admin-btn--primary`,onClick:o[0]||=e=>z.value=!0},`پیشنهاد جدید`)]),I.value?(i(),f(w,{key:0,variant:`table`})):_.value.length?(i(),d(`table`,k,[o[6]||=h(`thead`,null,[h(`tr`,null,[h(`th`,null,`مشتری`),h(`th`,null,`محصول`),h(`th`,null,`یادداشت`),h(`th`,null,`وضعیت`),h(`th`)])],-1),h(`tbody`,null,[(i(!0),d(c,null,n(_.value,e=>(i(),d(`tr`,{key:e.id},[h(`td`,null,a(e.customerName),1),h(`td`,null,[v(a(e.productName)+` `,1),h(`span`,A,`(`+a(e.productCode)+`)`,1)]),h(`td`,null,a(e.note||`—`),1),h(`td`,null,a(e.isActive?`فعال`:`غیرفعال`),1),h(`td`,null,[h(`button`,{type:`button`,class:`link`,onClick:t=>K(e)},a(e.isActive?`غیرفعال`:`فعال`),9,j)])]))),128))])])):(i(),f(T,{key:1,title:`پیشنهادی ثبت نشده`})),s(b,{open:z.value,title:`پیشنهاد محصول`,onClose:o[4]||=e=>z.value=!1},{footer:t(()=>[h(`button`,{type:`button`,class:`admin-btn admin-btn--primary`,disabled:!V.customerId||!V.productId,onClick:G},` ثبت `,8,F)]),default:t(()=>[h(`label`,M,[o[7]||=v(`مشتری `,-1),s(E,{modelValue:V.customerId,"onUpdate:modelValue":o[1]||=e=>V.customerId=e,options:H.value},null,8,[`modelValue`,`options`])]),h(`label`,N,[o[8]||=v(`محصول `,-1),s(E,{modelValue:V.productId,"onUpdate:modelValue":o[2]||=e=>V.productId=e,options:U.value},null,8,[`modelValue`,`options`])]),h(`label`,P,[o[9]||=v(`یادداشت`,-1),r(h(`textarea`,{"onUpdate:modelValue":o[3]||=e=>V.note=e,class:`admin-input`,rows:`3`},null,512),[[S,V.note]])])]),_:1},8,[`open`])]))}}),[[`__scopeId`,`data-v-56e3e728`]]);export{I as default}; |