JLBA202505130001_关于吉林银行新建AI智能培训系统的需求_首页列表

This commit is contained in:
杨航
2026-01-28 17:46:24 +08:00
parent 3d8dda7392
commit 189b03feac
8 changed files with 99 additions and 46 deletions
@@ -1,14 +1,14 @@
<template>
<view class="table-item custom-todo-item">
<view :class="['item-status', dataInfo.status === '11' ? '' : 'in-progress']">
{{dataInfo.status === '11' ? '未开始' :'进行中'}}</view>
<view :class="['item-status', dataInfo.crsStatName === '未开始' ? '' : 'in-progress']">
{{dataInfo.crsStatName}}</view>
<view class="item-title">
<view class="item-type course-type">课程</view>
<view class="item-name">卡拉华师大击杀看来是打算报考打不上卡了卡拉华师大击杀看来是打算报考打不上卡了</view>
<view class="item-name">{{dataInfo.name}}</view>
</view>
<view class="item-info">
<view class="item-info-item inline-item">更新{{'2026-01-02'}}</view>
<view class="item-info-item inline-item">已学{{'454'}}</view>
<view class="item-info-item inline-item">更新{{dataInfo.mtTime}}</view>
<view class="item-info-item inline-item">已学{{dataInfo.accmCnt}}</view>
</view>
<view class="item-btn">去学习</view>
</view>
@@ -17,9 +17,7 @@
<script setup>
const props = defineProps({
dataInfo: {
default: () => ({
type: 1
}),
default: () => ({}),
type: Object
}
})
+5 -5
View File
@@ -1,14 +1,14 @@
<template>
<view class="table-item custom-todo-item">
<view :class="['item-status', dataInfo.status === '11' ? '' : 'in-progress']">
{{dataInfo.status === '11' ? '未开始' :'进行中'}}</view>
<view :class="['item-status', dataInfo.crsStatName === '未开始' ? '' : 'in-progress']">
{{dataInfo.crsStatName}}</view>
<view class="item-title">
<view class="item-type exam-type">考试</view>
<view class="item-name">卡拉华师大击杀看来是打算报考打不上卡了</view>
<view class="item-name">{{dataInfo.name}}</view>
</view>
<view class="item-info">
<view class="item-info-item">起止时间<text class="color-blue">{{'2026-01-02'}}</text></view>
<view class="item-info-item">完成人数<text class="color-black">{{'202'}}/{{3033}}</text></view>
<view class="item-info-item">起止时间<text class="color-blue">{{dataInfo.startTm}}{{dataInfo.endTm}}</text></view>
<view class="item-info-item">完成人数<text class="color-black">{{dataInfo.realPersionNumber}}/{{dataInfo.planPersionNumber}}</text></view>
</view>
<view class="item-btn">去考试</view>
</view>
+4 -4
View File
@@ -1,13 +1,13 @@
<template>
<view class="table-item custom-todo-item">
<view :class="['item-status', dataInfo.status === '11' ? '' : 'in-progress']">
{{dataInfo.status === '11' ? '未开始' :'进行中'}}</view>
<view :class="['item-status', dataInfo.crsStatName === '未开始' ? '' : 'in-progress']">
{{dataInfo.crsStatName}}</view>
<view class="item-title">
<view class="item-type pk-type">竞赛</view>
<view class="item-name">卡拉华师大击杀看来是打算报考打不上卡了</view>
<view class="item-name">{{dataInfo.name}}</view>
</view>
<view class="item-info">
<view class="item-info-item">起止时间<text class="color-blue">{{'2026-01-02'}}</text></view>
<view class="item-info-item">起止时间<text class="color-blue">{{dataInfo.startTm}}{{dataInfo.endTm}}</text></view>
</view>
<view class="item-btn">去竞赛</view>
</view>
@@ -1,15 +1,15 @@
<template>
<view class="table-item custom-todo-item">
<view :class="['item-status', dataInfo.status === '11' ? '' : 'in-progress']">
{{dataInfo.status === '11' ? '未开始' :'进行中'}}</view>
<view :class="['item-status', dataInfo.crsStatName === '未开始' ? '' : 'in-progress']">
{{dataInfo.crsStatName}}</view>
<view class="item-title">
<view class="item-type sparring-type">陪练</view>
<view class="item-name">卡拉华师大击杀看来是打算报考打不上卡了</view>
<view class="item-name">{{dataInfo.name}}</view>
</view>
<view class="item-info">
<view class="item-info-item">截止时间<text
class="color-blue">{{dataInfo.limitTyp === '01' ? '不限制' : dataInfo.endTm}}</text></view>
<view class="item-info-item">陪练次数<text class="color-black">{{3033}}</text></view>
<view class="item-info-item">陪练次数<text class="color-black">{{dataInfo.accmCnt}}</text></view>
</view>
<view class="item-btn">去陪练</view>
</view>
+7 -7
View File
@@ -1,23 +1,23 @@
<template>
<view class="table-item custom-todo-item">
<view :class="['item-status', dataInfo.status === '11' ? '' : 'in-progress']">
{{dataInfo.status === '11' ? '未开始' :'进行中'}}</view>
<view :class="['item-status', dataInfo.crsStatName === '未开始' ? '' : 'in-progress']">
{{dataInfo.crsStatName}}</view>
<view class="item-title">
<view class="item-type task-type">任务</view>
<view class="item-name">卡拉华师大击杀看来是打算报考打不上卡了</view>
<view class="item-name">{{dataInfo.name}}</view>
</view>
<view class="item-info">
<view class="item-info-item">起止时间<text class="color-blue">{{'2026-01-02'}}{{'2026-01-02'}}</text></view>
<view class="item-info-item">起止时间<text class="color-blue">{{dataInfo.startTm}}{{dataInfo.endTm}}</text></view>
<view class="item-info-item inline-item">
完成人数<text class="color-black">{{'202'}}/{{3033}}</text>
完成人数<text class="color-black">{{dataInfo.realPersionNumber}}/{{dataInfo.planPersionNumber}}</text>
</view>
<view class="item-info-item inline-item">
<view class="bg-block inline-item">
<view class="bg-gray">
<view class="bg-blue" :style="`width: ${2/4 * 100}%;`"></view>
<view class="bg-blue" :style="`width: ${32}%;`"></view>
</view>
</view>
<view class="color-blue inline-item">{{'32'}}%</view>
<view class="color-blue inline-item">{{32}}%</view>
</view>
</view>
<view class="item-btn">做任务</view>
+6 -12
View File
@@ -1,9 +1,9 @@
<template>
<taskCom v-if="itemIndex === 1" :dataInfo="props.dataInfo"/>
<pkCom v-else-if="itemIndex === 2" :dataInfo="props.dataInfo"/>
<sparringCom v-else-if="itemIndex === 3" :dataInfo="props.dataInfo"/>
<examCom v-else-if="itemIndex === 4" :dataInfo="props.dataInfo"/>
<courseCom v-else-if="itemIndex === 5" :dataInfo="props.dataInfo"/>
<taskCom v-if="dataInfo.type === '04'" :dataInfo="props.dataInfo"/>
<pkCom v-else-if="dataInfo.type === '02'" :dataInfo="props.dataInfo"/>
<sparringCom v-else-if="dataInfo.type === '01'" :dataInfo="props.dataInfo"/>
<examCom v-else-if="dataInfo.type === '03'" :dataInfo="props.dataInfo"/>
<courseCom v-else-if="dataInfo.type === '00'" :dataInfo="props.dataInfo"/>
</template>
<script setup>
@@ -14,14 +14,8 @@
import examCom from './todo-com/exam.vue'
const props = defineProps({
dataInfo: {
default: () => ({
type: 1
}),
default: () => ({}),
type: Object
},
itemIndex: {
default: 0,
type: Number
}
})
</script>
+64 -3
View File
@@ -6,11 +6,10 @@
<view class="text font_pf">我的待办</view>
</view>
<view class="cont-box">
<calendarCom />
{{activeDate}}
<!-- {{activeDate}} -->
<calendarCom @change="changeDate" />
<view class="table-list">
<todoItem v-for="item in 5" :itemIndex="item" @click="handleDetail(item)"></todoItem>
<todoItem v-for="item in tableData" :dataInfo="item" @click="handleDetail(item)"></todoItem>
</view>
<view class="more-btn" v-show="showMoreBtn" @click="getMoreData">点击加载更多</view>
</view>
@@ -27,6 +26,12 @@
import {
queryHaveToDo
} from '@/api/index'
import common from '@/common/common.js'
import { setPageCache } from '@/common/common';
import { startExamByCrs } from '@/api/examination.js';
import {
checkTraPartnerInfoById
} from '@/api/sparring.js'
const activeDate = ref('')
const tableData = ref([])
const pageObj = ref({
@@ -68,6 +73,62 @@
}
const handleDetail = (item) => {
console.log(item)
switch (item.type) {
case '00':
common.navigateTo('/pages/courseDetail/index?crsId=' + item.id)
break;
case '01':
toSparringDetail(item)
break;
case '02':
common.navigateTo(`/pages/competition/matching?papersId=${item.papersId}&comId=${item.id}`);
break;
case '03':
toExaminationDetail(item)
break;
case '04':
setPageCache('learning_tasks_details', {
...item,
taskId: item.id,
taskName: item.name
});
common.navigateTo('/pages/learningTasks/details?taskId=' + item.id);
break;
default:
break;
}
}
// 去考试
const toExaminationDetail = async (item) => {
common.loading();
startExamByCrs({
crsId: item.id
})
.then((res) => {
setPageCache('examination', {
...res.body,
name: item.name,
crsId: item.id
});
common.navigateTo('/pages/examination/index');
})
.finally(() => {
common.hideLoading();
});
};
// 跳转 课程详情
const toSparringDetail = item => {
if (item.id) {
checkTraPartnerInfoById({
traId: item.id
}).then(res => {
if (res.body.inRange) {
common.navigateTo('/pages/sparring/detail?traId=' + item.id)
} else {
common.show('提示', res.body.message, false)
}
})
}
}
</script>