petstore-frontend/dist/build/h5/assets/pages-mine-Profile.DCcNMmIP.js
2026-04-12 22:57:48 +08:00

2 lines
7.6 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import{p as e,r as a,m as l,q as s,u as n,o,c as t,d as i,w as u,v as c,x as p,b as d,t as r,z as v,e as m,f,L as h,M as g,N as b,O as k,j as _,k as y,g as x,A as C,h as w,C as V,I as z,i as I}from"./index-DrZc8biM.js";import{A as j}from"./AppIcon.M7CZvvJr.js";import{_ as A,n as B}from"./_plugin-vue_export-helper.2L545UbL.js";import{B as U,i as M,p as P,s as $}from"./index.DsJtDI4O.js";const N=A({__name:"Profile",emits:["change-page"],setup(A,{emit:N}){const O=(()=>{var a,l;const s=(null==(a=e)?void 0:a().statusBarHeight)||20;let n=s+44;const o=null==(l=uni.getMenuButtonBoundingClientRect)?void 0:l.call(uni);if(o&&o.top&&o.height){n=s+2*Math.max(o.top-s,4)+o.height}return`padding-top:${s}px;height:${n}px;`})(),q=a(l()),F=a(!1),H=a(!1),J=a(!1),L=a(!1),R=a(0);let S=null;const D=a({name:"",phone:"",code:""}),E=s(()=>q.value.name?q.value.name.slice(0,1).toUpperCase():"?"),G=["#ff7c43","#07c160","#8b6914","#e06040","#5090d0"],K=s(()=>{var e;const a=((null==(e=q.value.name)?void 0:e.charCodeAt(0))||0)%G.length;return{background:G[a]}}),Q=async()=>{const e=D.value.phone;if(!e||11!==e.length)return void _({title:"请输入正确的手机号",icon:"none"});const a=await $(e);200===a.code?(_({title:"验证码已发送",icon:"none"}),R.value=60,S=setInterval(()=>{R.value--,R.value<=0&&clearInterval(S)},1e3)):_({title:a.message||"发送失败",icon:"none"})},T=async()=>{if(!D.value.name||!D.value.name.trim())return void _({title:"请输入姓名",icon:"none"});J.value=!0;const e=await P({id:q.value.id,name:D.value.name.trim()});J.value=!1,200===e.code?(q.value.name=D.value.name.trim(),y(q.value),_({title:"修改成功",icon:"success"}),F.value=!1):_({title:e.message||"修改失败",icon:"none"})},W=async()=>{const{phone:e,code:a}=D.value;if(!e||11!==e.length)return void _({title:"请输入正确的手机号",icon:"none"});if(!a||6!==a.length)return void _({title:"请输入6位验证码",icon:"none"});L.value=!0;const l=await P({id:q.value.id,phone:e,code:a});L.value=!1,200===l.code?(q.value.phone=e,y(q.value),_({title:"修改成功",icon:"success"}),H.value=!1):_({title:l.message||"修改失败",icon:"none"})},X=()=>{h({count:1,success:async e=>{const a=e.tempFilePaths[0];g({title:"上传中..."}),b({url:`${U}/upload/image`,filePath:a,name:"file",success:async e=>{k();const a=JSON.parse(e.data);if(200===a.code){const e=M(a.data.url),l=await P({id:q.value.id,avatar:a.data.url});200===l.code?(q.value.avatar=e,y(q.value),_({title:"头像已更新",icon:"success"})):_({title:l.message||"更新失败",icon:"none"})}else _({title:a.message||"上传失败",icon:"none"})},fail:()=>{k(),_({title:"上传失败",icon:"none"})}})}})};return n(()=>{D.value.name=q.value.name||"",D.value.phone=q.value.phone||""}),o(()=>{S&&clearInterval(S)}),(e,a)=>{const l=C,s=f,n=z,o=I;return x(),t("div",{class:"page-shell profile-page"},[i(s,{class:"profile-nav nav-gradient",style:c(p(O))},{default:u(()=>[i(l,{class:"nav-back",onClick:a[0]||(a[0]=e=>p(B)("mine"))},{default:u(()=>[i(j,{name:"back",size:18,color:"#ffffff"})]),_:1}),i(l,{class:"nav-title"},{default:u(()=>[w("个人信息")]),_:1}),i(s,{class:"nav-placeholder"})]),_:1},8,["style"]),d("div",{class:"profile-hero"},[d("div",{class:"hero-main-row"},[d("div",{class:"avatar-wrap",onClick:X},[q.value.avatar?(x(),t("img",{key:0,src:p(M)(q.value.avatar),class:"avatar-img"},null,8,["src"])):(x(),t("div",{key:1,class:"avatar-placeholder",style:c(K.value)},[d("span",{class:"avatar-initials"},r(E.value),1)],4)),d("div",{class:"avatar-badge","aria-hidden":"true"},[i(j,{name:"camera",size:12,color:"#64748b"})])]),d("div",{class:"hero-text"},[d("div",{class:"hero-name text-title"},r(q.value.name||"未设置姓名"),1),d("div",{class:"hero-phone text-sub"},r(q.value.phone||"未绑定手机号"),1),d("div",{class:"hero-tags"},["boss"===q.value.role?(x(),t("span",{key:0,class:"role-pill hero-role"},"店长")):(x(),t("span",{key:1,class:"role-pill hero-role role-staff"},"员工"))])])]),d("div",{class:"hero-hint text-sub"},"点击左侧头像可更换照片")]),d("div",{class:"menu-section"},[d("div",{class:"menu-card"},[d("div",{class:"menu-title"},"资料与账号"),d("div",{class:"menu-item",onClick:a[1]||(a[1]=e=>F.value=!0)},[d("div",{class:"menu-left"},[d("span",{class:"menu-icon"},[i(j,{name:"profile",size:15})]),d("span",{class:"menu-text"},"姓名")]),d("div",{class:"menu-right"},[d("span",{class:"menu-value"},r(q.value.name||"未设置"),1),d("span",{class:"menu-arrow"},"")])]),d("div",{class:"menu-item",onClick:a[2]||(a[2]=e=>H.value=!0)},[d("div",{class:"menu-left"},[d("span",{class:"menu-icon"},[i(j,{name:"orders",size:15})]),d("span",{class:"menu-text"},"手机号")]),d("div",{class:"menu-right"},[d("span",{class:"menu-value"},r(q.value.phone||"未设置"),1),d("span",{class:"menu-arrow"},"")])]),d("div",{class:"menu-item menu-item-static"},[d("div",{class:"menu-left"},[d("span",{class:"menu-icon"},[i(j,{name:"mine",size:15})]),d("span",{class:"menu-text"},"角色")]),d("div",{class:"menu-right"},["boss"===q.value.role?(x(),t("span",{key:0,class:"role-pill role-pill-compact"},"店长")):(x(),t("span",{key:1,class:"role-pill role-pill-compact role-staff"},"员工"))])])])]),d("div",{class:"footer-tip"},"宠伴生活馆 · "+r("boss"===q.value.role?"商家版":"员工版"),1),F.value?(x(),v(s,{key:0,class:"popup-mask profile-popup-mask",onClick:a[6]||(a[6]=e=>F.value=!1)},{default:u(()=>[i(s,{class:"popup-content profile-popup-sheet",onClick:a[5]||(a[5]=V(()=>{},["stop"]))},{default:u(()=>[i(s,{class:"popup-header"},{default:u(()=>[i(l,{class:"popup-title"},{default:u(()=>[w("修改姓名")]),_:1}),i(s,{class:"popup-close",onClick:a[3]||(a[3]=e=>F.value=!1)},{default:u(()=>[i(j,{name:"close",size:18,color:"#94a3b8"})]),_:1})]),_:1}),i(s,{class:"popup-body"},{default:u(()=>[i(s,{class:"field-label"},{default:u(()=>[w("姓名")]),_:1}),i(n,{modelValue:D.value.name,"onUpdate:modelValue":a[4]||(a[4]=e=>D.value.name=e),class:"van-field",placeholder:"请输入姓名"},null,8,["modelValue"])]),_:1}),i(s,{class:"popup-footer profile-popup-footer"},{default:u(()=>[i(o,{class:"van-button van-button--block van-button--primary",loading:J.value,onClick:T},{default:u(()=>[w("保存")]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1})):m("",!0),H.value?(x(),v(s,{key:1,class:"popup-mask profile-popup-mask",onClick:a[11]||(a[11]=e=>H.value=!1)},{default:u(()=>[i(s,{class:"popup-content profile-popup-sheet",onClick:a[10]||(a[10]=V(()=>{},["stop"]))},{default:u(()=>[i(s,{class:"popup-header"},{default:u(()=>[i(l,{class:"popup-title"},{default:u(()=>[w("修改手机号")]),_:1}),i(s,{class:"popup-close",onClick:a[7]||(a[7]=e=>H.value=!1)},{default:u(()=>[i(j,{name:"close",size:18,color:"#94a3b8"})]),_:1})]),_:1}),i(s,{class:"popup-body"},{default:u(()=>[i(s,{class:"field-label"},{default:u(()=>[w("新手机号")]),_:1}),i(n,{modelValue:D.value.phone,"onUpdate:modelValue":a[8]||(a[8]=e=>D.value.phone=e),type:"tel",class:"van-field",placeholder:"请输入手机号",maxlength:"11"},null,8,["modelValue"]),i(s,{class:"field-label field-label-gap"},{default:u(()=>[w("验证码")]),_:1}),i(s,{class:"sms-row"},{default:u(()=>[i(n,{modelValue:D.value.code,"onUpdate:modelValue":a[9]||(a[9]=e=>D.value.code=e),type:"digit",class:"van-field sms-input",placeholder:"请输入验证码",maxlength:"6"},null,8,["modelValue"]),i(o,{class:"van-button van-button--small",disabled:R.value>0,onClick:Q},{default:u(()=>[w(r(R.value>0?R.value+"s":"获取验证码"),1)]),_:1},8,["disabled"])]),_:1})]),_:1}),i(s,{class:"popup-footer profile-popup-footer"},{default:u(()=>[i(o,{class:"van-button van-button--block van-button--primary",loading:L.value,onClick:W},{default:u(()=>[w("保存")]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1})):m("",!0)])}}},[["__scopeId","data-v-2268527d"]]);export{N as default};