medicine/Medicine-Server/admin/assets/index-38b3e629.js

3 lines
10 KiB
JavaScript

import{a as le}from"./refresh-40951901.js";import{d as G,a9 as j,j as V,r as g,aT as H,i as oe,ae as M,ah as A,ai as l,ao as e,as as E,ap as u,cc as ne,cd as ie,al as w,aw as J,ax as re,ce as ue,o as de,af as pe,ag as Q,aj as p,ak as ce,aI as me,am as O,cf as fe,cg as _e,ch as ve,aC as we,b3 as ge}from"./index-616702d4.js";import{u as ye}from"./use-loading-c42c7ae6.js";import{l as be,_ as he}from"./instance-c081941c.js";import{_ as K}from"./Input-c4d1ad6c.js";import{_ as W,a as X}from"./FormItem-cee75cac.js";import{_ as ke}from"./Switch-bf8e17e1.js";import{_ as Y}from"./Select-218e30a3.js";import{N as C}from"./Space-a048fa85.js";import{_ as xe}from"./column-setting.vue_vue_type_script_setup_true_lang-adaf5d2e.js";import{N as Ue}from"./Image-8d309ea9.js";import{N as B}from"./Tag-7d12dac1.js";import{N as Ce}from"./Popconfirm-dbb9f5be.js";import{N as Ie}from"./Tooltip-4caf4967.js";import{_ as De}from"./DataTable-e3606107.js";import"./Popover-d05722bc.js";import"./Eye-8736ca10.js";import"./format-length-c9d165c6.js";import"./next-frame-once-7035a838.js";import"./Selection-35940256.js";import"./Add-8feae678.js";import"./setting-outlined-80b68b8e.js";import"./RadioGroup-46676ce6.js";import"./Radio-a179bbe7.js";import"./utils-76115ab6.js";const Pe=G({name:"TableActionModal",__name:"table-action-modal",props:{visible:{type:Boolean},type:{default:"add"},editData:{default:{}},roleList:{}},emits:["update:visible"],setup(h,{emit:z}){const y=h,q=j().url+"/file/upload",k=V({get(){return y.visible},set(n){z("update:visible",n)}}),I=()=>{k.value=!1},x=V(()=>({add:"添加用户",edit:"编辑用户"})[y.type]),m=g(),t=H(P()),D={id:{required:!1},username:[{required:!0,message:"请输入用户名"}],password:[{required:!0,message:"请输入密码"}],confirmPassword:[{required:!0,message:"请输入确认密码"},{validator:(n,o)=>o!==t.password?Promise.reject("两次输入密码不一致"):Promise.resolve()}],nickname:[{required:!0,message:"请输入昵称"}],status:[{required:!0,message:"请选择状态"}],avatar:[{required:!1,message:"请上传头像"}],roleId:[{required:!0,message:"请选择用户角色"}]};function P(){return{id:"",username:"",nickname:"",password:"",confirmPassword:"",status:1,avatar:"",roleId:4}}const F=g([]);function d(n){Object.assign(t,n),n.id&&(F.value[0]={id:n.id,status:"finished",name:"用户头像",url:j().fileUrl+n.avatar})}function L(){({add:()=>{const o=P();d(o)},edit:()=>{y.editData&&d(y.editData)}})[y.type]()}async function $(){var o,f;await((o=m.value)==null?void 0:o.validate());let n=null;t.id?n=await ne(t):n=await ie(t),n&&((f=window.$message)==null||f.success(t.id?"修改成功!":"新增成功!"),I())}const T=({file:n,data:o,headers:f,withCredentials:_,action:v,onFinish:U,onError:N,onProgress:b})=>{const a=new FormData;a.append("file",n.file),be.post(v,{withCredentials:_,headers:f,body:a,onUploadProgress:({percent:s})=>{b({percent:Math.ceil(s)})}}).then(({json:s})=>{var i;t.avatar=s.data.path,(i=window.$message)==null||i.success("上传成功!"),U()}).catch(s=>{var i;(i=window.$message)==null||i.error("上传失败!",s),N()})};return oe(()=>y.visible,n=>{n&&L()}),(n,o)=>{const f=K,_=W,v=ke,U=Y,N=he,b=w,a=C,s=X,i=J;return M(),A(i,{show:k.value,"onUpdate:show":o[6]||(o[6]=r=>k.value=r),preset:"card",title:x.value,class:"w-400px"},{default:l(()=>[e(s,{ref_key:"formRef",ref:m,"label-placement":"left","label-width":80,model:t,rules:D},{default:l(()=>[e(_,{label:"用户名",path:"username"},{default:l(()=>[e(f,{value:t.username,"onUpdate:value":o[0]||(o[0]=r=>t.username=r),disabled:t.id===1},null,8,["value","disabled"])]),_:1}),x.value==="添加用户"?(M(),A(_,{key:0,label:"密码",path:"password"},{default:l(()=>[e(f,{value:t.password,"onUpdate:value":o[1]||(o[1]=r=>t.password=r),"show-password-on":"click",type:"password"},null,8,["value"])]),_:1})):E("",!0),x.value==="添加用户"?(M(),A(_,{key:1,label:"确认密码",path:"confirmPassword"},{default:l(()=>[e(f,{value:t.confirmPassword,"onUpdate:value":o[2]||(o[2]=r=>t.confirmPassword=r),"show-password-on":"click",type:"password"},null,8,["value"])]),_:1})):E("",!0),e(_,{label:"昵称",path:"nickname"},{default:l(()=>[e(f,{value:t.nickname,"onUpdate:value":o[3]||(o[3]=r=>t.nickname=r)},null,8,["value"])]),_:1}),e(_,{label:"状态",path:"roleId"},{default:l(()=>[e(v,{value:t.status,"onUpdate:value":o[4]||(o[4]=r=>t.status=r),"checked-value":1,"unchecked-value":0},{checked:l(()=>[u(" 有效 ")]),unchecked:l(()=>[u(" 禁用 ")]),_:1},8,["value"])]),_:1}),e(_,{label:"用户角色",path:"roleId"},{default:l(()=>[e(U,{value:t.roleId,"onUpdate:value":o[5]||(o[5]=r=>t.roleId=r),options:n.roleList,"label-field":"name","value-field":"id",placeholder:"请选择用户角色",disabled:t.id===1},null,8,["value","options","disabled"])]),_:1}),e(_,{label:"头像",path:"avatar"},{default:l(()=>[e(N,{action:q,"list-type":"image-card",accept:"image/*",max:1,"custom-request":T,"default-file-list":F.value},{default:l(()=>[u(" 点击上传 ")]),_:1},8,["default-file-list"])]),_:1}),e(a,{class:"w-full pt-16px",size:24,justify:"end"},{default:l(()=>[e(b,{class:"w-72px",onClick:I},{default:l(()=>[u("取消")]),_:1}),e(b,{class:"w-72px",type:"primary",onClick:$},{default:l(()=>[u("确定 ")]),_:1})]),_:1})]),_:1},8,["model"])]),_:1},8,["show","title"])}}});const Fe=j();function Ne(h){return h&&h.indexOf("http")===-1?Fe.fileUrl+h:h}const ze={class:"overflow-hidden"},Te={class:"flex-col h-full"},Me={class:"mr-2"},oa=G({__name:"index",setup(h){const{loading:z,startLoading:y,endLoading:q}=ye(!1),{bool:k,setTrue:I}=re(),x=g([]),m=g({page:1,row:10,likeQuery:"",roleId:null});async function t(){y();const a=await fe(m.value);x.value=a.list,v.itemCount=a.meta.total,q()}const D=g([{key:"id",title:"ID",width:80},{key:"username",title:"用户名"},{key:"nickname",title:"昵称"},{key:"avatar",title:"头像",render:a=>e(Ue,{width:"50",height:"50",objectFit:"cover",lazy:!0,style:{backgroundColor:"transparent"},src:Ne(a.avatar)},null)},{key:"status",title:"状态",render:a=>e(B,{type:a.status===1?"success":"error"},{default:()=>[a.status===1?"正常":"禁用"]})},{key:"roleId",title:"角色",render:a=>e(B,{type:"primary"},{default:()=>[a.role.name]})},{key:"actions",title:"操作",render:a=>e(C,null,{default:()=>[e(w,{type:"primary",size:"small",text:!0,onClick:()=>f(a.id)},{default:()=>[u("编辑")]}),e(w,{onClick:()=>L(a.id,a.username),text:!0,type:"primary",size:"small",tag:"div"},{default:()=>[u("重置密码")]}),e(Ce,{onPositiveClick:()=>_(a.id)},{default:()=>"确认删除",trigger:()=>a.id===1?e(Ie,null,{trigger:()=>e(w,{type:"error",size:"small",disabled:a.id===1,tag:"div",text:!0},{default:()=>[u("删除")]}),default:()=>"主用户不可删除"}):e(w,{text:!0,type:"error",size:"small",tag:"div"},{default:()=>[u("删除")]})})]})}]),P=g("add");function F(a){P.value=a}const d=g({showFlag:!1,userId:0,resetPassword:"",username:""});function L(a,s){d.value={showFlag:!0,userId:a,resetPassword:"",username:s}}async function $(){var s;await _e(d.value)&&((s=window==null?void 0:window.$message)==null||s.success("重置成功"),d.value.showFlag=!1,await t())}const T=g(null);function n(a){T.value=a}function o(){I(),F("add")}function f(a){const s=x.value.find(i=>i.id===a);s&&n(s),F("edit"),I()}async function _(a){var i;await ue({id:a})&&((i=window==null?void 0:window.$message)==null||i.success("删除成功"),await t())}const v=H({page:1,pageSize:10,showSizePicker:!0,pageSizes:[10,15,20,25,30],itemCount:0,prefix:()=>"共"+v.itemCount+"条",onChange:a=>{v.page=a,m.value.page=a,t()},onUpdatePageSize:a=>{v.pageSize=a,v.page=1,m.value.page=1,m.value.row=a,t()}}),U=g([]);async function N(){const a=await ve();U.value=a}N();async function b(){v.page=1,await t()}return de(async()=>{await b()}),(a,s)=>{const i=K,r=Y,S=we,Z=le,ee=De,ae=ge,R=W,te=X,se=J;return M(),pe("div",ze,[e(ae,{title:"用户管理",bordered:!1,class:"h-full rounded-8px shadow-sm"},{default:l(()=>[Q("div",Te,[e(p(C),{class:"pb-12px",justify:"space-between"},{default:l(()=>[e(p(C),null,{default:l(()=>[e(i,{value:m.value.likeQuery,"onUpdate:value":s[0]||(s[0]=c=>m.value.likeQuery=c),placeholder:"请输入 ID、用户名、昵称 进行搜索",clearable:"",style:{width:"300px"},onChange:t},null,8,["value"]),e(r,{value:m.value.roleId,"onUpdate:value":[s[1]||(s[1]=c=>m.value.roleId=c),b],options:U.value,"label-field":"name","value-field":"id",placeholder:"全部角色",style:{width:"120px"},clearable:""},null,8,["value","options"]),e(p(w),{onClick:t},{default:l(()=>[e(S,{icon:"mdi:magnify",class:"mr-4px text-20px"}),u(" 搜索 ")]),_:1}),e(p(w),{type:"primary",onClick:o},{default:l(()=>[e(S,{icon:"mdi:plus",class:"mr-4px text-20px"}),u(" 新增 ")]),_:1})]),_:1}),e(p(C),{align:"center",size:18},{default:l(()=>[e(p(w),{size:"small",type:"primary",onClick:t},{default:l(()=>[e(Z,{class:ce(["mr-4px text-16px",{"animate-spin":p(z)}])},null,8,["class"]),u(" 刷新表格 ")]),_:1}),e(xe,{columns:D.value,"onUpdate:columns":s[2]||(s[2]=c=>D.value=c)},null,8,["columns"])]),_:1})]),_:1}),e(ee,{columns:D.value,data:x.value,loading:p(z),pagination:v,"flex-height":"",class:"flex-1-hidden"},null,8,["columns","data","loading","pagination"]),e(Pe,{visible:p(k),"onUpdate:visible":[s[3]||(s[3]=c=>me(k)?k.value=c:null),b],type:P.value,"edit-data":T.value,"role-list":U.value},null,8,["visible","type","edit-data","role-list"])])]),_:1}),e(se,{show:d.value.showFlag,"onUpdate:show":s[6]||(s[6]=c=>d.value.showFlag=c),title:"重置密码",class:"w-400px",preset:"card"},{default:l(()=>[e(te,{"label-placement":"left","label-width":80},{default:l(()=>[e(R,{label:"用户名"},{default:l(()=>[Q("span",Me,"ID: "+O(d.value.userId),1),e(p(B),{class:"mr-2",type:"primary"},{default:l(()=>[u(O(d.value.username),1)]),_:1})]),_:1}),e(R,{label:"新密码"},{default:l(()=>[e(i,{value:d.value.resetPassword,"onUpdate:value":s[4]||(s[4]=c=>d.value.resetPassword=c),placeholder:"请输入新密码 默认 123456",type:"password","show-password-on":"click"},null,8,["value"])]),_:1})]),_:1}),e(p(C),{class:"w-full pt-16px",size:24,justify:"end"},{default:l(()=>[e(p(w),{class:"w-72px",onClick:s[5]||(s[5]=c=>d.value.showFlag=!1)},{default:l(()=>[u("取消")]),_:1}),e(p(w),{class:"w-72px",type:"primary",onClick:$},{default:l(()=>[u("确定 ")]),_:1})]),_:1})]),_:1},8,["show"])])}}});export{oa as default};
//# sourceMappingURL=index-38b3e629.js.map