Socket
Socket
Sign inDemoInstall

xmcommon

Package Overview
Dependencies
Maintainers
1
Versions
65
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

xmcommon - npm Package Compare versions

Comparing version 0.9.13 to 0.9.14

28

dist/utils.d.ts
/// <reference types="node" />
import { XCommonRet } from './common_ret';
/**

@@ -27,2 +28,16 @@ * 检查对象属性结果,枚举

/**
* 分页信息
* - 主要用于mysql的分页请求处理
*/
export interface IPageInfo {
/** 第几条记录 从0开始 */
start: number;
/** 取几条记录 最小1,最大100 */
length: number;
/** 第几页,从1开始 */
page: number;
/** // 每页的记录数,等同于length */
pageSize: number;
}
/**
* 常用工具类

@@ -396,3 +411,16 @@ * - 这里会提供一组类静态成员的方法

static randomBetween(paramMin: number, paramMax: number): number;
/**
* 计算页信息
* - 与mysql limit相对应
* @param paramStart 开始的下标,从0开始 默认值0
* @param paramLength 对应的数量,要求大于1,小于1000,最大值1000, 默认值为10
*/
static roundPageInfo(paramStart?: number, paramLength?: number): IPageInfo;
/**
* 计算最大页数 CommonRetEx.data就是计算出来的页数
* @param paramCount 总的记录数
* @param paramPageSize 每页的记录数
*/
static calcMaxPage(paramCount: number, paramPageSize: number): XCommonRet<number>;
}
export default utils;

81

dist/utils.js

@@ -12,2 +12,3 @@ "use strict";

const constant_1 = require("./constant");
const common_ret_1 = require("./common_ret");
/** 日期偏移值,主要用于测试 */

@@ -484,10 +485,14 @@ let DateTimeOffset = 0;

