All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ttzero.excel.validation.Tuple2Validation Maven / Gradle / Ivy

Go to download

A fast and lower memory excel write/read tool 一个非POI底层支持流式处理的高效且超低内存的Excel读写工具

The newest version!
/*
 * Copyright (c) 2017-2023, [email protected] All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */


package org.ttzero.excel.validation;


/**
 * 范围验证,限定起始和结束值范围
 *
 * @see DateValidation
 * @see TimeValidation
 * @see TextLengthValidation
 * @see WholeValidation
 * @author guanquan.wang at 2022-08-17 20:05:42
 */
public abstract class Tuple2Validation extends Validation {
    public V1 v1;
    public V2 v2;

    public Tuple2Validation equal(V1 v1) {
        this.operator = Operator.equal;
        this.v1 = v1;
        return this;
    }

    public Tuple2Validation nowEqual(V1 v1) {
        this.operator = Operator.notEqual;
        this.v1 = v1;
        return this;
    }

    public Tuple2Validation greaterThan(V1 v1) {
        this.operator = Operator.greaterThan;
        this.v1 = v1;
        return this;
    }

    public Tuple2Validation greaterThanOrEqual(V1 v1) {
        this.operator = Operator.greaterThanOrEqual;
        this.v1 = v1;
        return this;
    }

    public Tuple2Validation lessThan(V2 v2) {
        this.operator = Operator.lessThan;
        this.v2 = v2;
        return this;
    }

    public Tuple2Validation lessThanOrEqual(V2 v2) {
        this.operator = Operator.lessThanOrEqual;
        this.v2 = v2;
        return this;
    }

    public Tuple2Validation between(V1 v1, V2 v2) {
        this.operator = Operator.between;
        this.v1 = v1;
        this.v2 = v2;
        return this;
    }

    public Tuple2Validation notBetween(V1 v1, V2 v2) {
        this.operator = Operator.notBetween;
        this.v1 = v1;
        this.v2 = v2;
        return this;
    }

    @Override
    public String validationFormula() {
        String v;
        if (operator == null) operator = Operator.between;
        switch (operator) {
            case equal:
            case notEqual:
            case greaterThan:
            case greaterThanOrEqual: v = "" + v1 + ""; break;
            case lessThan:
            case lessThanOrEqual: v = "" + v2 + ""; break;
            default: v = "" + v1 + "" + v2 + ""; break;
        }
        return v;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy