DESKTOP-71BH0QO\L、ming
2021-04-17 f721ee13dc5f95f607bb25b09f73cae6a7123ed9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
package com.panzhihua.common.utlis;
 
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
 
public class OrderNoUtils {
    private static int sn = 0;
 
    public static String NextOrderNo(Long userId) {
        if (sn == 999)
            sn = 0;
        else
            sn++;
        DateFormat df = new SimpleDateFormat("MMddHHmmss");
        return df.format(new Date()) + padRight(String.valueOf(userId), 5, '0') + padRight(String.valueOf(sn), 3, '0') + getRandomNumber();
    }
 
    public static String padLeft(String src, int len, char ch) {
        int diff = len - src.length();
        if (diff <= 0) {
            return src;
        }
 
        char[] charr = new char[len];
        System.arraycopy(src.toCharArray(), 0, charr, 0, src.length());
        for (int i = src.length(); i < len; i++) {
            charr[i] = ch;
        }
        return new String(charr);
    }
 
    public static String padRight(String src, int len, char ch) {
        int diff = len - src.length();
        if (diff <= 0) {
            return src;
        }
 
        char[] charr = new char[len];
        System.arraycopy(src.toCharArray(), 0, charr, diff, src.length());
        for (int i = 0; i < diff; i++) {
            charr[i] = ch;
        }
        return new String(charr);
    }
 
    // 防止创建类的实例
    private OrderNoUtils() {
    }
 
    /**
     * 获取三位随机数
     * @return  三位随机数
     */
    private static String getRandomNumber(){
        return String.valueOf(new Double((Math.random() * 9 + 1) * (Math.pow(10, 3 - 1))).intValue());
    }
}