Commit d5c41a53c8ef357bd8720e9a15b35654287fdb57

Authored by xp.Huang
1 parent abef282c

fix: 修改sn生成随机规则

@@ -455,18 +455,22 @@ public class TkDeviceServiceImpl extends AbstractBaseService<DeviceMapper, TkDev @@ -455,18 +455,22 @@ public class TkDeviceServiceImpl extends AbstractBaseService<DeviceMapper, TkDev
455 455
456 @Override 456 @Override
457 public String generateSn() { 457 public String generateSn() {
458 - StringBuilder snBuilder = new StringBuilder();  
459 - for (int i = 0; i < 2; i++) {  
460 - // 生成uuid的hashCode值  
461 - int hashCode = UUID.randomUUID().toString().hashCode();  
462 - // 可能为负数  
463 - if (hashCode < 0) {  
464 - hashCode = -hashCode; 458 + //随机生成16位字符+数字
  459 + String val = "";
  460 + Random random = new Random();
  461 + for(int i = 0; i < 16; i++) {
  462 +
  463 + String charOrNum = random.nextInt(2) % 2 == 0 ? "char" : "num";
  464 + //输出字母还是数字
  465 + if( "char".equalsIgnoreCase(charOrNum) ) {
  466 + //输出是大写字母还是小写字母
  467 + int temp = random.nextInt(2) % 2 == 0 ? 65 : 97;
  468 + val += (char)(random.nextInt(26) + temp);
  469 + } else if( "num".equalsIgnoreCase(charOrNum) ) {
  470 + val += String.valueOf(random.nextInt(10));
465 } 471 }
466 - snBuilder.append(hashCode);  
467 } 472 }
468 -  
469 - return snBuilder.substring(0, 16); 473 + return val;
470 } 474 }
471 475
472 @Override 476 @Override