PageSourceSearch

https://filev3.cqvip.com/we-research/43/_nuxt/DhIYp-3T.js

js cqvip.com collected 2026-10-02 02:56:24 UTC 12,963 bytes, 1 lines download raw bytes

1import{d as Be,u as Ie,a as ze,O as Oe,x as Le,s as u,c as U,P as Z,J as $e,y as De,H as Ke,e as y,f as d,g as o,n as h,l as t,bT as We,F as x,r as me,K as O,t as L,j as $,w as n,h as l,by as Ge,aB as Ye,L as pe,z as Ze,i as g,bM as ce,N as ve,M as fe,bB as He,Z as je,bU as Je,bN as Xe,bO as Qe,bV as et,bW as be,bX as tt,C as at,aY as ot,bY as lt,G as st}from"./BkVbg4ZN.js";import{E as rt,b as nt}from"./OT_tFUnm.js";import"./ojUmzPQi.js";import"./DwmBe6VN.js";import"./DxwpsdTN.js";import"./DCWxsGkL.js";const it={class:"recover-page"},ut={class:"recover-shell"},dt={class:"recover-tabs"},mt={class:"recover-panel"},pt={class:"recover-brand"},ct=["src"],vt={class:"recover-steps"},ft={class:"yx-center min-w-0 flex-1"},bt={class:"recover-actions"},yt={class:"login-code-row"},gt=["disabled"],wt={class:"recover-actions is-pair"},Vt={class:"recover-actions is-pair"},_t={class:"recover-actions"},Ct={key:1,class:"recover-mail-tip"},Nt={key:0,class:"m-0 text-center text-[1.4rem] text-[#c64a4a]"},Rt={class:"recover-actions"}
1,D=60,St=Be({__name:"recover",setup(kt){Ie({title:"忘记密码"});const H=/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^A-Za-z\d]).{8,}$/,ye=/^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$/,ge=["填写手机号","验证身份","设置新密码"],we=["填写邮箱","发送链接","设置新密码"],N=ze(),Ve=Oe(),{$message:V}=Le(),B=u(),j=u(),J=u(),X=u(null),Q=u(null),_=U(()=>String(N.query.code||N.query.sign||"")),v=u(_.value||N.query.type==="email"?"email":"phone"),f=u(1),p=u(_.value?3:1),R=u(!1),K=u(!1),W=u(!1),S=u(""),M=u([]),b=u(!1),k=u(""),C=u(!0),q=u(D),r=Z({mobileNumber:"",mobileCode:"",password:"",repassword:""}),A=Z({email:""}),m=Z({userName:"",password:"",repassword:""});let P=null;const _e=U(()=>String(N.query.appCode||110)),Ce=U(()=>String(N.query.serve||N.query.returnUrl||"")),ee=U(()=>v.value==="phone"?ge:we),I=U(()=>v.value==="phone"?f.value:p.value);function w(s,e){Ve.replace({query:{...N.query,type:s,step:String(e)}})}const Ne=(s,e,i)=>{if(!e){i(new Error("手机号不能为空"));return}if(!Number.isInteger(+e)||!/^1[0-9]{10}$/.test(String(e))){i(new Error("手机号格式不正确"));return}i()};function te(s){return(e,i,c)=>{if(!i){c(new Error("请再次输入密码"));return}if(i!==s()){c(new Error("两次输入密码不一致!"));return}c()}}const Re={mobileNumber:[{required:!0,validator:Ne,trigger:"blur"}],mobileCode:[{min:6,required:!0,message:"验证码不能为空",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{pattern:H,message:"密码必须至少8位,包含大小写字母、数字和特殊字符"}],repassword:[{required:!0,validator:te(()=>r.password),trigger:"blur"}]},Se={email:[{required:!0,message:"请填入正确的邮箱号",pattern:ye,trigger:"blur"}]},ke={userName:[{required:!0,message:"请选择账号",trigger:"change"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{pattern:H,message:"密码必须至少8位,包含大小写字母、数字和特殊字符"}],repassword:[{required:!0,validator:te(()=>m.password),trigger:"blur"}]};$e(()=>{z()});const ae=()=>{je("/chat",{dialog:"login"})};function F(){k.value="",b.value=!1,X.value?.reset(),Q.value?.reset()}function G(){k.value="",b.value=!1}function z(){P&&(clearInterval(P),P=null)}function Ee(){q.value=D,C.value=!1,P=ot(()=>{q.value-=1,!(q.value>0)&&(z(),C.value=!0)},1e3)}function oe(s){if(v.value!==s){if(G(),v.value=s,s==="email"&&_.value){p.value=3,w("email",3);return}f.value=1,p.value=1,w(s,1),r.mobileCode="",r.password="",r.repassword="",C.value=!0,q.value=D,z()}}function le(s,e){const i=e.replace(/[\u4E00-\u9FA5]/g,"");if(i!==e){s.password=i,V.warning("密码中不能包含中文字符");return}s.password=e}function se(s){k.value=s,b.value=!1,v.value==="phone"&&f.value===2&&ie()}function re(){V.success("修改密码成功"),ae()}async function ne(){if(await B.value?.validateField("mobileNumber").then(()=>!0).catch(()=>!1)){R.value=!0;try{if(await Je({mobileNumber:r.mobileNumber})===!1){V.error("该手机号未注册");return}f.value=2,w("phone",2)}finally{R.value=!1}}}async function he(){if(!(!C.value||P)){if(!r.mobileNumber){V.warning("请先输入正确的手机号");return}if(!k.value){b.value=!0;return}await ie()}}async function ie(){if(!P){try{await Xe({mobileNumber:r.mobileNumber,captchaVerifyParam:k.value,sendType:Qe.FORGET_PASSWORD})}catch{F();return}Ee()}}async function xe(){await B.value?.validateField("mobileCode").then(()=>!0).catch(()=>!1)&&(f.value=3,w("phone",3),G())}async function qe(){if(await B.value?.validate().catch(()=>!1)){R.value=!0;try{await et({mobileNumber:r.mobileNumber,mobileCode:r.mobileCode,password:window.btoa(r.password)}),re()}finally{R.value=!1}}}function ue(){f.value<=1||(f.value=f.value-1,w("phone",f.value),f.value===1&&(r.mobileCode="",z(),C.value=!0,q.value=D),G())}async function de(){if(await j.value?.validate().catch(()=>!1)){if(!k.value){b.value=!0;return}K.value=!0;try{if(await be({email:A.email})===!1){V.error("发送重置邮件失败"),F();return}p.value=2,w("email",2)}catch{F()}finally{K.value=!1}}}async function Pe(){if(!k.value){p.value=1,w("email",1),b.value=!0,V.warning("请先完成验签");return}try{if(await be({email:A.email})===!1){V.error("发送重置邮件失败"),p.value=1,w("email",1),F();return}V.success("发送成功")}catch{p.value=1,w("email",1),F()}}async function Me(){if(S.value="",!_.value){S.value="重置链接无效,请重新申请邮件重置";return}try{const s=await lt({code:_.value});if(M.value=Array.isArray(s)?s:[],!M.value.length){S.value="未找到可重置账号,请重新申请邮件重置";return}M.value.length===1&&(m.userName=M.value[0]??"")}catch{S.value="重置链接已失效,请重新申请邮件重置"}}async function Ae(){if(await J.value?.validate().catch(()=>!1)){if(!_.value){V.warning("缺少邮件验证码");return}W.value=!0;try{await tt({userName:m.userName,code:_.value,password:window.btoa(m.password)}),re()}finally{W.value=!1}}}function Fe(){p.value=1,S.value="",m.userName="",m.password="",m.repassword="",at({path:"/account/recover",query:{type:"email",step:"1",serve:Ce.value||void 0,appCode:_e.value},replace:!0})}return De(_,s=>{s&&(v.value="email",p.value=3,Me())},{immediate:!0}),Ke(()=>{w(v.value,I.value)}),(s,e)=>{const i=Ye,c=Ge,E=Ze,Y=He,Te=nt,Ue=rt;return d(),y("div",it,[o("div",ut,[o("div",dt,[o("button",{type:"button",class:h(["recover-tab",{"is-active":t(v)==="phone"}]),onClick:e[0]||(e[0]=a=>oe("phone"))}," 手机号找回 ",2),o("button",{type:"button",class:h(["recover-tab is-second",{"is-active":t(v)==="email"}]),onClick:e[1]||(e[1]=a=>oe("email"))}," 邮箱找回 ",2)]),o("div",mt,[o("div",pt,[o("img",{src:t(We),alt:"",class:"w-[10rem]"},null,8,ct),e[16]||(e[16]=o("span",{class:"ml-1 text-[3rem] font-bold tracking-[2px] text-533"}," 汇研 ",-1))]),o("div",vt,[(d(!0),y(x,null,me(t(ee),(a,T)=>(d(),y("div",{key:a,class:"recover-step"},[o("div",ft,[o("div",{class:h(["xy-center size-[3.2rem] rounded-full text-[1.4rem] font-medium",t(I)>=T+1?"bg-app-accent text-white":"bg-[#eceff2] text-8b9"])},L(T+1),3),o("span",{class:h(["mt-[0.8rem] text-[1.4rem]",t(I)>=T+1?"text-533":"text-8b9"])},L(a),3)]),T<t(ee).length-1?(d(),y("div",{key:0,class:h(["recover-step-line",{"is-done":t(I)>T+1}])},null,2)):O("",!0)]))),128))]),o("div",{class:h(["recover-body",{"is-wide":t(v)==="email"&&t(p)===2}])},[t(v)==="phone"?(d(),$(Y,{key:0,ref_key:"phoneFormRef",ref:B,class:"login-form",model:t(r),rules:Re,onSubmit:e[8]||(e[8]=fe(()=>{},["prevent"]))},{default:n(()=>[t(f)===1?(d(),y(x,{key:0},[l(c,{prop:"mobileNumber"},{default:n(()=>[l(i,{modelValue:t(r).mobileNumber,"onUpdate:modelValue":e[2]||(e[2]=a=>t(r).mobileNumber=a),modelModifiers:{trim:!0},placeholder:"请输入手机号",onKeyup:pe(ne,["enter"])},null,8,["modelValue"])]),_:1}),o("div",bt,[l(E,{type:"primary",class:"login-submit",loading:t(R),onClick:ne},{default:n(()=>[...e[17]||(e[17]=[g(" 下一步 ",-1)])]),_:1},8,["loading"])])],64)):t(f)===2?(d(),y(x,{key:1},[l(c,null,{default:n(()=>[l(ce,{ref_key:"phoneValidationRef",ref:X,modelValue:t(b),"onUpdate:modelValue":e[3]||(e[3]=a=>ve(b)?b.value=a:null),"base-label":"忘记密码",onVerify:se},null,8,["modelValue"])]),_:1}),l(c,{prop:"mobileCode"},{default:n(()=>[o("div",yt,[l(i,{modelValue:t(r).mobileCode,"onUpdate:modelValue":e[4]||(e[4]=a=>t(r).mobileCode=a),modelModifiers:{trim:!0},placeholder:"请输入短信验证码"},null,8,["modelValue"]),o("button",{type:"button",class:h(["login-code-action",t(C)?"is-ready":"is-wait"]),disabled:!t(C),onClick:he},L(t(C)?"获取验证码":`${t(q)} s后重发`),11,gt)])]),_:1}),o("div",wt,[l(E,{class:"login-submit",onClick:ue},{default:n(()=>[...e[18]||(e[18]=[g(" 返回上一步 ",-1)])]),_:1}),l(E,{type:"primary",class:"login-submit",loading:t(R),onClick:xe},{default:n(()=>[...e[19]||(e[19]=[g(" 下一步 ",-1)])]),_:1},8,["loading"])])],64)):(d(),y(x,{key:2},[l(c,{prop:"password"},{default:n(()=>[l(i,{modelValue:t(r).password,"onUpdate:modelValue":e[5]||(e[5]=a=>t(r).password=a),modelModifiers:{trim:!0}
1,placeholder:"密码必须至少8位,包含大小写字母、数字和特殊字符","show-password":"",type:"password",onInput:e[6]||(e[6]=a=>le(t(r),a))},null,8,["modelValue"])]),_:1}),l(c,{prop:"repassword"},{default:n(()=>[l(i,{modelValue:t(r).repassword,"onUpdate:modelValue":e[7]||(e[7]=a=>t(r).repassword=a),placeholder:"请再次输入密码","show-password":"",type:"password"},null,8,["modelValue"])]),_:1}),o("div",Vt,[l(E,{class:"login-submit",onClick:ue},{default:n(()=>[...e[20]||(e[20]=[g(" 返回上一步 ",-1)])]),_:1}),l(E,{type:"primary",class:"login-submit",loading:t(R),onClick:qe},{default:n(()=>[...e[21]||(e[21]=[g(" 确认 ",-1)])]),_:1},8,["loading"])])],64))]),_:1},8,["model"])):t(p)!==3?(d(),$(Y,{key:1,ref_key:"emailFormRef",ref:j,class:"login-form",model:t(A),rules:Se,onSubmit:e[11]||(e[11]=fe(()=>{},["prevent"]))},{default:n(()=>[t(p)===1?(d(),y(x,{key:0},[l(c,{prop:"email"},{default:n(()=>[l(i,{modelValue:t(A).email,"onUpdate:modelValue":e[9]||(e[9]=a=>t(A).email=a),modelModifiers:{trim:!0},placeholder:"请输入邮箱",onKeyup:pe(de,["enter"])},null,8,["modelValue"])]),_:1}),l(c,null,{default:n(()=>[l(ce,{ref_key:"emailValidationRef",ref:Q,modelValue:t(b),"onUpdate:modelValue":e[10]||(e[10]=a=>ve(b)?b.value=a:null),"base-label":"忘记密码",onVerify:se},null,8,["modelValue"])]),_:1}),o("div",_t,[l(E,{type:"primary",class:"login-submit",loading:t(K),onClick:de},{default:n(()=>[...e[22]||(e[22]=[g(" 下一步 ",-1)])]),_:1},8,["loading"])])],64)):t(p)===2?(d(),y("div",Ct,[o("p",{class:"m-0"},[e[23]||(e[23]=g(" 请到邮箱查阅来自维普网的邮件,点击邮件中的链接重设你的密码。如未能收到邮件请点 ",-1)),o("button",{type:"button",class:"pointer border-0 bg-transparent p-0 text-app-accent",onClick:Pe}," 重新发送 "),e[24]||(e[24]=g(" 。 ",-1))]),e[25]||(e[25]=o("p",{class:"mt-[1.2rem] mb-0"}," 邮件链接有效期为 1 个小时,请及时点击。 ",-1)),e[26]||(e[26]=o("p",{class:"mt-[1.2rem] mb-0"},[g(" 如果已经尝试多次,仍然无法收到邮件,请联系客服邮箱: "),o("a",{class:"text-app-accent",href:"mailto:[email protected]"}," [email protected] ")],-1))])):O("",!0)]),_:1},8,["model"])):O("",!0),t(v)==="email"&&t(p)===3?(d(),y(x,{key:2},[t(S)?(d(),y("p",Nt,[g(L(t(S))+" ",1),o("button",{type:"button",class:"pointer ml-[0.4rem] border-0 bg-transparent p-0 text-app-accent",onClick:Fe}," 重新申请 ")])):(d(),$(Y,{key:1,ref_key:"emailResetFormRef",ref:J,class:"login-form",model:t(m),rules:ke},{default:n(()=>[l(c,{prop:"userName"},{default:n(()=>[l(Ue,{modelValue:t(m).userName,"onUpdate:modelValue":e[12]||(e[12]=a=>t(m).userName=a),placeholder:"请选择账号"},{default:n(()=>[(d(!0),y(x,null,me(t(M),a=>(d(),$(Te,{key:a,label:a,value:a},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(c,{prop:"password"},{default:n(()=>[l(i,{modelValue:t(m).password,"onUpdate:modelValue":e[13]||(e[13]=a=>t(m).password=a),modelModifiers:{trim:!0},placeholder:"密码必须至少8位,包含大小写字母、数字和特殊字符","show-password":"",type:"password",onInput:e[14]||(e[14]=a=>le(t(m),a))},null,8,["modelValue"])]),_:1}),l(c,{prop:"repassword"},{default:n(()=>[l(i,{modelValue:t(m).repassword,"onUpdate:modelValue":e[15]||(e[15]=a=>t(m).repassword=a),placeholder:"请再次输入密码","show-password":"",type:"password"},null,8,["modelValue"])]),_:1}),o("div",Rt,[l(E,{type:"primary",class:"login-submit",loading:t(W),onClick:Ae},{default:n(()=>[...e[27]||(e[27]=[g(" 重置密码 ",-1)])]),_:1},8,["loading"])])]),_:1},8,["model"]))],64)):O("",!0)],2)]),o("p",{class:"recover-login"},[e[28]||(e[28]=g(" 想起密码了? ",-1)),o("button",{type:"button",class:"pointer border-0 bg-transparent p-0 text-app-accent",onClick:ae}," 返回登录 ")])])])}}}),At=st(St,[["__scopeId","data-v-2adb6c70"]]);export{At as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.