--修改默认对象扩展

This commit is contained in:
2026-01-30 17:39:21 +08:00
parent 97623b01b4
commit 1f13f612d5
5 changed files with 17 additions and 121 deletions

2
.env
View File

@ -5,7 +5,7 @@ VITE_PORT = 3100
VITE_GLOB_APP_TITLE = 供应链平台
# spa shortname(英文缩写)
VITE_GLOB_APP_SHORT_NAME = 供应链平台
VITE_GLOB_APP_SHORT_NAME = GES_SCM
# 应用名称仅展示在登录页和左上角logo旁其他情况用VITE_GLOB_APP_TITLE
VITE_SYSTEM_NAME = 供应链平台

View File

@ -3,25 +3,10 @@
*/
;(function(){
Object.is = function(obj){
return Object.prototype.toString.call(obj) == "[object Object]";
}
String.is = function(obj){
return Object.prototype.toString.call(obj) == "[object String]";
}
String.prototype.getBytes = function(charset){
charset = charset||"UTF-8";
return new TextEncoder(charset).encode(this);
}
String.ofBytes = function(arr,charset){
charset = charset||"UTF-8";
var uint = arr instanceof Uint8Array?arr:new Uint8Array(arr);
return new TextDecoder(charset).decode(uint);
}
String.prototype.startWith = function(str){
if(str==undefined) return false;
if(str.length > this.length) return false;
@ -45,9 +30,6 @@
return true;
}
String.prototype.eq = function(str){
return (this+'')===str;
}
})();
/**
@ -59,12 +41,14 @@
}
Number.format = function(num,fmt){
const sign = num < 0 ? '-' : '';
const absNum = Math.abs(num);
var fmts = fmt.split(".");
var format = {
int:fmts[0].split("").reverse(),
scale:fmts[1]!=undefined?fmts[1].split(""):undefined
}
var numsp = (num+"").split(".");
var numsp = (absNum+"").split(".");
var numinfo = {
int:numsp[0].split("").reverse(),
scale:numsp[1]!=undefined?numsp[1].split(""):undefined
@ -88,6 +72,9 @@
}
}else if(item==","){
if(ni < numinfo.int.length){
if(ni==numinfo.int.length-1 && numinfo.int[ni]=="-"){
continue;
}
res.int.push(",");
}else{
continue;
@ -127,13 +114,14 @@
reStr+= ".";
reStr+= res.scale.join("");
}
return reStr.replace("-,", "-");
//return reStr.replace("-,", "-");
return sign+reStr;
}
Number.prototype.format = function(fmt){
if(fmt==undefined) throw new Error("参数格式化表达式不能为空!");
return Number.format(this,fmt);
}
// Number.prototype.format = function(fmt){
// if(fmt==undefined) throw new Error("参数格式化表达式不能为空!");
// return Number.format(this,fmt);
// }
Number.parse = function(str){
if(str==undefined) return str;
@ -283,9 +271,6 @@
if(/(y+)/.test(fmt)){
fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
}
if(/(E+)/.test(fmt)){
fmt=fmt.replace(RegExp.$1,((RegExp.$1.length>1)?(RegExp.$1.length==3?"星期":"周"):"")+this.i18n("Date.Week."+this.getDay()));
}
for(var k in o){
if(new RegExp("("+ k +")").test(fmt)){
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
@ -399,83 +384,5 @@
}
}
Date.prototype.i18n = function(fmt,args){
var str = undefined;
if($i18n){
var val = $i18n.t(fmt);
str =val==fmt?undefined:val;
}
if(str==undefined){
var obj = Date.Dictionary;
var fmts = fmt.split('.');
for (let i = 1; i < fmts.length; i++) {
const item = fmts[i];
obj = obj[item];
if(obj==undefined){
break;
}
}
str = obj;
}
if(str==undefined) return str;
if(args!=undefined){
for (var i = 0; i < args.length; i++) {
args[i] = args[i] || "";
var reg = new RegExp("({)" + i + "(})", "g");
str = str.replace(reg, args[i]);
}
}
str = str.replace(/^\{\d+\}$/g, "");
return str;
}
Date.prototype.getHolidayName = function(){
return this.i18n("Date.Holiday."+this.format("MMdd"));
}
Date.prototype.getLunarHolidayName = function(fmt){
return this.i18n("Date.LunarHoliday."+fmt);
}
Date.prototype.getTimeDistance = function(){
var date_now = new Date();
var time = this.getTime();
var distance = date_now.getTime() - time;
var days = parseInt(distance / (1000 * 60 * 60 * 24));
if (days == 1) {
return this.i18n('Date.timeDistance.yesterday');
} else if (days > 1 && days < 4) {
return this.i18n('Date.timeDistance.daysAgo',[days]);//days ago
} else if (days > 3) {
// 超过3天的返回日期如 2018-12-05
// 如果是今年的,就省去年份,返回 12-05
var year = this.getFullYear();
var month = this.getMonth() + 1;
if (month < 10) {
month = "0" + month;
}
var day = this.getDate();
if (day < 10) {
day = "0" + day;
}
if (date_now.getFullYear() == year) {
return month + "-" + day;
} else {
return year + "-" + month + "-" + day;
}
}
var hours = parseInt((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
if (hours > 0) {
return this.i18n('Date.timeDistance.hoursAgo',[hours]);
}
var minutes = parseInt((distance % (1000 * 60 * 60)) / (1000 * 60));
if (minutes > 0) {
return this.i18n('Date.timeDistance.minutesAgo',[minutes]);
};
return this.i18n('Date.timeDistance.justNow');
}
})();

View File

@ -20,7 +20,7 @@
import { computed } from 'vue';
import { getLogoInfo } from './api/system/login';
import { onBeforeUnmount } from 'vue';
import { getAppEnvConfig } from '/@/utils/env';
//import { getAppEnvConfig } from '/@/utils/env';
// support Multi-language
const { getLocale } = useLocale();

View File

@ -25,18 +25,7 @@ const DataFormat = {
* @returns 格式化后的日期
*/
formatDate: (date: Date | string | number, fmt: string = 'yyyy-MM-dd HH:mm:ss') => {
return Date.valueOf(date).format(fmt);
},
formatQty: (val: string | number, digits:number) => {
return format(new Date(date), digits);
},
formatAmt: (val: string | number, formatString: number) => {
return format(new Date(date), digits);
},
parseDate: (date: string | Date, formatString: string = 'yyyy-MM-dd HH:mm:ss') => {
return new Date(date);
},
format:(data:any,option:any) => {
// return Date.valueOf(date).format(fmt);
},
};