LocationNames.java

package com.mycim.valueobject;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * @author shijie.deng
 * @version 6.0.0
 * @date 2019/9/25
 **/
public class LocationNames {

    /********* 永久分批 *****/
    public static final String PERMANENT = "permanent";

    /********* 永久分批并升级flag *****/
    public static final String PERMANENT_UP = "permanent_up";

    /********* 临时分批 *****/
    public static final String TEMPORARY = "temporary";

    /************ ERROR *************/
    //public static final String FLAG_NOT_MATCH_ERROR = "分/合批标记格式不正确,请参照XXX#$#000!";
    public static final String FLAG_NOT_MATCH_ERROR =
            "The split/merge lot mark format is not correct, " + "please " + "refer to XXX#$#000!";

    /**
     * 初始化lot flag的值 初始值为 ‘流程号#$#000’
     *
     * @param processId 流程号
     * @return
     */
    public static String initLotFlagName(String processId) {

        return processId + "#$#000";

    }

    /**
     * 检查命名是否符合规范
     *
     * @param lotFlagName
     * @return boolean
     */
    public static boolean checkLotFlagName(String lotFlagName) {
        // String regex = "[\\()|\\w|\\s]{1,}#\\$#\\d{3}";

        String regex = "(.*){1,}#\\$#\\d{3}";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(lotFlagName);

        return matcher.matches();
    }

}