Files
machartaa_admin_dist/dist/assets/index-5c237ba5.js
T

2 lines
20 KiB
JavaScript
Raw Normal View History

2026-06-01 18:38:29 +03:30
import{_ as fe}from"./BasicMainCard-f5011b39.js";import{_ as ge}from"./BasicModal.vue_vue_type_style_index_0_lang-a547157a.js";import{_ as xe}from"./BasicTextArea.vue_vue_type_style_index_0_lang-5cc0457f.js";import{a as ee,_ as be,u as V}from"./useBaseTable-13b436e1.js";import{_ as te}from"./BasicInput.vue_vue_type_style_index_0_lang-5aefde0f.js";import{_ as ae}from"./button.vue_vue_type_style_index_0_lang-851afdd8.js";import{_ as ye,I as R,d as ne,g as I,h as E,x as he,D as f,o as S,c as N,F as we,a as t,b as o,t as M,q as Ie,w as b,e as K,j as h,G as X,k as W,H as ke}from"./index-82b07f49.js";import{t as Z}from"./useDataTime-10f46d84.js";import{I as $}from"./Icon-04c02c0b.js";import{g as Ae}from"./index-e3788657.js";import{g as Y}from"./convert-c2e7255b.js";import{a as J}from"./index-a4d2dbbb.js";import{M as Le}from"./index-5dc3a2fa.js";import{S as Re}from"./index-1f61ecf5.js";import{T as F}from"./shallowequal-17b27246.js";import{U as Ce}from"./index-0f0f5d8d.js";import"./_plugin-vue_export-helper-f81f33f1.js";import"./index-ad11eb53.js";import"./Col-5d52aed9.js";import"./vnode-007df887.js";import"./isPlainObject-f3a46277.js";import"./index-c6d6dccd.js";import"./FormItemContext-f4f190fd.js";import"./index-7e5faec0.js";import"./toArray-e3bbd719.js";import"./pickAttrs-b9acd388.js";import"./useState-e0a5bff5.js";import"./index-d634ff29.js";import"./usePrice-7afab779.js";import"./useRefs-e9385981.js";import"./index-2a5d6560.js";function se(e,i){return Math.max(0,Math.round(e*(1-(i||0)/100)))}async function Se(e){const{TableEngineRequest:i}=await ye(()=>import("./buildSupabaseQuery-4056c4b8.js"),["assets/buildSupabaseQuery-4056c4b8.js","assets/index-82b07f49.js","assets/index-f86b861c.css"]),l={...e};!l.sort&&!l.order&&(l.order="-sort_order");const a=await i(l,"subscription_plans");if(Array.isArray(a==null?void 0:a.rows)){const p=a.rows.map((x,m)=>({...x,index:m,final_price:se(Number(x.price),Number(x.discount_percent||0))}));return{...a,rows:p}}return a}async function Ne(e){const{limit:i=20,page:l=1,search:a}=e,{data:p,error:x}=await R.from("subscription_purchases").select("*, users(name, phone, first_name, last_name)",{count:"exact"}).order("created_at",{ascending:!1});if(x)throw x;let m=(p||[]).map((u,_)=>{const c=Array.isArray(u.users)?u.users[0]:u.users;let k="نامشخص";return c!=null&&c.name?k=c.name:c!=null&&c.first_name||c!=null&&c.last_name?k=`${c.first_name||""} ${c.last_name||""}`.trim():c!=null&&c.phone&&(k=c.phone),{...u,index:_,user_name:k,user_phone:(c==null?void 0:c.phone)||""}});if(a){const u=String(a).toLowerCase();m=m.filter(_=>(_.plan_title||"").toLowerCase().includes(u)||(_.user_name||"").toLowerCase().includes(u)||(_.user_phone||"").toLowerCase().includes(u)||(_.payment_status||"").toLowerCase().includes(u))}const w=(l-1)*i;return{rows:m.slice(w,w+i).map((u,_)=>({...u,index:w+_})),total:m.length,query:{...e,total:m.length,page:l,limit:i}}}async function Pe(e){const{data:i,error:l}=await R.from("subscription_plans").insert([{title:e.title,description:e.description||null,image_url:e.image_url,price:e.price,discount_percent:e.discount_percent??0,duration_days:e.duration_days,is_active:e.is_active??!0,sort_order:e.sort_order??0}]).select().single();if(l)throw l;return i}async function ze(e,i){const{data:l,error:a}=await R.from("subscription_plans").update({title:i.title,description:i.description||null,image_url:i.image_url,price:i.price,discount_percent:i.discount_percent??0,duration_days:i.duration_days,is_active:i.is_active??!0,sort_order:i.sort_order??0,updated_at:new Date().toISOString()}).eq("id",e).select();if(a)throw a;return l}async function Te(e){const{error:i}=await R.from("subscription_plans").delete().eq("id",e);if(i)throw i}async function Be(e,i){const{data:l,error:a}=await R.from("subscription_plans").update({is_active:i,updated_at:new Date().toISOString()}).eq("id",e).select();if(a)throw a;return l}function Q(e){return Number(e||0).toLocaleString("fa-IR")}const Ue=[{title:"ردیف",dataIndex:"id",key:"id",filterable:!1,width:70,align:"center",customRender:e=>(e.record.index??0)+1},{tit