NumberUtils.java 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. package com.fdkankan.common.util;
  2. import org.joda.time.DateTime;
  3. import java.util.Random;
  4. import java.util.UUID;
  5. import java.util.concurrent.atomic.AtomicInteger;
  6. public class NumberUtils {
  7. private static AtomicInteger orderNum = new AtomicInteger(10);
  8. private static AtomicInteger productNum = new AtomicInteger(10);
  9. private static AtomicInteger skuNum = new AtomicInteger(10);
  10. /**
  11. * 生成订单编号
  12. * @return
  13. */
  14. public static String getOrderNo() {
  15. long orderNo = DateTime.now().getMillis() * 10000;
  16. orderNo += orderNum.incrementAndGet();
  17. return "O"+orderNo;
  18. }
  19. /**
  20. * 生成订单编号
  21. * @return
  22. */
  23. public static String getOrderSn(){
  24. // DateTime dateTime = new DateTime();
  25. // return dateTime.toString("yyyyMMddhhmmss") +RandomUtil.generateShortUuid();
  26. long orderNo = DateTime.now().getMillis() * 10000;
  27. orderNo += orderNum.incrementAndGet();
  28. return "O"+orderNo;
  29. }
  30. /**
  31. * 生成商品编号
  32. * @return
  33. */
  34. public static String getGoodsNo() {
  35. long productNo = DateTime.now().getMillis() * 10000;
  36. productNo += productNum.incrementAndGet();
  37. return "P"+productNo;
  38. }
  39. /**
  40. * 生成sku编号
  41. * @return
  42. */
  43. public static String getSkuNo() {
  44. long skuNo = DateTime.now().getMillis() * 10000;
  45. skuNo += skuNum.incrementAndGet();
  46. return "U"+skuNo;
  47. }
  48. public static synchronized String create15() {
  49. String strDate = new DateTime().toString("yyMMddHHmmss");
  50. String random = getRandom620(3);
  51. return strDate+random;
  52. }
  53. /**
  54. * 获取6-10 的随机位数数字
  55. * @param length 想要生成的长度
  56. * @return result
  57. */
  58. public static String getRandom620(Integer length) {
  59. String result = "";
  60. Random rand = new Random();
  61. int n = 20;
  62. if (null != length && length > 0) {
  63. n = length;
  64. }
  65. int randInt = 0;
  66. for (int i = 0; i < n; i++) {
  67. randInt = rand.nextInt(10);
  68. result += randInt;
  69. }
  70. return result;
  71. }
  72. public static String getUUID(){
  73. return UUID.randomUUID().toString().replace("-", "");
  74. }
  75. }