JLBA202505130001_关于吉林银行新建AI智能培训系统的需求_修改首页两个列表没有评分的bug
This commit is contained in:
+1
-1
@@ -5,7 +5,7 @@ ENV = 'development'
|
|||||||
#VITE_APP_BASE_API_Url = 'https://aits.jlbank.com.cn:7001'
|
#VITE_APP_BASE_API_Url = 'https://aits.jlbank.com.cn:7001'
|
||||||
|
|
||||||
|
|
||||||
VITE_APP_BASE_API_Url = 'https://aitstest.jlbank.com.cn:7002'
|
VITE_APP_BASE_API_Url = 'https://aitstest.jlbank.com.cn:7001'
|
||||||
|
|
||||||
|
|
||||||
# DEV
|
# DEV
|
||||||
|
|||||||
@@ -1,44 +1,45 @@
|
|||||||
<template>
|
<template>
|
||||||
<!-- 热门课程分模块标题 -->
|
<!-- 热门课程分模块标题 -->
|
||||||
<view class="module_title_div" >
|
<view class="module_title_div">
|
||||||
<view class="icon icon_1">
|
<view class="icon icon_1">
|
||||||
<image class="img" :src="icon"></image>
|
<image class="img" :src="icon"></image>
|
||||||
</view>
|
</view>
|
||||||
<view class="text font_pf">{{ title }}</view>
|
<view class="text font_pf">{{ title }}</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<!-- 热门课程 -->
|
<!-- 热门课程 -->
|
||||||
<view class="hot_class_div">
|
<view class="hot_class_div">
|
||||||
<view class="no-data-style" v-if="class_list.length === 0">
|
<view class="no-data-style" v-if="class_list.length === 0">暂无数据...</view>
|
||||||
暂无数据...
|
|
||||||
</view>
|
|
||||||
<scroll-view class="scroll-view" :scroll-x="true" :show-scrollbar="false">
|
<scroll-view class="scroll-view" :scroll-x="true" :show-scrollbar="false">
|
||||||
<view class="scroll-view-item" v-for="(item, index) in class_list" :key="index">
|
<view class="scroll-view-item" v-for="(item, index) in class_list" :key="index">
|
||||||
<!-- 角标 -->
|
<!-- 角标 -->
|
||||||
<view class="icon" v-if="item.type">
|
<view class="icon" v-if="item.type">
|
||||||
<image class="img_100" :src="item.type==='00'?kcIcon:plIcon" mode="widthFix" />
|
<image class="img_100" :src="item.type === '00' ? kcIcon : plIcon" mode="widthFix" />
|
||||||
</view>
|
</view>
|
||||||
<view class="item_div">
|
<view class="item_div">
|
||||||
<uv-skeletons :loading="!item.id" avatar avatar-shape="square" :title="false" :skeleton="skeleton">
|
<uv-skeletons :loading="!item.id" avatar avatar-shape="square" :title="false" :skeleton="skeleton">
|
||||||
<view class="item" @click="goto_course_detail(item)">
|
<view class="item" @click="goto_course_detail(item)">
|
||||||
<view class="title ellipsis-text">
|
<view class="title ellipsis-text">
|
||||||
{{ item.name || ''}}
|
{{ item.name || '' }}
|
||||||
</view>
|
</view>
|
||||||
<view class="content">
|
<view class="content">
|
||||||
<view class="left">
|
<view class="left">
|
||||||
<image-preview
|
<view class="img-div">
|
||||||
class="img-box img"
|
<image-preview
|
||||||
:imgId="item.ossKey"
|
class="img-box img"
|
||||||
:isCache="true"
|
:imgId="item.ossKey"
|
||||||
:width="240"
|
:isCache="true"
|
||||||
:height="160"
|
:width="240"
|
||||||
></image-preview>
|
:height="160"
|
||||||
|
></image-preview>
|
||||||
|
</view>
|
||||||
|
<view class="subscript" v-if="item.evalGrade && item.type === '00'">{{item.evalGrade}}分</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="right">
|
<view class="right">
|
||||||
<view class="note ellipsis-text">更新:{{ (item.mtTime || '').substr(0, 10) }}</view>
|
<view class="note ellipsis-text">更新:{{ (item.mtTime || '').substr(0, 10) }}</view>
|
||||||
<view class="note ellipsis-text">已学:{{ item.accmCnt }}</view>
|
<view class="note ellipsis-text">{{ item.type === '00' ? '已学' : '已练' }}:{{ item.accmCnt }}</view>
|
||||||
<view class="button_div">
|
<view class="button_div">
|
||||||
<view class="button">{{item.type === '00'?'去学习':'去陪练'}}</view>
|
<view class="button">{{ item.type === '00' ? '去学习' : '去陪练' }}</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@@ -52,10 +53,7 @@
|
|||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ref } from 'vue';
|
import { ref } from 'vue';
|
||||||
import {
|
import { queryCrsInfoByRecmd, queryNewPolicyNewProducts } from '@/api/index.js';
|
||||||
queryCrsInfoByRecmd,
|
|
||||||
queryNewPolicyNewProducts
|
|
||||||
} from '@/api/index.js';
|
|
||||||
import common from '@/common/common';
|
import common from '@/common/common';
|
||||||
import hostIcon from '@/static/images/index/hot.png';
|
import hostIcon from '@/static/images/index/hot.png';
|
||||||
import recommendIcon from '@/static/images/index/recommend.png';
|
import recommendIcon from '@/static/images/index/recommend.png';
|
||||||
@@ -104,7 +102,7 @@
|
|||||||
{
|
{
|
||||||
type: 'line',
|
type: 'line',
|
||||||
num: 1,
|
num: 1,
|
||||||
style: 'marginBottom:20rpx;',
|
style: 'marginBottom:20rpx;'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'flex',
|
type: 'flex',
|
||||||
@@ -130,11 +128,11 @@
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
// 进入课程详情页
|
// 进入课程详情页
|
||||||
const goto_course_detail = ({id, type}) => {
|
const goto_course_detail = ({ id, type }) => {
|
||||||
// 00课程 01陪练
|
// 00课程 01陪练
|
||||||
if(type === '00') {
|
if (type === '00') {
|
||||||
common.navigateTo('/pages/courseDetail/index?crsId=' + id);
|
common.navigateTo('/pages/courseDetail/index?crsId=' + id);
|
||||||
} else if(type === '01') {
|
} else if (type === '01') {
|
||||||
common.navigateTo('/pages/sparring/detail?traId=' + id);
|
common.navigateTo('/pages/sparring/detail?traId=' + id);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -147,7 +145,7 @@
|
|||||||
// 热门课程等三个横向滑动模块的样式
|
// 热门课程等三个横向滑动模块的样式
|
||||||
.hot_class_div {
|
.hot_class_div {
|
||||||
margin-left: $bg-margin-left;
|
margin-left: $bg-margin-left;
|
||||||
.no-data-style{
|
.no-data-style {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
line-height: 80rpx;
|
line-height: 80rpx;
|
||||||
min-height: 80rpx;
|
min-height: 80rpx;
|
||||||
@@ -197,13 +195,51 @@
|
|||||||
.content {
|
.content {
|
||||||
display: flex;
|
display: flex;
|
||||||
.left {
|
.left {
|
||||||
border-radius: 16rpx;
|
position: relative;
|
||||||
overflow: hidden;
|
.img-div {
|
||||||
width: 256rpx;
|
border-radius: 16rpx;
|
||||||
height: 144rpx;
|
overflow: hidden;
|
||||||
.img {
|
|
||||||
width: 256rpx;
|
width: 256rpx;
|
||||||
height: 144rpx;
|
height: 144rpx;
|
||||||
|
.img {
|
||||||
|
width: 256rpx;
|
||||||
|
height: 144rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.subscript {
|
||||||
|
width: 70rpx;
|
||||||
|
height: 30rpx;
|
||||||
|
position: absolute;
|
||||||
|
right: -6rpx;
|
||||||
|
top: 20rpx;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 30rpx;
|
||||||
|
font-size: 22rpx;
|
||||||
|
background-color: #ff7227;
|
||||||
|
font-family: Arial, Arial;
|
||||||
|
font-weight: 700;
|
||||||
|
color: #ffffff;
|
||||||
|
font-style: normal;
|
||||||
|
border-radius: 4rpx 0px 0px 4rpx;
|
||||||
|
z-index: 2;
|
||||||
|
}
|
||||||
|
/* 伪元素实现右下角黑色三角形 */
|
||||||
|
.subscript::after {
|
||||||
|
z-index: 1;
|
||||||
|
content: ''; /* 伪元素必须有content,空值即可 */
|
||||||
|
position: absolute; /* 绝对定位 */
|
||||||
|
right: 0; /* 靠右 */
|
||||||
|
bottom: -6rpx; /* 靠下 */
|
||||||
|
/* 核心:用边框实现三角形(宽高为0,只显示边框) */
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
border-top: 4rpx solid #000; /* 上边框透明 */
|
||||||
|
border-left: 4rpx solid #000; /* 左边框透明 */
|
||||||
|
border-bottom: 4rpx solid transparent; /* 下边框黑色(三角形的垂直边) */
|
||||||
|
border-right: 4rpx solid transparent; /* 右边框黑色(三角形的水平边) */
|
||||||
|
/* 可选:消除伪元素的点击事件 */
|
||||||
|
pointer-events: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -70,8 +70,8 @@
|
|||||||
const data_list = ref([]);
|
const data_list = ref([]);
|
||||||
const queryList = () => {
|
const queryList = () => {
|
||||||
queryMessageNoticeClass().then(({ body }) => {
|
queryMessageNoticeClass().then(({ body }) => {
|
||||||
data_list.value = body;
|
const data = (body || []).filter(item => item?.noticeTyp !== '07');
|
||||||
pagingRef.value.completeByTotal(body, body.length);
|
pagingRef.value.completeByTotal(data, data.length);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user