1 line
8.9 KiB
JavaScript
1 line
8.9 KiB
JavaScript
import{B as e,Dt as t,O as n,Ot as r,T as ee,Tt as i,V as a,Y as o,Z as s,c,d as l,g as te,h as u,j as d,l as f,m as p,r as m,s as h,t as g,u as _}from"./_plugin-vue_export-helper-OaxA6A2f.js";import{a as ne,f as v,m as re,t as y}from"./http-Djf2pGxE.js";import{L as ie,V as ae,g as b,v as oe}from"./index-CznUUXv3.js";import{t as se}from"./AdminPageSkeleton-CTgUqaAu.js";import{t as ce}from"./BaseSwitch-TV5Yvtf7.js";import{t as le}from"./BaseEmptyState-D6sk-aI_.js";import{t as ue}from"./AdminImagePicker-C4toq7MG.js";import{t as x}from"./AdminSelect-DK-_otkw.js";import{t as S}from"./ActiveSwitchCell-CLCpM6ho.js";var de={class:`catalogs-page`},fe={class:`catalogs-page__filters admin-card`},pe={class:`catalogs-page__search`},me={key:2,class:`catalogs-page__table admin-card desktop-only`},he={class:`admin-table-wrap`},ge={class:`admin-table`},_e={class:`numeric`},ve={class:`numeric`},ye={class:`status`},be={class:`actions`},xe=[`onClick`],C={key:3,class:`compact-only admin-card-list`},w={class:`admin-card-item__header`},T={class:`admin-card-item__title`},E={class:`admin-card-item__meta`},D={class:`admin-card-item__actions`},O=[`onClick`],k={key:0,class:`admin-form__error`,role:`alert`},A={class:`admin-form__field`},j={class:`admin-form__row`},M={class:`admin-form__field`},Se={class:`admin-form__field`},Ce={class:`admin-form__row`},we={class:`admin-form__field`},Te={class:`admin-form__field`},Ee=[`disabled`],N=g(te({__name:`CatalogsView`,setup(te){let g=s([]),N=s([]),P=s(``),F=s(`all`),I=s(!0),L=s(null),R=s(null),z=s(``),B=s(!1),V=ne(),De=h(()=>[{value:`all`,label:`همه شرکتها`},...N.value.map(e=>({value:e.id,label:e.name}))]),Oe=h(()=>N.value.map(e=>({value:e.id,label:e.name}))),H=()=>({companyId:N.value[0]?.id??``,code:``,name:``,displayOrder:g.value.length+1,isActive:!0,imageUrl:null}),U=o(H()),ke=h(()=>L.value!==null),W=h(()=>L.value===`edit`?`ویرایش کالیته`:`افزودن کالیته`),G=h(()=>U.code.trim()&&U.name.trim()&&U.companyId),K=h(()=>P.value.trim().length>0||F.value!==`all`),q=h(()=>{let e=g.value;F.value!==`all`&&(e=e.filter(e=>e.companyId===F.value));let t=P.value.trim();return t&&(e=e.filter(e=>e.code.includes(t)||e.name.includes(t)||e.companyName.includes(t))),e});async function Ae(){I.value=!0;try{let[e,t]=await Promise.all([b.list(),oe.list()]);g.value=e,N.value=t}catch(e){V.error(e instanceof y?e.message:`بارگذاری کالیتهها انجام نشد.`)}finally{I.value=!1}}ee(()=>{Ae()});function J(e){return N.value.find(t=>t.id===e)?.name??`—`}function Y(){L.value=`add`,R.value=null,Object.assign(U,H()),z.value=``}function X(e){L.value=`edit`,R.value=e.id,U.companyId=e.companyId,U.code=e.code,U.name=e.name,U.displayOrder=e.displayOrder,U.isActive=e.isActive,U.imageUrl=e.imageUrl??null,z.value=``}function Z(){L.value=null,R.value=null,z.value=``}async function Q(){if(!G.value){z.value=`کد، نام و شرکت الزامی هستند.`;return}B.value=!0;try{if(L.value===`edit`&&R.value){let e=await b.update(R.value,{code:U.code.trim(),name:U.name.trim(),displayOrder:Number(U.displayOrder)||1,isActive:U.isActive,imageUrl:U.imageUrl}),t=g.value.findIndex(e=>e.id===R.value);t!==-1&&(g.value[t]={...g.value[t],...e,companyName:J(U.companyId)}),V.success(`اطلاعات کالیته بهروزرسانی شد.`)}else{let e=await b.create({companyId:U.companyId,code:U.code.trim(),name:U.name.trim(),displayOrder:Number(U.displayOrder)||1,isActive:U.isActive,imageUrl:U.imageUrl});g.value.push({...e,companyName:e.companyName||J(U.companyId),productCount:e.productCount??0}),V.success(`کالیته جدید ثبت شد.`)}Z()}catch(e){V.error(e instanceof y?e.message:`ذخیره کالیته انجام نشد.`)}finally{B.value=!1}}async function $(e,t){await b.setActive(e,t)}function je(){P.value=``,F.value=`all`}return(ee,o)=>(n(),l(`div`,de,[c(`div`,{class:`admin-page-header`},[o[8]||=c(`div`,null,[c(`h1`,{class:`admin-page-header__title`},`کالیتهها`)],-1),c(`button`,{type:`button`,class:`admin-btn admin-btn--primary`,onClick:Y},` افزودن کالیته `)]),c(`di
|