package com.nuvole.util; import cn.hutool.core.convert.Convert; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.RandomUtil; import cn.hutool.core.util.StrUtil; /** * 码生成类 * * @Author: lc * @Date: 2019/6/13 10:29 */ public class CodeUtil { /** * 自定义code++ * * @param maxCode 本级最大code * @param parentCode 父级code * @Author: lc * @Date: 2019/6/13 10:32 */ public static String getCode(String maxCode, String parentCode) { if (StrUtil.isBlank(parentCode)) { parentCode = ""; } if (StrUtil.isBlank(maxCode)) { return parentCode + "001"; } else { maxCode = Convert.toStr(Convert.toLong(maxCode) + 1); for (int i = 0; i < maxCode.length() % 3; i++) { maxCode = "0" + maxCode; } return maxCode; } } /** * 生成日期格式的编号 * * @Author: lc * @Date: 2019/7/2 15:19 */ public static String getTimeCode() { String time = DateUtil.format(DateUtil.date(), "yyyyMMddHHmmss"); return time + RandomUtil.randomNumbers(4); } public static void main(String[] args) { System.out.println(getCode("002001", "002")); System.out.println(getTimeCode()); } }