2 lines
8.9 KiB
JavaScript
2 lines
8.9 KiB
JavaScript
import{d as D,g as f,r as S,E as F,o as m,i as T,w as n,a as h,b as i,j as l,k as M,e as $,c as g,n as V,F as P,D as v,t as q,A as j,v as N,_ as R,H as z}from"./index-bc4edd51.js";import{_ as H,u as G}from"./useBaseTable-e4bbf0da.js";import{_ as J}from"./button.vue_vue_type_style_index_0_lang-99dfcd06.js";import{I}from"./Icon-c9ad16b9.js";import{g as K,u as Q,c as W,_ as X,b as Y,d as Z}from"./adminUser-2a213340.js";import{_ as ee}from"./BasicInput.vue_vue_type_style_index_0_lang-0a352870.js";import{n as se}from"./phone-6ff17ec0.js";import{F as te,_ as x}from"./index-6d8a75c0.js";import{C as ae}from"./index-4e41e7b6.js";import{_ as ie,M as oe}from"./index-609e9a96.js";import{D as ne}from"./index-ae018072.js";import{T as U}from"./isSymbol-f9834f4f.js";import"./updateLocale-7b0be7e3.js";import"./index-9df7eaa1.js";import"./_plugin-vue_export-helper-c8347567.js";import"./index-bc659f42.js";import"./shallowequal-cad00b6e.js";import"./vnode-f2307909.js";import"./useState-47ff4833.js";import"./useMemo-8275a234.js";import"./FormItemContext-4e017a44.js";import"./omit-6f60253b.js";import"./lodash-3efc1909.js";import"./BaseSwitch.vue_vue_type_script_setup_true_lang-9775c8a5.js";import"./BasicModal.vue_vue_type_style_index_0_lang-7803828f.js";import"./index-d4870df7.js";import"./index-49e2e544.js";import"./SearchOutlined-4504ec77.js";import"./isPlainObject-ed8996b4.js";import"./index-1d49b36b.js";import"./index-5ea3cefd.js";import"./Badge-627fd6d3.js";import"./isNumeric-3f69e2aa.js";import"./index-34768277.js";import"./index-727535d5.js";import"./toArray-b01cb1f9.js";import"./pickAttrs-1c46cfba.js";import"./index-47b6ba8f.js";import"./isMobile-e2e89480.js";import"./usePrice-bc935b83.js";import"./_flatRest-9adb1e9a.js";import"./Col-96f7f23f.js";import"./styleChecker-bc667521.js";import"./index-393b875d.js";import"./DialogWrap-f12e49af.js";import"./css-aae66f86.js";const re={class:"max-h-[560px] overflow-y-auto p-3"},le={class:"grid grid-cols-1 md:grid-cols-2 md:gap-4"},de={class:"grid grid-cols-1 md:grid-cols-2 gap-3"},pe=D({__name:"AddEditForm",props:{visible:{type:Boolean,default:!1},isEdit:{type:Boolean,default:!1},data:{default:null}},emits:["update:visible","update:isEdit","success"],setup(L,{emit:b}){const t=L,u=f([]),e=S({name:"",phone:"",password:"",active:!0,permissions:[]}),E=()=>{e.name="",e.phone="",e.password="",e.active=!0,e.permissions=[]},C=async()=>{u.value.length||(u.value=await K())},k=()=>{var r;t.data&&(e.name=t.data.name||"",e.phone=t.data.phone||t.data.username||((r=t.data.email)==null?void 0:r.split("@")[0])||"",e.password="",e.active=t.data.active!==!1,e.permissions=[...t.data.permissions||[]])};F(()=>t.visible,async r=>{r&&(await C(),t.isEdit&&t.data?k():E())});const y=(r,o)=>{if(o){e.permissions.includes(r)||e.permissions.push(r);return}e.permissions=e.permissions.filter(c=>c!==r)},A=()=>{b("update:visible",!1),b("update:isEdit",!1)},B=async()=>{var r,o,c;if(!e.name.trim()||!e.phone.trim()){v.error("نام و شماره تلفن الزامی است");return}if(!t.isEdit&&!e.password.trim()){v.error("کلمه عبور الزامی است");return}try{t.isEdit&&((r=t.data)!=null&&r.id)?(await Q(t.data.id,{name:e.name.trim(),password:e.password.trim()||void 0,permissions:e.permissions,active:e.active}),v.success("مدیر با موفقیت ویرایش شد")):(await W({name:e.name.trim(),phone:se(e.phone),password:e.password.trim(),permissions:e.permissions}),v.success("مدیر با موفقیت ایجاد شد")),b("success"),A()}catch(a){v.error(((c=(o=a==null?void 0:a.response)==null?void 0:o.data)==null?void 0:c.error)||"خطا در ذخیره اطلاعات")}};return(r,o)=>{const c=ee,a=X;return m(),T(a,{visible:t.visible,width:"52rem",title:`${t.isEdit?"ویرایش":"افزودن"} مدیر`,okText:"ثبت",onCancel:A,onOk:B},{default:n(()=>[h("div",re,[i(l(te),{model:e},{default:n(()=>[h("div",le,[i(l(x),{label:"نام",rules:[{required:!0,message:"نام الزامی است"}]},{default:n(()=>[i(c,{"place-holder":"نام",value:e.name,"onUpdate:value":o[0]||(o[0]=s=>e.name=s)},null,8,["value"])])
|