liujie
2026-09-16 e126b7304d4cff2799079b37f1a34ba73ebd6ba8
1
import{c as e,w as s,s as r,v as a,u as i,i as l,r as o,o as t,a as d,S as c,n,d as u,I as f,f as m,t as g,g as p,x as h,b as k,e as _}from"./index-Bu3F9tAw.js";import{_ as b}from"./guide-nav-bar.yY-zdTOi.js";import{_ as F,r as v}from"./uni-app.es.Da4i0HVV.js";import{_ as y}from"./guide-dialog.CovRbbEt.js";import{a as w,g as N,b as C}from"./registration.PE-F2hx4.js";import{r as I}from"./router.C3rCNR3P.js";import{_ as B}from"./chevron-down.BgPi93CK.js";import"./system.CBmUIIZ_.js";const T="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='64'%20height='64'%20viewBox='0%200%2024%2024'%3e%3cpath%20fill='none'%20stroke='%23667085'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='2'%20d='M5%2012h14m-7-7v14'/%3e%3c/svg%3e";const L=F({components:{GuideNavBar:b,GuideDialog:y},data:()=>({phone:"",successDialogVisible:!1,submitting:!1,errors:{name:"",gender:"",guideType:"",idNo:"",idFront:"",idBack:"",guideLicense:""},genderOptions:["男","女"],ageOptions:["18-25岁","26-35岁","36-45岁","46岁以上"],workYearOptions:["1年以内","1-3年","3-5年","5年以上"],teamOptions:[{id:null,name:"个人",guideType:"personal"}],form:{name:"",gender:"",age:"",workYear:"",guideType:"",teamId:null,teamName:"",idNo:"",idFront:"",idBack:"",guideLicense:"",guideCert:""}}),onLoad(){const e=N();if(!e||!e.registrationToken)return r({title:"请先验证手机号",icon:"none"}),void I("/pages/register-phone/index","redirectTo");this.phone=e.phone,C().then(e=>{e&&e.length&&(this.teamOptions=e)}).catch(e=>r({title:e.message,icon:"none"}))},methods:{clearFieldError(e){this.errors[e]&&(this.errors[e]="")},resetFieldErrors(){Object.keys(this.errors).forEach(e=>{this.errors[e]=""})},validateRequiredFields(){this.resetFieldErrors();const e=[["name",!this.form.name.trim(),"请输入姓名"],["gender",!this.form.gender,"请选择性别"],["guideType",!this.form.guideType,"请选择讲解队或个人"],["idNo",!this.form.idNo.trim(),"请输入身份证号"],["idFront",!this.form.idFront,"请上传身份证正面"],["idBack",!this.form.idBack,"请上传身份证反面"],["guideLicense",!this.form.guideLicense,"请上传导游证"]];let s="";return e.forEach(([e,r,a])=>{r&&(this.errors[e]=a,s||(s=a))}),s},goBack(){i({fail(){I("/pages/register-phone/index")}})},setGender(e){this.form.gender=this.genderOptions[e.detail.value],this.clearFieldError("gender")},setAge(e){this.form.age=this.ageOptions[e.detail.value]},setWorkYear(e){this.form.workYear=this.workYearOptions[e.detail.value]},setTeam(e){const s=this.teamOptions[e.detail.value];s&&(this.form.guideType=s.guideType,this.form.teamId=s.id||null,this.form.teamName=s.name,this.clearFieldError("guideType"))},chooseImage(e){a({count:1,success:s=>{this.form[e]=s.tempFilePaths[0],this.clearFieldError(e)}})},handleIdCardInput(e){this.form.idNo=(e.detail.value||"").toUpperCase().replace(/[^0-9X]/g,"").slice(0,18),this.clearFieldError("idNo")},isValidIdCard(e){const s=e.trim().toUpperCase();if(!/^[1-9]\d{16}[0-9X]$/.test(s))return!1;const r=s.slice(6,14),a=new Date(Number(r.slice(0,4)),Number(r.slice(4,6))-1,Number(r.slice(6,8)));if(a.getFullYear()!==Number(r.slice(0,4))||a.getMonth()!==Number(r.slice(4,6))-1||a.getDate()!==Number(r.slice(6,8))||a>new Date)return!1;const i=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2].reduce((e,r,a)=>e+Number(s[a])*r,0);return s[17]===["1","0","X","9","8","7","6","5","4","3","2"][i%11]},submit(){const e=this.validateRequiredFields();if(e)r({title:e,icon:"none"});else{if(this.form.idNo=this.form.idNo.trim().toUpperCase(),!this.isValidIdCard(this.form.idNo))return this.errors.idNo="身份证号格式不正确,请检查末位校验码",void r({title:"身份证号格式不正确,请检查末位校验码",icon:"none"});this.submitting||(this.submitting=!0,w(this.form).then(()=>{this.successDialogVisible=!0}).catch(e=>r({title:e.message,icon:"none"})).finally(()=>{this.submitting=!1}))}},goLogin(){I("/pages/login/index","reLaunch")}}},[["render",function(r,a,i,F,w,N){const C=v(o("guide-nav-bar"),b),I=l,L=f,O=m,V=k,j=h,x=_,E=c,Y=v(o("guide-dialog"),y);return t(),e(I,{class:"profile-page"},{default:s(()=>[d(C,{title:"注册导游",onBack:N.goBack},null,8,["onBack"]),d(E,{"scroll-y":"",class:"form-scroll"},{default:s(()=>[d(I,{class:"form-wrap"},{default:s(()=>[d(I,{class:"field-block"},{default:s(()=>[d(I,{class:n(["field-head",{"field-head-error":w.errors.name}])},{default:s(()=>[u("姓名")]),_:1},8,["class"]),d(L,{modelValue:w.form.name,"onUpdate:modelValue":a[0]||(a[0]=e=>w.form.name=e),class:n(["plain-input",{"field-invalid":w.errors.name}]),placeholder:"请输入姓名",onInput:a[1]||(a[1]=e=>N.clearFieldError("name"))},null,8,["modelValue","class"]),w.errors.name?(t(),e(O,{key:0,class:"field-error"},{default:s(()=>[u(g(w.errors.name),1)]),_:1})):p("",!0)]),_:1}),d(I,{class:"field-block"},{default:s(()=>[d(I,{class:n(["field-head",{"field-head-error":w.errors.idNo}])},{default:s(()=>[u("身份证号")]),_:1},8,["class"]),d(L,{modelValue:w.form.idNo,"onUpdate:modelValue":a[2]||(a[2]=e=>w.form.idNo=e),class:n(["plain-input",{"field-invalid":w.errors.idNo}]),type:"idcard",maxlength:"18",placeholder:"请输入身份证号",onInput:N.handleIdCardInput},null,8,["modelValue","class","onInput"]),w.errors.idNo?(t(),e(O,{key:0,class:"field-error"},{default:s(()=>[u(g(w.errors.idNo),1)]),_:1})):p("",!0)]),_:1}),d(I,{class:"field-block"},{default:s(()=>[d(I,{class:n(["field-head",{"field-head-error":w.errors.gender}])},{default:s(()=>[u("性别")]),_:1},8,["class"]),d(j,{range:w.genderOptions,onChange:N.setGender},{default:s(()=>[d(I,{class:n(["select-row",{"field-invalid":w.errors.gender}])},{default:s(()=>[d(O,{class:n({placeholder:!w.form.gender})},{default:s(()=>[u(g(w.form.gender||"请选择"),1)]),_:1},8,["class"]),d(V,{class:"select-icon",src:B,mode:"aspectFit"})]),_:1},8,["class"])]),_:1},8,["range","onChange"]),w.errors.gender?(t(),e(O,{key:0,class:"field-error"},{default:s(()=>[u(g(w.errors.gender),1)]),_:1})):p("",!0)]),_:1}),d(I,{class:"field-block"},{default:s(()=>[d(I,{class:"field-head"},{default:s(()=>[u("年龄(非必填)")]),_:1}),d(j,{range:w.ageOptions,onChange:N.setAge},{default:s(()=>[d(I,{class:"select-row"},{default:s(()=>[d(O,{class:n({placeholder:!w.form.age})},{default:s(()=>[u(g(w.form.age||"请选择"),1)]),_:1},8,["class"]),d(V,{class:"select-icon",src:B,mode:"aspectFit"})]),_:1})]),_:1},8,["range","onChange"])]),_:1}),d(I,{class:"field-block"},{default:s(()=>[d(I,{class:"field-head"},{default:s(()=>[u("工作年限(非必填)")]),_:1}),d(j,{range:w.workYearOptions,onChange:N.setWorkYear},{default:s(()=>[d(I,{class:"select-row"},{default:s(()=>[d(O,{class:n({placeholder:!w.form.workYear})},{default:s(()=>[u(g(w.form.workYear||"请选择"),1)]),_:1},8,["class"]),d(V,{class:"select-icon",src:B,mode:"aspectFit"})]),_:1})]),_:1},8,["range","onChange"])]),_:1}),d(I,{class:"field-block"},{default:s(()=>[d(I,{class:n(["field-head",{"field-head-error":w.errors.guideType}])},{default:s(()=>[u("讲解队/个人")]),_:1},8,["class"]),d(j,{range:w.teamOptions,"range-key":"name",onChange:N.setTeam},{default:s(()=>[d(I,{class:n(["select-row",{"field-invalid":w.errors.guideType}])},{default:s(()=>[d(O,{class:n({placeholder:!w.form.teamName})},{default:s(()=>[u(g(w.form.teamName||"请选择"),1)]),_:1},8,["class"]),d(V,{class:"select-icon",src:B,mode:"aspectFit"})]),_:1},8,["class"])]),_:1},8,["range","onChange"]),w.errors.guideType?(t(),e(O,{key:0,class:"field-error"},{default:s(()=>[u(g(w.errors.guideType),1)]),_:1})):p("",!0)]),_:1}),d(I,{class:"upload-section"},{default:s(()=>[d(I,{class:n(["field-head",{"field-head-error":w.errors.idFront||w.errors.idBack}])},{default:s(()=>[u("上传身份证")]),_:1},8,["class"]),d(I,{class:"upload-grid two"},{default:s(()=>[d(I,{class:n(["upload-item",{"field-invalid":w.errors.idFront}]),onClick:a[3]||(a[3]=e=>N.chooseImage("idFront"))},{default:s(()=>[w.form.idFront?(t(),e(V,{key:0,class:"upload-preview",src:w.form.idFront,mode:"aspectFill"},null,8,["src"])):(t(),e(V,{key:1,class:"plus-icon",src:T,mode:"aspectFit"}))]),_:1},8,["class"]),d(I,{class:n(["upload-item",{"field-invalid":w.errors.idBack}]),onClick:a[4]||(a[4]=e=>N.chooseImage("idBack"))},{default:s(()=>[w.form.idBack?(t(),e(V,{key:0,class:"upload-preview",src:w.form.idBack,mode:"aspectFill"},null,8,["src"])):(t(),e(V,{key:1,class:"plus-icon",src:T,mode:"aspectFit"}))]),_:1},8,["class"])]),_:1}),d(I,{class:"upload-labels two"},{default:s(()=>[d(O,{class:n({"upload-label-error":w.errors.idFront})},{default:s(()=>[u("正面")]),_:1},8,["class"]),d(O,{class:n({"upload-label-error":w.errors.idBack})},{default:s(()=>[u("反面")]),_:1},8,["class"])]),_:1}),d(I,{class:"upload-errors"},{default:s(()=>[w.errors.idFront?(t(),e(O,{key:0,class:"field-error"},{default:s(()=>[u(g(w.errors.idFront),1)]),_:1})):p("",!0),w.errors.idBack?(t(),e(O,{key:1,class:"field-error"},{default:s(()=>[u(g(w.errors.idBack),1)]),_:1})):p("",!0)]),_:1})]),_:1}),d(I,{class:"upload-section certificate-section"},{default:s(()=>[d(I,{class:"certificate-head"},{default:s(()=>[d(O,{class:n({"field-head-error":w.errors.guideLicense})},{default:s(()=>[u("上传导游证")]),_:1},8,["class"]),d(O,null,{default:s(()=>[u("上传导游资格证(非必填)")]),_:1})]),_:1}),d(I,{class:"upload-grid two"},{default:s(()=>[d(I,{class:n(["upload-item",{"field-invalid":w.errors.guideLicense}]),onClick:a[5]||(a[5]=e=>N.chooseImage("guideLicense"))},{default:s(()=>[w.form.guideLicense?(t(),e(V,{key:0,class:"upload-preview",src:w.form.guideLicense,mode:"aspectFill"},null,8,["src"])):(t(),e(V,{key:1,class:"plus-icon",src:T,mode:"aspectFit"}))]),_:1},8,["class"]),d(I,{class:"upload-item",onClick:a[6]||(a[6]=e=>N.chooseImage("guideCert"))},{default:s(()=>[w.form.guideCert?(t(),e(V,{key:0,class:"upload-preview",src:w.form.guideCert,mode:"aspectFill"},null,8,["src"])):(t(),e(V,{key:1,class:"plus-icon",src:T,mode:"aspectFit"}))]),_:1})]),_:1}),w.errors.guideLicense?(t(),e(O,{key:0,class:"field-error"},{default:s(()=>[u(g(w.errors.guideLicense),1)]),_:1})):p("",!0)]),_:1}),d(x,{class:"submit-button",disabled:w.submitting,onClick:N.submit},{default:s(()=>[u(g(w.submitting?"提交中...":"提交"),1)]),_:1},8,["disabled","onClick"])]),_:1})]),_:1}),d(Y,{visible:w.successDialogVisible,"onUpdate:visible":a[7]||(a[7]=e=>w.successDialogVisible=e),title:"提交成功",content:"资料已提交,平台审核通过后即可接单","show-cancel":!1,onConfirm:N.goLogin},null,8,["visible","onConfirm"])]),_:1})}],["__scopeId","data-v-26ff3827"]]);export{L as default};