lex-xin 5 سال پیش
والد
کامیت
ed2a0af3dc
48فایلهای تغییر یافته به همراه277 افزوده شده و 201 حذف شده
  1. 0 0
      dist/app.1937a8d1021663dab563.js
  2. BIN
      dist/app.1937a8d1021663dab563.js.gz
  3. BIN
      dist/app.52d14694e0420ef9aca1.js.gz
  4. 0 0
      dist/css/SignUpAccount.c78ca0fc.css
  5. 0 0
      dist/css/SignUpLevel.dc69291b.css
  6. 0 0
      dist/index.html
  7. 0 0
      dist/js/AppDetail.6a6790d6.js
  8. 0 0
      dist/js/AppRecord.1620c7e4.js
  9. 0 0
      dist/js/ApplyCertificate.60bc0120.js
  10. 0 0
      dist/js/ApplyList.936d71ce.js
  11. 0 0
      dist/js/ApplyNeed.804c0146.js
  12. 0 0
      dist/js/LevelMusic.c295e74b.js
  13. 0 0
      dist/js/PayCenter.f6c5451e.js
  14. 0 0
      dist/js/PayDefine.89850ed8.js
  15. 0 0
      dist/js/PayQRCode.7897c710.js
  16. 0 0
      dist/js/PayQRCode.7897c710.js.gz
  17. 0 0
      dist/js/PayResult.7d7138fc.js
  18. 0 0
      dist/js/PaymentResult.21c5b616.js
  19. 0 0
      dist/js/PaymentResult.21c5b616.js.gz
  20. 0 0
      dist/js/SignUp.b8c6e670.js
  21. 0 0
      dist/js/SignUp.b8c6e670.js.gz
  22. 0 0
      dist/js/SignUpAccount.896a4710.js
  23. BIN
      dist/js/SignUpAccount.896a4710.js.gz
  24. 0 0
      dist/js/SignUpAccount.9884807d.js
  25. BIN
      dist/js/SignUpAccount.9884807d.js.gz
  26. 0 0
      dist/js/SignUpBaseInfo.05559bd0.js
  27. 0 0
      dist/js/SignUpBaseInfo.05559bd0.js.gz
  28. 0 0
      dist/js/SignUpCard.24237d8d.js
  29. 0 0
      dist/js/SignUpCertificate.68b17451.js
  30. 0 0
      dist/js/SignUpLevel.36b572b9.js
  31. BIN
      dist/js/SignUpLevel.36b572b9.js.gz
  32. 0 0
      dist/js/SignUpLevel.f1603445.js
  33. BIN
      dist/js/SignUpLevel.f1603445.js.gz
  34. 0 0
      dist/js/SignUpPayment.a9ac310f.js
  35. 0 0
      dist/js/SignUpPayment.a9ac310f.js.gz
  36. 0 0
      dist/js/SmallProtocol.3a1965d4.js
  37. 0 0
      dist/js/SmallProtocol.3a1965d4.js.gz
  38. 0 0
      dist/js/chunk-vendors.8c10480f.js
  39. BIN
      dist/js/chunk-vendors.8c10480f.js.gz
  40. 0 0
      dist/js/chunk-vendors.8e0757dd.js
  41. BIN
      dist/js/chunk-vendors.8e0757dd.js.gz
  42. 0 0
      dist/js/test.a6a68aef.js
  43. 0 0
      dist/js/test.a6a68aef.js.gz
  44. 13 0
      package-lock.json
  45. 1 0
      package.json
  46. 3 3
      src/main.js
  47. 247 193
      src/views/signup/SignUpAccount.vue
  48. 13 5
      src/views/signup/SignUpLevel.vue

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/app.1937a8d1021663dab563.js


BIN
dist/app.1937a8d1021663dab563.js.gz


BIN
dist/app.52d14694e0420ef9aca1.js.gz


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/css/SignUpAccount.c78ca0fc.css


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/css/SignUpLevel.dc69291b.css


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/index.html


+ 0 - 0
dist/js/AppDetail.dcbf8aa0.js → dist/js/AppDetail.6a6790d6.js


+ 0 - 0
dist/js/AppRecord.a190ab6e.js → dist/js/AppRecord.1620c7e4.js


+ 0 - 0
dist/js/ApplyCertificate.6e3a3952.js → dist/js/ApplyCertificate.60bc0120.js


+ 0 - 0
dist/js/ApplyList.1d54e6b2.js → dist/js/ApplyList.936d71ce.js


+ 0 - 0
dist/js/ApplyNeed.17647f2b.js → dist/js/ApplyNeed.804c0146.js


+ 0 - 0
dist/js/LevelMusic.14122841.js → dist/js/LevelMusic.c295e74b.js


+ 0 - 0
dist/js/PayCenter.c7e5e83c.js → dist/js/PayCenter.f6c5451e.js


+ 0 - 0
dist/js/PayDefine.9adf61fb.js → dist/js/PayDefine.89850ed8.js


+ 0 - 0
dist/js/PayQRCode.0a576cf8.js → dist/js/PayQRCode.7897c710.js


+ 0 - 0
dist/js/PayQRCode.0a576cf8.js.gz → dist/js/PayQRCode.7897c710.js.gz


+ 0 - 0
dist/js/PayResult.0086aabb.js → dist/js/PayResult.7d7138fc.js


+ 0 - 0
dist/js/PaymentResult.3c84ecfe.js → dist/js/PaymentResult.21c5b616.js


+ 0 - 0
dist/js/PaymentResult.3c84ecfe.js.gz → dist/js/PaymentResult.21c5b616.js.gz


+ 0 - 0
dist/js/SignUp.a983891c.js → dist/js/SignUp.b8c6e670.js


+ 0 - 0
dist/js/SignUp.a983891c.js.gz → dist/js/SignUp.b8c6e670.js.gz


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/js/SignUpAccount.896a4710.js


BIN
dist/js/SignUpAccount.896a4710.js.gz


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/js/SignUpAccount.9884807d.js


BIN
dist/js/SignUpAccount.9884807d.js.gz


+ 0 - 0
dist/js/SignUpBaseInfo.2f099583.js → dist/js/SignUpBaseInfo.05559bd0.js


+ 0 - 0
dist/js/SignUpBaseInfo.2f099583.js.gz → dist/js/SignUpBaseInfo.05559bd0.js.gz


+ 0 - 0
dist/js/SignUpCard.40941718.js → dist/js/SignUpCard.24237d8d.js


+ 0 - 0
dist/js/SignUpCertificate.f4240a89.js → dist/js/SignUpCertificate.68b17451.js


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/js/SignUpLevel.36b572b9.js


BIN
dist/js/SignUpLevel.36b572b9.js.gz


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/js/SignUpLevel.f1603445.js


BIN
dist/js/SignUpLevel.f1603445.js.gz


+ 0 - 0
dist/js/SignUpPayment.dbf3b064.js → dist/js/SignUpPayment.a9ac310f.js


+ 0 - 0
dist/js/SignUpPayment.dbf3b064.js.gz → dist/js/SignUpPayment.a9ac310f.js.gz


+ 0 - 0
dist/js/SmallProtocol.d468dc30.js → dist/js/SmallProtocol.3a1965d4.js


+ 0 - 0
dist/js/SmallProtocol.d468dc30.js.gz → dist/js/SmallProtocol.3a1965d4.js.gz


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/js/chunk-vendors.8c10480f.js


BIN
dist/js/chunk-vendors.8c10480f.js.gz


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
dist/js/chunk-vendors.8e0757dd.js


BIN
dist/js/chunk-vendors.8e0757dd.js.gz


+ 0 - 0
dist/js/test.72effe83.js → dist/js/test.a6a68aef.js


+ 0 - 0
dist/js/test.72effe83.js.gz → dist/js/test.a6a68aef.js.gz


+ 13 - 0
package-lock.json

@@ -11979,6 +11979,19 @@
       "integrity": "sha1-KdTrSCdcf+FbkuH9XZX74qlmQ28=",
       "dev": true
     },
+    "vue-cropper": {
+      "version": "git+https://github.com/2277419213/vue-cropper.git#e22deaf2caee1547ee3b216a4b01256929baee65",
+      "from": "git+https://github.com/2277419213/vue-cropper.git#master"
+    },
+    "vue-cropper-h5": {
+      "version": "1.2.1",
+      "resolved": "https://registry.npm.taobao.org/vue-cropper-h5/download/vue-cropper-h5-1.2.1.tgz",
+      "integrity": "sha1-QOIgE1d+XjA30mWaayvfYXqBbAc=",
+      "requires": {
+        "vue": "^2.6.11",
+        "vue-cropper": "git+https://github.com/2277419213/vue-cropper.git#master"
+      }
+    },
     "vue-eslint-parser": {
       "version": "2.0.3",
       "resolved": "https://registry.npm.taobao.org/vue-eslint-parser/download/vue-eslint-parser-2.0.3.tgz?cache=0&sync_timestamp=1589539313907&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue-eslint-parser%2Fdownload%2Fvue-eslint-parser-2.0.3.tgz",

+ 1 - 0
package.json

@@ -23,6 +23,7 @@
     "vconsole": "^3.3.4",
     "vue": "^2.6.10",
     "vue-awesome-swiper": "^3.1.3",
+    "vue-cropper-h5": "^1.2.1",
     "vue-qr": "^2.2.1",
     "vue-router": "^3.0.3",
     "vuex": "^3.0.1"

+ 3 - 3
src/main.js

@@ -24,9 +24,9 @@ Vue.config.productionTip = false
 
 
 //main.js中
-import Vconsole from 'vconsole'
-const vconsole = new Vconsole()
-Vue.use(vconsole)
+// import Vconsole from 'vconsole'
+// const vconsole = new Vconsole()
+// Vue.use(vconsole)
 // import VueAMap from 'vue-amap'
 // Vue.use(VueAMap)
 // VueAMap.initAMapApiLoader({

+ 247 - 193
src/views/signup/SignUpAccount.vue

@@ -1,203 +1,257 @@
 <template>
-    <div class="signUpAccount">
-        <m-header />
-        <m-step />
+	<div class="signUpAccount">
+		<m-header />
+		<m-step />
 
-        <div class="title">基本信息</div>
-        <!-- <van-form ref="form" :show-error="false" validate-first @submit="onSubmit" @failed="onFailed"> -->
-        <van-field v-model="form.phone" required name="phone" label="手机号" placeholder="请输入手机号" />
-        <van-field v-model="form.code" required clearable name="code" label="验证码" placeholder="请输入验证码" >
-            <template #button>
-                <span class="codeText" v-show="countDownStatus" @click="onGetCode">获取验证码</span>
-                <span class="code-text" v-show="!countDownStatus">
-                    <van-count-down
-                        ref="countdown"
-                        :auto-start="false"
-                        :time="countDownTime"
-                        @finish="onCountDownFinished"
-                        format="ss秒" />
-                </span>
-            </template>
-        </van-field>
+		<div class="title">基本信息</div>
+		<!-- <van-form ref="form" :show-error="false" validate-first @submit="onSubmit" @failed="onFailed"> -->
+		<van-field v-model="form.phone" required name="phone" label="手机号" placeholder="请输入手机号" />
+		<van-field v-model="form.code" required clearable name="code" label="验证码" placeholder="请输入验证码">
+			<template #button>
+				<span class="codeText" v-show="countDownStatus" @click="onGetCode">获取验证码</span>
+				<span class="code-text" v-show="!countDownStatus">
+					<van-count-down ref="countdown" :auto-start="false" :time="countDownTime" @finish="onCountDownFinished" format="ss秒" />
+				</span>
+			</template>
+		</van-field>
 
-
-        <m-button class="stepBtn" text="下一步" @click="onSubmit" native-type="submit" />
-        <!-- </van-form> -->
-    </div>
+		<div class="agreeProtocol">
+			<van-checkbox v-model="agreeStatus"></van-checkbox>
+			<i style="font-style: normal;" @click="agreeStatus = !agreeStatus">阅读并同意</i> <span @click="onToProtocol">《用户协议》</span>
+		</div>
+		<m-button class="stepBtn" text="下一步" @click="onSubmit" native-type="submit" />
+		<!-- </van-form> -->
+	</div>
 </template>
 <script>
-import MHeader from '@/components/MHeader'
-import MStep from '@/components/MStep'
-import MButton from '@/components/MButton'
-// import { browser } from '@/common/common'
-import { patternPhone } from '@/utils/validateRules'
-import setLoading from '@/utils/loading'
-import { sendSms, smsLogin, queryUserByPhone } from './SignUpApi'
-export default {
-    name: 'signUpAccount',
-	components: { MHeader, MStep, MButton },
-    data () {
-        localStorage.removeItem("Authorization")
-        const query = this.$route.query
-        return {
-            examId: query.examId,
-            organId: query.organId,
-            patternPhone: patternPhone,
-            form: {
-                phone: null,
-                code: null,
-            },
-            countDownStatus: true, // 到计时状态
-            countDownTime: 1000 * 120 // 倒计时时间
-        }
-    },
-    mounted() {
-        // 插入token
-        // let params = this.$route.query
-        // if(params.Authorization) {
-        //     localStorage.setItem('Authorization', decodeURI(params.Authorization))
-        //     localStorage.setItem('userInfo', decodeURI(params.Authorization))
-        // }
-        // window.onbeforeunload = onbeforeunload_handler;
-        // window.onunload = onunload_handler;
-        // function onbeforeunload_handler(){
-        //     var warning="确认退出?";
-        //     return warning;
-        // }
-        // function onunload_handler(){
-        //     var warning="谢谢光临";
-        //     alert(warning);
-        // }
-    },
-    methods: {
-        async onGetCode() { // 获取验证码
-            setLoading(true)
-            if(!this.checkPhone(this.form.phone)) {
-                return
-            }
-            try {
-                const resultSend = await sendSms({ mobile: this.form.phone })
-                const result = resultSend.data
-                if(result.code === 200) {
-                    this.countDownStatus = false
-                    this.$refs.countdown.start() // 倒计时开始
-                    setLoading(false)
-                } else {
-                    this.$toast(result.msg)
-                }
-            } catch (error) {
-                //
-                setLoading(false)
-            }
-        },
-        onCountDownFinished() { // 倒计时结束
-            this.countDownStatus = true
-            this.$refs.countdown.reset()
-        },
-        async onCheckPhone() { // 检查手机号是否存在
-            setLoading(true)
-            try {
-                let form = this.form
-                let params = {
-                    mobile: form.phone
-                }
-                const code = await queryUserByPhone(params)
-                const result = code.data
-                if(result.code === 200) {
-                    // 1 为已注册,0为未注册
-                    this.onLogin(result.data)
-                } else {
-                    this.$toast(result.msg)
-                }
-            } catch(error) {
-                setLoading(false)
-            }
-        },
-        async onLogin(status) { // 登录
-            const form = this.form
-            let params = {
-                clientId: 'student',
-                clientSecret: 'student',
-                phone: form.phone,
-                smsCode: form.code,
-                organId: this.organId
-            }
-            if(status === 0) { // 不为空是为注册
-                params.registerFlag = 'true'
-            }
-            const login = await smsLogin(params)
-            const result = login.data
-            if(result.code === 200) {
-                let auth = result.data.authentication
-                localStorage.setItem('Authorization', auth.token_type + ' ' + auth.access_token)
-                this.$router.push({
-                    path: "/signUpBaseInfo",
-                    query: {
-                        organId: this.organId
-                    }
-                })
-            } else {
-                this.$toast(result.msg)
-            }
-        },
-        onSubmit() {
-            const form = this.form
-            if(!this.checkPhone(form.phone)) { // 手机号验证
-                return
-            }
-            if(!form.code) {
-                this.$toast('请输入验证码')
-                return
-            }
-            // 验证码
-            this.onCheckPhone()
-        },
-        checkPhone(phoneNumber) {
-            let result = true
-            if(!(this.patternPhone.test(phoneNumber))){
-                this.$toast('手机号输入有误')
-                result = false
-            }
-            return result
-        }
-    },
-    destroyed() {
-        this.$toast.clear()
-    }
-}
+	import MHeader from '@/components/MHeader'
+	import MStep from '@/components/MStep'
+	import MButton from '@/components/MButton'
+	// import { browser } from '@/common/common'
+	import {
+		patternPhone
+	} from '@/utils/validateRules'
+	import setLoading from '@/utils/loading'
+	import {
+		sendSms,
+		smsLogin,
+		queryUserByPhone
+	} from './SignUpApi'
+	export default {
+		name: 'signUpAccount',
+		components: {
+			MHeader,
+			MStep,
+			MButton
+		},
+		data() {
+			localStorage.removeItem("Authorization")
+			const query = this.$route.query
+			return {
+				examId: query.examId,
+				organId: query.organId,
+				patternPhone: patternPhone,
+				agreeStatus: false,
+				form: {
+					phone: null,
+					code: null,
+				},
+				countDownStatus: true, // 到计时状态
+				countDownTime: 1000 * 120 // 倒计时时间
+			}
+		},
+		mounted() {
+			// 插入token
+			// let params = this.$route.query
+			// if(params.Authorization) {
+			//     localStorage.setItem('Authorization', decodeURI(params.Authorization))
+			//     localStorage.setItem('userInfo', decodeURI(params.Authorization))
+			// }
+			// window.onbeforeunload = onbeforeunload_handler;
+			// window.onunload = onunload_handler;
+			// function onbeforeunload_handler(){
+			//     var warning="确认退出?";
+			//     return warning;
+			// }
+			// function onunload_handler(){
+			//     var warning="谢谢光临";
+			//     alert(warning);
+			// }
+		},
+		methods: {
+			async onGetCode() { // 获取验证码
+				setLoading(true)
+				if (!this.checkPhone(this.form.phone)) {
+					return
+				}
+				try {
+					const resultSend = await sendSms({
+						mobile: this.form.phone
+					})
+					const result = resultSend.data
+					if (result.code === 200) {
+						this.countDownStatus = false
+						this.$refs.countdown.start() // 倒计时开始
+						setLoading(false)
+					} else {
+						this.$toast(result.msg)
+					}
+				} catch (error) {
+					//
+					setLoading(false)
+				}
+			},
+			onCountDownFinished() { // 倒计时结束
+				this.countDownStatus = true
+				this.$refs.countdown.reset()
+			},
+			async onCheckPhone() { // 检查手机号是否存在
+				setLoading(true)
+				try {
+					let form = this.form
+					let params = {
+						mobile: form.phone
+					}
+					const code = await queryUserByPhone(params)
+					const result = code.data
+					if (result.code === 200) {
+						// 1 为已注册,0为未注册
+						this.onLogin(result.data)
+					} else {
+						this.$toast(result.msg)
+					}
+				} catch (error) {
+					setLoading(false)
+				}
+			},
+			async onLogin(status) { // 登录
+				const form = this.form
+				let params = {
+					clientId: 'student',
+					clientSecret: 'student',
+					phone: form.phone,
+					smsCode: form.code,
+					organId: this.organId
+				}
+				if (status === 0) { // 不为空是为注册
+					params.registerFlag = 'true'
+				}
+				const login = await smsLogin(params)
+				const result = login.data
+				if (result.code === 200) {
+					let auth = result.data.authentication
+					localStorage.setItem('Authorization', auth.token_type + ' ' + auth.access_token)
+					this.$router.push({
+						path: "/signUpBaseInfo",
+						query: {
+							organId: this.organId
+						}
+					})
+				} else {
+					this.$toast(result.msg)
+				}
+			},
+			onSubmit() {
+				const form = this.form
+				if (!this.checkPhone(form.phone)) { // 手机号验证
+					return
+				}
+				if (!form.code) {
+					this.$toast('请输入验证码')
+					return
+				}
+				if(!this.agreeStatus) {
+					this.$toast('请先阅读并同意用户协议')
+					return
+				}
+				// 验证码
+				this.onCheckPhone()
+			},
+			onToProtocol() { // 跳转协议
+				this.$router.push({
+					path: '/smallProtocol'
+				})
+			},
+			checkPhone(phoneNumber) {
+				let result = true
+				if (!(this.patternPhone.test(phoneNumber))) {
+					this.$toast('手机号输入有误')
+					result = false
+				}
+				return result
+			}
+		},
+		destroyed() {
+			this.$toast.clear()
+		}
+	}
 </script>
 <style lang="less" scoped>
-.signUpAccount {
-    height: 100vh;
-    overflow-y: auto;
-    overflow-x: hidden;
-    background-color: var(--main-bg-color);
-    .title {
-        font-size: .16rem;
-        color: var(--font-second-color);
-        padding: .12rem .16rem;
-    }
-    /deep/.van-cell {
-        padding: .13rem .16rem;
-    }
-    /deep/.van-field__label {
-        font-size: .17rem;
-        color: var(--font-main-color);
-        width: 1.15rem;
-    }
-    /deep/.van-field__body {
-        font-size: .16rem
-    }
+	.signUpAccount {
+		height: 100vh;
+		overflow-y: auto;
+		overflow-x: hidden;
+		background-color: var(--main-bg-color);
+
+		.title {
+			font-size: .16rem;
+			color: var(--font-second-color);
+			padding: .12rem .16rem;
+		}
+
+		/deep/.van-cell {
+			padding: .13rem .16rem;
+		}
+
+		/deep/.van-field__label {
+			font-size: .17rem;
+			color: var(--font-main-color);
+			width: 1.15rem;
+		}
+
+		/deep/.van-field__body {
+			font-size: .16rem
+		}
+
+		/deep/.van-count-down {
+			font-size: .16rem;
+			// color: ;
+		}
+
+		.codeText {
+			font-size: .16rem;
+			color: var(--main-color);
+		}
+
+		.agreeProtocol {
+			font-size: .14rem;
+			display: flex;
+			align-items: center;
+			color: var(--font-main-color);
+			padding: .15rem .15rem .05rem;
+
+			.van-checkbox {
+				padding-right: .08rem;
+			}
 
-    /deep/.van-count-down {
-        font-size: .16rem;
-        // color: ;
-    }
+			/deep/.van-checkbox__icon .van-icon {
+				// border-color: #14928A;
+				background: #fff;
+			}
 
-    .codeText {
-        font-size: .16rem;
-        color: var(--main-color);
-    }
-}
+			/deep/.van-checkbox__icon--checked .van-icon {
+				color: #FFFFFF;
+				background-color: var(--main-color);
+				border-color: var(--main-color);
+			}
 
-</style>
+			span {
+				color: var(--main-color);
+			}
+		}
+		
+		.stepBtn {
+			margin-top: .15rem;
+		}
+	}
+</style>

+ 13 - 5
src/views/signup/SignUpLevel.vue

@@ -313,6 +313,7 @@ export default {
                     if(item.type == "PERFORM") {
                         tempPerformArr.push(item)
                         tempPerformStr.push(str)
+						console.log(item)
                         this.performNumSelectIds.push(item.id)
                     } else if(item.type == "PRACTICE") {
                         tempPracticeArr.push(item)
@@ -534,10 +535,12 @@ export default {
             this.practiceUpload = []
             this.practiceUploadTemp = []
             this.practiceSelectUploadList = []
+			this.practiceSelectIds = []
             this.performNumSelectUploadList = []
             this.performNumSelect = []
             this.performNumUpload = []
             this.performNumUploadTemp = []
+			this.performNumSelectIds = []
         },
         async getExamSubjectLevel(callBack) {
             setLoading(true)
@@ -568,9 +571,6 @@ export default {
                     examSubjectId: form.subjectId,
                     examinationBasicId: this.examId,
                     level: form.levelId
-                    // examSubjectId: 5,
-                    // examinationBasicId: 6,
-                    // level: 1
                 }
                 const res = await getExamSubjectSong(params)
                 const result = res.data
@@ -592,7 +592,6 @@ export default {
         },
         onChangePractice(type, index) {
             let songList = this.songList
-            // console.log(songList)
             let sheetSong = this.sheetSong
             sheetSong.columns = []
             sheetSong.index = 0
@@ -861,6 +860,11 @@ export default {
                 return false
             }
             // 有值说明是列表
+			console.log({
+				practiceSongIdList: this.practiceSongIdList,
+				practiceUpload: this.practiceUpload,
+				practiceSelectIds: this.practiceSelectIds
+			})
             if(this.practiceSongIdList) {
                 if(this.practiceSelectIds.length != this.practiceNum) {
                     this.$toast('请选择练习曲')
@@ -872,7 +876,11 @@ export default {
                     return false
                 }
             }
-
+			console.log({
+				performSongIdList: this.performSongIdList,
+				performNumUpload: this.performNumUpload,
+				performNumSelectIds: this.performNumSelectIds
+			})
             if(this.performSongIdList) {
                 if(this.performNumSelectIds.length != this.performNum) {
                     this.$toast('请选择演奏曲')

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است