Quellcode durchsuchen

教师发展问题修改

liurongli vor 1 Monat
Ursprung
Commit
149133116e
2 geänderte Dateien mit 80 neuen und 67 gelöschten Zeilen
  1. 24 25
      common/common.js
  2. 56 42
      pages/teacherStudy/learningMonitor/taskDetails.vue

+ 24 - 25
common/common.js

@@ -228,31 +228,30 @@ export function remainingDays(endTime) {
 }
 //时间
 export function unioformDateTransform(date, param = "time"){
-    if(date){
-        let strDate = new Date(date).toLocaleString('zh-CN')
-        let days = strDate.split(" ")[0]
-        let time = strDate.split(" ")[1]
-        let year = days.split("/")[0]
-        let month = days.split("/")[1]
-        let day = days.split("/")[2]
-
-        if(Number(month)<10){
-            month = '0'+ month
-        }
-        if(Number(day)<10){
-            day = '0'+day
-        }
-        days =  year+'-'+month+'-'+day
-
-        switch(param){
-            case "day":
-                return days
-            case "time":
-                return days + " " + time
-        }
-    }else{
-        return ''
-    }
+    if (!date) return ''
+	const d = new Date(date)
+	// 判断日期是否合法
+	if (isNaN(d.getTime())) return ''
+
+	const year = d.getFullYear()
+	// 月份从0开始,+1,不足两位补0
+	const month = String(d.getMonth() + 1).padStart(2, '0')
+	const day = String(d.getDate()).padStart(2, '0')
+	const hours = String(d.getHours()).padStart(2, '0')
+	const minutes = String(d.getMinutes()).padStart(2, '0')
+	const seconds = String(d.getSeconds()).padStart(2, '0')
+
+	const days = `${year}-${month}-${day}`
+	const timeStr = `${hours}:${minutes}:${seconds}`
+
+	switch (param) {
+	case "day":
+	  return days
+	case "time":
+	  return `${days} ${timeStr}`
+	default:
+	  return `${days} ${timeStr}`
+	}
 }
 export const fileSizeConvert = (byte)=>{
     let kbSize = 0

+ 56 - 42
pages/teacherStudy/learningMonitor/taskDetails.vue

@@ -210,6 +210,8 @@
 		loadStatus: 'more', //loading状态
 		details: {}, //详情信息
 		tabListData: [], //数据
+		tabListDatas:[],//所有数据
+		pages:0,
 		searchBoxTop:0,//搜索框距离顶部的高度
 		isSticky:false,//是否吸顶
 	});
@@ -283,53 +285,65 @@
 	 * initData:初始加载
 	 */
 	const OnLoadData = (initPage,initData = false) => {
-		if (initPage) state.pageNum = 1; //如果是下拉刷新、重新查询 默认加载第一页
 		state.isLoading = true;
 		state.loadStatus = 'loading';
-		queryMinitorDetailData({
-			id: state.id,
-			learnStatus: state.tabsSelected,
-			queryStr: state.searchWord,
-			pageSize: state.pageSize,
-			pageNum: state.pageNum
-		}).then(res => {
-			if (res.code == 200) {
-				state.details = res?.data || null;
-				let total = 0,
-					tabListData = []; //总数
-				if (res?.data?.courseType === 0) { //必修任务
-					tabListData = res?.data?.tableTaskData || [];
-					total = tabListData?.length || '0';
-				} else {
-					if (state.tabsSelected == '4') { //自主研修-已完成
-						tabListData = res?.data?.tableSelfOverData?.records || [];
-						total = res?.data?.tableSelfOverData?.total || '0';
-					} else { //自主研修-学习中
-						tabListData = res?.data?.tableSelfUnOverData?.records || [];
-						total = res?.data?.tableSelfUnOverData?.total || '0';
+		if (initPage) {
+			state.pageNum = 1; //如果是下拉刷新、重新查询 默认加载第一页
+			queryMinitorDetailData({
+				id: state.id,
+				learnStatus: state.tabsSelected,
+				queryStr: state.searchWord,
+				pageSize: state.pageSize,
+				pageNum: state.pageNum
+			}).then(res => {
+				if (res.code == 200) {
+					state.details = res?.data || null;
+					let total = 0; //总数
+					if (res?.data?.courseType === 0) { //必修任务
+						state.tabListDatas = res?.data?.tableTaskData || [];
+						total = state.tabListDatas?.length || '0';
+					} else {
+						if (state.tabsSelected == '4') { //自主研修-已完成
+							state.tabListDatas = res?.data?.tableSelfOverData?.records || [];
+							total = res?.data?.tableSelfOverData?.total || '0';
+						} else { //自主研修-学习中
+							state.tabListDatas = res?.data?.tableSelfUnOverData?.records || [];
+							total = res?.data?.tableSelfUnOverData?.total || '0';
+						}
+					}
+					state.pages = Math.ceil(total / state.pageSize); //总页数
+					//默认加载
+					state.tabListData = state.tabListDatas.slice(0, state.pageSize);
+					//没有更多了
+					state.noMoreData = state.pageNum == state.pages;
+					//分页+1
+					state.pageNum++;
+					state.isLoading = false;
+					state.isRefreshing = false;//下拉刷新未被触发
+					state.loadStatus = state.noMoreData?'no-more':'more';
+					if(initData){
+						checkTextOverflow();
 					}
 				}
-				const pages = Math.ceil(total / state.pageSize); //总页数
-				state.tabListData = initPage ? tabListData : [...state.tabListData, ...tabListData];
-				state.noMoreData = state.pageNum == pages;
-				state.pageNum++;
-				if(initData){
-					checkTextOverflow();
+			}).finally(() => {
+				//返回到页面顶部
+				if (initPage) {
+					GoTop();
 				}
-			}
-		}).finally(() => {
-			state.isLoading = false;
-			state.isRefreshing = false; //下拉刷新未被触发
-			if (state.noMoreData) {
-				state.loadStatus = 'no-more';
-			} else {
-				state.loadStatus = 'more';
-			}
-			//返回到页面顶部
-			if (initPage) {
-				GoTop();
-			}
-		})
+			})
+		}else{
+			const start = (state.pageNum - 1) * state.pageSize;
+			const end = start + state.pageSize;
+			const list = state.tabListDatas.slice(start, end);
+			state.tabListData = [...state.tabListData, ...list];
+			state.noMoreData = state.pageNum == state.pages;
+			state.pageNum++;
+			setTimeout(() => {
+				state.isLoading = false;
+				state.isRefreshing = false; //下拉刷新未被触发
+				state.loadStatus = state.noMoreData?'no-more':'more';
+			}, 0)
+		}
 	}
 	// 自定义下拉刷新被触发	 下拉刷新
 	const OnRefresh = () => {