feature:
天梯挂机加速;天梯派遣部分新接口 fixed: 数据库类型和插入数据的用法修复
This commit is contained in:
@@ -4,7 +4,8 @@ import { CounterModel } from '../db/Counter';
|
||||
import { EquipModel } from '../db/Equip';
|
||||
import { HeroModel } from '../db/Hero';
|
||||
import { GOOD_TYPE } from '../consts/consts';
|
||||
|
||||
const moment = require('moment');
|
||||
|
||||
export function genCode(len) {
|
||||
const chars = '123456789ABCDEFGHJKLMNPQRSTWXYZabcdefghijklmnopqrstuvwxyz';
|
||||
const charArr = chars.split('');
|
||||
@@ -189,4 +190,41 @@ export function decodeIdCntArrayStr(str: string, multi: number) {
|
||||
index -= weight;
|
||||
}
|
||||
return result
|
||||
}
|
||||
/**
|
||||
* 传入两个时间,返回按照时间差计算,第二个时间比第一个晚几天
|
||||
* @param preTime 之前的时间
|
||||
* @param proTime 之后的时间
|
||||
*/
|
||||
export function deltaDays(preTime: Date, proTime: Date): number {
|
||||
return moment(proTime).diff(moment(preTime), "days");
|
||||
}
|
||||
|
||||
/**
|
||||
* 计算按照每 x 天 y 点刷新一次,是否应该刷新
|
||||
* @param preTime 基准时间
|
||||
* @param curTime 当前时间
|
||||
* @param hour 几点刷新
|
||||
* @param deltaDay 间隔几天刷新,默认每天刷新(deltaDay = 1)
|
||||
*/
|
||||
export function shouldRefresh(preTime: Date, curTime: Date, hour: number, deltaDay = 1): boolean {
|
||||
let refeshTime = curTime.setHours(hour, 0, 0, 0);
|
||||
if (refeshTime - preTime.getTime() > deltaDay * 24 * 60 * 60 * 1000 && curTime.getTime() >= refeshTime) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
export function getRandEelm(source: Array<any> = [], cnt = 1): Array<any> {
|
||||
if (cnt > source.length) return null;
|
||||
if (cnt === source.length) return source;
|
||||
let idxs = new Set();
|
||||
for (let i = 1; i < cnt; ++i) {
|
||||
let rand = Math.floor(Math.random() * source.length);
|
||||
idxs.add(rand);
|
||||
if (idxs.size == cnt) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
return source.filter((item, idx) => idxs.has(idx));
|
||||
}
|
||||
Reference in New Issue
Block a user