2 lines
11 KiB
JavaScript
2 lines
11 KiB
JavaScript
import{V as e,_ as a,$ as l,a9 as s,aa as t,a3 as o,ab as r,o as c,k as n,l as d,m as i,w as u,n as p,r as m,b4 as v,b5 as g,q as h,H as f,b6 as y,an as b,v as w,t as x,a6 as C,a7 as k,ao as T,E as V}from"./vendor.be06958f.js";/* empty css *//* empty css */const _={baseURL:"https://api.buzhiyushu.cn",timeout:1e4},I=e=>{const{baseURL:a}=_;return`${a}${e}`};const z=e=>(C("data-v-18784c6c"),e=e(),k(),e),N={class:"register-page"},M={class:"page-container"},E={class:"left-section"},j=z((()=>d("div",{class:"section-title"},[d("h1",null,"未注册用户请在下方注册")],-1))),S={class:"register-form"},U=z((()=>d("div",{class:"form-header"},[d("h2",null,"与书同行")],-1))),P={class:"captcha-row"},$=["src"],q={class:"right-section"},B=z((()=>d("div",{class:"section-title"},[d("h1",null,"已注册用户请到浏览器打开后台管理系统")],-1))),L={class:"login-info"},R={class:"login-url"},A=z((()=>d("p",{class:"url-label"},"后台管理系统地址:",-1))),O={class:"url-box"},G=z((()=>d("a",{class:"url-text",href:"https://erp.buzhiyushu.cn/",target:"_blank",rel:"noopener noreferrer"},"https://erp.buzhiyushu.cn/",-1))),H={key:0,class:"auth-code"},J=z((()=>d("p",{class:"url-label"},"授权码:",-1))),D={class:"url-box"},F={class:"url-text"},K=z((()=>d("p",{class:"auth-code-tip"},"复制授权码并在软件上粘贴后完成店铺绑定,授权码有效期为10分钟",-1))),Q=z((()=>d("h3",null,"操作流程图",-1))),W=[z((()=>d("img",{src:"/flow-chart.png",alt:"操作流程图",class:"flow-image"},null,-1))),z((()=>d("div",{class:"click-tip"},"点击查看大图",-1)))],X=z((()=>d("h3",null,"操作流程图",-1))),Y=z((()=>d("div",{class:"image-viewer-content"},[d("img",{src:"/flow-chart.png",alt:"操作流程图",class:"full-image"})],-1))),Z={__name:"index",setup(C){const k=e(),_=a(!1),z=a(),Z=a(""),ee=a(!0),ae=a({pddMallId:"",pddMallName:"",type:"",accessToken:"",skuSpec:"",code:""}),le=a({username:"",phoneNumber:"",password:"",confirmPassword:"",inviteCode:"",code:"",uuid:"",clientId:"e5cd7e4891bf95d1d19206ce24a7b32e",grantType:"password",tenantId:"000000",userType:"sys_user"}),se={username:[{min:2,max:20,message:"用户名长度在2到20个字符",trigger:"blur"}],phoneNumber:[{required:!0,message:"请输入手机号",trigger:"blur"},{pattern:/^1[3-9]\d{9}$/,message:"请输入正确的手机号",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{min:5,max:20,message:"密码长度在5到20个字符",trigger:"blur"}],confirmPassword:[{required:!0,message:"请确认密码",trigger:"blur"},{validator:(e,a,l)=>{a!==le.value.password?l(new Error("两次输入密码不一致")):l()},trigger:"blur"}],code:[{required:!0,message:"请输入验证码",trigger:"blur",validator:(e,a,l)=>{ee.value?a?l():l(new Error("请输入验证码")):l()}}]},te=async()=>{try{const e=await fetch(I("/auth/code"),{method:"GET",headers:{"Content-Type":"application/json"}});if(e.ok){const a=e.headers.get("content-type");if(a&&a.includes("application/json")){const a=await e.json();if(200===a.code){const{data:e}=a;ee.value=void 0===e.captchaEnabled||e.captchaEnabled,ee.value?(le.value.uuid=e.uuid,Z.value="data:image/gif;base64,"+e.img):(le.value.uuid="",Z.value="")}else{let e=a.msg||"获取验证码失败";"Captcha error"===a.msg?e="验证码生成失败,请重试":("Captcha invalid"===a.msg||a.msg&&(a.msg.includes("Captcha")||a.msg.includes("captcha")))&&(e="验证码服务异常,请重试"),T.error(e)}}else{await e.text();T.error("服务器响应格式错误,请检查API接口")}}else T.error(`获取验证码失败 (${e.status}),请重试`)}catch(e){"SyntaxError"===e.name&&e.message.includes("JSON")?T.error("服务器响应格式错误,请检查API接口"):T.error("网络错误,获取验证码失败")}},oe=async()=>{try{if(!(await z.value.validate()))return;if(_.value=!0,ae.value.code)try{const e=await fetch(I(`/huidiao/pdd/getPddToken?code=${ae.value.code}`),{method:"GET",headers:{"Content-Type":"application/json"}}),a=await e.json();200===a.code&&a.data?(ae.value.accessToken=a.data.accessToken||"",ae.value.pddMallId=a.data.pddMallId||"",ae.value.pddMallName=a.data.pddMallName||"",ae.value.skuSpec=a.data.skuSpec||"",ae.value.pddMallId&&(le.value.username="pdd"+ae.value.pddMallId),console.log("获取拼多多Token成功:",a.data)):(console.error("获取拼多多Token失败:",a.msg||"未知错误"),a.msg&&T.warning(`获取拼多多信息: ${a.msg}`))}catch(e){console.error("调用拼多多Token接口失败:",e),T.warning("获取拼多多店铺信息失败,将使用URL中的参数")}const a={username:le.value.phoneNumber,password:le.value.password,phoneNumber:le.value.phoneNumber,inviteCode:le.value.inviteCode,clientId:le.value.clientId,grantType:le.value.grantType,tenantId:le.value.tenantId,userType:le.value.userType,pddMallId:ae.value.pddMallId||"",pddMallName:ae.value.pddMallName||"",pddType:"2",accessToken:ae.value.accessToken||"",skuSpec:ae.value.skuSpec||""};ee.value&&(a.code=le.value.code,a.uuid=le.value.uuid);const l=await fetch(I("/auth/register"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),s=await l.json();if(200===s.code)re();else{let e=s.msg||"注册失败,请重试";"店铺已存在"===s.msg?(e="该店铺已经绑定,请复制右侧网址登录使用",V.alert("该拼多多店铺已经绑定到系统中,请直接登录使用。","店铺已绑定",{confirmButtonText:"我知道了",type:"warning",center:!0})):"Captcha error"===s.msg?e="验证码错误,请重新输入":"Captcha invalid"===s.msg?e="验证码无效,请重新输入":s.msg&&(s.msg.includes("Captcha")||s.msg.includes("captcha")||s.msg.includes("验证码"))&&(e="验证码错误,请重新输入"),T.error(e),ee.value&&s.msg&&("Captcha error"===s.msg||"Captcha invalid"===s.msg||s.msg.includes("Captcha")||s.msg.includes("captcha")||s.msg.includes("验证码"))&&(te(),le.value.code="")}}catch(e){console.error("注册失败:",e),T.error("注册失败,请重试")}finally{_.value=!1}},re=()=>{const e="https://erp.buzhiyushu.cn/";V({title:"注册成功!",message:`\n <div style="text-align: center;">\n <p style="margin-bottom: 15px; color: #67C23A; font-size: 16px;">🎉 恭喜您注册成功!</p>\n <p style="margin-bottom: 15px; color: #606266;">请复制以下链接进行登录:</p>\n <div style="background: #f5f7fa; padding: 10px; border-radius: 4px; margin-bottom: 15px; word-break: break-all;">\n ${e}\n </div>\n </div>\n `,dangerouslyUseHTMLString:!0,showCancelButton:!0,confirmButtonText:"复制链接",cancelButtonText:"关闭",confirmButtonClass:"el-button--primary",cancelButtonClass:"el-button--default",center:!0}).then((async()=>{try{await navigator.clipboard.writeText(e),T.success("链接已复制到剪贴板!")}catch(a){try{const a=document.createElement("textarea");a.value=e,document.body.appendChild(a),a.select(),document.execCommand("copy"),document.body.removeChild(a),T.success("链接已复制到剪贴板!")}catch(l){T.error("复制失败,请手动复制链接")}}})).catch((()=>{console.log("用户关闭了弹窗")}))},ce=async()=>{const e="https://erp.buzhiyushu.cn/";try{await navigator.clipboard.writeText(e),T.success("链接已复制到剪贴板!")}catch(a){try{const a=document.createElement("textarea");a.value=e,document.body.appendChild(a),a.select(),document.execCommand("copy"),document.body.removeChild(a),T.success("链接已复制到剪贴板!")}catch(l){T.error("复制失败,请手动复制链接")}}},ne=async()=>{const e=ae.value.code;if(e)try{await navigator.clipboard.writeText(e),T.success("授权码已复制到剪贴板!")}catch(a){try{const a=document.createElement("textarea");a.value=e,document.body.appendChild(a),a.select(),document.execCommand("copy"),document.body.removeChild(a),T.success("授权码已复制到剪贴板!")}catch(l){T.error("复制失败,请手动复制授权码")}}else T.error("授权码不存在")},de=a(!1),ie=()=>{de.value=!0},ue=()=>{de.value=!1};return l((()=>{(()=>{const e=k.query;ae.value={code:e.code||""}})(),te()})),(e,a)=>{const l=s,C=t,k=o,T=r;return c(),n("div",N,[d("div",M,[d("div",E,[j,d("div",S,[U,i(T,{ref_key:"formRef",ref:z,model:le.value,rules:se,"label-width":"0"},{default:u((()=>[i(C,{prop:"username",style:{display:"none"}},{default:u((()=>[i(l,{modelValue:le.value.username,"onUpdate:modelValue":a[0]||(a[0]=e=>le.value.username=e),placeholder:"用户名",size:"large","prefix-icon":p(m),disabled:""},null,8,["modelValue","prefix-icon"])])),_:1}),i(C,{prop:"phoneNumber"},{default:u((()=>[i(l,{modelValue:le.value.phoneNumber,"onUpdate:modelValue":a[1]||(a[1]=e=>le.value.phoneNumber=e),placeholder:"手机号",size:"large","prefix-icon":p(v)},null,8,["modelValue","prefix-icon"])])),_:1}),i(C,{prop:"password"},{default:u((()=>[i(l,{modelValue:le.value.password,"onUpdate:modelValue":a[2]||(a[2]=e=>le.value.password=e),type:"password",placeholder:"密码",size:"large","prefix-icon":p(g),"show-password":""},null,8,["modelValue","prefix-icon"])])),_:1}),i(C,{prop:"confirmPassword"},{default:u((()=>[i(l,{modelValue:le.value.confirmPassword,"onUpdate:modelValue":a[3]||(a[3]=e=>le.value.confirmPassword=e),type:"password",placeholder:"确认密码",size:"large","prefix-icon":p(g),"show-password":""},null,8,["modelValue","prefix-icon"])])),_:1}),i(C,{prop:"inviteCode"},{default:u((()=>[i(l,{modelValue:le.value.inviteCode,"onUpdate:modelValue":a[4]||(a[4]=e=>le.value.inviteCode=e),placeholder:"邀请码(非必填)",size:"large","prefix-icon":p(h)},null,8,["modelValue","prefix-icon"])])),_:1}),ee.value?(c(),f(C,{key:0,prop:"code"},{default:u((()=>[d("div",P,[i(l,{modelValue:le.value.code,"onUpdate:modelValue":a[5]||(a[5]=e=>le.value.code=e),placeholder:"验证码",size:"large","prefix-icon":p(y)},null,8,["modelValue","prefix-icon"]),d("div",{class:"captcha-image",onClick:te},[Z.value?(c(),n("img",{key:0,src:Z.value,alt:"验证码"},null,8,$)):b("",!0)])])])),_:1})):b("",!0),i(C,null,{default:u((()=>[i(k,{type:"primary",size:"large",class:"register-btn",onClick:oe,loading:_.value},{default:u((()=>[w(" 注册 ")])),_:1},8,["loading"])])),_:1})])),_:1},8,["model"])])]),d("div",q,[B,d("div",L,[d("div",R,[A,d("div",O,[G,i(k,{type:"primary",size:"small",onClick:ce,class:"copy-btn"},{default:u((()=>[w(" 复制链接 ")])),_:1})])]),ae.value.code?(c(),n("div",H,[J,d("div",D,[d("span",F,x(ae.value.code),1),i(k,{type:"success",size:"small",onClick:ne,class:"copy-btn"},{default:u((()=>[w(" 复制授权码 ")])),_:1})]),K])):b("",!0),d("div",{class:"flow-chart"},[Q,d("div",{class:"chart-container",onClick:ie},W)])])])]),de.value?(c(),n("div",{key:0,class:"image-viewer-overlay",onClick:ue},[d("div",{class:"image-viewer-container"},[d("div",{class:"image-viewer-header"},[X,d("button",{class:"close-btn",onClick:ue},"×")]),Y])])):b("",!0)])}},__scopeId:"data-v-18784c6c"};export{Z as default};
|