正在显示
25 个修改的文件
包含
1030 行增加
和
19 行删除
| @@ -554,8 +554,53 @@ const setUsermsg = function(data) { | @@ -554,8 +554,53 @@ const setUsermsg = function(data) { | ||
| 554 | ) | 554 | ) |
| 555 | } | 555 | } |
| 556 | 556 | ||
| 557 | +const wx_uploadFile = function(tempFilePath) { | ||
| 558 | + return new Promise((resolve, reject) => { | ||
| 559 | + var jkurl='login/upload' | ||
| 560 | + uni.uploadFile({ | ||
| 561 | + url: IPurl + jkurl, | ||
| 562 | + filePath: tximg, | ||
| 563 | + name: 'file', | ||
| 564 | + header: header, | ||
| 565 | + formData: { | ||
| 566 | + token: uni.getStorageSync('token') | ||
| 567 | + }, | ||
| 568 | + complete: (res) => { | ||
| 569 | + uni.hideLoading(); | ||
| 570 | + uni.stopPullDownRefresh(); //慎用hideLoading,会关闭wx.showToast弹窗 | ||
| 571 | + // console.log(`耗时${Date.now() - timeStart}`); | ||
| 572 | + if (res.statusCode == 200) { //请求成功 | ||
| 573 | + var ndata = JSON.parse(res.data) | ||
| 574 | + if (ndata.code == -1) { | ||
| 575 | + store.commit('logout') | ||
| 576 | + uni.navigateTo({ | ||
| 577 | + url: '/pagesC_mxx/login/login' | ||
| 578 | + }) | ||
| 579 | + return | ||
| 580 | + } else if (ndata.code == 0) { | ||
| 581 | + if (ndata.msg) { | ||
| 582 | + uni.showToast({ | ||
| 583 | + icon: 'none', | ||
| 584 | + title: ndata.msg | ||
| 585 | + }) | ||
| 586 | + } else { | ||
| 587 | + | ||
| 588 | + uni.showToast({ | ||
| 589 | + icon: 'none', | ||
| 590 | + title: '操作失败' | ||
| 591 | + }) | ||
| 592 | + } | ||
| 593 | + } | ||
| 594 | + resolve(ndata) | ||
| 595 | + } else { | ||
| 596 | + reject(res); | ||
| 597 | + } | ||
| 598 | + } | ||
| 599 | + }); | ||
| 600 | + }) | ||
| 601 | +} | ||
| 557 | 602 | ||
| 558 | -const wx_upload = function(tximg,type) { | 603 | +const wx_upload = function(tximg,type = 'img') { |
| 559 | return new Promise((resolve, reject) => { | 604 | return new Promise((resolve, reject) => { |
| 560 | uni.showLoading({ | 605 | uni.showLoading({ |
| 561 | mask: true, | 606 | mask: true, |
| @@ -564,13 +609,14 @@ const wx_upload = function(tximg,type) { | @@ -564,13 +609,14 @@ const wx_upload = function(tximg,type) { | ||
| 564 | // #ifndef H5 | 609 | // #ifndef H5 |
| 565 | console.log(tximg) | 610 | console.log(tximg) |
| 566 | var jkurl='login/upload' | 611 | var jkurl='login/upload' |
| 567 | - | 612 | + console.log('type', type) |
| 568 | uni.uploadFile({ | 613 | uni.uploadFile({ |
| 569 | url: IPurl + jkurl, | 614 | url: IPurl + jkurl, |
| 570 | filePath: tximg, | 615 | filePath: tximg, |
| 571 | name: 'file', | 616 | name: 'file', |
| 572 | header: header, | 617 | header: header, |
| 573 | formData: { | 618 | formData: { |
| 619 | + type, | ||
| 574 | token: uni.getStorageSync('token') | 620 | token: uni.getStorageSync('token') |
| 575 | }, | 621 | }, |
| 576 | // success: (uploadFileRes) => { | 622 | // success: (uploadFileRes) => { |
| @@ -2018,6 +2064,7 @@ export default { | @@ -2018,6 +2064,7 @@ export default { | ||
| 2018 | get_fwb, | 2064 | get_fwb, |
| 2019 | wx_upload, | 2065 | wx_upload, |
| 2020 | wxpay, | 2066 | wxpay, |
| 2067 | + wx_uploadFile, | ||
| 2021 | baseurl, | 2068 | baseurl, |
| 2022 | 2069 | ||
| 2023 | emojiList, | 2070 | emojiList, |
components/RecordingDevice/index.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <view class="RecordingDevice"> | ||
| 3 | + <view class="RecordingDevice-2"> | ||
| 4 | + <VoicePlayback ref="voicePlayback"/> | ||
| 5 | + </view> | ||
| 6 | + <view class="RecordingDevice-1"> | ||
| 7 | + <view class="RecordingDevice-1-i"> | ||
| 8 | + <view class="RecordingDevice-1-i-taps" v-if="hours || minutes || seconds"> | ||
| 9 | + <image class="RecordingDevice-1-i-taps-bg" src="@/static/imagesV2/icon64.png" mode="widthFix"></image> | ||
| 10 | + | ||
| 11 | + <view class="RecordingDevice-1-i-taps-c"> | ||
| 12 | + <image class="RecordingDevice-1-i-taps-c-l" src="@/static/imagesV2/icon65.png" mode="widthFix"></image> | ||
| 13 | + | ||
| 14 | + <text class="RecordingDevice-1-i-taps-c-t">{{ formattedTime }}</text> | ||
| 15 | + </view> | ||
| 16 | + </view> | ||
| 17 | + <view v-if="isTape === RECORDINGSTATUS.INPROGRESS" @click="pauseRecord"> | ||
| 18 | + <view class="RecordingDevice-1-i-1"> | ||
| 19 | + <image class="RecordingDevice-1-i-1-i" src="@/static/imagesV2/icon61.png" mode="widthFix"></image> | ||
| 20 | + </view> | ||
| 21 | + <view class="RecordingDevice-1-i-2">暂停</view> | ||
| 22 | + </view> | ||
| 23 | + <view v-else @click="start"> | ||
| 24 | + <view class="RecordingDevice-1-i-1"> | ||
| 25 | + <image class="RecordingDevice-1-i-1-i" src="@/static/imagesV2/icon66.png" mode="widthFix"></image> | ||
| 26 | + </view> | ||
| 27 | + <view class="RecordingDevice-1-i-2">开始</view> | ||
| 28 | + </view> | ||
| 29 | + </view> | ||
| 30 | + <view class="RecordingDevice-1-i" @click="stopRecord"> | ||
| 31 | + <view class="RecordingDevice-1-i-1"> | ||
| 32 | + <image class="RecordingDevice-1-i-1-i" src="@/static/imagesV2/icon62.png" mode="widthFix"></image> | ||
| 33 | + </view> | ||
| 34 | + <view class="RecordingDevice-1-i-2">完成</view> | ||
| 35 | + </view> | ||
| 36 | + <view class="RecordingDevice-1-i" @click="reRecording"> | ||
| 37 | + <view class="RecordingDevice-1-i-1"> | ||
| 38 | + <image class="RecordingDevice-1-i-1-i" src="@/static/imagesV2/icon63.png" mode="widthFix"></image> | ||
| 39 | + </view> | ||
| 40 | + <view class="RecordingDevice-1-i-2">重录</view> | ||
| 41 | + </view> | ||
| 42 | + </view> | ||
| 43 | + </view> | ||
| 44 | +</template> | ||
| 45 | + | ||
| 46 | +<script> | ||
| 47 | + import VoicePlayback from "@/components/VoicePlayback/index.vue" | ||
| 48 | + /** | ||
| 49 | + * 录制状态 | ||
| 50 | + */ | ||
| 51 | + const RECORDINGSTATUS = { | ||
| 52 | + /** | ||
| 53 | + * 未开始 | ||
| 54 | + * @value 1 | ||
| 55 | + */ | ||
| 56 | + 'NOTSTARTEDYET': 1, | ||
| 57 | + /** | ||
| 58 | + * 进行中 | ||
| 59 | + * @value 2 | ||
| 60 | + */ | ||
| 61 | + 'INPROGRESS': 2, | ||
| 62 | + /** | ||
| 63 | + * 暂停中 | ||
| 64 | + * @value 3 | ||
| 65 | + */ | ||
| 66 | + 'PAUSED': 3 | ||
| 67 | + } | ||
| 68 | + export default { | ||
| 69 | + name: 'RecordingDevice', | ||
| 70 | + components: { | ||
| 71 | + VoicePlayback | ||
| 72 | + }, | ||
| 73 | + computed: { | ||
| 74 | + formattedTime() { | ||
| 75 | + const hours = this.padDigits(this.hours); | ||
| 76 | + const minutes = this.padDigits(this.minutes); | ||
| 77 | + const seconds = this.padDigits(this.seconds); | ||
| 78 | + return `${hours}:${minutes}:${seconds}`; | ||
| 79 | + } | ||
| 80 | + }, | ||
| 81 | + data() { | ||
| 82 | + return { | ||
| 83 | + RECORDINGSTATUS, | ||
| 84 | + // 是否正在录制 | ||
| 85 | + isTape: RECORDINGSTATUS.NOTSTARTEDYET, | ||
| 86 | + recorder: null, | ||
| 87 | + seconds: 0, | ||
| 88 | + minutes: 0, | ||
| 89 | + hours: 0, | ||
| 90 | + timer: null, | ||
| 91 | + } | ||
| 92 | + }, | ||
| 93 | + mounted() { | ||
| 94 | + this.recorder = uni.getRecorderManager(); | ||
| 95 | + this.recorder.onStop(res => { | ||
| 96 | + if(this.isTape !== RECORDINGSTATUS.NOTSTARTEDYET) { | ||
| 97 | + console.log('停止录制...'); | ||
| 98 | + console.log('录制文件路径:', res.tempFilePath); | ||
| 99 | + this.uploadFiles(res.tempFilePath) | ||
| 100 | + this.isTape = RECORDINGSTATUS.NOTSTARTEDYET; | ||
| 101 | + } | ||
| 102 | + }); | ||
| 103 | + this.recorder.onStart(() => { | ||
| 104 | + this.isTape = RECORDINGSTATUS.INPROGRESS; | ||
| 105 | + console.log('开始录制...'); | ||
| 106 | + }); | ||
| 107 | + this.recorder.stop(); | ||
| 108 | + }, | ||
| 109 | + beforeDestroy() { | ||
| 110 | + this.stopTimer(); | ||
| 111 | + }, | ||
| 112 | + methods: { | ||
| 113 | + padDigits(number) { | ||
| 114 | + return (number < 10) ? '0' + number : number; | ||
| 115 | + }, | ||
| 116 | + startTimer() { | ||
| 117 | + this.timer = setInterval(() => { | ||
| 118 | + this.seconds++; | ||
| 119 | + if (this.seconds >= 60) { | ||
| 120 | + this.seconds = 0; | ||
| 121 | + this.minutes++; | ||
| 122 | + if (this.minutes >= 60) { | ||
| 123 | + this.minutes = 0; | ||
| 124 | + this.hours++; | ||
| 125 | + } | ||
| 126 | + } | ||
| 127 | + }, 1000); | ||
| 128 | + }, | ||
| 129 | + resetTimer() { | ||
| 130 | + clearInterval(this.timer); | ||
| 131 | + this.timer = null; | ||
| 132 | + this.seconds = 0 | ||
| 133 | + this.minutes = 0 | ||
| 134 | + this.hours = 0 | ||
| 135 | + }, | ||
| 136 | + stopTimer() { | ||
| 137 | + clearInterval(this.timer); | ||
| 138 | + this.timer = null; | ||
| 139 | + }, | ||
| 140 | + formatTwoDigits(value) { | ||
| 141 | + return value.toString().padStart(2, '0'); | ||
| 142 | + }, | ||
| 143 | + reRecording() { | ||
| 144 | + this.isTape = RECORDINGSTATUS.NOTSTARTEDYET | ||
| 145 | + this.recorder.stop(); | ||
| 146 | + this.resetTimer() | ||
| 147 | + }, | ||
| 148 | + start() { | ||
| 149 | + if(this.isTape === RECORDINGSTATUS.PAUSED) { | ||
| 150 | + this.resumeRecord() | ||
| 151 | + } else if(this.isTape === RECORDINGSTATUS.NOTSTARTEDYET){ | ||
| 152 | + this.startRecord() | ||
| 153 | + this.resetTimer() | ||
| 154 | + } | ||
| 155 | + this.startTimer() | ||
| 156 | + }, | ||
| 157 | + startRecord() { | ||
| 158 | + this.recorder.start({ | ||
| 159 | + format: 'mp3', | ||
| 160 | + }); | ||
| 161 | + }, | ||
| 162 | + pauseRecord() { | ||
| 163 | + this.recorder.pause(); | ||
| 164 | + this.isTape = RECORDINGSTATUS.PAUSED; | ||
| 165 | + this.stopTimer() | ||
| 166 | + console.log('暂停录制...'); | ||
| 167 | + }, | ||
| 168 | + resumeRecord() { | ||
| 169 | + this.recorder.resume(); | ||
| 170 | + this.paused = false; | ||
| 171 | + this.isTape = RECORDINGSTATUS.INPROGRESS; | ||
| 172 | + console.log('继续录制...'); | ||
| 173 | + }, | ||
| 174 | + stopRecord() { | ||
| 175 | + if(this.isTape === RECORDINGSTATUS.NOTSTARTEDYET) { | ||
| 176 | + uni.showToast({ | ||
| 177 | + icon: 'none', | ||
| 178 | + title: '请录制音频' | ||
| 179 | + }) | ||
| 180 | + return | ||
| 181 | + } | ||
| 182 | + this.resetTimer() | ||
| 183 | + this.recorder.stop(); | ||
| 184 | + }, | ||
| 185 | + uploadFiles(tempFilePath) { | ||
| 186 | + this.$service.wx_upload(tempFilePath, 'video').then(res => { | ||
| 187 | + this.$refs.voicePlayback.setUrl(res.data) | ||
| 188 | + }) | ||
| 189 | + } | ||
| 190 | + } | ||
| 191 | + } | ||
| 192 | +</script> | ||
| 193 | + | ||
| 194 | +<style lang="scss" scoped> | ||
| 195 | + .RecordingDevice{ | ||
| 196 | + .RecordingDevice-2{ | ||
| 197 | + background-color: #F5F6F8; | ||
| 198 | + padding: 44rpx 43rpx; | ||
| 199 | + border-radius: 20rpx; | ||
| 200 | + } | ||
| 201 | + .RecordingDevice-1{ | ||
| 202 | + display: flex; | ||
| 203 | + justify-content: space-around; | ||
| 204 | + padding-top: 120rpx; | ||
| 205 | + .RecordingDevice-1-i{ | ||
| 206 | + text-align: center; | ||
| 207 | + position: relative; | ||
| 208 | + .RecordingDevice-1-i-taps{ | ||
| 209 | + position: absolute; | ||
| 210 | + top: 0; | ||
| 211 | + left: 50%; | ||
| 212 | + transform: translate(-50%, -100%); | ||
| 213 | + .RecordingDevice-1-i-taps-bg{ | ||
| 214 | + height: 68rpx; | ||
| 215 | + width: 216rpx; | ||
| 216 | + } | ||
| 217 | + .RecordingDevice-1-i-taps-c{ | ||
| 218 | + position: absolute; | ||
| 219 | + top: 0; | ||
| 220 | + display: flex; | ||
| 221 | + align-items: center; | ||
| 222 | + height: 68rpx; | ||
| 223 | + width: 216rpx; | ||
| 224 | + padding-bottom: 12rpx; | ||
| 225 | + justify-content: center; | ||
| 226 | + .RecordingDevice-1-i-taps-c-l{ | ||
| 227 | + height: 36rpx; | ||
| 228 | + width: 36rpx; | ||
| 229 | + } | ||
| 230 | + .RecordingDevice-1-i-taps-c-t{ | ||
| 231 | + font-size: 28rpx; | ||
| 232 | + color: #646464; | ||
| 233 | + margin-left: 13rpx; | ||
| 234 | + } | ||
| 235 | + } | ||
| 236 | + } | ||
| 237 | + .RecordingDevice-1-i-1{ | ||
| 238 | + .RecordingDevice-1-i-1-i{ | ||
| 239 | + height: 120rpx; | ||
| 240 | + width: 120rpx; | ||
| 241 | + } | ||
| 242 | + } | ||
| 243 | + .RecordingDevice-1-i-2{ | ||
| 244 | + font-size: 28rpx; | ||
| 245 | + color: #323232; | ||
| 246 | + margin-top: 10rpx; | ||
| 247 | + } | ||
| 248 | + } | ||
| 249 | + } | ||
| 250 | + } | ||
| 251 | +</style> |
| 1 | <template> | 1 | <template> |
| 2 | <view class="VoicePlayback" @click="operation"> | 2 | <view class="VoicePlayback" @click="operation"> |
| 3 | <view class="VoicePlayback-1"> | 3 | <view class="VoicePlayback-1"> |
| 4 | - <image class="VoicePlayback-1-i" src="@/static/imagesV2/icon42.png" mode="widthFix"></image> | 4 | + <image class="VoicePlayback-1-i" v-if="isPlay" src="@/static/imagesV2/icon42s.png" mode="widthFix"></image> |
| 5 | + <image class="VoicePlayback-1-i" v-else src="@/static/imagesV2/icon42.png" mode="widthFix"></image> | ||
| 5 | </view> | 6 | </view> |
| 6 | <view class="VoicePlayback-2">{{ convertTimeToHMS(remainingTime) }}</view> | 7 | <view class="VoicePlayback-2">{{ convertTimeToHMS(remainingTime) }}</view> |
| 7 | </view> | 8 | </view> |
| @@ -34,21 +35,23 @@ | @@ -34,21 +35,23 @@ | ||
| 34 | } else { | 35 | } else { |
| 35 | this.audioContext.pause() | 36 | this.audioContext.pause() |
| 36 | } | 37 | } |
| 37 | - console.log(this.duration) | 38 | + }, |
| 39 | + setUrl(url) { | ||
| 40 | + this.audioContext.src = url | ||
| 38 | }, | 41 | }, |
| 39 | init() { | 42 | init() { |
| 40 | this.audioContext = wx.createInnerAudioContext(); | 43 | this.audioContext = wx.createInnerAudioContext(); |
| 41 | this.audioContext.src = require("@/static/imagesV2/test.mp3") | 44 | this.audioContext.src = require("@/static/imagesV2/test.mp3") |
| 42 | this.audioContext.onPlay(() => { | 45 | this.audioContext.onPlay(() => { |
| 43 | - console.log('音频开始播放', this.audioContext.duration); | ||
| 44 | this.isPlay = true | 46 | this.isPlay = true |
| 45 | }); | 47 | }); |
| 46 | this.audioContext.onPause(() => { | 48 | this.audioContext.onPause(() => { |
| 47 | - console.log('音频暂停播放'); | ||
| 48 | this.isPlay = false | 49 | this.isPlay = false |
| 49 | }); | 50 | }); |
| 51 | + this.audioContext.onEnded(() => { | ||
| 52 | + this.audioContext.stop() | ||
| 53 | + }) | ||
| 50 | this.audioContext.onStop(() => { | 54 | this.audioContext.onStop(() => { |
| 51 | - console.log('音频停止播放'); | ||
| 52 | this.isPlay = false | 55 | this.isPlay = false |
| 53 | }); | 56 | }); |
| 54 | this.audioContext.onCanplay(() => { | 57 | this.audioContext.onCanplay(() => { |
| @@ -60,11 +63,13 @@ | @@ -60,11 +63,13 @@ | ||
| 60 | }, 100) | 63 | }, 100) |
| 61 | }) | 64 | }) |
| 62 | this.audioContext.onTimeUpdate(() => { | 65 | this.audioContext.onTimeUpdate(() => { |
| 66 | + this.duration = this.audioContext.duration | ||
| 63 | this.currentTime = this.audioContext.currentTime | 67 | this.currentTime = this.audioContext.currentTime |
| 64 | this.remainingTime = this.duration - this.currentTime | 68 | this.remainingTime = this.duration - this.currentTime |
| 65 | }); | 69 | }); |
| 66 | }, | 70 | }, |
| 67 | convertTimeToHMS(time) { | 71 | convertTimeToHMS(time) { |
| 72 | + console.log(time) | ||
| 68 | time = parseInt(time) | 73 | time = parseInt(time) |
| 69 | var hours = Math.floor(time / 3600); | 74 | var hours = Math.floor(time / 3600); |
| 70 | var minutes = Math.floor((time % 3600) / 60); | 75 | var minutes = Math.floor((time % 3600) / 60); |
| @@ -132,4 +132,34 @@ export const PAYMENTTYPE = { | @@ -132,4 +132,34 @@ export const PAYMENTTYPE = { | ||
| 132 | * @value 2 | 132 | * @value 2 |
| 133 | */ | 133 | */ |
| 134 | 'ALIPAY': 2 | 134 | 'ALIPAY': 2 |
| 135 | +} | ||
| 136 | +/** | ||
| 137 | + * 解答类型 | ||
| 138 | + */ | ||
| 139 | +export const ANSWERTYPE = { | ||
| 140 | + /** | ||
| 141 | + * 待解答 | ||
| 142 | + * @value 1 | ||
| 143 | + */ | ||
| 144 | + 'TOBEANSWERED': 1, | ||
| 145 | + /** | ||
| 146 | + * 已解答 | ||
| 147 | + * @value 2 | ||
| 148 | + */ | ||
| 149 | + 'ANSWERED': 2 | ||
| 150 | +} | ||
| 151 | +/** | ||
| 152 | + * 回答类型 | ||
| 153 | + */ | ||
| 154 | +export const MESSAGETYPE = { | ||
| 155 | + /** | ||
| 156 | + * 文字解答 | ||
| 157 | + * @value 1 | ||
| 158 | + */ | ||
| 159 | + 'TEXTANSWER': 1, | ||
| 160 | + /** | ||
| 161 | + * 语音解答 | ||
| 162 | + * @value 2 | ||
| 163 | + */ | ||
| 164 | + 'VOICEANSWERS': 2 | ||
| 135 | } | 165 | } |
| @@ -51,6 +51,11 @@ | @@ -51,6 +51,11 @@ | ||
| 51 | /* 小程序特有相关 */ | 51 | /* 小程序特有相关 */ |
| 52 | "mp-weixin" : { | 52 | "mp-weixin" : { |
| 53 | "appid" : "wx5bbc433d447d1a86", | 53 | "appid" : "wx5bbc433d447d1a86", |
| 54 | + "permissions": { | ||
| 55 | + "scope.record": { | ||
| 56 | + "desc": "用于录制音频" | ||
| 57 | + } | ||
| 58 | + }, | ||
| 54 | "setting" : { | 59 | "setting" : { |
| 55 | "urlCheck" : false, | 60 | "urlCheck" : false, |
| 56 | "es6" : true | 61 | "es6" : true |
| 1 | +<template> | ||
| 2 | + <view class="evaluationRecords"> | ||
| 3 | + <view class="answer-item2"> | ||
| 4 | + <view class="answer-item2-star"> | ||
| 5 | + <u-rate :count="5" :readonly="true" :size="18" activeColor="#fc6402" v-model="value"></u-rate> | ||
| 6 | + <view class="answer-item2-star-l">4.0</view> | ||
| 7 | + </view> | ||
| 8 | + <view class="myQuestion-2-i-1"> | ||
| 9 | + <view class="myQuestion-2-i-1-l"> | ||
| 10 | + <image class="myQuestion-2-i-1-l-i" src="@/static/images/tx.png" mode="widthFix"></image> | ||
| 11 | + </view> | ||
| 12 | + <view class="myQuestion-2-i-1-r"> | ||
| 13 | + <view class="myQuestion-2-i-1-r-1">李晋心</view> | ||
| 14 | + <view class="myQuestion-2-i-1-r-2">2023-12-10发布</view> | ||
| 15 | + </view> | ||
| 16 | + </view> | ||
| 17 | + <view class="myQuestion-2-i-2"> | ||
| 18 | + 老师你好请问工商管理专业的应届生可以报考工商管理 | ||
| 19 | + 内的二级专业吗?比如说会计学,旅游管理? | ||
| 20 | + </view> | ||
| 21 | + <view class="myQuestion-2-i-4"> | ||
| 22 | + <u--image | ||
| 23 | + v-for="(item, index) in []" | ||
| 24 | + :key="index" | ||
| 25 | + radius="15rpx" | ||
| 26 | + height="145rpx" | ||
| 27 | + width="145rpx" | ||
| 28 | + @click.native="seeImg(index)" | ||
| 29 | + :src="item"></u--image> | ||
| 30 | + </view> | ||
| 31 | + </view> | ||
| 32 | + </view> | ||
| 33 | +</template> | ||
| 34 | + | ||
| 35 | +<script> | ||
| 36 | + export default { | ||
| 37 | + data() { | ||
| 38 | + return { | ||
| 39 | + | ||
| 40 | + }; | ||
| 41 | + } | ||
| 42 | + } | ||
| 43 | +</script> | ||
| 44 | + | ||
| 45 | +<style lang="scss" scoped> | ||
| 46 | +.evaluationRecords{ | ||
| 47 | + padding: 20rpx 25rpx; | ||
| 48 | + .answer-item2{ | ||
| 49 | + padding: 30rpx; | ||
| 50 | + background-color: #FFFFFF; | ||
| 51 | + box-sizing: border-box; | ||
| 52 | + border-radius: 20rpx; | ||
| 53 | + position: relative; | ||
| 54 | + margin-bottom: 20rpx; | ||
| 55 | + .answer-item2-star{ | ||
| 56 | + position: absolute; | ||
| 57 | + top: 43rpx; | ||
| 58 | + right: 29rpx; | ||
| 59 | + display: flex; | ||
| 60 | + align-items: center; | ||
| 61 | + .answer-item2-star-l{ | ||
| 62 | + font-size: 24rpx; | ||
| 63 | + color: #323232; | ||
| 64 | + } | ||
| 65 | + } | ||
| 66 | + .myQuestion-2-i-1{ | ||
| 67 | + display: flex; | ||
| 68 | + align-items: center; | ||
| 69 | + .myQuestion-2-i-1-l{ | ||
| 70 | + .myQuestion-2-i-1-l-i{ | ||
| 71 | + height: 60rpx; | ||
| 72 | + width: 60rpx; | ||
| 73 | + border-radius: 100%; | ||
| 74 | + } | ||
| 75 | + } | ||
| 76 | + .myQuestion-2-i-1-r{ | ||
| 77 | + margin-left: 30rpx; | ||
| 78 | + .myQuestion-2-i-1-r-1{ | ||
| 79 | + font-size: 26rpx; | ||
| 80 | + color: #323232; | ||
| 81 | + font-weight: bold; | ||
| 82 | + } | ||
| 83 | + .myQuestion-2-i-1-r-2{ | ||
| 84 | + font-size: 24rpx; | ||
| 85 | + color: #979797; | ||
| 86 | + margin-top: 5rpx; | ||
| 87 | + } | ||
| 88 | + } | ||
| 89 | + } | ||
| 90 | + .myQuestion-2-i-2{ | ||
| 91 | + line-height: 39rpx; | ||
| 92 | + color: #323232; | ||
| 93 | + font-size: 26rpx; | ||
| 94 | + margin: 30rpx 0; | ||
| 95 | + } | ||
| 96 | + .myQuestion-2-i-4{ | ||
| 97 | + display: grid; | ||
| 98 | + grid-template-columns: repeat(4, 1fr); | ||
| 99 | + grid-row-gap: 20rpx; | ||
| 100 | + grid-column-gap: 20rpx; | ||
| 101 | + margin-top: 30rpx; | ||
| 102 | + } | ||
| 103 | + } | ||
| 104 | +} | ||
| 105 | +</style> |
| @@ -29,19 +29,19 @@ | @@ -29,19 +29,19 @@ | ||
| 29 | <view class="homePage-2-4-1-l-2">评价分</view> | 29 | <view class="homePage-2-4-1-l-2">评价分</view> |
| 30 | </view> | 30 | </view> |
| 31 | </view> | 31 | </view> |
| 32 | - <view class="homePage-2-4-2"> | 32 | + <view class="homePage-2-4-2" @click="toOnLine"> |
| 33 | <image class="homePage-bg" src="@/static/imagesV2/icon56.png" mode="widthFix"></image> | 33 | <image class="homePage-bg" src="@/static/imagesV2/icon56.png" mode="widthFix"></image> |
| 34 | <view class="homePage-2-4-2-c"> | 34 | <view class="homePage-2-4-2-c"> |
| 35 | 在线答疑 | 35 | 在线答疑 |
| 36 | </view> | 36 | </view> |
| 37 | </view> | 37 | </view> |
| 38 | - <view class="homePage-2-4-2"> | 38 | + <view class="homePage-2-4-2" @click="toEvaluationRecords"> |
| 39 | <image class="homePage-bg" src="@/static/imagesV2/icon57.png" mode="widthFix"></image> | 39 | <image class="homePage-bg" src="@/static/imagesV2/icon57.png" mode="widthFix"></image> |
| 40 | <view class="homePage-2-4-2-c"> | 40 | <view class="homePage-2-4-2-c"> |
| 41 | 评价记录 | 41 | 评价记录 |
| 42 | </view> | 42 | </view> |
| 43 | </view> | 43 | </view> |
| 44 | - <view class="homePage-2-4-2"> | 44 | + <view class="homePage-2-4-2" @click="toRateMe"> |
| 45 | <image class="homePage-bg" src="@/static/imagesV2/icon58.png" mode="widthFix"></image> | 45 | <image class="homePage-bg" src="@/static/imagesV2/icon58.png" mode="widthFix"></image> |
| 46 | <view class="homePage-2-4-2-c"> | 46 | <view class="homePage-2-4-2-c"> |
| 47 | 教师评价 | 47 | 教师评价 |
| @@ -60,11 +60,26 @@ | @@ -60,11 +60,26 @@ | ||
| 60 | } | 60 | } |
| 61 | }, | 61 | }, |
| 62 | methods: { | 62 | methods: { |
| 63 | + toRateMe() { | ||
| 64 | + uni.navigateTo({ | ||
| 65 | + url: '/new_tec/rateMe/rateMe' | ||
| 66 | + }) | ||
| 67 | + }, | ||
| 68 | + toOnLine() { | ||
| 69 | + uni.navigateTo({ | ||
| 70 | + url: '/new_tec/onLine/onLine' | ||
| 71 | + }) | ||
| 72 | + }, | ||
| 63 | toEditInfo() { | 73 | toEditInfo() { |
| 64 | uni.navigateTo({ | 74 | uni.navigateTo({ |
| 65 | url: '/new_tec/editInfo/editInfo' | 75 | url: '/new_tec/editInfo/editInfo' |
| 66 | }) | 76 | }) |
| 67 | }, | 77 | }, |
| 78 | + toEvaluationRecords() { | ||
| 79 | + uni.navigateTo({ | ||
| 80 | + url: '/new_tec/evaluationRecords/evaluationRecords' | ||
| 81 | + }) | ||
| 82 | + }, | ||
| 68 | toNewSetting() { | 83 | toNewSetting() { |
| 69 | uni.navigateTo({ | 84 | uni.navigateTo({ |
| 70 | url: '/pagesB/newSetting/newSetting' | 85 | url: '/pagesB/newSetting/newSetting' |
new_tec/onLine/onLine.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <view class="onLine"> | ||
| 3 | + <view class="onLine-1"> | ||
| 4 | + <view @click="selectItem(ANSWERTYPE.TOBEANSWERED)" :class="{'onLine-1-i': true, 'onLine-1-is': type === ANSWERTYPE.TOBEANSWERED}">待解答</view> | ||
| 5 | + <view @click="selectItem(ANSWERTYPE.ANSWERED)" :class="{'onLine-1-i': true, 'onLine-1-is': type === ANSWERTYPE.ANSWERED}">已解答</view> | ||
| 6 | + </view> | ||
| 7 | + <view class="onLine-2"> | ||
| 8 | + <view class="onLine-2-i" @click="toDetails"> | ||
| 9 | + <view class="onLine-2-i-op"> | ||
| 10 | + <image class="onLine-2-i-op-i" src="@/static/imagesV2/icon41.png" mode="widthFix"></image> | ||
| 11 | + <text class="onLine-2-i-op-t">解答</text> | ||
| 12 | + </view> | ||
| 13 | + <view class="onLine-2-i-1"> | ||
| 14 | + <image src="@/static/images/tx.png" class="onLine-2-i-1-1"></image> | ||
| 15 | + <view class="onLine-2-i-1-r"> | ||
| 16 | + <view class="onLine-2-i-1-r-1">李晋心</view> | ||
| 17 | + <view class="onLine-2-i-1-r-2">2023-12-10发布</view> | ||
| 18 | + </view> | ||
| 19 | + </view> | ||
| 20 | + <view class="onLine-2-i-2"> | ||
| 21 | + 老师你好请问工商管理专业的应届生可以报考工商管理 内的二级专业吗?比如说会计学,旅游管理? | ||
| 22 | + </view> | ||
| 23 | + </view> | ||
| 24 | + <u-empty | ||
| 25 | + mode="data" | ||
| 26 | + text="暂无数据" | ||
| 27 | + icon="/static/imagesV2/icon24.png" | ||
| 28 | + > | ||
| 29 | + </u-empty> | ||
| 30 | + </view> | ||
| 31 | + </view> | ||
| 32 | +</template> | ||
| 33 | + | ||
| 34 | +<script> | ||
| 35 | + import { ANSWERTYPE } from "@/emit/index.js" | ||
| 36 | + export default { | ||
| 37 | + data() { | ||
| 38 | + return { | ||
| 39 | + ANSWERTYPE, | ||
| 40 | + type: ANSWERTYPE.TOBEANSWERED | ||
| 41 | + }; | ||
| 42 | + }, | ||
| 43 | + methods: { | ||
| 44 | + toDetails() { | ||
| 45 | + uni.navigateTo({ | ||
| 46 | + url: '/new_tec/onLineDetails/onLineDetails' | ||
| 47 | + }) | ||
| 48 | + }, | ||
| 49 | + selectItem(type) { | ||
| 50 | + this.type = type | ||
| 51 | + } | ||
| 52 | + } | ||
| 53 | + } | ||
| 54 | +</script> | ||
| 55 | + | ||
| 56 | +<style lang="scss" scoped> | ||
| 57 | +.onLine{ | ||
| 58 | + .onLine-1{ | ||
| 59 | + border-top:1rpx solid #f3f4f6; | ||
| 60 | + display: flex; | ||
| 61 | + background: #fff; | ||
| 62 | + justify-content: space-around; | ||
| 63 | + position: fixed; | ||
| 64 | + width: 100%; | ||
| 65 | + top: 0; | ||
| 66 | + left: 0; | ||
| 67 | + .onLine-1-i{ | ||
| 68 | + font-size: 28rpx; | ||
| 69 | + color: #323232; | ||
| 70 | + height: 88rpx; | ||
| 71 | + display: flex; | ||
| 72 | + align-items: center; | ||
| 73 | + justify-content: center; | ||
| 74 | + } | ||
| 75 | + .onLine-1-is{ | ||
| 76 | + color: #2D81FF; | ||
| 77 | + position: relative; | ||
| 78 | + &:before{ | ||
| 79 | + content: ''; | ||
| 80 | + position: absolute; | ||
| 81 | + bottom: 0; | ||
| 82 | + left: 50%; | ||
| 83 | + background-image: url(@/static/imagesV2/icon23.png); | ||
| 84 | + background-size: 100% 100%; | ||
| 85 | + transform: translateX(-50%); | ||
| 86 | + height: 24rpx; | ||
| 87 | + width: 24rpx; | ||
| 88 | + } | ||
| 89 | + } | ||
| 90 | + } | ||
| 91 | + .onLine-2{ | ||
| 92 | + padding: 20rpx 25rpx; | ||
| 93 | + padding-top: calc(88rpx + 20rpx); | ||
| 94 | + padding-bottom: calc(25rpx + env(safe-area-inset-bottom)); | ||
| 95 | + .onLine-2-i{ | ||
| 96 | + background: #fff; | ||
| 97 | + border-radius: 20rpx; | ||
| 98 | + padding: 40rpx 30rpx; | ||
| 99 | + position: relative; | ||
| 100 | + margin-bottom: 20rpx; | ||
| 101 | + .onLine-2-i-op{ | ||
| 102 | + position: absolute; | ||
| 103 | + right: 30rpx; | ||
| 104 | + top: 40rpx; | ||
| 105 | + background-color: rgba(#2D81FF, .1); | ||
| 106 | + height: 56rpx; | ||
| 107 | + padding: 0 34rpx; | ||
| 108 | + border-radius: 200rpx; | ||
| 109 | + display: flex; | ||
| 110 | + align-items: center; | ||
| 111 | + justify-content: center; | ||
| 112 | + line-height: 1.4; | ||
| 113 | + color: #2D81FF; | ||
| 114 | + .onLine-2-i-op-i{ | ||
| 115 | + height: 24rpx; | ||
| 116 | + width: 24rpx; | ||
| 117 | + } | ||
| 118 | + .onLine-2-i-op-t{ | ||
| 119 | + font-size: 26rpx; | ||
| 120 | + margin-left: 5rpx; | ||
| 121 | + } | ||
| 122 | + } | ||
| 123 | + .onLine-2-i-1{ | ||
| 124 | + display: flex; | ||
| 125 | + align-items: center; | ||
| 126 | + .onLine-2-i-1-1{ | ||
| 127 | + height: 60rpx; | ||
| 128 | + width: 60rpx; | ||
| 129 | + } | ||
| 130 | + .onLine-2-i-1-r{ | ||
| 131 | + margin-left: 30rpx; | ||
| 132 | + .onLine-2-i-1-r-1{ | ||
| 133 | + font-size: 26rpx; | ||
| 134 | + color: #323232; | ||
| 135 | + } | ||
| 136 | + .onLine-2-i-1-r-2{ | ||
| 137 | + font-size: 24rpx; | ||
| 138 | + color: #979797; | ||
| 139 | + margin-top: 5rpx; | ||
| 140 | + } | ||
| 141 | + } | ||
| 142 | + } | ||
| 143 | + .onLine-2-i-2{ | ||
| 144 | + font-size: 26rpx; | ||
| 145 | + line-height: 39rpx; | ||
| 146 | + margin-top: 30rpx; | ||
| 147 | + } | ||
| 148 | + } | ||
| 149 | + } | ||
| 150 | +} | ||
| 151 | +</style> |
new_tec/onLineDetails/onLineDetails.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <view class="onLineDetails"> | ||
| 3 | + <view class="answer-item2"> | ||
| 4 | + <view class="answer-item2-star"> | ||
| 5 | + <u-rate :count="5" :readonly="true" :size="18" activeColor="#fc6402" v-model="value"></u-rate> | ||
| 6 | + <view class="answer-item2-star-l">4.0</view> | ||
| 7 | + </view> | ||
| 8 | + <view class="myQuestion-2-i-1"> | ||
| 9 | + <view class="myQuestion-2-i-1-l"> | ||
| 10 | + <image class="myQuestion-2-i-1-l-i" src="@/static/images/tx.png" mode="widthFix"></image> | ||
| 11 | + </view> | ||
| 12 | + <view class="myQuestion-2-i-1-r"> | ||
| 13 | + <view class="myQuestion-2-i-1-r-1">李晋心</view> | ||
| 14 | + <view class="myQuestion-2-i-1-r-2">2023-12-10发布</view> | ||
| 15 | + </view> | ||
| 16 | + </view> | ||
| 17 | + <view class="myQuestion-2-i-2"> | ||
| 18 | + 老师你好请问工商管理专业的应届生可以报考工商管理 | ||
| 19 | + 内的二级专业吗?比如说会计学,旅游管理? | ||
| 20 | + </view> | ||
| 21 | + <view class="myQuestion-2-i-4"> | ||
| 22 | + <u--image | ||
| 23 | + v-for="(item, index) in []" | ||
| 24 | + :key="index" | ||
| 25 | + radius="15rpx" | ||
| 26 | + height="145rpx" | ||
| 27 | + width="145rpx" | ||
| 28 | + @click.native="seeImg(index)" | ||
| 29 | + :src="item"></u--image> | ||
| 30 | + </view> | ||
| 31 | + <view class="myQuestion-2-i-3"> | ||
| 32 | + <view class="myQuestion-2-i-3-c"> | ||
| 33 | + <view class="myQuestion-2-i-3-c-1"> | ||
| 34 | + <view class="myQuestion-2-i-3-c-1-l"> | ||
| 35 | + <image class="myQuestion-2-i-3-c-1-l-i" src="@/static/images/tx.png" mode="widthFix"></image> | ||
| 36 | + <text class="myQuestion-2-i-3-c-1-l-t">程菲老师回复</text> | ||
| 37 | + </view> | ||
| 38 | + <view class="myQuestion-2-i-3-c-1-r">2023-12-10</view> | ||
| 39 | + </view> | ||
| 40 | + <view class="myQuestion-2-i-3-c-2"> | ||
| 41 | + 同学你好,这个问题问的好,你说的这些都是不可以报的! | ||
| 42 | + </view> | ||
| 43 | + <view style="margin-top: 28rpx;"> | ||
| 44 | + <VoicePlayback /> | ||
| 45 | + </view> | ||
| 46 | + </view> | ||
| 47 | + </view> | ||
| 48 | + </view> | ||
| 49 | + <view class="onLineDetails-1"> | ||
| 50 | + <view class="onLineDetails-1-1"> | ||
| 51 | + <view class="onLineDetails-1-1-l">解答</view> | ||
| 52 | + <view class="onLineDetails-1-1-r"> | ||
| 53 | + <text class="onLineDetails-1-1-r-t" @click="switchItem(MESSAGETYPE.VOICEANSWERS)" v-if="answerType === MESSAGETYPE.TEXTANSWER">文字解答</text> | ||
| 54 | + <text class="onLineDetails-1-1-r-t" @click="switchItem(MESSAGETYPE.TEXTANSWER)" v-if="answerType === MESSAGETYPE.VOICEANSWERS">语音解答</text> | ||
| 55 | + <image class="onLineDetails-1-1-r-i" src="@/static/imagesV2/icon59.png" mode="widthFix"></image> | ||
| 56 | + </view> | ||
| 57 | + </view> | ||
| 58 | + <view class="onLineDetails-1-2" v-if="answerType === MESSAGETYPE.TEXTANSWER"> | ||
| 59 | + <textarea class="onLineDetails-1-2-c" placeholder="请输入" v-model="content_one"></textarea> | ||
| 60 | + </view> | ||
| 61 | + <view v-else> | ||
| 62 | + <RecordingDevice /> | ||
| 63 | + </view> | ||
| 64 | + </view> | ||
| 65 | + </view> | ||
| 66 | +</template> | ||
| 67 | + | ||
| 68 | +<script> | ||
| 69 | + import { MESSAGETYPE } from "@/emit/index.js" | ||
| 70 | + import RecordingDevice from "@/components/RecordingDevice/index.vue" | ||
| 71 | + import VoicePlayback from "@/components/VoicePlayback/index.vue" | ||
| 72 | + export default { | ||
| 73 | + components: { | ||
| 74 | + RecordingDevice, | ||
| 75 | + VoicePlayback | ||
| 76 | + }, | ||
| 77 | + data() { | ||
| 78 | + return { | ||
| 79 | + MESSAGETYPE, | ||
| 80 | + answerType: MESSAGETYPE.VOICEANSWERS, | ||
| 81 | + value: 5 | ||
| 82 | + }; | ||
| 83 | + }, | ||
| 84 | + onHide() { | ||
| 85 | + | ||
| 86 | + }, | ||
| 87 | + methods: { | ||
| 88 | + switchItem(type) { | ||
| 89 | + this.answerType = type | ||
| 90 | + } | ||
| 91 | + } | ||
| 92 | + } | ||
| 93 | +</script> | ||
| 94 | + | ||
| 95 | +<style lang="scss" scoped> | ||
| 96 | +.onLineDetails{ | ||
| 97 | + padding: 20rpx 25rpx; | ||
| 98 | + .answer-item2{ | ||
| 99 | + padding: 30rpx; | ||
| 100 | + background-color: #FFFFFF; | ||
| 101 | + box-sizing: border-box; | ||
| 102 | + border-radius: 20rpx; | ||
| 103 | + position: relative; | ||
| 104 | + .answer-item2-star{ | ||
| 105 | + position: absolute; | ||
| 106 | + top: 43rpx; | ||
| 107 | + right: 29rpx; | ||
| 108 | + display: flex; | ||
| 109 | + align-items: center; | ||
| 110 | + .answer-item2-star-l{ | ||
| 111 | + font-size: 24rpx; | ||
| 112 | + color: #323232; | ||
| 113 | + } | ||
| 114 | + } | ||
| 115 | + .myQuestion-2-i-1{ | ||
| 116 | + display: flex; | ||
| 117 | + align-items: center; | ||
| 118 | + .myQuestion-2-i-1-l{ | ||
| 119 | + .myQuestion-2-i-1-l-i{ | ||
| 120 | + height: 60rpx; | ||
| 121 | + width: 60rpx; | ||
| 122 | + border-radius: 100%; | ||
| 123 | + } | ||
| 124 | + } | ||
| 125 | + .myQuestion-2-i-1-r{ | ||
| 126 | + margin-left: 30rpx; | ||
| 127 | + .myQuestion-2-i-1-r-1{ | ||
| 128 | + font-size: 26rpx; | ||
| 129 | + color: #323232; | ||
| 130 | + font-weight: bold; | ||
| 131 | + } | ||
| 132 | + .myQuestion-2-i-1-r-2{ | ||
| 133 | + font-size: 24rpx; | ||
| 134 | + color: #979797; | ||
| 135 | + margin-top: 5rpx; | ||
| 136 | + } | ||
| 137 | + } | ||
| 138 | + } | ||
| 139 | + .myQuestion-2-i-2{ | ||
| 140 | + line-height: 39rpx; | ||
| 141 | + color: #323232; | ||
| 142 | + font-size: 26rpx; | ||
| 143 | + margin: 30rpx 0; | ||
| 144 | + } | ||
| 145 | + .myQuestion-2-i-3{ | ||
| 146 | + padding-top: 33rpx; | ||
| 147 | + margin-top: 20rpx; | ||
| 148 | + border-top: 1rpx solid #F3F3F7; | ||
| 149 | + .myQuestion-2-i-3-c{ | ||
| 150 | + border-radius: 20rpx; | ||
| 151 | + background: #F5F6F8; | ||
| 152 | + padding: 30rpx; | ||
| 153 | + .myQuestion-2-i-3-c-1{ | ||
| 154 | + display: flex; | ||
| 155 | + justify-content: space-between; | ||
| 156 | + align-items: center; | ||
| 157 | + .myQuestion-2-i-3-c-1-l{ | ||
| 158 | + display: flex; | ||
| 159 | + align-items: center; | ||
| 160 | + .myQuestion-2-i-3-c-1-l-i{ | ||
| 161 | + height: 48rpx; | ||
| 162 | + width: 48rpx; | ||
| 163 | + border-radius: 200rpx; | ||
| 164 | + } | ||
| 165 | + .myQuestion-2-i-3-c-1-l-t{ | ||
| 166 | + font-size: 26rpx; | ||
| 167 | + margin-left: 19rpx; | ||
| 168 | + color: #323232; | ||
| 169 | + } | ||
| 170 | + } | ||
| 171 | + .myQuestion-2-i-3-c-1-r{ | ||
| 172 | + font-size: 24rpx; | ||
| 173 | + color: #979797; | ||
| 174 | + } | ||
| 175 | + } | ||
| 176 | + .myQuestion-2-i-3-c-2{ | ||
| 177 | + line-height: 39rpx; | ||
| 178 | + font-size: 26rpx; | ||
| 179 | + color: #323232; | ||
| 180 | + margin-top: 28rpx; | ||
| 181 | + } | ||
| 182 | + } | ||
| 183 | + } | ||
| 184 | + .myQuestion-2-i-4{ | ||
| 185 | + display: grid; | ||
| 186 | + grid-template-columns: repeat(4, 1fr); | ||
| 187 | + grid-row-gap: 20rpx; | ||
| 188 | + grid-column-gap: 20rpx; | ||
| 189 | + margin-top: 30rpx; | ||
| 190 | + } | ||
| 191 | + } | ||
| 192 | + .onLineDetails-1{ | ||
| 193 | + background: #FFFFFF; | ||
| 194 | + border-radius: 20rpx; | ||
| 195 | + margin-top: 18rpx; | ||
| 196 | + padding: 0 30rpx; | ||
| 197 | + padding-bottom: 40rpx; | ||
| 198 | + .onLineDetails-1-1{ | ||
| 199 | + height: 130rpx; | ||
| 200 | + display: flex; | ||
| 201 | + align-items: center; | ||
| 202 | + justify-content: space-between; | ||
| 203 | + .onLineDetails-1-1-l{ | ||
| 204 | + font-size: 30rpx; | ||
| 205 | + color: #000000; | ||
| 206 | + position: relative; | ||
| 207 | + padding-left: 35rpx; | ||
| 208 | + &:before{ | ||
| 209 | + content: ''; | ||
| 210 | + width: 8rpx; | ||
| 211 | + height: 25rpx; | ||
| 212 | + background-color: #2D81FF; | ||
| 213 | + border-radius: 20rpx; | ||
| 214 | + position: absolute; | ||
| 215 | + top: 50%; | ||
| 216 | + left: 0; | ||
| 217 | + transform: translateY(-50%); | ||
| 218 | + } | ||
| 219 | + } | ||
| 220 | + .onLineDetails-1-1-r{ | ||
| 221 | + display: flex; | ||
| 222 | + align-items: center; | ||
| 223 | + .onLineDetails-1-1-r-t{ | ||
| 224 | + font-size: 28rpx; | ||
| 225 | + color: #646464; | ||
| 226 | + } | ||
| 227 | + .onLineDetails-1-1-r-i{ | ||
| 228 | + height: 30rpx; | ||
| 229 | + width: 30rpx; | ||
| 230 | + margin-left: 10rpx; | ||
| 231 | + } | ||
| 232 | + } | ||
| 233 | + } | ||
| 234 | + .onLineDetails-1-2{ | ||
| 235 | + background-color: #F5F6F8; | ||
| 236 | + padding: 30rpx 40rpx; | ||
| 237 | + border-radius: 20rpx; | ||
| 238 | + .onLineDetails-1-2-c{ | ||
| 239 | + font-size: 28rpx; | ||
| 240 | + } | ||
| 241 | + } | ||
| 242 | + } | ||
| 243 | +} | ||
| 244 | +</style> |
new_tec/rateMe/rateMe.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <view class="rateMe"> | ||
| 3 | + <view class="rateMe-1"> | ||
| 4 | + <image class="rateMe-1-bg" src="@/static/imagesV2/icon67.png" mode="widthFix"></image> | ||
| 5 | + <view class="rateMe-1-c"> | ||
| 6 | + <view class="rateMe-1-c-i"> | ||
| 7 | + <view class="rateMe-1-c-i-1">6.6</view> | ||
| 8 | + <view class="rateMe-1-c-i-2">总评分(分)</view> | ||
| 9 | + </view> | ||
| 10 | + <view class="rateMe-1-c-i"> | ||
| 11 | + <view class="rateMe-1-c-i-1">13</view> | ||
| 12 | + <view class="rateMe-1-c-i-2">评价人数(人)</view> | ||
| 13 | + </view> | ||
| 14 | + </view> | ||
| 15 | + </view> | ||
| 16 | + <view class="rateMe-2"> | ||
| 17 | + <view class="rateMe-2-1"> | ||
| 18 | + <view class="rateMe-2-1-l">评分</view> | ||
| 19 | + <view class="rateMe-2-1-c"> | ||
| 20 | + <u-rate :count="10" v-model="value"></u-rate> | ||
| 21 | + </view> | ||
| 22 | + <view class="rateMe-2-1-r">一般</view> | ||
| 23 | + </view> | ||
| 24 | + <view class="rateMe-2-2"> | ||
| 25 | + <text style="color: #979797;">其它评价及建议:</text> | ||
| 26 | + <text>张东老师教学水平高,桃李满天 下,学识渊博,深受学生敬仰。</text> | ||
| 27 | + </view> | ||
| 28 | + </view> | ||
| 29 | + </view> | ||
| 30 | +</template> | ||
| 31 | + | ||
| 32 | +<script> | ||
| 33 | + export default { | ||
| 34 | + data() { | ||
| 35 | + return { | ||
| 36 | + value: 10 | ||
| 37 | + } | ||
| 38 | + }, | ||
| 39 | + methods: { | ||
| 40 | + | ||
| 41 | + } | ||
| 42 | + } | ||
| 43 | +</script> | ||
| 44 | + | ||
| 45 | +<style lang="scss" scoped> | ||
| 46 | +.rateMe{ | ||
| 47 | + padding: 20rpx 25rpx; | ||
| 48 | + .rateMe-1{ | ||
| 49 | + position: relative; | ||
| 50 | + .rateMe-1-bg{ | ||
| 51 | + height: 200rpx; | ||
| 52 | + width: 100%; | ||
| 53 | + } | ||
| 54 | + .rateMe-1-c{ | ||
| 55 | + position: absolute; | ||
| 56 | + height: 200rpx; | ||
| 57 | + width: 100%; | ||
| 58 | + display: flex; | ||
| 59 | + top: 0; | ||
| 60 | + left: 0; | ||
| 61 | + .rateMe-1-c-i{ | ||
| 62 | + width: 50%; | ||
| 63 | + color: #fff; | ||
| 64 | + display: flex; | ||
| 65 | + flex-direction: column; | ||
| 66 | + align-items: center; | ||
| 67 | + justify-content: center; | ||
| 68 | + position: relative; | ||
| 69 | + &:first-child{ | ||
| 70 | + &:before{ | ||
| 71 | + content: ''; | ||
| 72 | + position: absolute; | ||
| 73 | + height: 50rpx; | ||
| 74 | + border-left: rgba(#F2F2F2, .2) solid 1rpx; | ||
| 75 | + top: 50%; | ||
| 76 | + right: 0; | ||
| 77 | + transform: translateY(-50%); | ||
| 78 | + } | ||
| 79 | + } | ||
| 80 | + .rateMe-1-c-i-1{ | ||
| 81 | + font-size: 38rpx; | ||
| 82 | + font-weight: bold; | ||
| 83 | + } | ||
| 84 | + } | ||
| 85 | + } | ||
| 86 | + } | ||
| 87 | + .rateMe-2{ | ||
| 88 | + padding: 40rpx 30rpx; | ||
| 89 | + background: #fff; | ||
| 90 | + border-radius: 20rpx; | ||
| 91 | + margin-top: 20rpx; | ||
| 92 | + .rateMe-2-1{ | ||
| 93 | + display: flex; | ||
| 94 | + align-items: center; | ||
| 95 | + .rateMe-2-1-l{ | ||
| 96 | + font-size: 24rpx; | ||
| 97 | + color: #323232; | ||
| 98 | + } | ||
| 99 | + .rateMe-2-1-c{ | ||
| 100 | + margin: 0 40rpx; | ||
| 101 | + } | ||
| 102 | + .rateMe-2-1-r{ | ||
| 103 | + font-size: 24rpx; | ||
| 104 | + color: #FC5101; | ||
| 105 | + } | ||
| 106 | + } | ||
| 107 | + .rateMe-2-2{ | ||
| 108 | + margin-top: 20rpx; | ||
| 109 | + padding: 40rpx 30rpx; | ||
| 110 | + background: #F5F6F8; | ||
| 111 | + margin-top: 30rpx; | ||
| 112 | + font-size: 26rpx; | ||
| 113 | + } | ||
| 114 | + } | ||
| 115 | +} | ||
| 116 | +</style> |
| @@ -816,6 +816,42 @@ | @@ -816,6 +816,42 @@ | ||
| 816 | } | 816 | } |
| 817 | 817 | ||
| 818 | } | 818 | } |
| 819 | + ,{ | ||
| 820 | + "path" : "onLine/onLine", | ||
| 821 | + "style" : | ||
| 822 | + { | ||
| 823 | + "navigationBarTitleText": "在线答疑", | ||
| 824 | + "enablePullDownRefresh": false | ||
| 825 | + } | ||
| 826 | + | ||
| 827 | + } | ||
| 828 | + ,{ | ||
| 829 | + "path" : "onLineDetails/onLineDetails", | ||
| 830 | + "style" : | ||
| 831 | + { | ||
| 832 | + "navigationBarTitleText": "解答问题", | ||
| 833 | + "enablePullDownRefresh": false | ||
| 834 | + } | ||
| 835 | + | ||
| 836 | + } | ||
| 837 | + ,{ | ||
| 838 | + "path" : "evaluationRecords/evaluationRecords", | ||
| 839 | + "style" : | ||
| 840 | + { | ||
| 841 | + "navigationBarTitleText": "评价记录", | ||
| 842 | + "enablePullDownRefresh": false | ||
| 843 | + } | ||
| 844 | + | ||
| 845 | + } | ||
| 846 | + ,{ | ||
| 847 | + "path" : "rateMe/rateMe", | ||
| 848 | + "style" : | ||
| 849 | + { | ||
| 850 | + "navigationBarTitleText": "学员对我评分", | ||
| 851 | + "enablePullDownRefresh": false | ||
| 852 | + } | ||
| 853 | + | ||
| 854 | + } | ||
| 819 | ] | 855 | ] |
| 820 | } | 856 | } |
| 821 | ] | 857 | ] |
| @@ -37,10 +37,10 @@ | @@ -37,10 +37,10 @@ | ||
| 37 | }) | 37 | }) |
| 38 | }else{ | 38 | }else{ |
| 39 | var identity=uni.getStorageSync('identity') | 39 | var identity=uni.getStorageSync('identity') |
| 40 | - // uni.reLaunch({ | ||
| 41 | - // url:'/new_tec/homePage/homePage' | ||
| 42 | - // }) | ||
| 43 | - // return | 40 | + uni.reLaunch({ |
| 41 | + url:'/new_tec/homePage/homePage' | ||
| 42 | + }) | ||
| 43 | + return | ||
| 44 | if(identity==2){ | 44 | if(identity==2){ |
| 45 | uni.reLaunch({ | 45 | uni.reLaunch({ |
| 46 | url:'/pages/tch_index/tch_index' | 46 | url:'/pages/tch_index/tch_index' |
| @@ -143,6 +143,12 @@ | @@ -143,6 +143,12 @@ | ||
| 143 | url: '/pagesStu/answerForm/answerForm' | 143 | url: '/pagesStu/answerForm/answerForm' |
| 144 | }) | 144 | }) |
| 145 | }, | 145 | }, |
| 146 | + seeImg(index) { | ||
| 147 | + uni.previewImage({ | ||
| 148 | + current: index, // 当前显示图片的链接,不填则默认为 urls 的第一张图片 | ||
| 149 | + urls: this.info.imgs // 需要预览的图片链接列表 | ||
| 150 | + }) | ||
| 151 | + }, | ||
| 146 | toMyQuestion() { | 152 | toMyQuestion() { |
| 147 | uni.navigateTo({ | 153 | uni.navigateTo({ |
| 148 | url: '/pagesStu/myQuestion/myQuestion' | 154 | url: '/pagesStu/myQuestion/myQuestion' |
| @@ -65,7 +65,7 @@ | @@ -65,7 +65,7 @@ | ||
| 65 | </template> | 65 | </template> |
| 66 | 66 | ||
| 67 | <script> | 67 | <script> |
| 68 | - import VoicePlayback from "./components/VoicePlayback/index.vue" | 68 | + import VoicePlayback from "@/components/VoicePlayback/index.vue" |
| 69 | export default { | 69 | export default { |
| 70 | components: { | 70 | components: { |
| 71 | VoicePlayback | 71 | VoicePlayback |
| @@ -60,12 +60,12 @@ | @@ -60,12 +60,12 @@ | ||
| 60 | this.type = type | 60 | this.type = type |
| 61 | }, | 61 | }, |
| 62 | toBigShotsDetails() { | 62 | toBigShotsDetails() { |
| 63 | - // uni.navigateTo({ | ||
| 64 | - // url: '/pagesStu/bigShotsDetails/bigShotsDetails' | ||
| 65 | - // }) | ||
| 66 | uni.navigateTo({ | 63 | uni.navigateTo({ |
| 67 | - url: '/pagesStu/audioFrequency/audioFrequency' | 64 | + url: '/pagesStu/bigShotsDetails/bigShotsDetails' |
| 68 | }) | 65 | }) |
| 66 | + // uni.navigateTo({ | ||
| 67 | + // url: '/pagesStu/audioFrequency/audioFrequency' | ||
| 68 | + // }) | ||
| 69 | } | 69 | } |
| 70 | } | 70 | } |
| 71 | } | 71 | } |
static/imagesV2/icon42s.png
0 → 100644
2.7 KB
static/imagesV2/icon59.png
0 → 100644
1.9 KB
static/imagesV2/icon60.png
0 → 100644
530 字节
static/imagesV2/icon61.png
0 → 100644
15.1 KB
static/imagesV2/icon62.png
0 → 100644
39.2 KB
static/imagesV2/icon63.png
0 → 100644
9.1 KB
static/imagesV2/icon64.png
0 → 100644
5.8 KB
static/imagesV2/icon65.png
0 → 100644
530 字节
static/imagesV2/icon66.png
0 → 100644
7.9 KB
static/imagesV2/icon67.png
0 → 100644
144.7 KB
-
请 注册 或 登录 后发表评论