mi-assessment/uniapp/unpackage/dist/dev/mp-weixin/utils/format.js
2026-02-09 14:45:06 +08:00

86 lines
2.8 KiB
JavaScript

"use strict";
function formatTimestamp(timestamp, now = /* @__PURE__ */ new Date()) {
if (!timestamp)
return "";
const date = new Date(timestamp);
if (isNaN(date.getTime()))
return "";
const todayStart = new Date(now.getFullYear(), now.getMonth(), now.getDate());
const yesterdayStart = new Date(todayStart.getTime() - 24 * 60 * 60 * 1e3);
const dayBeforeYesterdayStart = new Date(todayStart.getTime() - 2 * 24 * 60 * 60 * 1e3);
const dateStart = new Date(date.getFullYear(), date.getMonth(), date.getDate());
if (dateStart.getTime() === todayStart.getTime()) {
const hours = String(date.getHours()).padStart(2, "0");
const minutes = String(date.getMinutes()).padStart(2, "0");
return `今天 ${hours}:${minutes}`;
} else if (dateStart.getTime() === yesterdayStart.getTime()) {
return "昨天";
} else if (dateStart.getTime() === dayBeforeYesterdayStart.getTime()) {
return "前天";
} else {
const month = date.getMonth() + 1;
const day = date.getDate();
return `${month}${day}`;
}
}
function generateNickname(relationship, surname, gender = 1) {
if (!surname)
return "";
switch (relationship) {
case 1:
return `${surname}家长(父亲)`;
case 2:
return `${surname}家长(母亲)`;
case 3:
const title = gender === 2 ? "女士" : "先生";
return `${surname}${title}(本人)`;
default:
return surname;
}
}
function maskName(name) {
if (!name || name.length === 0)
return "";
if (name.length === 1)
return name;
if (name.length === 2)
return name[0] + "*";
const first = name[0];
const last = name[name.length - 1];
const middle = "*".repeat(name.length - 2);
return first + middle + last;
}
function maskIdNumber(idNumber) {
if (!idNumber || idNumber.length === 0)
return "";
if (idNumber.length <= 7)
return idNumber;
const first3 = idNumber.substring(0, 3);
const last4 = idNumber.substring(idNumber.length - 4);
const middleLength = idNumber.length - 7;
const middle = "*".repeat(middleLength);
return first3 + middle + last4;
}
function getAge(birthYear) {
if (!birthYear)
return 0;
const currentYear = (/* @__PURE__ */ new Date()).getFullYear();
return currentYear - birthYear;
}
function getBirthYearRange(currentYear = (/* @__PURE__ */ new Date()).getFullYear()) {
const minYear = currentYear - 50;
const maxYear = currentYear - 18;
const years = [];
for (let year = maxYear; year >= minYear; year--) {
years.push(year);
}
return years;
}
exports.formatTimestamp = formatTimestamp;
exports.generateNickname = generateNickname;
exports.getAge = getAge;
exports.getBirthYearRange = getBirthYearRange;
exports.maskIdNumber = maskIdNumber;
exports.maskName = maskName;
//# sourceMappingURL=../../.sourcemap/mp-weixin/utils/format.js.map