genHashId.js 710 B

1234567891011121314151617181920212223242526272829303132
  1. const GenType = {
  2. // 三位类型编码 一定不能大于280
  3. TYPE_RECRUIT: '100',
  4. TYPE_SERVICE_CASE: '110',
  5. TYPE_SERVICE_PROVIDER: '120',
  6. TYPE_TOPIC: '130',
  7. TYPE_VIDEO: '140',
  8. }
  9. class HashIDUtil {
  10. getHashID(type, id) {
  11. let idNew = `000000000000${id}`.slice(-12)
  12. return this.dec2hex(`${type}${idNew}`).toLowerCase();
  13. }
  14. dec2hex(number) {
  15. number = Number(number)
  16. let hexValues = [ '0', '1', '2', '3', '4', '5', '6', '7',
  17. '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' ];
  18. let hexval = '';
  19. while (number !== 0) {
  20. hexval = hexValues[ number % 16 ] + hexval;
  21. number = Math.floor(number / 16)
  22. }
  23. return hexval;
  24. }
  25. }
  26. export {
  27. GenType, HashIDUtil
  28. }