1 |
- import{f as oe,g as ne,r as re,h as se,i as de,j as ie}from"./auth-DdGlAz8q.js";import{c as ue,n as me}from"./setting-CO6n2wVB.js";import{R}from"./RegExp-B-pQKxnA.js";import{d as pe,r as u,a as ce,I as E,o as _e,f as S,i as t,w as r,p as ve,l as i,q as _,h as q,s as v,v as fe,x as b,y as L,F as T,t as $,E as h,O as ge,_ as be}from"./index-JAEh4X-P.js";const he={class:"inner-toolbar w-11/12 flex justify-between"},ye={class:"toolbar-btns"},Ve={class:"toolbar-search"},we=pe({__name:"administratorManage",setup(ke){const x=ve(),U=u([]),D=u([]),y=u(!1),d={page_no:1,page_size:10,user_state:1,keyword:"",company_id:x.state.companId},f=u({}),l=u({founder:0,real_name:"",password:"",id:"",role_id:"",face:"",phone:"",email:""}),C=u(),V=u({user_state:0}),w=ce({username:[{required:!0,message:"请输入人员名称!"},{min:2,max:20,message:"长度在 2 到 20 个字符"},{validator:(o,e,n)=>{e&&!R.userName.test(e)?n(new Error("只支持汉字、字母、数字、“-”、“_”的组合!")):n()}}],password:[{required:!0,message:"请输入人员密码!",trigger:"blur"},{validator:(o,e,n)=>{e&&!R.password.test(e)?n(new Error("密码应为6-20位数字、英文字母,或者特殊字符!")):n()}}],department:[{required:!0,message:"请输入所属部门!"}],role_id:[{required:!0,message:"请选择所属角色!",trigger:"change"}],face:[{required:!0,message:"请上传人员头像!"}],phone:[{required:!0,message:"请输入手机号!"}],email:[{required:!0,message:"请输入邮箱!"}]}),p=u(!1),I=u([]),A=u([]);E(()=>l.value.id,o=>{w.username[0].required=!o,w.password[0].required=!o}),E(()=>l.value.founder,o=>{w.role_id[0].required=o===0,o===1&&(l.value.role_id="超级人员")}),E(p,o=>{o||(A.value=[])}),_e(()=>{m(),oe({page_size:1e4,company_id:x.state.companId}).then(o=>{I.value=o.data}),M(),G()});const j=()=>{Object.assign(d,V.value),delete d.start_time,delete d.end_time,V.value.Contract_time_range&&(d.start_time=parseInt(String(Number(V.value.Contract_time_range[0])/1e3)),d.end_time=parseInt(String(Number(V.value.Contract_time_range[1])/1e3))),delete d.Contract_time_range,d.page_no=1,m()};let B=function o(e,n){const k=[];for(let s=0;s<e.length;s++)if(e[s].parent_id===n){const z={id:e[s].id,parent_id:e[s].parent_id,name:e[s].name,create_time:e[s].create_time,remark:e[s].remark,sn:e[s].sn,sort:e[s].sort,type:e[s].type,region_ids:e[s].region_ids,children:o(e,e[s].id)};k.push(z)}return k};const M=()=>{ue({company_id:x.state.companId}).then(o=>{U.value=B(o,"0")})},G=()=>{me().then(o=>{D.value=o})},P=o=>{d.page_size=o,m()},H=o=>{d.page_no=o,m()},J=()=>{Object.assign(l,{founder:0,real_name:"",password:"",username:"",nickname:"",role_id:""}),A.value=[],p.value=!0},K=(o,e)=>{Object.assign(l,e),l.value.role_id=parseInt(l.value.role_id)===0?"超级人员":l.value.role_id,A.value=l.value.face?[{name:"face",url:l.value.face}]:[],p.value=!0},Q=(o,e)=>{re(e.id).then(()=>{h.success("恢复成功!"),m()})},W=(o,e)=>{ge.confirm("确定要删除这个人员吗?","提示",{type:"warning"}).then(()=>{se(e.id).then(()=>{h.success("删除成功!"),m()})}).catch(()=>{})},X=()=>{setTimeout(()=>{C.value.clearValidate()})},Y=()=>{C.value.validate(o=>{if(o){const{id:e}=l.value,n={...l.value};n.password&&(n.password=n.password),n.real_name||delete n.real_name,n.role_id==="超级人员"&&(n.role_id=0),e?de(e,n).then(()=>{p.value=!1,h.success("修改成功!"),m()}):ie(n).then(()=>{p.value=!1,h.success("添加成功!"),m()})}else return h.error("表单填写有误,请核对!"),!1})},Z=o=>{d.keyword=o,d.page_no=1,m()},m=()=>{y.value=!0,ne(d).then(o=>{y.value=!1,f.value=o}).catch(()=>{y.value=!1})};return(o,e)=>{const n=i("el-button"),k=i("en-table-search"),s=i("el-table-column"),z=i("el-pagination"),ee=i("en-table-layout"),g=i("el-input"),c=i("el-form-item"),F=i("el-option"),N=i("el-select"),ae=i("el-cascader"),le=i("el-form"),te=i("el-dialog");return _(),S("div",null,[t(ee,{tableData:f.value.data,loading:y.value},{toolbar:r(()=>[q("div",he,[q("div",ye,[t(n,{size:"mini",type:"primary",icon:"el-icon-circle-plus-outline",onClick:J},{default:r(()=>[v("添加")]),_:1})]),q("div",Ve,[t(k,{onSearch:Z,placeholder:"请输入关键字",onAdvancedSearch:j,advanced:""})])])]),"table-columns":r(()=>[t(s,{prop:"username",label:"登录名"}),t(s,{prop:"real_name",label:"用户名"}),t(s,{prop:"nickname",label:"用户昵称"}),t(s,{prop:"sn",label:"用户编码"}),t(s,{prop:"dept_name",label:"部门"}),t(s,{prop:"post_name",label:"岗位"}),t(s,{prop:"user_state",label:"状态"},{default:r(a=>[v(fe(a.row.user_state===0?"正常":"删除"),1)]),_:1}),t(s,{prop:"role_name",label:"所属角色"}),t(s,{label:"操作",width:"200px"},{default:r(a=>[t(n,{size:"mini",type:"primary",onClick:O=>K(a.$index,a.row)},{default:r(()=>[v("编辑")]),_:2},1032,["onClick"]),a.row.user_state===0?(_(),b(n,{key:0,size:"mini",type:"danger",onClick:O=>W(a.$index,a.row)},{default:r(()=>[v("删除")]),_:2},1032,["onClick"])):L("",!0),a.row.user_state!==0?(_(),b(n,{key:1,size:"mini",type:"success",onClick:O=>Q(a.$index,a.row)},{default:r(()=>[v("恢复")]),_:2},1032,["onClick"])):L("",!0)]),_:1})]),pagination:r(()=>[f.value?(_(),b(z,{key:0,onSizeChange:P,onCurrentChange:H,"current-page":f.value.page_no,"page-sizes":[10,20,50,100],"page-size":f.value.page_size,layout:"total, sizes, prev, pager, next, jumper",total:f.value.data_total},null,8,["current-page","page-size","total"])):L("",!0)]),_:1},8,["tableData","loading"]),t(te,{title:l.value.id?"编辑人员":"添加人员",modelValue:p.value,"onUpdate:modelValue":e[9]||(e[9]=a=>p.value=a),width:"500px",onOpen:X,"modal-append-to-body":!1,"close-on-click-modal":!1,"close-on-press-escape":!1},{footer:r(()=>[t(n,{onClick:e[8]||(e[8]=a=>p.value=!1)},{default:r(()=>[v("取 消")]),_:1}),t(n,{type:"primary",onClick:Y},{default:r(()=>[v("确 定")]),_:1})]),default:r(()=>[t(le,{model:l.value,rules:w,ref_key:"adminFormRef",ref:C,"label-width":"120px"},{default:r(()=>[t(c,{label:"手机号",prop:"phone"},{default:r(()=>[t(g,{modelValue:l.value.phone,"onUpdate:modelValue":e[0]||(e[0]=a=>l.value.phone=a),minlength:2,maxlength:20,clearable:"",placeholder:"请输入手机号"},null,8,["modelValue"])]),_:1}),t(c,{label:"邮箱",prop:"email"},{default:r(()=>[t(g,{modelValue:l.value.email,"onUpdate:modelValue":e[1]||(e[1]=a=>l.value.email=a),maxlength:20,clearable:"",placeholder:"请输入邮箱"},null,8,["modelValue"])]),_:1}),t(c,{label:"昵称",prop:"nickname"},{default:r(()=>[t(g,{modelValue:l.value.nickname,"onUpdate:modelValue":e[2]||(e[2]=a=>l.value.nickname=a),maxlength:20,clearable:"",placeholder:"请输入昵称"},null,8,["modelValue"])]),_:1}),t(c,{label:"登录名",prop:"username"},{default:r(()=>[t(g,{modelValue:l.value.username,"onUpdate:modelValue":e[3]||(e[3]=a=>l.value.username=a),maxlength:20,clearable:"",placeholder:"请输入登录名"},null,8,["modelValue"])]),_:1}),t(c,{label:"密码",prop:"password"},{default:r(()=>[t(g,{type:"password",autocomplete:"off",modelValue:l.value.password,"onUpdate:modelValue":e[4]||(e[4]=a=>l.value.password=a),maxlength:20,clearable:"",placeholder:l.value.id?"不修改请留空":"6-20位数字、英文字母,或者特殊字符"},null,8,["modelValue","placeholder"])]),_:1}),t(c,{label:"所属角色",prop:"role_id"},{default:r(()=>[t(N,{modelValue:l.value.role_id,"onUpdate:modelValue":e[5]||(e[5]=a=>l.value.role_id=a),disabled:l.value.founder===1,placeholder:l.value.founder===1?"超级管理员无须选择角色":"请选择角色",clearable:""},{default:r(()=>[(_(!0),S(T,null,$(I.value,a=>(_(),b(F,{key:a.role_id,label:a.role_name,value:a.role_id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","disabled","placeholder"])]),_:1}),t(c,{label:"所属部门",prop:"dept_id"},{default:r(()=>[t(ae,{modelValue:l.value.dept_id,"onUpdate:modelValue":e[6]||(e[6]=a=>l.value.dept_id=a),options:U.value,props:{label:"name",value:"id",emitPath:!1,checkStrictly:!0},clearable:""},null,8,["modelValue","options"])]),_:1}),t(c,{label:"所属岗位",prop:"post_id"},{default:r(()=>[t(N,{modelValue:l.value.post_id,"onUpdate:modelValue":e[7]||(e[7]=a=>l.value.post_id=a)},{default:r(()=>[(_(!0),S(T,null,$(D.value,a=>(_(),b(F,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["title","modelValue"])])}}}),Ee=be(we,[["__scopeId","data-v-74c9e720"]]);export{Ee as default};
|