package com.quyunshuo.module.home.utils;

import java.security.SecureRandom;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

public class OrderNumberGenerator {
    public static String generateOrderNumber() {
        // 1. 时间戳部分（精确到毫秒）
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS", Locale.getDefault());
        String timestamp = sdf.format(new Date());

        // 2. 随机数部分（4位字母数字）
        String randomString = generateRandomNumber(6);

        // 3. 组合成订单号（可添加业务前缀，如商户ID）
        return timestamp + randomString; // ORD 为示例前缀
    }

    private static String generateRandomNumber(int length) {
        SecureRandom random = new SecureRandom();
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < length; i++) {
            sb.append(random.nextInt(10)); // 仅生成0-9
        }
        return sb.toString();
    }
}
