ng-cw-v12
Version:
Angular UI component library
88 lines • 11.5 kB
JavaScript
import { Injectable } from '@angular/core';
import * as i0 from "@angular/core";
export class LocalService {
constructor() {
}
/**
* 精确乘法
* @param value1 第一个乘数
* @param value2 第二个乘数
* @returns 两数之积
*/
mathMultiply(value1, value2) {
// 将浮点数转换为字符串
let aStr = value1.toString();
let bStr = value2.toString();
// 找到小数点后的位置
let aDecimals = (aStr.split('.')[1] || '').length;
let bDecimals = (bStr.split('.')[1] || '').length;
// 将浮点数转换为整数
let aInt = parseInt(aStr.replace('.', ''));
let bInt = parseInt(bStr.replace('.', ''));
// 进行整数乘法
let resultInt = aInt * bInt;
// 计算最终的小数位数
let totalDecimals = aDecimals + bDecimals;
// 将结果转换回浮点数
return resultInt / Math.pow(10, totalDecimals);
}
/**
* 保留指定小数位数的百分比
* @param num 需要处理的数值
* @param len 要保留的小数位数
* @returns 处理后的百分比值,保留指定小数位数
*/
retainPercentDecimal(num, len) {
const n = Math.pow(10, len + 2);
return this.mathMultiply(Math.round(num * n) / n, 100);
}
// ---------------------日期类---------------------
/**
* 格式化时间
* @param type 格式化类型yyyy-MM-dd HH:mm:ss,注意MM为月份、mm为分钟
* @param time 可选。默认当前时间
* @returns yyyy-MM-dd HH:mm:ss
*/
formatDate(type, time) {
if (!time) {
time = new Date();
}
else {
time = new Date(time);
}
if (!type) {
return '';
}
const year = time.getFullYear();
const month = (time.getMonth() + 1).toString().padStart(2, '0');
const date = (time.getDate()).toString().padStart(2, '0');
const hours = (time.getHours()).toString().padStart(2, '0');
const minute = (time.getMinutes()).toString().padStart(2, '0');
const second = (time.getSeconds()).toString().padStart(2, '0');
return type.replace('yyyy', year).replace('MM', month).replace('dd', date).replace('HH', hours).replace('mm', minute).replace('ss', second);
}
/**
* 获取两日期间的所有日期
* @param startDate 开始日期
* @param endDate 结束日期
* @returns 日期数组
*/
getRangeDate(startDate, endDate) {
let datesArray = [];
let currentDate = new Date(startDate);
while (currentDate <= endDate) {
datesArray.push(new Date(currentDate));
currentDate.setDate(currentDate.getDate() + 1);
}
return datesArray;
}
}
LocalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: LocalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
LocalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: LocalService, providedIn: 'root' });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.1.5", ngImport: i0, type: LocalService, decorators: [{
type: Injectable,
args: [{
providedIn: 'root'
}]
}], ctorParameters: function () { return []; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvdGltZWxpbmUvbG9jYWwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUkzQyxNQUFNLE9BQU8sWUFBWTtJQUVyQjtJQUNBLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFlBQVksQ0FBQyxNQUFjLEVBQUUsTUFBYztRQUN2QyxhQUFhO1FBQ2IsSUFBSSxJQUFJLEdBQUcsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzdCLElBQUksSUFBSSxHQUFHLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUU3QixZQUFZO1FBQ1osSUFBSSxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUNsRCxJQUFJLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDO1FBRWxELFlBQVk7UUFDWixJQUFJLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMzQyxJQUFJLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUUzQyxTQUFTO1FBQ1QsSUFBSSxTQUFTLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQztRQUU1QixZQUFZO1FBQ1osSUFBSSxhQUFhLEdBQUcsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUUxQyxZQUFZO1FBQ1osT0FBTyxTQUFTLEdBQUcsSUFBSSxDQUFD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bmd1bGFyL2NvcmUnO1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIExvY2FsU2VydmljZSB7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDnsr7noa7kuZjms5VcclxuICAgICAqIEBwYXJhbSB2YWx1ZTEg56ys5LiA5Liq5LmY5pWwXHJcbiAgICAgKiBAcGFyYW0gdmFsdWUyIOesrOS6jOS4quS5mOaVsFxyXG4gICAgICogQHJldHVybnMg5Lik5pWw5LmL56evXHJcbiAgICAgKi9cclxuICAgIG1hdGhNdWx0aXBseSh2YWx1ZTE6IG51bWJlciwgdmFsdWUyOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgICAgIC8vIOWwhua1rueCueaVsOi9rOaNouS4uuWtl+espuS4slxyXG4gICAgICAgIGxldCBhU3RyID0gdmFsdWUxLnRvU3RyaW5nKCk7XHJcbiAgICAgICAgbGV0IGJTdHIgPSB2YWx1ZTIudG9TdHJpbmcoKTtcclxuXHJcbiAgICAgICAgLy8g5om+5Yiw5bCP5pWw54K55ZCO55qE5L2N572uXHJcbiAgICAgICAgbGV0IGFEZWNpbWFscyA9IChhU3RyLnNwbGl0KCcuJylbMV0gfHwgJycpLmxlbmd0aDtcclxuICAgICAgICBsZXQgYkRlY2ltYWxzID0gKGJTdHIuc3BsaXQoJy4nKVsxXSB8fCAnJykubGVuZ3RoO1xyXG5cclxuICAgICAgICAvLyDlsIbmta7ngrnmlbDovazmjaLkuLrmlbTmlbBcclxuICAgICAgICBsZXQgYUludCA9IHBhcnNlSW50KGFTdHIucmVwbGFjZSgnLicsICcnKSk7XHJcbiAgICAgICAgbGV0IGJJbnQgPSBwYXJzZUludChiU3RyLnJlcGxhY2UoJy4nLCAnJykpO1xyXG5cclxuICAgICAgICAvLyDov5vooYzmlbTmlbDkuZjms5VcclxuICAgICAgICBsZXQgcmVzdWx0SW50ID0gYUludCAqIGJJbnQ7XHJcblxyXG4gICAgICAgIC8vIOiuoeeul+acgOe7iOeahOWwj+aVsOS9jeaVsFxyXG4gICAgICAgIGxldCB0b3RhbERlY2ltYWxzID0gYURlY2ltYWxzICsgYkRlY2ltYWxzO1xyXG5cclxuICAgICAgICAvLyDlsIbnu5PmnpzovazmjaLlm57mta7ngrnmlbBcclxuICAgICAgICByZXR1cm4gcmVzdWx0SW50IC8gTWF0aC5wb3coMTAsIHRvdGFsRGVjaW1hbHMpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAvKipcclxuICAgICAqIOS/neeVmeaMh+WumuWwj+aVsOS9jeaVsOeahOeZvuWIhuavlFxyXG4gICAgICogQHBhcmFtIG51bSDpnIDopoHlpITnkIbnmoTmlbDlgLxcclxuICAgICAqIEBwYXJhbSBsZW4g6KaB5L+d55WZ55qE5bCP5pWw5L2N5pWwXHJcbiAgICAgKiBAcmV0dXJucyDlpITnkIblkI7nmoTnmb7liIbmr5TlgLzvvIzkv53nlZnmjIflrprlsI/mlbDkvY3mlbBcclxuICAgICAqL1xyXG4gICAgcmV0YWluUGVyY2VudERlY2ltYWwobnVtOiBudW1iZXIsIGxlbjogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgICAgICBjb25zdCBuID0gTWF0aC5wb3coMTAsIGxlbiArIDIpO1xyXG4gICAgICAgIHJldHVybiB0aGlzLm1hdGhNdWx0aXBseShNYXRoLnJvdW5kKG51bSAqIG4pIC8gbiwgMTAwKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0t5pel5pyf57G7LS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDmoLzlvI/ljJbml7bpl7RcclxuICAgICAqIEBwYXJhbSB0eXBlIOagvOW8j+WMluexu+Wei3l5eXktTU0tZGQgSEg6bW06c3PvvIzms6jmhI9NTeS4uuaciOS7veOAgW1t5Li65YiG6ZKfXHJcbiAgICAgKiBAcGFyYW0gdGltZSDlj6/pgInjgILpu5jorqTlvZPliY3ml7bpl7RcclxuICAgICAqIEByZXR1cm5zIHl5eXktTU0tZGQgSEg6bW06c3NcclxuICAgICAqL1xyXG4gICAgZm9ybWF0RGF0ZSh0eXBlOiBzdHJpbmcsIHRpbWU/OiBhbnkpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICghdGltZSkge1xyXG4gICAgICAgICAgICB0aW1lID0gbmV3IERhdGUoKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aW1lID0gbmV3IERhdGUodGltZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghdHlwZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHllYXIgPSB0aW1lLmdldEZ1bGxZZWFyKCk7XHJcbiAgICAgICAgY29uc3QgbW9udGggPSAodGltZS5nZXRNb250aCgpICsgMSkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpO1xyXG4gICAgICAgIGNvbnN0IGRhdGUgPSAodGltZS5nZXREYXRlKCkpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKTtcclxuICAgICAgICBjb25zdCBob3VycyA9ICh0aW1lLmdldEhvdXJzKCkpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKTtcclxuICAgICAgICBjb25zdCBtaW51dGUgPSAodGltZS5nZXRNaW51dGVzKCkpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKTtcclxuICAgICAgICBjb25zdCBzZWNvbmQgPSAodGltZS5nZXRTZWNvbmRzKCkpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHR5cGUucmVwbGFjZSgneXl5eScsIHllYXIpLnJlcGxhY2UoJ01NJywgbW9udGgpLnJlcGxhY2UoJ2RkJywgZGF0ZSkucmVwbGFjZSgnSEgnLCBob3VycykucmVwbGFjZSgnbW0nLCBtaW51dGUpLnJlcGxhY2UoJ3NzJywgc2Vjb25kKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIOiOt+WPluS4pOaXpeacn+mXtOeahOaJgOacieaXpeacn1xyXG4gICAgICogQHBhcmFtIHN0YXJ0RGF0ZSDlvIDlp4vml6XmnJ9cclxuICAgICAqIEBwYXJhbSBlbmREYXRlIOe7k+adn+aXpeacn1xyXG4gICAgICogQHJldHVybnMg5pel5pyf5pWw57uEXHJcbiAgICAgKi9cclxuICAgIGdldFJhbmdlRGF0ZShzdGFydERhdGU6IERhdGUsIGVuZERhdGU6IERhdGUpOiBEYXRlW10ge1xyXG4gICAgICAgIGxldCBkYXRlc0FycmF5ID0gW107XHJcbiAgICAgICAgbGV0IGN1cnJlbnREYXRlID0gbmV3IERhdGUoc3RhcnREYXRlKTtcclxuXHJcbiAgICAgICAgd2hpbGUgKGN1cnJlbnREYXRlIDw9IGVuZERhdGUpIHtcclxuICAgICAgICAgICAgZGF0ZXNBcnJheS5wdXNoKG5ldyBEYXRlKGN1cnJlbnREYXRlKSk7XHJcbiAgICAgICAgICAgIGN1cnJlbnREYXRlLnNldERhdGUoY3VycmVudERhdGUuZ2V0RGF0ZSgpICsgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBkYXRlc0FycmF5O1xyXG4gICAgfVxyXG59XHJcblxyXG4iXX0=