Browse Source

refactor(student): 重构学生作业列表页面

- 更新数据结构和 API 调用
-优化作业列表的展示逻辑
- 添加学生信息获取功能
-调整作业状态的显示方式
- 优化页面样式,支持文本、图片和视频的动态显示
master
liutong 10 months ago
parent
commit
5cd4d54d90
  1. 45
      pages/student/index/job_list.vue

45
pages/student/index/job_list.vue

@ -13,24 +13,25 @@
> >
<view class="con-list" v-for="(v,k) in tableList" :key="k" @click="openViewWorkDetails(v)"> <view class="con-list" v-for="(v,k) in tableList" :key="k" @click="openViewWorkDetails(v)">
<view class="con-list-img" v-if="v.student_file"> <view class="con-list-img" v-if="v.content_text">
<video v-if="v.student_file_type == 2" class="pic" style="width: 100%;border-radius: 15rpx;" :src="$util.img(v.student_file)"></video> <video v-if="v.content_type == 2" class="pic" style="width: 100%;border-radius: 15rpx;" :src="$util.img(v.content_text)"></video>
<image v-else style="width: 100%;border-radius: 15rpx;" :src="$util.img(v.student_file)" mode="aspectFit"></image> <image v-else-if="v.content_type == 1" style="width: 100%;border-radius: 15rpx;" :src="$util.img(v.content_text)" mode="aspectFit"></image>
<view class="text" v-else>{{v.content_text}}</view>
</view> </view>
<view class="date_box"> <view class="date_box">
<view class="describe" style="margin-top: 20rpx;"> <view class="describe" style="margin-top: 20rpx;">
时间{{v.create_time}} 时间{{v.created_at}}
</view> </view>
<!--是否已经完成作业--> <!--是否已经完成作业-->
<view class="mark" v-if="v.status == 2"> <view class="mark" v-if="v.status == 3">
<image class="check_mark" :src="$util.img('/uniapp_src/static/images/index/check_mark.png')"></image> <image class="check_mark" :src="$util.img('/uniapp_src/static/images/index/check_mark.png')"></image>
</view> </view>
</view> </view>
<!--作业描述--> <!--作业描述-->
<view class="con" style="margin-bottom: 20rpx; color:#fff;" v-html="v.content_text"></view> <view class="con" style="margin-bottom: 20rpx; color:#fff;" v-html="v.description"></view>
<view class="assignment"> <view class="assignment">
<view>{{v.type == 1 ? '班级作业' : '个人作业'}}</view> <view>{{v.type == 1 ? '班级作业' : '个人作业'}}</view>
@ -44,6 +45,7 @@
</template> </template>
<script> <script>
import apiRoute from '@/api/apiRoute.js';
import memberApi from '@/api/member.js'; import memberApi from '@/api/member.js';
export default { export default {
@ -58,11 +60,14 @@ import memberApi from '@/api/member.js';
page:1,// page:1,//
limit:10,// limit:10,//
total:10,// total:10,//
status: '',//1=,2=,3= resources_id: '',//id
status: '',// 1 2 3
}, },
tableList:[],// tableList:[],//
member_info:{},//
} }
}, },
onShow(){ onShow(){
@ -77,9 +82,25 @@ import memberApi from '@/api/member.js';
methods: { methods: {
// //
async init(){ async init(){
await this.memberInit()
await this.getList(); await this.getList();
}, },
//
async memberInit() {
let res = await apiRoute.xy_memberInfo({})
if(res.code != 1){
uni.showToast({
title: res.msg,
icon: 'none'
})
return
}
this.member_info = res.data
this.filteredData.resources_id = this.member_info.id,//id
console.log('xxxx',this.member_info)
},
//() //()
loadMoreData() { loadMoreData() {
// //
@ -117,7 +138,7 @@ import memberApi from '@/api/member.js';
this.tableList = [] this.tableList = []
} }
let res = await memberApi.assignmentsList(data) let res = await apiRoute.xy_assignment(data)
this.loading = false this.loading = false
this.isReachedBottom = false; this.isReachedBottom = false;
if (res.code != 1){ if (res.code != 1){
@ -192,7 +213,6 @@ import memberApi from '@/api/member.js';
} }
.con-list-img{ .con-list-img{
width: 100%; width: 100%;
height: 280rpx;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
@ -205,6 +225,13 @@ import memberApi from '@/api/member.js';
width: 100%; width: 100%;
height: 280rpx; height: 280rpx;
} }
.text{
width: 100%;
font-size: 28rpx;
color:#fff;
white-space: pre-wrap;
word-wrap: break-word;
}
} }
.pic{ .pic{

Loading…
Cancel
Save