You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2 lines
6.0 KiB

import{B as T,p as X,C as Y,A as Z,b as ee,E as ae}from"./el-button-46177dcd.js";import{v as oe}from"./el-loading-e3e9db91.js";import{E as te}from"./el-drawer-02c97c36.js";import{E as k}from"./el-message-606f6f33.js";import{a as le,b as se,E as ne}from"./el-breadcrumb-item-c6d267fc.js";import{E as re}from"./el-pagination-e3dfa5c4.js";import{E as de}from"./el-input-2a068f59.js";import{E as ie,a as ue}from"./el-tag-6812ee36.js";import"./el-select-aff362a8.js";import"./el-scrollbar-d5ea4c53.js";import{E as me,a as pe,b as ce}from"./el-dropdown-item-98b90066.js";import{E as _e,a as fe}from"./el-form-item-879dedb6.js";import{g as ve,u as ge,a as we,b as be,d as ye}from"./adminuser-84775daa.js";import{q as p,z as I,x as Ee,v as M,o as b,f as V,Q as e,w as o,c as R,F as $,N as m,O as A,M as g,a3 as Ce,a as w,D as he,V as ke,a4 as S}from"./index-b8bd6c45.js";import"./el-message-box-1764db92.js";import{E as Ve}from"./index-bcdc2cd6.js";import"./index-ec296065.js";import"./strings-6a1386cb.js";import"./validator-33a7a7f5.js";import"./castArray-edcf4c72.js";import"./request-3180202a.js";import"./aria-bc8e8b0f.js";const xe={class:"demo-drawer__footer",style:{"text-align":"right"}},ze={__name:"Form",props:{editid:{type:Number,default:0}},emits:["close"],setup(F,{emit:r}){const d=F,c=p("insert"),y=p(!1),_=p(null),t=p({id:0,username:"",password:"",cfm_password:""});I(async()=>{if(console.log("props.editid",d.editid),d.editid){let n=await ve(d.editid);console.log("res",n),n.code===200&&(t.value=n.data,c.value="update")}}),Ee(()=>d.editid,n=>{console.log("nVal",n)},{immediate:!0});const z=M({username:[{required:!0,message:"管理員帳號必填",trigger:"blur"}],password:[{validator:(n,l,s)=>{if(t.cfm_password!==""){if(!_.value)return;_.value.validateField("cfm_password",()=>null)}s()},trigger:"blur"}],cfm_password:[{validator:(n,l,s)=>{console.log("value",l),l&&l!==t.value.password?s(new Error("二個密碼不一致!")):s()},trigger:"blur"}]}),D=()=>{console.log("cancel!"),r("close",!1)},U=n=>{n&&n.validate(async l=>{if(console.log("valid",l),l){let s,i;console.log("formType",c.value),c.value==="update"?(t.value.id=d.editid,s=await ge(t.value),i="修改成功."):(s=await we(t.value),i="新增成功."),s.code===200&&(k({message:i,type:"success"}),r("close",!0))}else return k({message:"操作失敗.",type:"error"}),!1})};return(n,l)=>{const s=de,i=_e,E=fe,h=T;return b(),V("div",null,[e(E,{ref_key:"formRef",ref:_,model:t.value,"status-icon":"",rules:z,"label-width":"120px"},{default:o(()=>[e(i,{label:"管理員帳號",prop:"username"},{default:o(()=>[c.value==="insert"?(b(),R(s,{key:0,modelValue:t.value.username,"onUpdate:modelValue":l[0]||(l[0]=a=>t.value.username=a)},null,8,["modelValue"])):(b(),V($,{key:1},[m(A(t.value.username),1)],64))]),_:1}),e(i,{label:"管理員密碼",prop:"password"},{default:o(()=>[e(s,{modelValue:t.value.password,"onUpdate:modelValue":l[1]||(l[1]=a=>t.value.password=a),type:"password","show-password":""},null,8,["modelValue"])]),_:1}),e(i,{label:"確認密碼",prop:"cfm_password"},{default:o(()=>[e(s,{modelValue:t.value.cfm_password,"onUpdate:modelValue":l[2]||(l[2]=a=>t.value.cfm_password=a),type:"password","show-password":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"]),g("div",xe,[e(h,{onClick:D},{default:o(()=>[m("取消")]),_:1}),e(h,{type:"primary",loading:y.value,onClick:l[3]||(l[3]=a=>U(_.value))},{default:o(()=>[m(A(y.value?"提交中 ...":"確認"),1)]),_:1},8,["loading"])])])}}},De={class:"main"},Ue={class:"breadcrumb-section"},Fe={class:"pagination-block"},Ze={__name:"index",setup(F){const r=M({page:1,pageSize:10}),{page:d,pageSize:c}=Ce(r),y=p(0),_=p(!1),t=p(!1),x=p([]);I(()=>{f()});const f=async()=>{_.value=!0;let a=await be(r);a.code===200&&(x.value=a.data.list,y.value=a.data.total),_.value=!1},z=()=>{E.value=0,t.value=!0},D=a=>{E.value=a,t.value=!0},U=a=>{Ve.confirm("確認刪除此紀錄?").then(async()=>{(await ye(a)).code===200?(k({message:"刪除成功.",type:"success"}),f()):k({message:"刪除失敗.",type:"error"})}).catch(()=>{})},n=a=>{r.pageSize=a,f()},l=a=>{r.page=a,f()},s=a=>{r.page=a,f()},i=a=>{r.page=a,f()},E=p(0),h=a=>{t.value=!1,a&&f()};return(a,v)=>{const B=le,q=se,N=T,C=ie,L=ae,P=me,j=pe,O=ce,Q=ue,G=re,H=ne,J=te,K=oe;return b(),V($,null,[g("div",De,[g("div",Ue,[g("div",null,[e(q,{separator:"/"},{default:o(()=>[e(B,null,{default:o(()=>[m(" 權限管理 ")]),_:1}),e(B,null,{default:o(()=>[m("管理員列表")]),_:1})]),_:1})]),g("div",null,[e(N,{type:"primary",icon:w(X),onClick:z},{default:o(()=>[m("新增管理員")]),_:1},8,["icon"])])]),e(H,{"body-style":{padding:"0px"}},{default:o(()=>[he((b(),V("div",null,[e(Q,{data:x.value,style:{width:"100%"}},{default:o(()=>[e(C,{label:"#",prop:"id",width:"50"}),e(C,{label:"管理員名稱",prop:"username"}),e(C,{label:"上次登入",prop:"login_time"}),e(C,{label:"登入次數",prop:"login_num"}),e(C,{label:"操作",width:"105",fixed:"right"},{default:o(u=>[e(O,null,{dropdown:o(()=>[e(j,null,{default:o(()=>[e(P,{icon:w(Y),onClick:W=>D(u.row.id)},{default:o(()=>[m("編輯")]),_:2},1032,["icon","onClick"]),u.row.is_main!==1?(b(),R(P,{key:0,icon:w(Z),onClick:W=>U(u.row.id)},{default:o(()=>[m("刪除")]),_:2},1032,["icon","onClick"])):ke("",!0)]),_:2},1024)]),default:o(()=>[e(N,{type:"danger"},{default:o(()=>[m(" 操作"),e(L,{class:"el-icon--right"},{default:o(()=>[e(w(ee))]),_:1})]),_:1})]),_:2},1024)]),_:1})]),_:1},8,["data"]),g("div",Fe,[e(G,{"current-page":w(d),"onUpdate:currentPage":v[0]||(v[0]=u=>S(d)?d.value=u:null),"page-size":w(c),"onUpdate:pageSize":v[1]||(v[1]=u=>S(c)?c.value=u:null),"page-sizes":[10,20,50,100],layout:"->,total, sizes, prev, pager, next, jumper",total:y.value,onSizeChange:n,onCurrentChange:l,onPrevClick:s,onNextClick:i},null,8,["current-page","page-size","total"])])])),[[K,_.value]])]),_:1})]),g("div",null,[e(J,{ref:"drawerRef",modelValue:t.value,"onUpdate:modelValue":v[2]||(v[2]=u=>t.value=u),"destroy-on-close":!0,title:"新增管理員",direction:"rtl",size:"50%"},{default:o(()=>[e(ze,{editid:E.value,onClose:h},null,8,["editid"])]),_:1},8,["modelValue"])])],64)}}};export{Ze as default};