package com.zcxk.core.utils;

import java.util.Random;
import java.util.UUID;

/**
 * @author Andy
 * @description: 唯一ID生成工具类
 * @date 2021/7/16
 * @version V1.0
 **/
public class UuidUtils {

    /**
     * 获得32位UUID
     */
    public static String generateUuid() {
        return UUID.randomUUID().toString().replaceAll("-", "");
    }

    /**
     * 获得32位UUID 未截取
     * @return
     */
    public static String randomUuid(){
        return  UUID.randomUUID().toString();
    }
    /**
     * 获得32位纯数字流水号  时间戳+15位随机数
     */
    public static String getSerialNumber() {
        StringBuilder serialNo = new StringBuilder();
        serialNo.append(DateUtil.getCurTimesTamp());
        for (int i = 0; i < 15; i++) {
            serialNo.append((int) (Math.random() * 9));
        }
        return serialNo.toString();
    }

    /**
     * 图片名生成
     */
    public static String genImageName() {
        // 取当前时间的长整形值包含毫秒
        long millis = System.currentTimeMillis();
        // 加上三位随机数
        Random random = new Random();
        int end3 = random.nextInt(999);
        // 如果不足三位前面补0
        String str = millis + String.format("%03d", end3);

        return str;
    }

    /**
     * 生成随机六位数验证码
     */
    public static String getCode() {
        int i = (int) (Math.random() * 900000 + 100000);
        return String.valueOf(i);
    }


    /**
     * 生成4位随机数
     */
    public static String count4() {
        Integer count = (int) (Math.random() * 9000 + 1000);
        return count.toString();
    }

}