Files
nademitex_admin/dist/assets/SuggestionsView-DKPC0xly.js
T
mohmdsdgandCopilot 9854842ada fix(auth): secure sessions and app routing
Validate sessions against the API, honor configurable base paths, and route unknown pages to 404. Keep development ports stable so user and admin apps cannot be confused.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-09-24 20:14:11 +03:30

1 line
3.2 KiB
JavaScript

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