Files
learning-system-mobile/utils/tools.js
2022-05-29 18:59:24 +08:00

203 lines
3.5 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// 类型过滤
const contentTypeMaps = {
10: '视频',
20: '音频',
30: '图片',
40: '文档',
41: '图文',
50: 'scrom包',
52: '外部连接',
60: '作业',
61: '考试',
62: '评估',
90: '其它',
};
/**
* 获取课程内容的类型名称
* @param {Object} type
*/
export function getContentType(type) {
let name = contentTypeMaps[type];
return name;
}
/**
* 获取课程类型的名称 10微课21在线课(直播)20:在线课( 录播)30:面授课40:混合式,
* @param {Object} type
*/
export function getCourseType(type) {
const maps = {
10: '录播课',
21: '直播课',
20: '录播课',
30: '面授课',
40: '混合式',
};
return maps[type];
}
/**
* 获取url协议
* @param {Object} type
*/
export function getUrlPre(type) {
const isHttps = 'https:' == document.location.prototype ? true : false;
let isUrl = 'https';
if (isHttps) {
isUrl = 'https';
} else {
isUrl = 'http';
}
return isUrl;
}
/**
* 格式化日期,转化为 yyyy-MM-dd HH:mm:ss 格式
* @param {Object} date
*/
export function formatDate(date) {
if (date == null || date == '') {
return;
}
var year = new Date(Number(date)).getFullYear(),
month = new Date(Number(date)).getMonth() + 1, //月份是从0开始的
day = new Date(Number(date)).getDate(),
hour = new Date(Number(date)).getHours(),
min = new Date(Number(date)).getMinutes(),
sec = new Date(Number(date)).getSeconds();
if (month < 10) {
month = '0' + month
}
if (day < 10) {
day = '0' + day
}
if (hour < 10) {
hour = '0' + hour
}
if (min < 10) {
min = '0' + min
}
if (sec < 10) {
sec = '0' + sec
}
var newTime = year + '-' +
month + '-' +
day + ' ' +
hour + ':' +
min + ':' +
sec;
return newTime;
}
export function toScore(score) {
if (!score || score == 0) {
return '未评';
}
if (('' + score).indexOf('.') > -1) {
return score.toFixed(1);
} else {
return score + '.0';
}
}
export function toScoreTow(score) { // 返回两位小数
if (!score) {
return '0';
}
if (('' + score).indexOf('.') > -1) {
return score.toFixed(2);
} else {
return score + '.00';
}
}
/**
* 数字转化为字母
* @param {Object} x
*/
export function numberToLetter(x) {
let s = "";
while (x > 0) {
let m = x % 26;
m = m === 0 ? (m = 26) : m;
s = String.fromCharCode(96 + parseInt(m)) + s;
x = (x - m) / 26;
}
return s.toUpperCase();
}
export function getQuestionType(type) {
let name = '';
switch (type) {
case 101:
name = '单选';
break;
case 102:
name = '多选';
break;
case 103:
name = '判断';
break;
}
return name;
}
export function examType(type) {
let name = '';
switch (type) {
case 1:
name = '单选';
break;
case 2:
name = '多选';
break;
case 3:
name = '判断';
break;
}
return name;
}
/**
* 上方法没有说明
* @param {Object} ditem
*/
export function correctJudgment(ditem) {
let judgment = false;
if (ditem.type == 101 || ditem.type == 103) {
ditem.options.forEach(item => {
if (item.answer) {
if (item.id == ditem.userAnswer) {
judgment = true;
} else {
judgment = false;
}
}
})
} else {
ditem.options.forEach(item => {
if (item.answer == item.isCheck) {
judgment = true;
} else {
judgment = false;
}
})
}
return judgment;
}
/**
* 头像文字
* @param {*} text
* @returns
*/
export function userAvatarText(text) {
if (text) {
let len = text.length;
if (len > 2) {
text = text.substring(len - 2);
}
}
return text;
}