for (let f = fmt.length - 1; f >= 0; f--) {
switch (fmt.substr(f, 1)) {
switch (fmt.substring(f, f + 1)) {
case '#':
if (i >= 0)
retString = str.substr(i--, 1) + retString;
if (i >= 0) {
retString = str.substring(i, i + 1) + retString;
i--;
}
break;
case '0':
if (i >= 0)
retString = str.substr(i--, 1) + retString;
if (i >= 0) {
retString = str.substring(i, 1 + 1) + retString;
i--;
}
else

@@ -508,3 +513,3 @@ retString = '0' + retString;

for (; i >= 0; i--) {
retString = str.substr(i, 1) + retString;
retString = str.substring(i, i + 1) + retString;
if (i > 0 && (l - i) % 3 === 0)

@@ -524,8 +529,12 @@ retString = ',' + retString;

case '#':
if (i < str.length)
retString += str.substr(i++, 1);
if (i < str.length) {
retString += str.substring(i, i + 1);
i++;
}
break;
case '0':
if (i < str.length)
retString += str.substr(i++, 1);
if (i < str.length) {
retString += str.substring(i, i + 1);
i++;
}
else

@@ -818,4 +827,56 @@ retString += '0';

}
/**
* 计算页信息
* - 与mysql limit相对应
* @param paramStart 开始的下标,从0开始 默认值0
* @param paramLength 对应的数量,要求大于1,小于1000,最大值1000, 默认值为10
*/
static roundPageInfo(paramStart = 0, paramLength = 10) {
const start = Number.isInteger(paramStart) ? paramStart : 0;
let length = Number.isInteger(paramLength) ? paramLength : 10;
if (length < 1) {
length = 10;
}
else if (length > 1000) {
length = 1000;
}
const page = Math.floor(start / length) + 1;
return { start, length, page, pageSize: length };
}
/**
* 计算最大页数 CommonRetEx.data就是计算出来的页数
* @param paramCount 总的记录数
* @param paramPageSize 每页的记录数
*/
static calcMaxPage(paramCount, paramPageSize) {
const r = new common_ret_1.XCommonRet();
r.setOK(0);
do {
if (!Number.isSafeInteger(paramCount)) {
r.setError(constant_1.error_common.ERR_FAIL, `paramCount = ${paramCount} is not safe integer!`);
break;
}
if (!Number.isSafeInteger(paramPageSize)) {
r.setError(constant_1.error_common.ERR_FAIL, `paramPageSize = ${paramPageSize} is not safe integer!`);
break;
}
if (paramPageSize <= 0) {
r.setError(constant_1.error_common.ERR_FAIL, `paramPageSize = ${paramPageSize} <= 0, 页数要是大于0的整数`);
break;
}
if (paramCount <= 0) {
// 如果记录数,小于等于0,则 总页数0
break;
}
const p = paramCount % paramPageSize;
let pageCnt = (paramCount - p) / paramPageSize;
if (p > 0) {
pageCnt++;
}
r.setOK(pageCnt);
} while (false);
return r;
}
}
exports.utils = utils;
exports.default = utils;

@@ -5,3 +5,4 @@ /* eslint-disable @typescript-eslint/no-explicit-any */

import path from 'path';
import { MemorySize } from './constant';
import { MemorySize, error_common } from './constant';
import { XCommonRet } from './common_ret';

@@ -37,2 +38,17 @@ /** 日期偏移值,主要用于测试 */

/**
* 分页信息
* - 主要用于mysql的分页请求处理
*/
export interface IPageInfo {
/** 第几条记录 从0开始 */
start: number;
/** 取几条记录 最小1,最大100 */
length: number;
/** 第几页,从1开始 */
page: number;
/** // 每页的记录数,等同于length */
pageSize: number;
}
/**
* 常用工具类

@@ -169,4 +185,4 @@ * - 这里会提供一组类静态成员的方法

for (const k in (paramDestObject as any)) {
const kk = (paramSimpleObject as any)[k] ;
for (const k in paramDestObject as any) {
const kk = (paramSimpleObject as any)[k];
if (kk === undefined) {

@@ -177,3 +193,3 @@ ret.extra.push(k);

for (const k in (paramSimpleObject as any)) {
for (const k in paramSimpleObject as any) {
const v = (paramSimpleObject as any)[k];

@@ -513,8 +529,14 @@ const kk = (paramDestObject as any)[k];

for (let f = fmt.length - 1; f >= 0; f--) {
switch (fmt.substr(f, 1)) {
switch (fmt.substring(f, f+1)) {
case '#':
if (i >= 0) retString = str.substr(i--, 1) + retString;
if (i >= 0) {
retString = str.substring(i, i+1) + retString;
i--;
}
break;
case '0':
if (i >= 0) retString = str.substr(i--, 1) + retString;
if (i >= 0) {
retString = str.substring(i, 1+1) + retString;
i--;
}
else retString = '0' + retString;

@@ -534,3 +556,3 @@ break;

for (; i >= 0; i--) {
retString = str.substr(i, 1) + retString;
retString = str.substring(i, i+1) + retString;
if (i > 0 && (l - i) % 3 === 0) retString = ',' + retString;

@@ -549,6 +571,12 @@ }

case '#':
if (i < str.length) retString += str.substr(i++, 1);
if (i < str.length) {
retString += str.substring(i, i+1);
i++;
}
break;
case '0':
if (i < str.length) retString += str.substr(i++, 1);
if (i < str.length) {
retString += str.substring(i, i+1);
i++;
}
else retString += '0';

@@ -845,4 +873,60 @@ break;

}
/**
* 计算页信息
* - 与mysql limit相对应
* @param paramStart 开始的下标,从0开始 默认值0
* @param paramLength 对应的数量,要求大于1,小于1000,最大值1000, 默认值为10
*/
public static roundPageInfo(paramStart: number = 0, paramLength: number = 10): IPageInfo {
const start = Number.isInteger(paramStart) ? paramStart : 0;
let length = Number.isInteger(paramLength) ? paramLength : 10;
if (length < 1) {
length = 10;
} else if (length > 1000) {
length = 1000;
}
const page = Math.floor(start / length) + 1;
return { start, length, page, pageSize: length };
}
/**
* 计算最大页数 CommonRetEx.data就是计算出来的页数
* @param paramCount 总的记录数
* @param paramPageSize 每页的记录数
*/
public static calcMaxPage(paramCount: number, paramPageSize: number): XCommonRet<number> {
const r = new XCommonRet<number>();
r.setOK(0);
do {
if (!Number.isSafeInteger(paramCount)) {
r.setError(error_common.ERR_FAIL, `paramCount = ${paramCount} is not safe integer!`);
break;
}
if (!Number.isSafeInteger(paramPageSize)) {
r.setError(error_common.ERR_FAIL, `paramPageSize = ${paramPageSize} is not safe integer!`);
break;
}
if (paramPageSize <= 0) {
r.setError(error_common.ERR_FAIL, `paramPageSize = ${paramPageSize} <= 0, 页数要是大于0的整数`);
break;
}
if (paramCount <= 0) {
// 如果记录数,小于等于0,则 总页数0
break;
}
const p = paramCount % paramPageSize;
let pageCnt = (paramCount - p) / paramPageSize;
if (p > 0) {
pageCnt++;
}
r.setOK(pageCnt);
} while (false);
return r;
}
}
export default utils;

4

package.json
{
"name": "xmcommon",
"version": "0.9.13",
"description": "一个基于javascript的常用功能扩展库!",
"version": "0.9.14",
"description": "一个基于javascript的常用功能扩展库! 使用TypeScript重构!",
"main": "./dist/index.js",

@@ -6,0 +6,0 @@ "scripts": {

@@ -39,2 +39,7 @@ # xmcommon

# 版本变更说明
## 0.9.14
- 2022-01-05
- \+ 增加utils.calcMaxPage方法
- \+ 增加utils.roundPageInfo方法
## 0.9.13

@@ -41,0 +46,0 @@ - 2021-12-02

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc