index-3e0a8f82.js 16 KB

1
  1. import{d as H,P as K,q as X,r as Q,e as E,x as T,y as Z,D as f,a7 as R,a as r,A as i,C as ee,R as B,z as te,M as S,N as p,bk as se,S as v}from"./index-cc872052.js";import{M as oe}from"./index-813b9476.js";import{M as re}from"./index-f6813103.js";import{u as ae}from"./student-register-store-d2daf413.js";import{v as ue}from"./vip-gift-icon-ebf2ecf9.js";import{M as ne}from"./index-755a2d24.js";import{M as le}from"./index-3a6f244a.js";import{S as ie}from"./index-c39856ac.js";import{F as k}from"./index-5658ea9b.js";import{F as m}from"./index-225b26bd.js";import{C as ce}from"./index-e3fde7dc.js";import{R as de,a as N}from"./index-43a9c24d.js";import{T as G}from"./index-2b893c95.js";import{P as M}from"./index-e0398ed6.js";import"./index-00e7f370.js";import"./index-a11ff9b5.js";import"./index-90b89919.js";import"./index-6b89d4e4.js";import"./Checker-962e3d5e.js";const pe="_registerModal_1pj4b_1",me="_studentRegisterContainer_1pj4b_8",fe="_studentSection_1pj4b_13",ge="_studentSectionForm_1pj4b_20",he="_noSendDay_1pj4b_24",we="_title1_1pj4b_27",Se="_title3_1pj4b_28",Ce="_goodsGroup_1pj4b_39",_e="_registerForm_1pj4b_44",xe="_selectStudentGroup_1pj4b_48",Te="_studentIcon_1pj4b_61",Be="_selectStudentGroupChecked_1pj4b_69",Fe="_studentIconAdd_1pj4b_72",ye="_fieldTipsGroup_1pj4b_93",be="_fieldTips_1pj4b_93",Ie="_tips_1pj4b_105",Ae="_username_1pj4b_112",De="_countDown_1pj4b_120",Ee="_codeText_1pj4b_138",Re="_memberNumer_1pj4b_142",ve="_iconGift_1pj4b_154",ke="_paymentContainer_1pj4b_164",Ne="_traditionBtn_1pj4b_174",Ge="_radioSection_1pj4b_182",Me="_radioItem_1pj4b_194",Ve="_giftTips_1pj4b_205",je="_agreeColumn_1pj4b_233",u={registerModal:pe,studentRegisterContainer:me,studentSection:fe,studentSectionForm:ge,noSendDay:he,title1:we,title3:Se,goodsGroup:Ce,registerForm:_e,selectStudentGroup:xe,studentIcon:Te,selectStudentGroupChecked:Be,studentIconAdd:Fe,fieldTipsGroup:ye,fieldTips:be,tips:Ie,username:Ae,countDown:De,codeText:Ee,memberNumer:Re,iconGift:ve,paymentContainer:ke,traditionBtn:Ne,radioSection:Ge,radioItem:Me,giftTips:Ve,agreeColumn:je},C=[];for(let c=1;c<=40;c++)C.push({text:c+"班",value:c});const rt=H({name:"register-modal",emits:["close","submit"],setup(){const c=K();X();const F=ae();F.setShoolId(c.query.sId);const _=Q(),x=E(()=>{let t=[];const a=[{text:"一年级",value:1},{text:"二年级",value:2},{text:"三年级",value:3},{text:"四年级",value:4},{text:"五年级",value:5}],l=[{text:"六年级",value:6}],n=[{text:"七年级",value:7},{text:"八年级",value:8},{text:"九年级",value:9}];return e.gradeYear==="FIVE_YEAR_SYSTEM"?t.push([...a]):e.gradeYear==="SIX_YEAR_SYSTEM"?t.push([...a,...l]):e.gradeYear==="THREE_YEAR_SYSTEM"?t.push([...n]):e.gradeYear==="FORE_YEAR_SYSTEM"?t.push([...l,...n]):t.push([...a,...l,...n]),t}),e=T({countDownStatus:!0,countDownTime:1e3*120,modelValue:!1,imgCodeStatus:!1,gradeNumText:"",currentClassText:"",gradeStatus:!1,classStatus:!1,loading:!1,schoolId:c.query.sId,details:{},multi_user_limit:1,showSelectStudent:!1,studentList:[],studentItem:{},isRegister:"create",isTipRegister:!1,isChangeSchool:!1,gradeYear:null,schoolType:null,giftVipDay:null,showTips:!1,showButton:!1,showMessage:"请使用微信打开",showOtherSchool:!1,showOtherMessage:"",gradePopupShow:!1,gradePopupIndex:[],classPopupShow:!1,classPopupIndex:[]}),o=T({showOtherSchool:!1,showCloseButton:!0,showOtherMessage:"",otherType:"",showCancelButton:!0,cancelButtonColor:"",cancelButtonText:"取消",showConfirmButton:!0,confirmButtonColor:"",confirmButtonText:"确定",messageAlign:"left"}),s=T({autoRegister:!0,multiUser:!0,client_id:"cooleshow-student",client_secret:"cooleshow-student",extra:{nickname:"",currentGradeNum:"",currentClass:"",gender:1,registerType:"",giftVipDay:0},grant_type:"password",loginType:"SMS",password:"",username:""}),V=()=>{e.countDownStatus=!1,te(()=>{_.value.start()})},j=()=>{if(!S(s.username))return p("请输入正确的手机号码");e.imgCodeStatus=!0},P=E(()=>!!S(s.username)),O=()=>{e.countDownStatus=!0,_.value.reset()},g=async()=>{try{if(L()||Y())return;e.loading=!0;const{extra:t,loginType:a,autoRegister:l,password:n,multiUser:z,...$}=s;let b=a,I=l,A=n,D=z;e.isRegister==="update"&&(b="TOKEN",I=!1,A=e.studentItem.token,D=!1);const h=await f.post("/edu-app/userlogin",{hideLoading:!1,requestType:"form",data:{loginType:b,autoRegister:I,password:A,multiUser:D,...$,extra:JSON.stringify({...t,schoolId:e.schoolId})}});if(h.code===5436)e.showTips=!0,e.showMessage="二维码已经失效,详情请咨询学校老师",e.showButton=!1;else if(h.code===5435)e.showTips=!0,e.showMessage="报名信息更新,请刷新后重新提交",e.showButton=!0;else{F.setToken(h.data.token_type+" "+h.data.access_token),se();const{extra:W,username:J}=s,w=await f.post("/edu-app/student/register",{data:{schoolId:e.schoolId,clientType:"STUDENT",schoolVerify:!0,...W,mobile:J,newRegUser:e.isRegister==="create"}});if(w.code!==200){w.code===5436?(e.showTips=!0,e.showMessage="二维码已经失效,详情请咨询学校老师",e.showButton=!1):w.code===5435&&(e.showTips=!0,e.showMessage=w.message,e.showButton=!0);return}setTimeout(()=>{p("报名成功")},100),setTimeout(()=>{v().weixin&&window.WeixinJSBridge.call("closeWindow")},1e3)}}catch(t){d(e.isRegister!=="create",!1)}finally{e.loading=!1}},L=()=>{if(S(s.username))if(s.password)if(s.extra.nickname)if([0,1].includes(s.extra.gender))if(s.extra.currentGradeNum){if(!s.extra.currentClass)return p("请选择所在班级"),!0}else return p("请选择所在年级"),!0;else return p("请选择性别"),!0;else return p("请输入学生姓名"),!0;else return p("请输入验证码"),!0;else return p("请输入正确的手机号码"),!0;return!1},U=async()=>{if(!(s.password.length!==6||!S(s.username)))try{const{data:t}=await f.get(`/edu-app/open/student/studentInfo?mobile=${s.username}&code=${s.password}&type=REGISTER`);if(e.studentList=t||[],e.studentList.length>0){const a=e.studentList[0];e.studentItem=a,s.extra.nickname=a.nickname;const l=x.value[0]||[];l==null||l.forEach(n=>{n.value===a.currentGradeNum&&(e.gradeNumText=n.text,s.extra.currentGradeNum=a.currentGradeNum)}),C.forEach(n=>{n.value===a.currentClass&&(e.currentClassText=n.text,s.extra.currentClass=a.currentClass)}),s.extra.gender=a.gender,e.isRegister="update",d(!0,!1)}else e.isRegister="create",d(!1,!1),e.studentItem=[]}catch(t){}},d=(t,a)=>{e.isTipRegister=t,e.isChangeSchool=a},Y=()=>{var a;const{extra:t}=s;return e.studentItem.nickname!==t.nickname&&e.isTipRegister?(o.showOtherMessage="学生姓名与上次提交信息不一致,请确认修改学生信息或创建新的学生账号",o.showOtherSchool=!0,o.showCancelButton=!0,o.showCloseButton=!0,o.cancelButtonColor="linear-gradient( 224deg, #3FE1E6 0%, #00CDD4 100%)",o.cancelButtonText="新建学生",o.confirmButtonColor="linear-gradient( 305deg, #40C8FF 0%, #3192FF 100%)",o.confirmButtonText="修改信息",o.otherType="nickname",o.messageAlign="left",!0):e.isRegister==="create"&&e.studentList.length>=e.multi_user_limit?(o.showOtherMessage=`同一手机号最多创建${e.multi_user_limit}个学生`,o.showOtherSchool=!0,o.showCancelButton=!1,o.showCloseButton=!0,o.confirmButtonColor="linear-gradient( 305deg, #40C8FF 0%, #3192FF 100%)",o.confirmButtonText="我知道了",o.otherType="limit",o.messageAlign="center",!0):e.studentItem.schoolId&&e.studentItem.schoolId!==e.details.id&&!e.isChangeSchool&&e.isRegister==="update"?(o.showOtherMessage=`您已绑定【${((a=e.studentItem)==null?void 0:a.schoolName)||""}】,提交后将更换到<span style="color: #2B85FF">【${e.details.name||""}】</span>,是否确认提交?`,o.showOtherSchool=!0,o.showCancelButton=!0,o.showCloseButton=!1,o.cancelButtonColor="",o.cancelButtonText="取消",o.confirmButtonColor="",o.confirmButtonText="确定",o.otherType="change",o.messageAlign="left",!0):!1},y=async()=>{try{const{data:t}=await f.get("/edu-app/open/school/detail",{params:{id:e.schoolId},noAuthorization:!0});e.giftVipDay=t.giftVipDay,e.schoolType=t.schoolType,e.gradeYear=t.gradeYear,s.extra.giftVipDay=t.giftVipDay,s.extra.registerType=t.registerType,e.details=t,v().weixin?(t.registerType!=="GIFT_VIP_DAY"||t.status===0)&&(e.showTips=!0,e.showMessage="二维码已经失效,详情请咨询学校老师",e.showButton=!1):e.showTips=!0}catch(t){}};Z(async()=>{try{let t=null;const{data:a}=await f.get("/edu-app/open/paramConfig/queryByParamNameList",{requestType:"form",params:{paramNames:"multi_user_limit,qr_code_expire_time"}});a&&Array.isArray(a)&&a.forEach(n=>{n.paramName==="multi_user_limit"?e.multi_user_limit=n.paramValue?Number(n.paramValue):1:n.paramName==="qr_code_expire_time"&&(t=n.paramValue?Number(n.paramValue):null)});const l=c.query.t;l&&t!==null&&R(Number(l)).add(t,"day").isBefore(R())&&(e.showTips=!0,e.showMessage="二维码已经失效,详情请咨询学校老师",e.showButton=!1),await y()}catch(t){}});const q=()=>{s.password="",s.extra.nickname="",s.extra.currentGradeNum="",s.extra.currentClass="",s.extra.gender=1,e.currentClassText="",e.gradeNumText="",e.studentList=[],e.studentItem={},e.isRegister="create",e.isTipRegister=!1,e.isChangeSchool=!1};return()=>r("div",{class:u.registerModal},[r("div",{class:u.studentRegisterContainer},[r("div",{class:[u.studentSection,u.studentSectionForm,u.noSendDay]},[r("div",{class:u.title3},null),r(k,{labelAlign:"left",class:u.registerForm},{default:()=>[r(m,{clearable:!1,label:"联系方式(直接监护人)",placeholder:"请输入手机号码",type:"tel",required:!0,autocomplete:"off",inputAlign:"right",class:u.username,modelValue:s.username,"onUpdate:modelValue":[t=>s.username=t,()=>{q()}],border:!1,maxlength:11},{label:()=>r("div",null,[i("联系方式"),r("p",{class:u.tips},[i("(直接监护人)")])])}),r("div",{class:["van-hairline--bottom",u.fieldTipsGroup]},[r("div",{class:[u.fieldTips]},[i("手机号是音乐数字课堂的唯一登录账户")])]),r(m,{center:!0,clearable:!1,required:!0,inputAlign:"right",label:"验证码",placeholder:"请输入验证码",autocomplete:"off",type:"number",modelValue:s.password,"onUpdate:modelValue":[t=>s.password=t,t=>{U()}],maxlength:6},{button:()=>e.countDownStatus?r("span",{class:[u.codeText,P.value?"":u.codeTextDisabled],onClick:j},[i("获取验证码")]):r(ce,{ref:t=>_.value=t,"auto-start":!1,class:u.countDown,time:e.countDownTime,onFinish:O,format:"ss秒后重试"},null)})]})]),r("div",{class:[u.studentSection,u.studentSectionForm,u.noSendDay]},[r("div",{class:u.title1},null),r(k,{labelAlign:"left",class:u.registerForm},{default:()=>[e.studentList.length>1&&r("div",{class:[u.selectStudentGroup,e.showSelectStudent&&u.selectStudentGroupChecked],onClick:()=>e.showSelectStudent=!0},[r("i",{class:[u.studentIcon,!e.studentItem.userId&&u.studentIconAdd]},null),r("span",null,[e.studentItem.userId?e.studentItem.nickname:"新增学生"])]),r(m,{clearable:!1,label:"学生姓名",placeholder:"请输入学生姓名",autocomplete:"off",maxlength:14,modelValue:s.extra.nickname,"onUpdate:modelValue":t=>s.extra.nickname=t,required:!0,"input-align":"right"},null),r(m,{clearable:!1,label:"学生性别",placeholder:"请选择性别",autocomplete:"off",required:!0,"input-align":"right"},{input:()=>r(de,{"checked-color":"#ffcb75",modelValue:s.extra.gender,"onUpdate:modelValue":t=>s.extra.gender=t,direction:"horizontal"},{default:()=>[r(G,{size:"large",type:"primary",color:s.extra.gender!==1?"#F5F6FA":"linear-gradient( 135deg, #31C7FF 0%, #007AFE 100%)",textColor:s.extra.gender!==1?"#626264":"#fff",class:u.radioSection,round:!0},{default:()=>[r(N,{class:u.radioItem,name:1},null),i("男")]}),r(G,{size:"large",type:"primary",color:s.extra.gender!==0?"#F5F6FA":"linear-gradient( 135deg, #31C7FF 0%, #007AFE 100%)",textColor:s.extra.gender!==0?"#626264":"#fff",class:u.radioSection,round:!0},{default:()=>[r(N,{class:u.radioItem,name:0},null),i("女")]})]})}),r(m,{clearable:!1,label:"所在年级",placeholder:"请选择年级",isLink:!0,readonly:!0,clickable:!1,modelValue:e.gradeNumText,required:!0,"input-align":"right",onClick:()=>{e.gradePopupIndex=[s.extra.currentGradeNum],e.gradeStatus=!0}},null),r(m,{clearable:!1,label:"所在班级",placeholder:"请选择班级",isLink:!0,readonly:!0,clickable:!1,modelValue:e.currentClassText,onClick:()=>{e.classPopupIndex=[s.extra.currentClass],e.classStatus=!0},required:!0,"input-align":"right"},null),s.extra.registerType==="GIFT_VIP_DAY"&&e.giftVipDay&&Number(e.giftVipDay)>0?r("div",{class:u.giftTips},[r("img",{src:ue},null),r("span",null,[i("现在报名立即赠送乐器AI学练工具有效期"),r("i",null,[e.giftVipDay]),i("天")])]):null]})])]),r(ne,{position:"bottom"},{default:()=>[r("div",{class:u.paymentContainer},[r("div",{class:u.traditionBtn},[r(ee,{type:"primary",class:u.submitBtn,color:"linear-gradient( 135deg, #31C7FF 0%, #007AFE 100%)",round:!0,onClick:()=>g(),disabled:e.loading,loading:e.loading},{default:()=>[i("提交注册")]})])])]}),e.imgCodeStatus?r(re,{value:e.imgCodeStatus,"onUpdate:value":t=>e.imgCodeStatus=t,phone:s.username,type:"REGISTER",onClose:()=>{e.imgCodeStatus=!1},onSendCode:V},null):null,r(B,{show:e.gradeStatus,"onUpdate:show":t=>e.gradeStatus=t,position:"bottom",round:!0,safeAreaInsetBottom:!0,lazyRender:!1,class:"popupBottomSearch",onOpen:()=>{e.gradePopupShow=!0},onClosed:()=>{e.gradePopupShow=!1}},{default:()=>[e.gradePopupShow&&r(M,{showToolbar:!0,modelValue:e.gradePopupIndex,"onUpdate:modelValue":t=>e.gradePopupIndex=t,columns:x.value,onCancel:()=>e.gradeStatus=!1,onConfirm:t=>{const a=t.selectedOptions[0];s.extra.currentGradeNum=a.value,e.gradeNumText=a.text,e.gradeStatus=!1}},null)]}),r(B,{show:e.classStatus,"onUpdate:show":t=>e.classStatus=t,position:"bottom",round:!0,class:"popupBottomSearch",onOpen:()=>{e.classPopupShow=!0},onClosed:()=>{e.classPopupShow=!1}},{default:()=>[e.classPopupShow&&r(M,{showToolbar:!0,modelValue:e.classPopupIndex,"onUpdate:modelValue":t=>e.classPopupIndex=t,columns:C,onCancel:()=>e.classStatus=!1,onConfirm:t=>{const a=t.selectedOptions[0];s.extra.currentClass=a.value,e.currentClassText=a.text,e.classStatus=!1}},null)]}),r(oe,{show:e.showTips,"onUpdate:show":t=>e.showTips=t,message:e.showMessage,showButton:e.showButton,buttonText:"刷新",onConfirm:async()=>{e.showTips=!1,await y(),s.password="",window.scrollTo({top:0,behavior:"smooth"})}},null),r(le,{show:o.showOtherSchool,messageAlign:o.messageAlign,message:o.showOtherMessage,showCancelButton:o.showCancelButton,cancelButtonColor:o.cancelButtonColor,cancelButtonText:o.cancelButtonText,confirmButtonColor:o.confirmButtonColor,confirmButtonText:o.confirmButtonText,onClose:()=>o.showOtherSchool=!1,onCancel:()=>{o.showOtherSchool=!1,o.otherType==="nickname"&&(e.isRegister="create",d(!1,!1),g())},onConfirm:()=>{o.showOtherSchool=!1,o.otherType==="nickname"?(e.isRegister="update",d(!1,!1),g()):o.otherType==="change"?(e.isChangeSchool=!0,g()):o.otherType==="limit"&&d(!(e.isRegister==="create"&&!e.studentItem.userId),!1)}},null),r(B,{show:e.showSelectStudent,"onUpdate:show":t=>e.showSelectStudent=t,round:!0,position:"bottom",safeAreaInsetBottom:!0,closeable:!0},{default:()=>[r(ie,{studentItem:e.studentItem,list:e.studentList,onClose:()=>e.showSelectStudent=!1,onConfirm:t=>{if(t.userId){e.studentItem=t;const a=t;s.extra.nickname=a.nickname;const l=x.value[0]||[];s.extra.currentGradeNum="",e.gradeNumText="",l==null||l.forEach(n=>{n.value===a.currentGradeNum&&(e.gradeNumText=n.text,s.extra.currentGradeNum=a.currentGradeNum)}),e.currentClassText="",s.extra.currentClass="",C.forEach(n=>{n.value===a.currentClass&&(e.currentClassText=n.text,s.extra.currentClass=a.currentClass)}),s.extra.gender=a.gender,e.isRegister="update",d(!0,!1),e.showSelectStudent=!1}else{if(e.studentList.length>=e.multi_user_limit)return o.showOtherMessage=`同一手机号最多创建${e.multi_user_limit}个学生`,o.showOtherSchool=!0,o.showCancelButton=!1,o.showCloseButton=!0,o.confirmButtonColor="linear-gradient( 305deg, #40C8FF 0%, #3192FF 100%)",o.confirmButtonText="我知道了",o.otherType="limit",o.messageAlign="center",!0;e.studentItem=t,e.isRegister="create",d(!1,!1),s.extra.nickname="",s.extra.currentGradeNum="",s.extra.currentClass="",s.extra.gender=1,e.currentClassText="",e.gradeNumText="",e.showSelectStudent=!1}}},null)]})])}});export{rt as default};