2026-07-09 15:20:19 +03:30
|
|
|
import{_ as xe}from"./BasicMainCard-8fe4bdc4.js";import{_ as be}from"./BasicModal.vue_vue_type_style_index_0_lang-1bdfd956.js";import{_ as ye}from"./BasicTextArea.vue_vue_type_style_index_0_lang-dbd37705.js";import{a as te,_ as he,u as G}from"./useBaseTable-dfc7081d.js";import{_ as ae}from"./BasicInput.vue_vue_type_style_index_0_lang-0064d90a.js";import{_ as ne}from"./button.vue_vue_type_style_index_0_lang-1caad4e7.js";import{_ as we,G as w,d as se,g as I,h as E,v as Ie,D as v,o as P,c as L,F as ke,a,b as c,t as $,p as Ae,w as g,e as H,j as h,H as V,k as X,I as Se}from"./index-a08997de.js";import{f as Y,a as Re,b as Pe,c as Le,d as Ne,e as Ce}from"./supabaseTableQuery-95762ff3.js";import{t as q}from"./useDataTime-e1a8db4a.js";import{I as z}from"./Icon-c87fac13.js";import{g as Te}from"./index-4c089ded.js";import{e as J,g as W}from"./convert-67c23be8.js";import{a as Q}from"./index-a6b85004.js";import{M as Ue}from"./index-676f4182.js";import{S as ze}from"./index-23f9a644.js";import{T as O}from"./isSymbol-6a02f777.js";import{U as Be}from"./index-dcc91815.js";import"./index-2be1788e.js";import"./index-cf80abd0.js";import"./Col-231bd990.js";import"./styleChecker-0d78d27e.js";import"./vnode-ddd966cb.js";import"./_plugin-vue_export-helper-20260c74.js";import"./isPlainObject-a1ebcbd7.js";import"./index-8b4fbdda.js";import"./FormItemContext-5c31efc9.js";import"./fa_IR-22f438b3.js";import"./toArray-efae666c.js";import"./pickAttrs-a3c5523a.js";import"./useState-4330fc6d.js";import"./lodash-aac8995a.js";import"./css-0fc50739.js";import"./DialogWrap-4549d95e.js";import"./index-3f53f7ff.js";import"./usePrice-bc935b83.js";import"./useRefs-e28c9a2f.js";import"./_flatRest-e8546dba.js";import"./index-1b6f1280.js";function ie(e,i){return Math.max(0,Math.round(e*(1-(i||0)/100)))}async function Ee(e){const{TableEngineRequest:i}=await we(()=>import("./buildSupabaseQuery-0ad3022e.js"),["assets/buildSupabaseQuery-0ad3022e.js","assets/index-a08997de.js","assets/index-a3740640.css","assets/supabaseTableQuery-95762ff3.js"]),o={...e};!o.sort&&!o.order&&(o.order="-sort_order");const t=await i(o,"subscription_plans");if(Array.isArray(t==null?void 0:t.rows)){const p=t.rows.map((d,x)=>({...d,index:x,final_price:ie(Number(d.price),Number(d.discount_percent||0))}));return{...t,rows:p}}return t}const $e=new Set(["plan_title","payment_status","status","final_price","expires_at","created_at","user_id","plan_id"]),De=["plan_title","payment_status","status"];async function Me(e){const{limit:i=20,page:o=1,search:t,filters:p}=e;let d=w.from("subscription_purchases").select("*, users(name, phone, first_name, last_name)",{count:"exact"});if(t!=null&&t.trim()){const u=await Y(w,t);d=Re(d,t,De,u)}if(p!=null&&p.length){for(const u of p)if(!(u.hidden||!u.field)){if(u.field==="user_name"||u.field==="user_phone"){if(["eq","has","like"].includes(u.op)){const r=await Y(w,String(u.value));r.length?d=d.in("user_id",r):d=d.eq("user_id","00000000-0000-0000-0000-000000000000")}continue}$e.has(u.field)&&(d=Pe(d,u))}}d=Le(d,e,"-created_at",["created_at","plan_title","payment_status","status"]),d=Ne(d,o,i);const{data:x,error:k,count:m}=await d;if(k)throw k;return Ce(x,m,e,u=>{const r=Array.isArray(u.users)?u.users[0]:u.users;let b="نامشخص";return r!=null&&r.name?b=r.name:r!=null&&r.first_name||r!=null&&r.last_name?b=`${r.first_name||""} ${r.last_name||""}`.trim():r!=null&&r.phone&&(b=r.phone),{...u,user_name:b,user_phone:(r==null?void 0:r.phone)||""}})}async function Fe(e){const{data:i,error:o}=await w.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(o)throw o;return i}async function Oe(e,i){const{data:o,error:t}=await w.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,update
|