UNPKG

ts-api-core

Version:

Nodejs api framework core

63 lines 2.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PageSizeValidator = exports.PageIndexValidator = exports.NumberValidator = void 0; const abstract_validator_1 = require("../abstract.validator"); /** * 数字类参数校验类 * @param message * @param max * @param min * @param defaultValue */ class NumberValidator extends abstract_validator_1.AbstractValidator { constructor(message = "参数校验错误", max, min, defaultValue, must) { super(); this.max = max; this.min = min; this.defaultValue = defaultValue; this.must = must; this.setDefaultMessage(message); } valid(paramValue, doUpdateValue) { const param = Number(paramValue); if (Number.isNaN(param)) { this.convertMessage("参数值不是数字类型"); return false; } if (this.max !== undefined) { if (param > this.max) { this.convertMessage("参数值不能大于" + this.max.toString()); return false; } } if (this.min !== undefined) { if (param < this.min) { this.convertMessage("参数值不能小于" + this.min.toString()); return false; } } doUpdateValue(param); return true; } getDefaultValue() { return this.defaultValue; } isMust() { var _a; return (_a = this.must) !== null && _a !== void 0 ? _a : true; } } exports.NumberValidator = NumberValidator; class PageIndexValidator extends NumberValidator { constructor(defaultValue = 1, message) { super(message, 100000, 1, defaultValue); } } exports.PageIndexValidator = PageIndexValidator; class PageSizeValidator extends NumberValidator { constructor(defaultValue = 50, message, max, min) { super(message, max !== null && max !== void 0 ? max : 10000, min !== null && min !== void 0 ? min : 1, defaultValue); } } exports.PageSizeValidator = PageSizeValidator; //# sourceMappingURL=number.validator.js.map