Explorar el Código

Merge branch 'master' into wxl

lex-xin hace 4 años
padre
commit
36a66fcda4
Se han modificado 43 ficheros con 187 adiciones y 65 borrados
  1. 0 0
      dist/app.7cb0967693549c89e57a.js
  2. BIN
      dist/app.7cb0967693549c89e57a.js.gz
  3. 0 0
      dist/css/AppDetail.88467e17.css
  4. 0 0
      dist/css/AppDetail.9760102a.css
  5. 1 0
      dist/css/SignUp.45d0961a.css
  6. 0 1
      dist/css/SignUp.df7bbcf3.css
  7. BIN
      dist/css/SignUpBaseInfo.0e8de62e.css.gz
  8. 0 0
      dist/css/SignUpBaseInfo.33618853.css
  9. BIN
      dist/css/SignUpBaseInfo.33618853.css.gz
  10. 0 0
      dist/css/SignUpLevel.c15aafc1.css
  11. 0 0
      dist/css/SignUpPayment.d5e95497.css
  12. 1 1
      dist/index.html
  13. 0 0
      dist/js/AppDetail.7d461574.js
  14. BIN
      dist/js/AppDetail.7d461574.js.gz
  15. 0 0
      dist/js/AppDetail.c2b06c9f.js
  16. BIN
      dist/js/AppDetail.c2b06c9f.js.gz
  17. 0 0
      dist/js/PaymentResult.670395bb.js
  18. BIN
      dist/js/PaymentResult.670395bb.js.gz
  19. 0 0
      dist/js/SignUp.3aa8f777.js
  20. BIN
      dist/js/SignUp.3aa8f777.js.gz
  21. 0 0
      dist/js/SignUp.eed67146.js
  22. BIN
      dist/js/SignUp.eed67146.js.gz
  23. 0 0
      dist/js/SignUpAccount.4e05396d.js
  24. BIN
      dist/js/SignUpAccount.4e05396d.js.gz
  25. BIN
      dist/js/SignUpAccount.e0c6e877.js.gz
  26. 0 0
      dist/js/SignUpBaseInfo.06245019.js
  27. BIN
      dist/js/SignUpBaseInfo.06245019.js.gz
  28. 0 0
      dist/js/SignUpBaseInfo.ff148601.js
  29. BIN
      dist/js/SignUpBaseInfo.ff148601.js.gz
  30. 0 0
      dist/js/SignUpLevel.4ece0dd6.js
  31. BIN
      dist/js/SignUpLevel.4ece0dd6.js.gz
  32. 0 0
      dist/js/SignUpLevel.da366874.js
  33. BIN
      dist/js/SignUpLevel.da366874.js.gz
  34. 0 0
      dist/js/SignUpPayment.51f257aa.js
  35. BIN
      dist/js/SignUpPayment.51f257aa.js.gz
  36. 0 0
      dist/js/SignUpPayment.5797d033.js
  37. BIN
      dist/js/SignUpPayment.5797d033.js.gz
  38. 1 1
      public/index.html
  39. 169 46
      src/views/app/AppDetail.vue
  40. 3 3
      src/views/signup/SignUp.vue
  41. 3 2
      src/views/signup/SignUpBaseInfo.vue
  42. 7 9
      src/views/signup/SignUpLevel.vue
  43. 2 2
      src/views/signup/SignUpPayment.vue

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/app.7cb0967693549c89e57a.js


BIN
dist/app.f1791332ded2e56a771e.js.gz → dist/app.7cb0967693549c89e57a.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/css/AppDetail.88467e17.css


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/css/AppDetail.9760102a.css


+ 1 - 0
dist/css/SignUp.45d0961a.css

@@ -0,0 +1 @@
+.SignUp[data-v-af5ef364]{max-width:700px;position:relative;overflow-y:auto;overflow-x:hidden;background-color:#fff;margin:0 auto}.container[data-v-af5ef364]{min-height:100vh;background:url(../img/signUpBg.8e6b6a64.png) no-repeat top #f3f4f8;background-size:contain;overflow:hidden}.container h2[data-v-af5ef364]{position:absolute;padding-top:.4rem;color:#fff;font-size:.26rem;font-weight:700;width:2.1rem;text-align:left;margin-left:.16rem}.container .section[data-v-af5ef364]{background:#fff;margin:1.87rem .16rem .15rem;border-radius:.1rem;padding:.22rem}.container .section .title[data-v-af5ef364]{margin-top:.28rem;font-size:.18rem;color:#1a1a1a;font-weight:500}.container .section .content[data-v-af5ef364]{padding-top:.05rem;color:grey;font-size:.16rem;word-break:break-all}.container .sectionStatus[data-v-af5ef364]{text-align:center;padding:1rem 0 .5rem}.container .sectionStatus img[data-v-af5ef364]{width:1.2rem}.container .sectionStatus h3[data-v-af5ef364]{padding-top:.3rem;font-size:.18rem;color:#1a1a1a}.container .sectionStatus p[data-v-af5ef364]{padding-top:.05rem;font-size:.14rem;color:#999}.container .protocol[data-v-af5ef364]{font-size:.14rem;margin-bottom:.3rem;text-align:center;display:block;color:#0091ff}.container .van-button--primary[data-v-af5ef364]{margin:.36rem 0 .18rem;background-color:#2dc7aa;border:1px solid #2dc7aa;color:#fff;font-size:.18rem;height:.5rem;line-height:.52rem;width:90%;margin-left:5%}

+ 0 - 1
dist/css/SignUp.df7bbcf3.css

@@ -1 +0,0 @@
-.SignUp[data-v-49fecf3a]{max-width:700px;position:relative;overflow-y:auto;overflow-x:hidden;background-color:#fff;margin:0 auto}.container[data-v-49fecf3a]{min-height:100vh;background:url(../img/signUpBg.8e6b6a64.png) no-repeat top #f3f4f8;background-size:contain;overflow:hidden}.container h2[data-v-49fecf3a]{position:absolute;padding-top:.4rem;color:#fff;font-size:.26rem;font-weight:700;width:2.1rem;text-align:left;margin-left:.16rem}.container .section[data-v-49fecf3a]{background:#fff;margin:1.87rem .16rem .15rem;border-radius:.1rem;padding:.22rem}.container .section .title[data-v-49fecf3a]{margin-top:.28rem;font-size:.18rem;color:#1a1a1a;font-weight:500}.container .section .content[data-v-49fecf3a]{padding-top:.05rem;color:grey;font-size:.16rem;word-break:break-all}.container .sectionStatus[data-v-49fecf3a]{text-align:center;padding:1rem 0 .5rem}.container .sectionStatus img[data-v-49fecf3a]{width:1.2rem}.container .sectionStatus h3[data-v-49fecf3a]{padding-top:.3rem;font-size:.18rem;color:#1a1a1a}.container .sectionStatus p[data-v-49fecf3a]{padding-top:.05rem;font-size:.14rem;color:#999}.container .protocol[data-v-49fecf3a]{font-size:.14rem;margin-bottom:.3rem;text-align:center;display:block;color:#0091ff}.container .van-button--primary[data-v-49fecf3a]{margin:.36rem 0 .18rem;background-color:#2dc7aa;border:1px solid #2dc7aa;color:#fff;font-size:.18rem;height:.5rem;line-height:.52rem;width:90%;margin-left:5%}

BIN
dist/css/SignUpBaseInfo.0e8de62e.css.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/css/SignUpBaseInfo.33618853.css


BIN
dist/css/SignUpBaseInfo.33618853.css.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/css/SignUpLevel.c15aafc1.css


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/css/SignUpPayment.d5e95497.css


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 1 - 1
dist/index.html


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/AppDetail.7d461574.js


BIN
dist/js/AppDetail.7d461574.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/AppDetail.c2b06c9f.js


BIN
dist/js/AppDetail.c2b06c9f.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/PaymentResult.670395bb.js


BIN
dist/js/PaymentResult.243100eb.js.gz → dist/js/PaymentResult.670395bb.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/SignUp.3aa8f777.js


BIN
dist/js/SignUp.3aa8f777.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/SignUp.eed67146.js


BIN
dist/js/SignUp.eed67146.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/SignUpAccount.4e05396d.js


BIN
dist/js/SignUpAccount.4e05396d.js.gz


BIN
dist/js/SignUpAccount.e0c6e877.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/SignUpBaseInfo.06245019.js


BIN
dist/js/SignUpBaseInfo.06245019.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/SignUpBaseInfo.ff148601.js


BIN
dist/js/SignUpBaseInfo.ff148601.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/SignUpLevel.4ece0dd6.js


BIN
dist/js/SignUpLevel.4ece0dd6.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/SignUpLevel.da366874.js


BIN
dist/js/SignUpLevel.da366874.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/SignUpPayment.51f257aa.js


BIN
dist/js/SignUpPayment.51f257aa.js.gz


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
dist/js/SignUpPayment.5797d033.js


BIN
dist/js/SignUpPayment.5797d033.js.gz


+ 1 - 1
public/index.html

@@ -14,7 +14,7 @@
     <meta http-equiv="Pragma" content="no-cache">
     <meta http-equiv="Cache-control" content="no-cache">
     <meta http-equiv="Cache" content="no-cache">
-    <meta name="description" content="" >
+    <meta name="description" content="酷乐秀是一个专注于音乐类在线教育领域的平台,致力于打造新一代云教育体系,突破教育资源,地域限制等因素的影响,为“教”“学”两端提供专业服务。" >
 
     <link rel="icon" href="<%= BASE_URL %>favicon.ico">
     <title>酷乐秀</title>

+ 169 - 46
src/views/app/AppDetail.vue

@@ -12,15 +12,12 @@
             <van-cell title="专业等级" >
                 {{ form.subjectName }}({{ form.level | formatLevel }})
             </van-cell>
-            <van-cell v-for="(item, index) in performInfo" :key="index" :title="`练习曲${numberToCN(index)}`" @click="onOpen('perform', index)" is-link >
+            <van-cell v-for="(item, index) in practiceInfo" :key="index" :title="`练习曲${numberToCN(index)}`" @click="onOpen('practice', index)" is-link >
                 {{ item.songName }} {{ item.songAuthor ? '-' + item.songAuthor : item.songAuthor }}
             </van-cell>
-            <van-cell v-for="(item, index) in practiceInfo" :key="index" :title="`演奏曲${numberToCN(index)}`" @click="onOpen('practice', index)" is-link >
+            <van-cell v-for="(item, index) in performInfo" :key="index" :title="`演奏曲${numberToCN(index)}`" @click="onOpen('perform', index)" is-link >
                 {{ item.songName }} {{ item.songAuthor ? '-' + item.songAuthor : item.songAuthor }}
             </van-cell>
-            <!-- <van-cell title="练习曲" is-link />
-            <van-cell title="演奏曲" is-link />
-            <van-cell title="演奏曲" is-link /> -->
             <van-field v-model="form.name" disabled label="考级证书" >
                 <template #input>
                     <van-uploader
@@ -52,13 +49,12 @@
                         :max-count="1" />
                 </template>
             </van-field>
-            <!-- disabled
-                        :deletable="false" -->
         </van-cell-group>
 
         <van-cell-group class="memos">
             <van-cell disabled title="报名审核" >
                 <p class="pass" v-if="form.status === 'AUDIT_PASS'">已通过</p>
+                <p v-else-if="form.status === 'AUDIT_WAIT'">等待审核</p>
                 <p class="noPass" v-else>未通过</p>
             </van-cell>
             <van-cell title="备注" >
@@ -70,10 +66,10 @@
         <van-popup class="van-popup-song" v-model="songUpload.songStatus" :close-on-click-overlay="false">
             <div class="song-popup">
                 <div class="title">自定义曲目</div>
-                <van-field name="songName" v-model="songUpload.name" :disabled="!form.editStatus" label="曲名" placeholder="请输入曲名" >
+                <van-field name="songName" v-model="songUpload.songName" :disabled="!form.editStatus" label="曲名" placeholder="请输入曲名" >
                     <template #label><i style="color: #ee0a24">*</i>曲名</template>
                 </van-field>
-                <van-field name="songAuthor" :disabled="!form.editStatus" v-model="songUpload.author" label="作者" placeholder="请输入作者" >
+                <van-field name="songAuthor" :disabled="!form.editStatus" v-model="songUpload.songAuthor" label="作者" placeholder="请输入作者" >
                     <template #label><i style="color: #ffffff">*</i>作者</template>
                 </van-field>
                 <van-field readonly clearable >
@@ -110,7 +106,7 @@
 
                 <div class="popup-group">
                     <span @click="onSaveCancel">取消</span>
-                    <span class="popup-sure">确定</span>
+                    <span @click="onSaveUpload" class="popup-sure">确定</span>
                 </div>
             </div>
         </van-popup>
@@ -133,6 +129,7 @@ export default {
             headerStatus: false,
             examRegistrationId: query.examRegistrationId,
             form: {
+                id: null,
                 paymentOrderNo: null,
                 examBaseName: null,
                 subjectName: null,
@@ -153,12 +150,16 @@ export default {
                 songStatus: false, // 曲目状态
                 indexName: null,
                 index: null, // 索引
-                name: null, // 曲名
-                author: null // 作者
+                songName: null, // 曲名
+                songAuthor: null // 作者
             },
+            practiceNum: null,
             performUpload: [], // 演奏曲
+            performUploadTemp: [], // 演奏曲
             performInfo: [], // 演奏曲基本信息
+            performNum: null,
             practiceUpload: [], // 练习曲
+            practiceUploadTemp: [], // 练习曲
             practiceInfo: [], // 练习曲基本信息
         }
     },
@@ -186,11 +187,12 @@ export default {
                     rows: 20,
                     examRegistrationId: this.examRegistrationId
                 })
+                setLoading(false)
                 const result = res.data
                 if(result.code == 200) {
                     const detail = result.data.rows ? result.data.rows[0] : {}
-                    // console.log(detail)
                     this.form = {
+                        id: detail.id,
                         paymentOrderNo: detail.paymentOrderNo,
                         examBaseName: detail.examBaseName,
                         subjectName: detail.subjectName,
@@ -215,7 +217,7 @@ export default {
                     const songJson = detail.songJson ? JSON.parse(detail.songJson) : []
                     songJson.forEach(item => {
                         // 曲谱
-                        const uploadUrl = item.uploadUrl.split(',')
+                        const uploadUrl = item.uploadUrl ? item.uploadUrl.split(',') : []
                         let tempUrl = []
                         uploadUrl.forEach(url => {
                             tempUrl.push({
@@ -224,39 +226,40 @@ export default {
                         })
                         if(item.type === "PRACTICE") {
                             this.practiceUpload.push(tempUrl)
+                            this.practiceUploadTemp.push(tempUrl)
                             this.practiceInfo.push(item)
                         } else if(item.type === "PERFORM") {
                             this.performUpload.push(tempUrl)
+                            this.performUploadTemp.push(tempUrl)
                             this.performInfo.push(item)
                         }
                     })
+                    this.practiceNum = this.practiceUpload.length
+                    this.performNum = this.performUpload.length
                 }
-                // examRegistrationId
-            }catch(err) {
+            } catch(err) {
                 //
+                setLoading(false)
             }
-            setLoading(false)
         },
         onOpen(type, index) {
             let songUpload = this.songUpload
             let practiceSUL = this.practiceInfo[index]
             let performSUL = this.performInfo[index]
-            // practiceSongIdList: detail.practiceSongIdList,
-            //             performSongIdList: detail.performSongIdList,
             const practiceSongIdList = this.form.practiceSongIdList
             const performSongIdList = this.form.performSongIdList
             if(type == "perform") {
                 if(performSongIdList) {
                     return
                 }
-                songUpload.name = performSUL ? performSUL.songName : null
-                songUpload.author = performSUL ? performSUL.songAuthor : null
+                songUpload.songName = performSUL ? performSUL.songName : null
+                songUpload.songAuthor = performSUL ? performSUL.songAuthor : null
             } else if(type == "practice") {
                 if(practiceSongIdList) { // 判断是否是自定义
                     return
                 }
-                songUpload.name = practiceSUL ? practiceSUL.songName : null
-                songUpload.author = practiceSUL ? practiceSUL.songAuthor : null
+                songUpload.songName = practiceSUL ? practiceSUL.songName : null
+                songUpload.songAuthor = practiceSUL ? practiceSUL.songAuthor : null
             }
             songUpload.indexName = type
             songUpload.index = index
@@ -269,25 +272,26 @@ export default {
                 this.$toast('上传图片大小不能超过 5MB')
                 return false
             }
-            return new Promise((resolve) => {
-                fileUtil.getOrientation(file).then((orient) => {
-                    if (orient && orient != "" && orient != 1) {
-                        let reader = new FileReader()
-                        let img = new Image()
-                        reader.onload = (e) => {
-                            img.src = e.target.result
-                            img.onload = function () {
-                                const data = fileUtil.rotateImage(img, img.width, img.height, orient)
-                                const newFile = fileUtil.dataURLtoFile(data, file.name)
-                                resolve(newFile)
-                            }
-                        }
-                        reader.readAsDataURL(file)
-                    } else {
-                        resolve(file)
-                    }
-                })
-            })
+            return true
+            // return new Promise((resolve) => {
+            //     fileUtil.getOrientation(file).then((orient) => {
+            //         if (orient && orient != "" && orient != 1) {
+            //             let reader = new FileReader()
+            //             let img = new Image()
+            //             reader.onload = (e) => {
+            //                 img.src = e.target.result
+            //                 img.onload = function () {
+            //                     const data = fileUtil.rotateImage(img, img.width, img.height, orient)
+            //                     const newFile = fileUtil.dataURLtoFile(data, file.name)
+            //                     resolve(newFile)
+            //                 }
+            //             }
+            //             reader.readAsDataURL(file)
+            //         } else {
+            //             resolve(file)
+            //         }
+            //     })
+            // })
         },
         beforeDelete(file, detail) {
             const obj = detail.name.split('-')
@@ -315,9 +319,9 @@ export default {
                         form.lastMusicTheoryCertificateUrl = result.data.url // 上传图片地址为空
                     } else if(obj[0] == "certificate") {
                         form.lastExamCertificateUrl = result.data.url
-                    } else if(obj[0] == 'practiceNum') {
+                    } else if(obj[0] == 'practice') {
                         file.url = result.data.url
-                    } else if(obj[0] == 'performNum') {
+                    } else if(obj[0] == 'perform') {
                         file.url = result.data.url
                     }
                 } else {
@@ -330,11 +334,130 @@ export default {
                 return false
             }
         },
-        onSubmit() {
-            console.log(true)
+        async onSubmit() {
+            if(!this.onCheckFields()) {
+                return
+            }
+
+            let songJson = [] // json 数组
+            // 练习课 "PRACTICE"
+            const practiceUpload = this.practiceUpload
+            this.practiceInfo.forEach(item => {
+                let tempUrl = []
+                practiceUpload[item.index].forEach(item => {
+                    tempUrl.push(item.url)
+                })
+                songJson.push({
+                    songName: item.songName,
+                    songAuthor: item.songAuthor,
+                    index: item.index,
+                    type: "PRACTICE",
+                    uploadUrl: tempUrl.join(',')
+                })
+            })
+            // 演奏课 "PERFORM"
+            const performNumUpload = this.performNumUpload
+            this.performInfo.forEach(item => {
+                let tempUrl = []
+                performNumUpload[item.index].forEach(item => {
+                    tempUrl.push(item.url)
+                })
+                songJson.push({
+                    songName: item.songName,
+                    songAuthor: item.songAuthor,
+                    index: item.index,
+                    type: "PERFORM",
+                    uploadUrl: tempUrl.join(',')
+                })
+            })
+            let form = this.form
+            let params = {
+                id: form.id,
+                lastExamCertificateUrl: form.lastExamCertificateUrl,
+                lastMusicTheoryCertificateUrl: form.lastMusicTheoryCertificateUrl,
+                songJson: JSON.stringify(songJson),
+                status: "AUDIT_WAIT"
+            }
+            setLoading(true)
+            try {
+                const res = await examRegistrationUpdate(params)
+                setLoading(false)
+                const result = res.data
+                if(result.code == 200) {
+                    this.__init()
+                } else {
+                    this.$toast(result.msg)
+                }
+            } catch(err) {
+                //
+                setLoading(false)
+            }
+        },
+        onCheckFields() {
+            // 校验数据
+            let form = this.form
+            // 有值说明是列表
+            if(this.practiceUpload.length != this.practiceNum) {
+                this.$toast('请上传练习曲')
+                return false
+            }
+
+            if(this.performUpload.length != this.performNum) {
+                this.$toast('请上传演奏曲')
+                return false
+            }
+
+            if(form.level > 2 && form.lastMusicTheoryLevel == 0 && !form.lastMusicTheoryCertificateUrl) {
+                this.$toast("请上传乐理证书")
+                return false
+            }
+            return true
         },
         onSaveCancel() {
             this.songUpload.songStatus = false
+            this.performUpload = JSON.parse(JSON.stringify(this.performUploadTemp)) // 回填数据
+            this.practiceUpload = JSON.parse(JSON.stringify(this.practiceUploadTemp)) // 回填数据
+        },
+        onSaveUpload() {
+            let songUpload = this.songUpload
+            if(!songUpload.songName) {
+                this.$toast("请输入曲名")
+                return
+            }
+            if(songUpload.indexName == "practice") {
+                const practiceObj = this.practiceUpload[songUpload.index]
+                const practiceLength = practiceObj ? practiceObj.length : 0
+                if(practiceObj && practiceLength > 0 && practiceObj[0].url) {
+                    if(practiceObj[practiceLength - 1].url) {
+                        this.practiceInfo[songUpload.index] = JSON.parse(JSON.stringify(songUpload))
+                        this.practiceUploadTemp = JSON.parse(JSON.stringify(this.practiceUpload))
+                    } else {
+                        this.$toast("上传曲谱中,请稍等")
+                        return
+                    }
+                } else {
+                    this.$toast("请上传文件")
+                    return
+                }
+            } else if(songUpload.indexName == "perform") {
+                const performObj = this.performUpload[songUpload.index]
+                const performLength = performObj ? performObj.length : 0
+                if(performObj && performLength > 0) {
+                    if(performObj[performLength - 1].url) {
+                        this.performInfo[songUpload.index] = JSON.parse(JSON.stringify(songUpload))
+                        this.performUploadTemp = JSON.parse(JSON.stringify(this.performUpload))
+                    } else {
+                        this.$toast("上传曲谱中,请稍等")
+                        return
+                    }
+                } else {
+                    this.$toast("请上传文件")
+                    return
+                }
+            }
+            songUpload.songName = null
+            songUpload.songAuthor = null
+            songUpload.songStatus = false
         },
         numberToCN (value) {
             const tempNumber = {

+ 3 - 3
src/views/signup/SignUp.vue

@@ -31,7 +31,7 @@
 				<div class="content" v-else>线上网络教室</div>
 
 				<div class="title">考试简介</div>
-				<div class="content">{{ baseInfo.posterProfile }}</div>
+				<div class="content" v-html="baseInfo.posterProfile"></div>
 
 				<div class="title">报名时间</div>
 				<div class="content">{{ baseInfo.enrollTime }}</div>
@@ -95,13 +95,13 @@ export default {
 					this.baseInfo = {
 						posterTitle: tempData.posterTitle,
 						examMode: tempData.examMode,
-						enrollTime: dayjs(tempData.enrollStartTime).format("YYYY-MM-DD HH:mm") + "~" + dayjs(tempData.enrollEndTime).format("YYYY-MM-DD HH:mm"),
+						enrollTime: dayjs(tempData.enrollStartTime).format("YYYY-MM-DD") + "~" + dayjs(tempData.enrollEndTime).format("YYYY-MM-DD"),
 						enrollTime2: dayjs(tempData.enrollStartTime).format("YYYY-MM-DD HH:mm"),
 						examLocationIdList: tempData.examLocationIdList,
 						expectExamTime: dayjs(tempData.expectExamStartTime).format("YYYY-MM-DD") + "~" + dayjs(tempData.expectExamEndTime).format("YYYY-MM-DD"),
 						status: tempStatus,
 						examLocations: tempData.examLocations, // 地址
-						posterProfile: tempData.posterProfile,
+						posterProfile: tempData.posterProfile ? tempData.posterProfile.replace(/\n/ig,'<br/>') : null,
 						transStatus: tempData.status
 					}
 					let poster = tempData.posterBackgroundImg ? JSON.parse(tempData.posterBackgroundImg) : ""

+ 3 - 2
src/views/signup/SignUpBaseInfo.vue

@@ -67,7 +67,6 @@
             <van-datetime-picker
             v-model="currentDate"
             type="date"
-            title="选择月日"
             :min-date="minDate"
             :max-date="maxDate"
             :formatter="formatter"
@@ -96,7 +95,7 @@ export default {
             examId: examId,
             certificatePhoto: [],
             minDate: new Date(1940, 0, 1),
-            maxDate: new Date(2050, 10, 1),
+            maxDate: new Date(),
             currentDate: new Date(),
             form: {
                 idCardNo: null,
@@ -224,6 +223,7 @@ export default {
                     return false
                 }
             } catch (err) {
+                setLoading(false)
                 return false
             }
         },
@@ -243,6 +243,7 @@ export default {
                     return false
                 }
             } catch (err) {
+                setLoading(false)
                 return false
             }
         },

+ 7 - 9
src/views/signup/SignUpLevel.vue

@@ -32,7 +32,7 @@
         </div>
         <!-- <div class="title">上传证书</div> -->
         <!-- <van-field readonly clickable name="nation" label="上次考级级别" placeholder="请选择级别" is-link /> -->
-        <van-field readonly clearable name="code" label="上传专业证书" >
+        <van-field readonly clearable name="code" label="已获最高等级专业证书" >
             <template #input>
                 <van-uploader
                     name="certificate"
@@ -48,7 +48,8 @@
         <van-field required @click="onGetSheetList('examMusicTheory')" readonly clickable name="nation" label="乐理级别" v-model="formText.examMusicTheoryName" placeholder="请选择乐理级别" is-link />
         <!-- <van-field readonly clickable name="nation" label="上次考级级别" placeholder="请选择" is-link /> -->
         <!-- 乐理级别为免考 和 专业级别大于2级 -->
-        <van-field readonly :required="form.examMusicTheoryId == 999 &&  form.levelId > 2? true : false" clearable name="code" label="上传乐理证书" >
+        <!-- :required="form.examMusicTheoryId == 999 &&  form.levelId > 2? true : false" -->
+        <van-field readonly clearable name="code" label="已获最高等级乐理证书" >
             <template #input>
                 <van-uploader
                     name="certificate2"
@@ -648,9 +649,6 @@ export default {
                 this.$toast('上传图片大小不能超过 5MB')
                 return false
             }
-            fileUtil.getOrientation(file).then((orient) => {
-                console.log(orient)
-            })
             // return new Promise((resolve) => {
             //     fileUtil.getOrientation(file).then((orient) => {
             //         console.log(orient)
@@ -923,10 +921,10 @@ export default {
                 return false
             }
 
-            if(form.examMusicTheoryId == 999 && form.levelId > 2 && !form.lastMusicTheoryCertificateUrl) {
-                this.$toast('请上传乐理证书')
-                return false
-            }
+            // if(form.examMusicTheoryId == 999 && form.levelId > 2 && !form.lastMusicTheoryCertificateUrl) {
+            //     this.$toast('请上传乐理证书')
+            //     return false
+            // }
 
             if(form.adviserPhone && !this.checkPhone(form.adviserPhone)) {
                 return false

+ 2 - 2
src/views/signup/SignUpPayment.vue

@@ -129,10 +129,10 @@ export default {
         onParse(tempResult) {
             let fee = numeral(tempResult.theoryLevelFee).add(tempResult.levelFee)
             let number = fee.value()
-            const tempLevel = tempResult.examMusicTheoryLevel ? levelToCN[tempResult.examMusicTheoryLevel] + `/${numeral(tempResult.theoryLevelFee).value()}` : "免考"
+            const tempLevel = tempResult.examMusicTheoryLevel ? levelToCN[tempResult.examMusicTheoryLevel] + `/${numeral(tempResult.theoryLevelFee).value()}` : "免考"
             const params = {
                 studentName: tempResult.studentName,
-                subjectName: tempResult.subjectName + `(${levelToCN[tempResult.level]}/${numeral(tempResult.levelFee).value()})`,
+                subjectName: tempResult.subjectName + `(${levelToCN[tempResult.level]}/${numeral(tempResult.levelFee).value()})`,
                 examMusicTheoryLevel: tempLevel,
                 examStartTime: dayjs(tempResult.examStartTime).format("YYYY-MM-DD"),
                 fee: numeral(number).format('0,0.00')

Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio