From 9c01660cebeab4a17e1b201b59d35694f6b72c98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A6=86=E9=92=B1=E8=90=BD=E5=B0=BD=E6=A7=BF=E8=8A=B1?= =?UTF-8?q?=E7=A8=80?= <2675540038@qq.com> Date: Wed, 30 Jul 2025 19:58:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/.gitignore | 8 + .idea/AugmentWebviewStateStore.xml | 10 + .idea/modules.xml | 8 + .idea/vcs.xml | 6 + .idea/国职.iml | 12 + common/api/news.js | 7 + common/js/utils.js | 16 +- .../kz-page-index-color-1.vue | 1687 +++--- .../kz-page-my-color-1/kz-page-my-color-1.vue | 132 +- components/kz-question/kz-question.vue | 4756 +++++++++-------- .../kz-wx-privacy-check.vue | 1 + components/tabbar/tabbar.vue | 6 +- .../tui-cascade-selection.vue | 2 +- pages.json | 30 +- pages/collect/index.vue | 7 +- pages/index/index.vue | 33 +- pages/index/news-detail.vue | 193 +- pages/index/news-list.vue | 354 +- pages/index/notice-detail.vue | 37 +- pages/index/notice-list.vue | 13 +- pages/paper/grade.vue | 8 +- pages/paper/index.vue | 4 +- pages/paper/paper.vue | 171 +- pages/train/index.vue | 25 +- pages/user/my-cate.vue | 4 +- pages/user/set.vue | 8 +- pagesSubject/video/info.vue | 29 + pagesSubject/video/list.vue | 60 +- static/img/1.png | Bin 0 -> 5255 bytes static/img/2.png | Bin 0 -> 5443 bytes static/img/3.png | Bin 0 -> 7104 bytes static/img/4.png | Bin 0 -> 5288 bytes uni_modules/mp-html/README.md | 24 +- uni_modules/mp-html/changelog.md | 6 + .../mp-html/components/mp-html/mp-html.vue | 7 +- .../mp-html/components/mp-html/node/node.vue | 18 +- .../mp-html/components/mp-html/parser.js | 17 +- uni_modules/mp-html/package.json | 165 +- .../static/app-plus/mp-html/js/handler.js | 2 +- .../static/app-plus/mp-html/local.html | 2 +- 40 files changed, 4003 insertions(+), 3865 deletions(-) create mode 100644 .idea/.gitignore create mode 100644 .idea/AugmentWebviewStateStore.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 .idea/国职.iml create mode 100644 static/img/1.png create mode 100644 static/img/2.png create mode 100644 static/img/3.png create mode 100644 static/img/4.png diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..35410ca --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# 默认忽略的文件 +/shelf/ +/workspace.xml +# 基于编辑器的 HTTP 客户端请求 +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/AugmentWebviewStateStore.xml b/.idea/AugmentWebviewStateStore.xml new file mode 100644 index 0000000..7c53b7c --- /dev/null +++ b/.idea/AugmentWebviewStateStore.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..a7e0f59 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/国职.iml b/.idea/国职.iml new file mode 100644 index 0000000..24643cc --- /dev/null +++ b/.idea/国职.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/common/api/news.js b/common/api/news.js index d681601..a4c7431 100644 --- a/common/api/news.js +++ b/common/api/news.js @@ -62,4 +62,11 @@ module.exports = { userViedoFind(handler, data = {}) { return utils.http(handler, 'viedo/jilufind', data) }, + /** + * 查询是否是会员 + * @returns {Promise<*>} + */ + ifUserMember(handler, data = {}) { + return utils.http(handler, 'viedo/ifUserMember', data) + }, } diff --git a/common/js/utils.js b/common/js/utils.js index 9545ad6..cbf2744 100644 --- a/common/js/utils.js +++ b/common/js/utils.js @@ -241,14 +241,14 @@ module.exports = { // 过滤掉一些接口code为0的报错不提示,默认所有接口code为0时提示报错 // 不需要报错提示,自行到isShowTip方法里面的filterList数组添加不需要提示的接口名 let isShowTip = this.isShowTip(path) - if(res.data.code == 0){ - if(isShowTip){ - uni.showToast({ - title: res.data.msg, - icon: 'none' - }) - } - } + // if(res.data.code == 0){ + // if(isShowTip){ + // uni.showToast({ + // title: res.data.msg, + // icon: 'none' + // }) + // } + // } resolve(res.data) } else { console.log('http statusCode', res.statusCode) diff --git a/components/kz-page-index-color-1/kz-page-index-color-1.vue b/components/kz-page-index-color-1/kz-page-index-color-1.vue index 3b25f88..2a6359d 100644 --- a/components/kz-page-index-color-1/kz-page-index-color-1.vue +++ b/components/kz-page-index-color-1/kz-page-index-color-1.vue @@ -1,329 +1,201 @@ + \ No newline at end of file diff --git a/components/kz-page-my-color-1/kz-page-my-color-1.vue b/components/kz-page-my-color-1/kz-page-my-color-1.vue index 9402141..ac22551 100644 --- a/components/kz-page-my-color-1/kz-page-my-color-1.vue +++ b/components/kz-page-my-color-1/kz-page-my-color-1.vue @@ -25,15 +25,15 @@ class="tn-color-wallpaper tn-text-xl tn-text-bold">{{ userInfo.nickname }} {{userInfo.info.type_text}} + v-if="userInfo.info">{{userInfo.info.status==1?'平台会员':'普通用户'}} - 积分: {{userInfo ? userInfo.info.score : 0}}分 - + --> @@ -55,7 +55,7 @@ - + 权 益 @@ -93,12 +92,12 @@ - + --> - + @@ -112,20 +111,20 @@ - + - + 题目收藏 - - + + + + + + + + + + 考试成绩 + + + + + + + + + + 学习记录 + + - + - + + - 我的上传 + 学习记录 @@ -196,12 +217,12 @@ - 常用分类 + 常用题库 - - + @@ -213,10 +234,10 @@ - + --> - + - - + --> - - + --> - - - @@ -354,9 +373,8 @@ - - @@ -365,13 +383,11 @@ - + - @@ -382,8 +398,7 @@ - - + --> @@ -502,20 +517,17 @@ } }, methods: { + openPhone(){ + uni.makePhoneCall({ + phoneNumber: '18903795988' //仅为示例 + }); + }, // 跳转 tn(e) { uni.navigateTo({ url: e, }); }, - - // 跳转到图鸟UI - navTuniaoUI() { - uni.navigateToMiniProgram({ - appId: 'wxf3d81a452b88ff4b' - }) - }, - // 收货地址 navAddress() { uni.chooseAddress({}) @@ -526,28 +538,6 @@ wx.vibrateShort(); }, - //拨打固定电话 - callPhoneNumber() { - uni.makePhoneCall({ - phoneNumber: "18219128888", - }); - }, - // 复制id - copyUid() { - wx.vibrateShort(); - uni.setClipboardData({ - data: "10262008", - }) - }, - // 复制开源地址 - copySource() { - wx.vibrateShort(); - uni.setClipboardData({ - data: "https://ext.dcloud.net.cn/publisher?id=356088", - }) - }, - - login() { this.$emit('login') }, diff --git a/components/kz-question/kz-question.vue b/components/kz-question/kz-question.vue index 242085b..c3f11af 100644 --- a/components/kz-question/kz-question.vue +++ b/components/kz-question/kz-question.vue @@ -1,279 +1,284 @@ - + page { + height: 100%; + } + + .questions { + height: 100%; + position: relative; + .test-header { + width: 100%; + padding: 0 30rpx; + display: flex; + align-items: center; + justify-content: center; + height: 80rpx; + background: #fff; + position: relative; + font-size: 34rpx; + } + + .card-shadow { + margin-top: 20rpx; + + .topic-title { + font-size: 34rpx; + padding: 30rpx 20rpx; + background: #fff; + border-bottom: 1px solid #f0f0f0; + display: flex; + align-items: center; + justify-content: space-between; + + .topic-title_left { + display: flex; + align-items: center; + + .text-kind { + font-size: 24rpx; + color: #fff; + background: linear-gradient(135deg, #7892fd, #1A73E8); + padding: 8rpx 10rpx; + border-radius: 15rpx 15rpx 15rpx 0; + margin-right: 20rpx; + } + } + + .title-index { + color: #1A73E8; + } + } + + .questions-cont { + height: 100vh; + display: flex; + flex-wrap: nowrap; + transition: all 0.5s; + + .swiper-item { + width: 100vw; + min-width: 100vw; + max-width: 100vw; + height: 100%; + overflow: auto; + + .test-main { + padding: 0 20rpx; + // margin: 40rpx 30rpx; + // margin-bottom: 40rpx; + // border-radius: 8px; + background: #fff; + + .test-title { + color: #333; + padding: 20rpx 0; + + .text-kind { + font-size: 24rpx; + color: #fff; + background: linear-gradient(135deg, #7892fd, #1A73E8); + padding: 8rpx 10rpx; + border-radius: 15rpx 15rpx 15rpx 0; + } + + .test-favor { + position: relative; + color: #aaa; + float: right; + } + + .test-favor-fill { + background: #fff; + color: #fbbd08; + float: right; + } + } + + .test-title-fill { + width: 100%; + word-wrap: break-word; + word-break: break-all; + display: flex; + flex-wrap: wrap; + } + + .test-title-fill-item { + margin: 5px; + } + + .test-cont { + display: flex; + flex-direction: column; + padding-bottom: 20rpx; + color: #333333; + + .test-cont-item { + padding: 20rpx; + display: flex; + background-color: #f6f6f6; + margin-bottom: 20rpx; + border-radius: 10rpx; + align-items: center; + justify-content: center; + position: relative; + + &::after { + background: #333; + content: ""; + width: 100%; + height: 100%; + position: absolute; + opacity: 0; + transition: all 0.35s; + } + + &:active::after { + opacity: .3; + width: 0%; + transition: 0s; + } + + .cont { + flex: 1; + height: 100%; + padding-left: 20rpx; + display: flex; + align-items: center; + justify-content: space-between; + + .cont-text { + display: flex; + align-items: center; + flex-wrap: wrap; + flex: 1; + height: 100%; + font-p: 32rpx; + + .image { + width: 50%; + height: auto; + margin-right: 20rpx; + } + } + + .cont-icon { + width: 40rpx; + margin-left: 20rpx; + color: #1A73E8; + font-size: 36rpx; + } + } + + .key { + width: 50rpx; + height: 50rpx; + background-color: #d0d0d0; + border-radius: 50%; + color: #FFFFFF; + display: flex; + align-items: center; + justify-content: center; + } + + &.active_true { + background-color: rgba(86, 119, 252, 0.2); + + .key { + background-color: #1A73E8; + } + + .cont { + .cont-icon { + font-weight: bold; + color: #1A73E8; + } + } + } + + &.active { + background-color: rgba(255, 68, 0, 0.2); + + .key { + background-color: #ff4400; + } + + .cont { + .cont-icon { + font-weight: bold; + color: #ff4400; + } + } + } + + } + } + } + + .test-describe { + // padding: 0 20rpx; + padding-bottom: 10px; + background-color: #fff; + + .describe-title { + height: 48px; + line-height: 48px; + display: flex; + + text { + color: #666; + font-size: 12px; + } + + image { + width: 14px; + height: 14px; + margin-top: 17px; + margin-left: 3px; + } + } + + .describe-cont { + // background: #f5f5f5; + // padding: 12rpx; + display: flex; + flex-direction: column; + font-size: 34rpx; + margin-top: 8rpx; + line-height: 40rpx; + + // & > view { + // color: #666; + // font-size: 30rpx; + // background-color: #fff; + // text-indent: 15px; + // margin-bottom: 2rpx; + // // margin-top: 2rpx; + // // border-radius: 10rpx; + + // // &:nth-child(3) { + // // font-size: 12px; + // // line-height: 20px; + // // } + // } + } + } + } + } + } + + + .fixed-bottom { + .tibiao { + background: #fff; + width: 100%; + height: 50vh; + padding: 35rpx !important; + padding-bottom: calc(constant(safe-area-inset-bottom) + 35rpx); + padding-bottom: calc(constant(safe-area-inset-bottom) + 35rpx); + border-radius: 20rpx 20rpx 0 0; + + .tibiao-scroll { + height: 100%; + + .tibiao-scroll-list { + display: flex; + align-items: center; + flex-wrap: wrap; + + .tibiao-item { + height: 100rpx; + width: 100rpx; + border-radius: 50%; + margin-bottom: 30rpx; + border: 1rpx solid #d0d0d0; + display: flex; + align-items: center; + justify-content: center; + margin-right: 45rpx; + + &:nth-child(5n) { + margin-right: 0; + } + + &.tibiao-right { + background: #4caf50; + color: #fff; + } + + &.tibiao-error { + background: #ff4400; + color: #fff; + } + + &.selected { + background: #1A73E8; + color: #fff; + } + } + } + + + } + } + } + } + + + .cu-list { + width: 100%; + height: 100rpx; + position: fixed; + left: 0; + bottom: 0; + text-align: center; + border-radius: 8px; + } + + .cu-list.grid>.cu-item { + padding-top: 5px; + } + + .cu-list image { + width: 25px; + height: 25px; + display: inline-block; + margin: 0 auto; + } + + // 弹窗 + .result { + width: 100%; + height: 100vh; + background: #fff; + padding-top: 10px; + } + + .progress_box { + position: relative; + width: 100%; + display: flex; + align-items: center; + justify-content: center; + text-align: center; + } + + .progress_bg { + position: absolute; + width: 220px; + height: 220px; + } + + .progress_bar { + width: 220px; + height: 220px; + } + + .progress_txt { + position: absolute; + font-size: 28upx; + color: #999999; + } + + .progress_info { + font-size: 36upx; + padding-left: 16upx; + letter-spacing: 2upx; + font-size: 52upx; + color: #333333; + } + + .progress_dot { + width: 16upx; + height: 16upx; + border-radius: 50%; + background-color: #fb9126; + } + + .table { + width: 90%; + margin: 0 auto; + overflow: hidden; + } + + .describe-item { + // height: 70rpx; + padding-top: 20rpx; + text-indent: 30rpx; + } + + .flex_1 { + text-align: left; + } + + .flex_2 { + text-align: right; + } + + .red { + color: #f00; + } + + .error { + display: inline-block; + height: 30px; + line-height: 30px; + border-radius: 5px; + padding: 0 10px; + margin-left: 15px; + } + + /*收藏 */ + + .tui-fabulous__box { + position: relative; + } + + .tui-fabulous { + position: absolute; + left: 60px; + top: 0; + visibility: hidden; + } + + .tui-fabulous__active { + animation: fabulousAni 2s linear; + } + + @keyframes fabulousAni { + 0% { + transform: translateY(0) scale(0.8); + visibility: visible; + opacity: 1; + } + + 15% { + transform: translateY(-40px) scale(1.25); + opacity: 1; + } + + 100% { + transform: translateY(-240px) scale(0.5); + visibility: hidden; + opacity: 0; + } + } + + /* 红心收藏效果 */ + + .cu-list.grid>.cu-item text { + margin-top: 0; + } + + .cu-list.grid>.cu-item:after { + border: 0px; + } + + .fix-bottom { + bottom: calc(constant(safe-area-inset-bottom) + 30rpx); + bottom: calc(env(safe-area-inset-bottom) + 30rpx); + width: 95%; + position: fixed; + margin: 0 auto; + left: 0; + right: 0; + } + + .tui-prompt-title { + padding-bottom: 20rpx; + font-size: 34rpx; + font-weight: bold; + text-align: center; + } + + .tui-flex-box { + width: 100%; + display: flex; + align-items: center; + flex-wrap: wrap; + margin-top: 40rpx; + } + + .tui-flex-botton-view { + width: 45%; + margin: 0 auto; + } + + @keyframes anime { + 0% { + background-size: 0% 0%; + } + + 100% { + background-position: 100% 100%; + } + } + + /** 填空题输入框 */ + .fill-input { + border: 0px; + border-bottom: 2px solid #1A73E8; + width: 200rpx; + margin: 0 10rpx; + } + + .fill-input-right { + border-bottom: 2px solid #4caf50; + } + + .fill-input-error { + border-bottom: 2px solid #ff4400; + } + + .btn-confirm { + margin-top: 60rpx; + margin-bottom: 20rpx; + } + + /** 简答题输入框 */ + .short-input { + border: 0px; + border-bottom: 2px solid #1A73E8; + width: 100%; + min-height: 500rpx; + margin: 10rpx; + } + + .short-input-right { + color: #4caf50; + } + + .short-input-error { + color: #ff4400; + } + + .material-title { + background-color: #fff; + padding: 10px; + } + + .material-title-tip { + font-size: 36rpx; + font-weight: bold; + } + + .title-video { + width: 100%; + min-height: 200px; + pointer-events: auto !important; + } + + .explain-video-view { + width: 100%; + min-height: 240px; + background-color: #fff; + padding: 20px 0px; + } + + .explain-video { + width: 100%; + min-height: 200px; + pointer-events: auto !important; + } + + .fab-bg-color { + background-color: #e6e6e6; + } + + textarea::-webkit-input-placeholder { + font-size: 24rpx; + } + + textarea:-moz-placeholder { + font-size: 24rpx; + } + + textarea::-moz-placeholder { + font-size: 24rpx; + } + + textarea::-ms-input-placeholder { + font-size: 24rpx; + } + + .text-right-answer { + font-size: 25rpx; + color: #fff; + background: linear-gradient(135deg, #7892fd, #1A73E8); + padding: 8rpx 0rpx; + border-radius: 15rpx 15rpx 15rpx 0; + margin-left: 20rpx; + width: 168rpx; + height: 50rpx; + line-height: 38rpx; + display: inline-block; + } + + .text-right-answer-val { + font-size: 28rpx; + color: #1A73E8; + padding: 8rpx 0rpx; + border-radius: 15rpx 15rpx 15rpx 0; + margin-left: 0; + // width: 150rpx; + // height: 50rpx; + line-height: 40rpx; + display: inline-block; + } + + .answer-row { + display: flex; + align-items: center; + margin-bottom: 10rpx; + } + + .text-indent { + text-indent: 30rpx; + } + + .text-user-answer { + font-size: 24rpx; + color: #fff; + background: linear-gradient(135deg, #7892fd, #1A73E8); + padding: 8rpx 0rpx; + border-radius: 15rpx 15rpx 15rpx 0; + margin-left: 20rpx; + width: 168rpx; + // height: 50rpx; + line-height: 38rpx; + display: flex; + align-items: center; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + + text { + color: #fff; + font-size: 24rpx; + } + } + + .text-right-answer-val-item { + font-size: 28rpx; + color: #1A73E8; + padding: 8rpx 0rpx; + border-radius: 15rpx 15rpx 15rpx 0; + margin-left: 0; + } + + .explain-content { + background-color: #fff9e6; + margin: 10rpx 20rpx; + border-radius: 10rpx; + padding: 10rpx; + } + + .explain-content-title { + font-size: 32rpx; + font-weight: bold; + margin-bottom: 20rpx; + text-indent: 30rpx; + + text { + font-size: 30rpx; + } + } + + .explain-content-text { + font-size: 30rpx !important; + color: #333333; + text-indent: 30rpx; + padding: 6rpx; + line-height: 42rpx; + width: 90%; + display: block; + } + + .pt-0 { + padding-top: 0 !important; + } + + .font-size-30 { + font-size: 30rpx; + } + \ No newline at end of file diff --git a/components/kz-wx-privacy-check/kz-wx-privacy-check.vue b/components/kz-wx-privacy-check/kz-wx-privacy-check.vue index fa6791b..81aa6eb 100644 --- a/components/kz-wx-privacy-check/kz-wx-privacy-check.vue +++ b/components/kz-wx-privacy-check/kz-wx-privacy-check.vue @@ -130,6 +130,7 @@ .btns { margin-top: 48rpx; display: flex; + justify-content: center; } .btns .item { diff --git a/components/tabbar/tabbar.vue b/components/tabbar/tabbar.vue index 0d3c667..a858c08 100644 --- a/components/tabbar/tabbar.vue +++ b/components/tabbar/tabbar.vue @@ -115,14 +115,14 @@ path: '/pages/paper/index', }, { - name: '学习动态', + name: '关于我们', icon: 'tn-icon-inventory', path: '/pages/index/news-list', }, { - name: '考场列表', + name: '考试公示', icon: 'tn-icon-menu-list', - path: '/pages/room/index', + path: '/pages/index/notice-list', }, { name: '我的', diff --git a/components/tui-cascade-selection/tui-cascade-selection.vue b/components/tui-cascade-selection/tui-cascade-selection.vue index 4362df0..30eab01 100644 --- a/components/tui-cascade-selection/tui-cascade-selection.vue +++ b/components/tui-cascade-selection/tui-cascade-selection.vue @@ -503,7 +503,7 @@ } .tui-header-item { - max-width: 240rpx; + max-width: 350rpx; padding: 15rpx 30rpx; box-sizing: border-box; flex-shrink: 0; diff --git a/pages.json b/pages.json index 7c6788a..658e36c 100644 --- a/pages.json +++ b/pages.json @@ -9,13 +9,13 @@ { "path": "pages/index/index", "style": { - "navigationBarTitleText": "答题考试", + "navigationBarTitleText": "名扬体育学苑", "navigationStyle": "custom" } }, { "path": "pages/paper/index", "style": { - "navigationBarTitleText": "试卷列表", + "navigationBarTitleText": "模拟考试", "enablePullDownRefresh": false, // 距离底部50px时,触发onReachBottom事件 "onReachBottonDistance": 50 @@ -26,7 +26,11 @@ "style": { "navigationBarTitleText": "考试试卷", "enablePullDownRefresh": false, - "autoBackButton": false + "autoBackButton": false, + "navigationStyle": "custom", + "app-plus": { + "popGesture": "none" + } // "navigationBarBackgroundColor": "#FFFFFF", // "navigationBarTextStyle": "black", // "titleNView": false, @@ -84,14 +88,14 @@ }, { "path": "pages/train/train", "style": { - "navigationBarTitleText": "", + "navigationBarTitleText": "答题", "enablePullDownRefresh": false } }, { "path": "pages/train/index", "style": { - "navigationBarTitleText": "", + "navigationBarTitleText": "题目选择", "enablePullDownRefresh": false } @@ -112,7 +116,7 @@ }, { "path": "pages/index/notice-list", "style": { - "navigationBarTitleText": "公告列表", + "navigationBarTitleText": "考试公示", "enablePullDownRefresh": false, // 距离底部50px时,触发onReachBottom事件 "onReachBottonDistance": 50 @@ -123,13 +127,13 @@ }, { "path": "pages/index/notice-detail", "style": { - "navigationBarTitleText": "", + "navigationBarTitleText": "详情", "enablePullDownRefresh": false } }, { "path": "pages/index/news-list", "style": { - "navigationBarTitleText": "学习动态列表", + "navigationBarTitleText": "关于我们", "enablePullDownRefresh": false, // 距离底部50px时,触发onReachBottom事件 "onReachBottonDistance": 50 @@ -138,7 +142,7 @@ }, { "path": "pages/index/news-detail", "style": { - "navigationBarTitleText": "", + "navigationBarTitleText": "详情", "enablePullDownRefresh": false } }, { @@ -219,13 +223,13 @@ { "path": "video/index", "style": { - "navigationBarTitleText": "视频教学" + "navigationBarTitleText": "课程中心" } }, { "path": "video/list", "style": { - "navigationBarTitleText": "视频教学" + "navigationBarTitleText": "课程中心" } }, { @@ -237,7 +241,7 @@ { "path": "video/user", "style": { - "navigationBarTitleText": "我上传的" + "navigationBarTitleText": "学习记录" } }, { @@ -367,7 +371,7 @@ }, // "navigationBarBackgroundColor": "#0081ff", - "navigationBarTitleText": "在线考试", + "navigationBarTitleText": "名扬体育学院", "navigationBarBackgroundColor": "#1A73E8", "navigationBarTextStyle": "white" // #ifdef H5 diff --git a/pages/collect/index.vue b/pages/collect/index.vue index de555e0..f0e2e47 100644 --- a/pages/collect/index.vue +++ b/pages/collect/index.vue @@ -1,7 +1,7 @@ @@ -123,6 +123,11 @@ export default { }, data() { return { + loadText: { + loadmore: '灵睿网络', + loading: '灵睿网络', + nomore: '灵睿网络' + }, focusOnTip: "点击「添加小程序」,下次访问更便捷", imgUrl: this.imgUrl, banners: [], @@ -147,7 +152,7 @@ export default { userInfo: {}, subjectId: 0, subjectName: "请选择科目", - title: "答题考试系统", + title: "名扬体育学苑", }; }, onLoad(e) { @@ -208,15 +213,15 @@ export default { // 积分提示 let point = res.data.point; - if (point?.get_point) { - this.$refs.toast.show({ - title: "积分+" + point.get_point, - content: point.type, - imgUrl: "/static/toast/info-circle.png", - icon: true, - duration: 4000, - }); - } + // if (point?.get_point) { + // this.$refs.toast.show({ + // title: "积分+" + point.get_point, + // content: point.type, + // imgUrl: "/static/toast/info-circle.png", + // icon: true, + // duration: 4000, + // }); + // } // 公告 this.notices = res.data.notices; diff --git a/pages/index/news-detail.vue b/pages/index/news-detail.vue index 85783aa..9caf490 100644 --- a/pages/index/news-detail.vue +++ b/pages/index/news-detail.vue @@ -1,43 +1,29 @@ + .bottomBox { + width: 750rpx; + position: fixed; + left: 0; + bottom: 0rpx; + } + \ No newline at end of file diff --git a/pages/index/news-list.vue b/pages/index/news-list.vue index ac6a847..e2139bc 100644 --- a/pages/index/news-list.vue +++ b/pages/index/news-list.vue @@ -1,217 +1,199 @@ + /* 用户头像 start */ + .logo-image { + width: 300rpx; + height: 200rpx; + position: relative; + } + .logo-pic { + background-size: cover; + background-repeat: no-repeat; + // background-attachment:fixed; + background-position: top; + border: 1rpx solid rgba(255, 255, 255, 0.05); + box-shadow: 0rpx 0rpx 80rpx 0rpx rgba(0, 0, 0, 0.05); + overflow: hidden; + // background-color: #FFFFFF; + } + \ No newline at end of file diff --git a/pages/index/notice-detail.vue b/pages/index/notice-detail.vue index c7c9ce2..3eac373 100644 --- a/pages/index/notice-detail.vue +++ b/pages/index/notice-detail.vue @@ -1,17 +1,6 @@ @@ -72,7 +61,12 @@ data() { return { newsData: [], - requestStatus: false // 事件防抖 + requestStatus: false, // 事件防抖 + tagStyle: { + table: 'border: 1px solid gray;border-collapse:collapse', + th: 'border: 1px solid gray;', + td: 'border: 1px solid gray;' + } } }, onLoad(option) { @@ -86,6 +80,7 @@ noticeApi.getNoticeDetail(this, {id: id}).then(res => { if (res && res.data) { + //res.data.contents = res.data.contents.replace(/ - - - - - - 公告 - - - - - @@ -54,7 +43,7 @@ - + diff --git a/pages/paper/grade.vue b/pages/paper/grade.vue index 162989b..53f8ac9 100644 --- a/pages/paper/grade.vue +++ b/pages/paper/grade.vue @@ -42,7 +42,7 @@ - + @@ -63,7 +63,7 @@ > - + @@ -131,9 +131,7 @@ this.gradeItem = item this.tipsAction = {text: item.paper?.title} - let listAction = [ - {text: '查看排行榜'} - ] + let listAction = [] if (item.error_ids) { listAction.unshift({text: '查看错题'}) } diff --git a/pages/paper/index.vue b/pages/paper/index.vue index 74e0da1..f45a380 100644 --- a/pages/paper/index.vue +++ b/pages/paper/index.vue @@ -14,7 +14,7 @@ {{ item.title }} - + 考试限时:{{ item.limit_time | format_second }} diff --git a/pages/paper/paper.vue b/pages/paper/paper.vue index cac16ae..69ba8e2 100644 --- a/pages/paper/paper.vue +++ b/pages/paper/paper.vue @@ -2,10 +2,21 @@ - - + + + + 考试试卷 + + + + + + + - - + + + + - + @@ -144,7 +144,7 @@ }], isSubmit: false, - + isFirstShow: true, // 是否防切屏 isPreventSwitchScreen: false, @@ -155,6 +155,7 @@ switchScreenTimestamp: 0, } }, + onShow() { if (this.isFirstShow) { this.isFirstShow = false @@ -177,6 +178,21 @@ } console.log('onShow', this.curretSwitchScreenCount) + + // 禁用iOS右划返回手势 - 方法3:onShow中补充设置,处理页面恢复情况 + // #ifdef APP-PLUS + if (!this.isFirstShow) { + try { + let pages = getCurrentPages(); + let page = pages[pages.length - 1]; + let currentWebview = page.$getAppWebview(); + currentWebview.setStyle({ popGesture: 'none' }); + console.log('onShow: iOS右划手势禁用补充设置完成') + } catch (e) { + console.log('onShow: iOS右划手势禁用补充设置失败', e) + } + } + // #endif }, onHide() { if (this.isPreventSwitchScreen) { @@ -194,6 +210,43 @@ if (this.room_id) { this.getQuestion() } + + // 禁用iOS右划返回手势 - 方法1:onLoad中设置 + // #ifdef APP-PLUS + try { + plus.webview.currentWebview().setStyle({'popGesture': 'none'}) + console.log('onLoad: iOS右划手势禁用设置完成') + } catch (e) { + console.log('onLoad: iOS右划手势禁用设置失败', e) + } + // #endif + }, + onReady() { + // 禁用iOS右划返回手势 - 方法2:onReady中使用getCurrentPages方式设置 + // #ifdef APP-PLUS + try { + let pages = getCurrentPages(); + let page = pages[pages.length - 1]; + let currentWebview = page.$getAppWebview(); + currentWebview.setStyle({ popGesture: 'none' }); + console.log('onReady: iOS右划手势禁用设置完成') + } catch (e) { + console.log('onReady: iOS右划手势禁用设置失败', e) + } + + // 延迟再次设置,确保webview完全初始化 + setTimeout(() => { + try { + let pages = getCurrentPages(); + let page = pages[pages.length - 1]; + let currentWebview = page.$getAppWebview(); + currentWebview.setStyle({ popGesture: 'none' }); + console.log('onReady延迟: iOS右划手势禁用设置完成') + } catch (e) { + console.log('onReady延迟: iOS右划手势禁用设置失败', e) + } + }, 500); + // #endif }, onBackPress(e) { console.log('onBackPress e', e) @@ -224,6 +277,22 @@ this.scrollTop = e.scrollTop }, methods: { + goToBack() { + if (!this.isSubmit) { + let message = '当前正在模拟考试,是否确认退出?' + uni.showModal({ + title: '提示', + content: message, + success: (res) => { + if (res.confirm) { + uni.navigateBack({ + delta: 1 + }); + } + } + }); + } + }, // 请求数据 ajax() { paperApi.checkPay(this, { @@ -248,7 +317,7 @@ case 1: this.getQuestion() break - + case 2: // this.utils.toast(res.data.msg) // this.showCateConfirm = true @@ -256,12 +325,12 @@ // this.catePrice = res.data.price this.cate = res.data.cate this.cateId = res.data.cate.id - + this.catePrice = parseFloat(res.data.price) this.confirmCateContent = res.data.msg this.showCateConfirm = true break - + default: this.utils.toast('检测支付返回不支持的结果') break @@ -279,11 +348,11 @@ } }, 3000) break - + case 1: this.getQuestion() break - + case 2: this.utils.toast(res.data.msg) this.showConfirm = true @@ -291,7 +360,7 @@ this.price = res.data.price this.memberPrice = res.data.member_price break - + default: this.utils.toast('检测支付返回不支持的结果') break @@ -300,19 +369,27 @@ // 1:可以参加,2:需要支付 switch (res.data.status) { case 0: - this.utils.toast(res.data.msg ? res.data.msg : '未知错误') - setTimeout(() => { - if (res.data.url) { - this.utils.goto(res.data.url) - } else { - this.goBack() + //this.utils.toast(res.data.msg ? res.data.msg : '未知错误') + uni.showModal({ + title: '提示', + content: res.data.msg, + confirmText: '联系客服', + success: (res) => { + if (res.confirm) { + //this.utils.goto('/pages/user/member-center?from_train=1') + uni.makePhoneCall({ + phoneNumber: '18903795988' //仅为示例 + }); + } else if (res.cancel) { + this.utils.goback() + } } - }, 3000) + }); break case 1: this.getQuestion() break - + default: this.utils.toast('检测支付返回不支持的结果') break @@ -340,7 +417,7 @@ title: res.msg, icon: 'none' }) - + setTimeout(() => { uni.navigateBack() }, 2000) @@ -368,16 +445,18 @@ for (let i in questions) { questions[i]['code2'] = false console.log('questions[i][score]', questions[i]['score']) - questions[i]['score'] = this.getSingleScore(questions[i])//, questions[i].kind, questions[i].difficulty + questions[i]['score'] = this.getSingleScore(questions[ + i]) //, questions[i].kind, questions[i].difficulty console.log('questions[i][score]', questions[i]['score']) } this.questions = questions this.total = questions.length - this.configs = this.paper.configs - + this.configs = this.paper.configs + // 防切屏 - if (this.paper.is_prevent_switch_screen && this.paper.switch_screen_count && this.paper.switch_screen_second) { + if (this.paper.is_prevent_switch_screen && this.paper.switch_screen_count && this.paper + .switch_screen_second) { this.isPreventSwitchScreen = true this.switchScreenCount = this.paper.switch_screen_count this.switchScreenSecond = this.paper.switch_screen_second @@ -572,4 +651,4 @@ color: #333; padding: 30rpx 0 50rpx; } - + \ No newline at end of file diff --git a/pages/train/index.vue b/pages/train/index.vue index 689e27b..4c1366f 100644 --- a/pages/train/index.vue +++ b/pages/train/index.vue @@ -1,13 +1,11 @@ -
\ No newline at end of file +
\ No newline at end of file