| 
					
				 | 
			
			
				@@ -10,39 +10,23 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <div class="title">报考曲目</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <div class="van-hairline--bottom" v-if="practiceSongIdList" key="practiceNum"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <van-field required v-for="(item, index) in practiceNum" :key="index" readonly :label="`练习曲${numberToCN(index)}名称及作者`" v-model.trim="practiceSelect[index]" @click="onChangePractice('practice', index)" placeholder="请选择" is-link /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <van-field required readonly v-for="(item, index) in practiceNum" :key="index" :label="`练习曲${numberToCN(index)}名称及作者`" v-model.trim="practiceSelect[index]" @click="onChangePractice('practice', index)" placeholder="请选择" is-link /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <div class="van-hairline--bottom" v-else key="practiceNum"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <van-field required v-for="(item, index) in practiceNum" :key="index" clearable name="code" :label="`练习曲${numberToCN(index)}名称及作者`" placeholder="自定义曲目" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <template #input> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        <van-uploader 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :name="`practiceNum-${index}`" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :before-read="beforeRead" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :before-delete="beforeDelete" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :after-read="afterRead" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            v-model.trim="practiceUpload[index]" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            accept="image/*" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            multiple 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :max-count="1" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <van-field required readonly v-model.trim="practiceSelect[index]" v-for="(item, index) in practiceNum" :key="index" clearable name="code" :label="`练习曲${numberToCN(index)}名称及作者`" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <template #button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <span class="codeText" @click="onUploadSong('practiceNum', index)">上传曲目</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 </van-field> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <div v-if="performSongIdList" key="performNum"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <van-field required v-for="(item, index) in performNum" :key="index" readonly :label="`演奏曲${numberToCN(index)}名称及作者`" v-model.trim="performNumSelect[index]" @click="onChangePractice('performNum', index)" placeholder="请选择" is-link /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <van-field required readonly v-for="(item, index) in performNum" :key="index" :label="`演奏曲${numberToCN(index)}名称及作者`" v-model.trim="performNumSelect[index]" @click="onChangePractice('performNum', index)" placeholder="请选择" is-link /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <div v-else key="performNum"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <van-field required v-for="(item, index) in performNum" :key="index" clearable name="code" :label="`演奏曲${numberToCN(index)}名称及作者`" placeholder="自定义曲目" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <template #input> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        <van-uploader 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :name="`performNum-${index}`" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :before-read="beforeRead" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :before-delete="beforeDelete" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :after-read="afterRead" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            v-model.trim="performNumUpload[index]" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            accept="image/*" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            multiple 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            :max-count="1" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <van-field required readonly v-model.trim="performNumSelect[index]" v-for="(item, index) in performNum" :key="index" clearable name="code" :label="`演奏曲${numberToCN(index)}名称及作者`" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <template #button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <span class="codeText" @click="onUploadSong('performNum', index)">上传曲目</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 </van-field> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </div> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -96,25 +80,47 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <van-picker :default-index="sheetSong.index" :columns="sheetSong.columns" show-toolbar @cancel="sheetSong.status = false" @confirm="onPracticeConfirm" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         </van-popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <!-- <van-popup class="van-popup-song" v-model="songStatus"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <van-popup class="van-popup-song" v-model="songUpload.songStatus"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             <div class="song-popup"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 <div class="title">自定义曲目</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <div class="song-upload"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <van-uploader multiple :max-count="1" :max-size="3 * 1024 * 1024" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        <div class="upload-container"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            <van-icon name="plus" /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            <p>点击上传</p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    </van-uploader> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                <p class="song-popup-tips">支持格式:pdf,png,jpg,bmp</p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <van-field name="songName" v-model="songUpload.name" label="曲名" placeholder="请输入曲名" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <template #label><i style="color: #ee0a24">*</i>曲名</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </van-field> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <van-field name="songAuthor" v-model="songUpload.author" label="作者" placeholder="请输入作者" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <template #label><i style="color: #ffffff">*</i>作者</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </van-field> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <van-field readonly clearable > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <template #input> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <van-uploader 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            v-if="songUpload.indexName == 'practiceNum'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :name="songUpload.indexName + '-' + songUpload.index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :before-read="beforeRead" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :before-delete="beforeDelete" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :after-read="afterRead" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            v-model.trim="practiceUpload[songUpload.index]" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            multiple 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :max-count="5" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </van-uploader> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <van-uploader 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            v-if="songUpload.indexName == 'performNum'" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :name="songUpload.indexName + '-' + songUpload.index" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :before-read="beforeRead" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :before-delete="beforeDelete" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :after-read="afterRead" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            v-model.trim="performNumUpload[songUpload.index]" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            multiple 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :max-count="5" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </van-uploader> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </van-field> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <p class="song-popup-tips"><i style="color: #ee0a24">*</i>支持格式:pdf,png,jpg,bmp</p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 <div class="popup-group"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <span @click="songStatus = false">取消</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    <span class="popup-sure" @click="songStatus = false">确定</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <span @click="songUpload.songStatus = false">取消</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <span class="popup-sure" @click="onSaveUpload">确定</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        </van-popup> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </van-popup> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 <script> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -140,8 +146,10 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	components: { MHeader, MStep }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     data () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         const examId = localStorage.getItem('examId') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        const organId = localStorage.getItem('organId') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             examId: examId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            organId: organId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             patternPhone: patternPhone, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             sheetForm: { // 上拉弹窗 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 currentType: null, // 当前选择的类型 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -159,14 +167,20 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             performNum: 0, // 演奏曲数量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             performSongIdList: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             songList: [], //歌曲数量(包括练习曲和演奏曲) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            songStatus: false, // 曲目状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            songUpload: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                songStatus: false, // 曲目状态 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                indexName: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                index: null, // 索引 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                name: null, // 曲名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                author: null // 作者 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             form: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 subjectId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 levelId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 adviserName: null, // 老师姓名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 adviserPhone: null, // 联系电话 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 lastExamCertificateUrl: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                lastExamCertificateUrl2: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                lastMusicTheoryCertificateUrl: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 examMusicTheoryId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             formText: { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -179,17 +193,19 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 index: 0, // 选中的索引值 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 columns: [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            practiceSelect: [], // 循环列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            practiceSelect: [], // 练习曲循环列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            practiceSelectUploadList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            practiceSelectList: [], // 弹窗练习曲列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             practiceSelectIds: [], // 选中练习曲编号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            performNumSelect: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            performNumSelect: [], // 演奏曲循环列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            performNumSelectUploadList: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            performNumSelectList: [], // 弹窗演奏曲列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             performNumSelectIds: [], // 选中演奏曲编号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             songSelectIndex: null, // 选中的哪个 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             uploadCertificate: [],  // 上传证书 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             uploadCertificate2: [], // 上传乐理证书 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             practiceUpload: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            practiceUploadImg: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             performNumUpload: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            performNumUploadImg: [], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             examMusicTheoryList: [], // 乐理列表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             examMusicTheoryIndex: 0, // 乐理索引 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -423,9 +439,11 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if(value.type == "PRACTICE") { // 练习 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 this.practiceSelect[songSelectIndex] = value.text 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 this.practiceSelectIds[songSelectIndex] = value.value 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.practiceSelectList[songSelectIndex] = value 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } else if(value.type == "PERFORM") { // 演奏 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 this.performNumSelect[songSelectIndex] = value.text 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 this.performNumSelectIds[songSelectIndex] = value.value 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.performNumSelectList[songSelectIndex] = value 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             this.sheetSong.status = false 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -440,10 +458,11 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         beforeDelete(file, detail) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            const obj = detail.name.split('-') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             let form = this.form 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if(detail.name == "certificate2") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                form.lastExamCertificateUrl2 = "" // 上传图片地址为空 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            } else if(detail.name == "certificate") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(obj[0] == "certificate2") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                form.lastMusicTheoryCertificateUrl = "" // 上传图片地址为空 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else if(obj[0] == "certificate") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 form.lastExamCertificateUrl = "" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return true 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -461,13 +480,13 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     file.status = 'done' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     let form = this.form 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if(obj[0] == "certificate2") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        form.lastExamCertificateUrl2 = result.data.url // 上传图片地址为空 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        form.lastMusicTheoryCertificateUrl = result.data.url // 上传图片地址为空 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } else if(obj[0] == "certificate") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         form.lastExamCertificateUrl = result.data.url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } else if(obj[0] == 'practiceNum') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        this.practiceUploadImg[obj[1]] = result.data.url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        file.url = result.data.url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } else if(obj[0] == 'performNum') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        this.performNumUploadImg[obj[1]] = result.data.url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        file.url = result.data.url 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     file.status = 'failed' 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -479,16 +498,108 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 return false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        onUploadSong(value, index) { // 上传曲目 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let songUpload = this.songUpload 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            songUpload.songStatus = true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            songUpload.indexName = value 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            songUpload.index = index 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let practiceSUL = this.practiceSelectUploadList[index] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let performSUL = this.performNumSelectUploadList[index] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(value == "practiceNum") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                songUpload.name = practiceSUL ? practiceSUL.name : null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                songUpload.author = practiceSUL ? practiceSUL.author : null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else if(value == "performNum") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                songUpload.name = performSUL ? performSUL.name : null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                songUpload.author = performSUL ? performSUL.author : null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        onSaveUpload() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let songUpload = this.songUpload 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(!songUpload.name) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                this.$toast("请输入曲名") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            const nameAuthor = songUpload.name + (songUpload.author ? "-" + songUpload.author : "") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(songUpload.indexName == "practiceNum") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(!this.practiceUpload[songUpload.index]) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.$toast("请上传文件") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.practiceSelect[songUpload.index] = nameAuthor 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.practiceSelectUploadList[songUpload.index] = JSON.parse(JSON.stringify(songUpload)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } else if(songUpload.indexName == "performNum") { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(!this.performNumUpload[songUpload.index]) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.$toast("请上传文件") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.performNumSelect[songUpload.index] = nameAuthor 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.performNumSelectUploadList[songUpload.index] = JSON.parse(JSON.stringify(songUpload)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            songUpload.name = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            songUpload.author = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            songUpload.songStatus = false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         async onSubmit() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            // setLoading(true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            this.$router.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                path: '/signUpPayment' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            setLoading(true) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 // 验证 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if(!this.onCheckFields()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                let songJson = [] // json 数组 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 练习课 "PRACTICE" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(this.practiceSongIdList) {  // 下拉选择 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.practiceSelectList.forEach(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        songJson.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            id: item.id, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            type: item.type, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            songName: item.songName, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            songAuthor: item.songAuthor 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else {  // 自选 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    const practiceUpload = this.practiceUpload 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.practiceSelectUploadList.forEach(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        let tempUrl = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        practiceUpload[item.index].forEach(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            tempUrl.push(item.url) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        songJson.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            songName: item.name, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            songAuthor: item.author, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            type: "PRACTICE", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            uploadUrl: tempUrl.join(',') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                // 演奏课 "PERFORM" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(this.performSongIdList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.performNumSelectList.forEach(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        songJson.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            id: item.id, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            type: item.type, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            songName: item.songName, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            songAuthor: item.songAuthor 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    const performNumUpload = this.performNumUpload 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.performNumSelectUploadList.forEach(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        let tempUrl = [] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        performNumUpload[item.index].forEach(item => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            tempUrl.push(item.url) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        songJson.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            songName: item.name, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            songAuthor: item.author, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            type: "PERFORM", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            uploadUrl: tempUrl.join(',') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 let form = this.form, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     formText = this.formText 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 let params = { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -499,14 +610,25 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     examSubjectSongId: form.subjectId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     examinationBasicId: this.examId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     lastExamCertificateUrl: form.lastExamCertificateUrl, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    level: form.levelId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    lastMusicTheoryCertificateUrl: form.lastMusicTheoryCertificateUrl, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    level: form.levelId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    subjectId: form.subjectId, // 考级专业 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    songJson: JSON.stringify(songJson), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    organId: this.organId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 console.log("参数", params) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                let res = await examRegistrationAdd(params) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                const res = await examRegistrationAdd(params) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 setLoading(false) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                let result = res.data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                const result = res.data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if(result.code == 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    // 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    const tempResult = result.data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    this.$router.push({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        path: '/signUpPayment', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        query: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            examRegistrationId: tempResult.examRegister.id, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            payMap: JSON.stringify(tempResult.payMap) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     this.$toast(result.msg) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -533,7 +655,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     return false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if(this.practiceUploadImg.length != this.practiceNum) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(this.practiceUpload.length != this.practiceNum) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     this.$toast('请上传练习曲') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     return false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -545,7 +667,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     return false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if(this.performNumUploadImg.length != this.performNum) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if(this.performNumUpload.length != this.performNum) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     this.$toast('请上传演奏曲') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     return false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -556,7 +678,7 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 return false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if(form.examMusicTheoryId > 1 && !form.lastExamCertificateUrl2) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(form.examMusicTheoryId > 1 && !form.lastMusicTheoryCertificateUrl) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 this.$toast('请上传考级证书') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 return false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -621,56 +743,89 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// .van-popup-song { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//     width: 80%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//     border-radius: .08rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// .song-popup { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//     text-align: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//     .title { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         font-size: 18px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         font-weight: 500; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         color: var(--font-main-color); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         padding: .2rem 0 .24rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//     .song-upload { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         margin: 0 .5rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         padding: .18rem 0 .1rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         border-radius: .05rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         // border: 1px dashed #777777; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         border: 1px dashed transparent; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         // background: linear-gradient(wihte, wihte); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         background: linear-gradient(0deg, transparent 6px, #777777 6px) repeat-y, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//             linear-gradient(0deg, transparent 50%, #777777 0) repeat-y, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//             linear-gradient(90deg, transparent 50%, #777777 0) repeat-x, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//             linear-gradient(90deg, transparent 50%, #777777 0) repeat-x; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         background-size: 1px 12px, 1px 12px, 12px 1px, 12px 1px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         background-position: 0 0, 100% 0, 0 0, 0 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         font-size: .16rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         color: #777; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//     .song-popup-tips { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         font-size: .14rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         color: #808080; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         padding-top: .1rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         padding-bottom: .25rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//     .popup-group { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         color: var(--main-color); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         background-color: #F0F0F0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         font-size: .18rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         span { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//             padding: .12rem 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//             flex: 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         .popup-sure { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//             color: #ffffff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//             background-color: var(--main-color); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-//     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-// } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.van-popup-song { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    width: 80%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    border-radius: .08rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.song-popup { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    text-align: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .title { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        font-size: 18px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        font-weight: 500; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        color: var(--font-main-color); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        padding: .2rem 0 .15rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // .song-upload { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //     margin: 0 .5rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //     padding: .18rem 0 .1rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //     border-radius: .05rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //     border: 1px dashed transparent; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //     background: linear-gradient(0deg, transparent 6px, #777777 6px) repeat-y, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //         linear-gradient(0deg, transparent 50%, #777777 0) repeat-y, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //         linear-gradient(90deg, transparent 50%, #777777 0) repeat-x, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //         linear-gradient(90deg, transparent 50%, #777777 0) repeat-x; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //     background-size: 1px 12px, 1px 12px, 12px 1px, 12px 1px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //     background-position: 0 0, 100% 0, 0 0, 0 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //     font-size: .16rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //     color: #777; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .song-upload { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        border-radius: .05rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        border: 1px solid #c5c7cb; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        background-position: 0 0, 100% 0, 0 0, 0 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        font-size: .16rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        color: #777; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        width: 80px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        height: 80px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        justify-content: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        align-items: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        text-align: center; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .van-uploader__preview { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            margin: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        p { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            font-size: 13px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /deep/.van-uploader { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        margin: 0 auto; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /deep/.van-uploader__upload, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /deep/.van-uploader__preview-image { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            width: 65px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            height: 65px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .song-popup-tips { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        font-size: .14rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        color: #808080; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        padding-bottom: .15rem 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // padding-top: .1rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // padding-bottom: .25rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /deep/.van-cell { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        padding: 13px 35px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /deep/.van-field__label { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        width: .8rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        text-align: left; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .popup-group { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        color: var(--main-color); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        background-color: #F0F0F0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        font-size: .18rem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        span { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            padding: .12rem 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            flex: 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .popup-sure { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            color: #ffffff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            background-color: var(--main-color); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /deep/.van-uploader__upload { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     margin-bottom: 0; 
			 |