Files
----/后端源码/yifan.action-ai.cn/index/js/profile.B9s1id9G.js

2 lines
9.7 KiB
JavaScript

import{U as e,V as a,T as l,a0 as s,a1 as r,h as o,a2 as t,r as d,s as i,a3 as n,a4 as u,i as p,a5 as m,a6 as c,w as f,x as _,y as g,P as w,E as v,a as y,C as b,Q as h}from"./element-plus.BfMFfVUv.js";import{f as x,j as V,U,k,r as j}from"./index.CjKO7M_A.js";import{J as C,e9 as P,t as q,_ as z,$ as R,a0 as E,ak as M,S as O,o as S,a1 as A,T as F,z as I,aa as L,a9 as T,a2 as D,H as Z,ay as $,r as B,j as H,n as J,aO as K}from"./.pnpm.BudmgPu7.js";import{_ as Q}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./codemirror.BdleaLZh.js";const W={class:"app-container"},G={class:"user-info-header"},N={class:"avatar-alert mb-10px"},X={class:"avatar-wrapper"},Y={class:"user-name"},ee={class:"cell-item"},ae={class:"cell-item"},le={class:"cell-item"},se={class:"cell-item"},re={class:"cell-item"},oe={class:"cell-item"},te=Q(C({__name:"profile",setup(C){const{t:Q}=P(),te=x(),de=V(),ie=B(),ne=B(),ue=B(!1),pe=H(()=>de.dictData),me=B("default"),ce=H(()=>({marginRight:{large:"8px",default:"6px",small:"4px"}[me.value||"default"]})),fe=B(!1),_e=B(!1),ge=M({name:void 0,gender:1,mobile:void 0,email:void 0,username:void 0,dept_name:void 0,dept:{},positions:[],roles:[],avatar:void 0,created_time:void 0}),we=M({old_password:"",new_password:"",confirm_password:""}),ve=B([]),ye=B(),be=e=>{const a=e.type.startsWith("image/"),l=e.size/1024/1024<2;return a?!!l||(v.error("上传图片大小不能超过 2MB!"),!1):(v.error("只能上传图片文件"),!1)},he=async e=>{try{const a=e.file,l=new FormData;l.append("file",a);const s=await U.uploadCurrentUserAvatar(l);if(0===s.data.code&&s.data.data){const a=s.data.data.file_url;Ve(a),e.onSuccess(s),ye.value&&ye.value.clearFiles(),ve.value=[]}else{const a=s.data.msg||"上传失败";v.error(a),e.onError({...new Error(a),status:s.status||500,method:"POST",url:"/system/user/current/avatar/upload"})}}catch(a){v.error("头像上传失败,请重试");const l=a instanceof Error?a:new Error(String(a));e.onError({...l,status:500,method:"POST",url:"/system/user/current/avatar/upload"})}},xe=(e,a)=>{e&&(ve.value=[...a],ye.value&&ye.value.submit())},Ve=e=>{e?(ge.avatar=e,J(()=>{})):v.error("无效的头像URL")},Ue={name:[{required:!0,message:"请输入用户名",trigger:"blur"}],mobile:[{pattern:/^1[3-9]\d{9}$/,message:"请输入有效的手机号格式",trigger:"blur"}],email:[{pattern:/\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}/,message:"请输入有效的邮箱格式",trigger:"blur"}]},ke={old_password:[{required:!0,trigger:"blur",message:Q("login.password")}],new_password:[{required:!0,trigger:"blur",message:Q("login.message.password.required")},{min:6,message:Q("login.message.password.min"),trigger:"blur"}],confirm_password:[{required:!0,trigger:"blur",message:Q("login.message.password.required")},{min:6,message:Q("login.message.password.min"),trigger:"blur"},{validator:(e,a)=>a===we.new_password,trigger:"blur",message:Q("login.message.password.inconformity")}]},je=async()=>{var e;try{_e.value=!0;if(!(await(null==(e=ie.value)?void 0:e.validate().catch(()=>!1))))return;const a=await U.updateCurrentUserInfo({...ge});await te.setUserInfo(a.data.data),v.success("个人资料已保存")}finally{_e.value=!1}},Ce=async()=>{var e;try{fe.value=!0;if(!(await(null==(e=ne.value)?void 0:e.validate().catch(()=>!1))))return;const a=await U.changeCurrentUserPassword(we);Object.assign(we,{old_password:"",new_password:"",confirm_password:""}),await async function(e="请重新登录"){try{y({title:"提示",message:e,type:"warning",duration:3e3}),await k().resetAllState();const a=j.currentRoute.value.fullPath;await j.push(`/login?redirect=${encodeURIComponent(a)}`)}catch(a){}}(a.data.msg)}catch(a){}finally{fe.value=!1}};return q(async()=>{await(async()=>await de.getDict(["sys_user_sex"]))(),(()=>{const e=te.basicInfo;Object.assign(ge,{...e})})()}),(v,y)=>{const x=s,V=b,U=o,k=r,j=d,C=i,P=K("User"),q=p,M=u,B=K("Coordinate"),H=K("OfficeBuilding"),J=K("Phone"),te=K("Message"),de=K("Clock"),me=n,Ve=l,Pe=a,qe=g,ze=_,Re=h,Ee=w,Me=f,Oe=c,Se=K("Lock"),Ae=K("Key"),Fe=K("Check"),Ie=m,Le=e;return O(),z("div",W,[R(Le,{gutter:12},{default:E(()=>[R(Pe,{span:6,class:"mb-4"},{default:E(()=>[R(Ve,{loading:S(ue),shadow:"hover"},{header:E(()=>[...y[8]||(y[8]=[A("div",{class:"card-header"},[A("span",null,"基本信息")],-1)])]),default:E(()=>[A("div",G,[A("div",N,[R(x,{type:"info","show-icon":"",closable:!1,title:"头像上传,点击“保存更改”按钮使其生效"})]),A("div",X,[S(ge).avatar?(O(),F(V,{key:0,src:S(ge).avatar,size:120},null,8,["src"])):(O(),F(V,{key:1,icon:"UserFilled",size:120})),R(k,{ref_key:"uploadRef",ref:ye,"file-list":S(ve),"onUpdate:fileList":y[0]||(y[0]=e=>I(ve)?ve.value=e:null),class:"el-upload",name:"file","show-file-list":!1,"before-upload":be,"http-request":he,disabled:S(ue),limit:1,"auto-upload":!1,onChange:xe},{trigger:E(()=>[R(U,{type:"primary",icon:S(t),class:"upload-trigger"},null,8,["icon"])]),_:1},8,["file-list","disabled"])]),A("span",Y,L(S(ge).name),1),R(j,null,{default:E(()=>{var e;return[T(L(null==(e=S(ge).roles)?void 0:e.map(e=>e.name).join("、")),1)]}),_:1})]),R(C),R(me,{column:1,border:""},{default:E(()=>[R(M,null,{label:E(()=>[A("div",ee,[R(q,{style:D(S(ce))},{default:E(()=>[R(P)]),_:1},8,["style"]),y[9]||(y[9]=A("span",null,"账号",-1))])]),default:E(()=>[A("span",null,L(S(ge).username),1)]),_:1}),R(M,null,{label:E(()=>[A("div",ae,[R(q,{style:D(S(ce))},{default:E(()=>[R(B)]),_:1},8,["style"]),y[10]||(y[10]=A("span",null,"部门",-1))])]),default:E(()=>{var e;return[A("span",null,L(null==(e=S(ge).dept)?void 0:e.name),1)]}),_:1}),R(M,null,{label:E(()=>[A("div",le,[R(q,{style:D(S(ce))},{default:E(()=>[R(H)]),_:1},8,["style"]),y[11]||(y[11]=A("span",null,"岗位",-1))])]),default:E(()=>{var e;return[A("span",null,L(null==(e=S(ge).positions)?void 0:e.map(e=>e.name).join("、")),1)]}),_:1}),R(M,null,{label:E(()=>[A("div",se,[R(q,{style:D(S(ce))},{default:E(()=>[R(J)]),_:1},8,["style"]),y[12]||(y[12]=A("span",null,"手机",-1))])]),default:E(()=>[A("span",null,L(S(ge).mobile),1)]),_:1}),R(M,null,{label:E(()=>[A("div",re,[R(q,{style:D(S(ce))},{default:E(()=>[R(te)]),_:1},8,["style"]),y[13]||(y[13]=A("span",null,"邮箱",-1))])]),default:E(()=>[A("span",null,L(S(ge).email),1)]),_:1}),R(M,null,{label:E(()=>[A("div",oe,[R(q,{style:D(S(ce))},{default:E(()=>[R(de)]),_:1},8,["style"]),y[14]||(y[14]=A("span",null,"加入时间",-1))])]),default:E(()=>[A("span",null,L(S(ge).created_time),1)]),_:1})]),_:1})]),_:1},8,["loading"])]),_:1}),R(Pe,{span:18,class:"mb-4"},{default:E(()=>[R(Ve,{loading:S(ue),shadow:"hover"},{default:E(()=>[R(Ie,{type:"border-card"},{default:E(()=>[R(Oe,null,{label:E(()=>[R(q,null,{default:E(()=>[R(P)]),_:1}),y[15]||(y[15]=A("span",null,"基本设置",-1))]),default:E(()=>[A("div",null,[R(Me,{ref_key:"infoFormRef",ref:ie,model:S(ge),rules:Ue,"label-width":"80px","label-suffix":":"},{default:E(()=>[R(ze,{label:"用户名",prop:"name"},{default:E(()=>[R(qe,{modelValue:S(ge).name,"onUpdate:modelValue":y[1]||(y[1]=e=>S(ge).name=e),placeholder:"请输入用户名","prefix-icon":"User",clearable:"",style:{width:"240px"}},null,8,["modelValue"])]),_:1}),R(ze,{label:"手机号",prop:"mobile"},{default:E(()=>[R(qe,{modelValue:S(ge).mobile,"onUpdate:modelValue":y[2]||(y[2]=e=>S(ge).mobile=e),placeholder:"请输入手机号码","prefix-icon":"Phone",clearable:"",style:{width:"240px"}},null,8,["modelValue"])]),_:1}),R(ze,{label:"邮箱",prop:"email"},{default:E(()=>[R(qe,{modelValue:S(ge).email,"onUpdate:modelValue":y[3]||(y[3]=e=>S(ge).email=e),placeholder:"请输入邮箱","prefix-icon":"Message",clearable:"",style:{width:"240px"}},null,8,["modelValue"])]),_:1}),R(ze,{label:"性别",prop:"gender"},{default:E(()=>[R(Ee,{modelValue:S(ge).gender,"onUpdate:modelValue":y[4]||(y[4]=e=>S(ge).gender=e)},{default:E(()=>[(O(!0),z(Z,null,$(S(pe).sys_user_sex,e=>(O(),F(Re,{key:e.dict_value,value:e.dict_value},{default:E(()=>[T(L(e.dict_label),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue"])]),_:1}),R(ze,null,{default:E(()=>[R(U,{type:"primary",loading:S(_e),icon:"edit",onClick:je},{default:E(()=>[...y[16]||(y[16]=[T(" 保存更改 ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"])])]),_:1}),R(Oe,null,{label:E(()=>[R(q,null,{default:E(()=>[R(Se)]),_:1}),y[17]||(y[17]=A("span",null,"安全设置",-1))]),default:E(()=>[A("div",null,[R(Me,{ref_key:"passwordFormRef",ref:ne,model:S(we),rules:ke,"label-width":"120px","label-suffix":":"},{default:E(()=>[R(ze,{label:"当前密码",prop:"old_password"},{default:E(()=>[R(qe,{modelValue:S(we).old_password,"onUpdate:modelValue":y[5]||(y[5]=e=>S(we).old_password=e),modelModifiers:{trim:!0},placeholder:S(Q)("login.password"),type:"password","prefix-icon":"Unlock","show-password":"",clearable:"",style:{width:"240px"}},{prefix:E(()=>[R(Se)]),_:1},8,["modelValue","placeholder"])]),_:1}),R(ze,{label:"新密码",prop:"new_password"},{default:E(()=>[R(qe,{modelValue:S(we).new_password,"onUpdate:modelValue":y[6]||(y[6]=e=>S(we).new_password=e),modelModifiers:{trim:!0},type:"password",placeholder:S(Q)("login.newPassword"),"prefix-icon":"Unlock","show-password":"",clearable:"",style:{width:"240px"}},{prefix:E(()=>[R(Ae)]),_:1},8,["modelValue","placeholder"])]),_:1}),R(ze,{label:"确认新密码",prop:"confirm_password"},{default:E(()=>[R(qe,{modelValue:S(we).confirm_password,"onUpdate:modelValue":y[7]||(y[7]=e=>S(we).confirm_password=e),modelModifiers:{trim:!0},type:"password",placeholder:S(Q)("login.message.password.confirm"),"prefix-icon":"Lock","show-password":"",clearable:"",style:{width:"240px"}},{prefix:E(()=>[R(Fe)]),_:1},8,["modelValue","placeholder"])]),_:1}),R(ze,null,{default:E(()=>[R(U,{type:"primary",loading:S(fe),icon:"edit",onClick:Ce},{default:E(()=>[...y[18]||(y[18]=[T(" 更新密码 ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"])])]),_:1})]),_:1})]),_:1},8,["loading"])]),_:1})]),_:1})])}}}),[["__scopeId","data-v-05cb52ed"]]);export{te as default};