move aiid2regcode/regcode2aiid to core.tool
This commit is contained in:
		
							parent
							
								
									f0d90036b1
								
							
						
					
					
						commit
						cd37a2b9bb
					
				
							
								
								
									
										49
									
								
								index.js
									
									
									
									
									
								
							
							
						
						
									
										49
									
								
								index.js
									
									
									
									
									
								
							@ -1285,55 +1285,6 @@ class TICrypto {
 | 
				
			|||||||
    return null
 | 
					    return null
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  /**
 | 
					 | 
				
			||||||
   * 用户编号转邀请码
 | 
					 | 
				
			||||||
   *
 | 
					 | 
				
			||||||
   * @static
 | 
					 | 
				
			||||||
   * @param {*} aiid
 | 
					 | 
				
			||||||
   * @return {*}
 | 
					 | 
				
			||||||
   * @memberof TICrypto
 | 
					 | 
				
			||||||
   */
 | 
					 | 
				
			||||||
  static aiid2regcode(aiid) {
 | 
					 | 
				
			||||||
    const alphabet = 'e5fcdg3hqa4b1n0pij2rstuv67mwx89klyz'
 | 
					 | 
				
			||||||
    const base = 16367
 | 
					 | 
				
			||||||
    let num = (aiid + base) * (base - alphabet.length)
 | 
					 | 
				
			||||||
    let code = ''
 | 
					 | 
				
			||||||
    let mod
 | 
					 | 
				
			||||||
    while (num > 0) {
 | 
					 | 
				
			||||||
      mod = num % alphabet.length
 | 
					 | 
				
			||||||
      num = (num - mod) / alphabet.length
 | 
					 | 
				
			||||||
      code = code + alphabet[mod] // 倒序存放
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    return code
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  /**
 | 
					 | 
				
			||||||
   * 邀请码转用户编号
 | 
					 | 
				
			||||||
   *
 | 
					 | 
				
			||||||
   * @static
 | 
					 | 
				
			||||||
   * @param {*} code
 | 
					 | 
				
			||||||
   * @return {*}
 | 
					 | 
				
			||||||
   * @memberof TICrypto
 | 
					 | 
				
			||||||
   */
 | 
					 | 
				
			||||||
  static regcode2aiid(code) {
 | 
					 | 
				
			||||||
    if (typeof code === 'string' && /^[a-zA-Z0-9]+$/.test(code)) {
 | 
					 | 
				
			||||||
      const alphabet = 'e5fcdg3hqa4b1n0pij2rstuv67mwx89klyz'
 | 
					 | 
				
			||||||
      const base = 16367
 | 
					 | 
				
			||||||
      code = code.toLowerCase()
 | 
					 | 
				
			||||||
      let len = code.length
 | 
					 | 
				
			||||||
      let num = 0
 | 
					 | 
				
			||||||
      for (let i = 0; i < len; i++) {
 | 
					 | 
				
			||||||
        num += alphabet.indexOf(code[i]) * Math.pow(alphabet.length, i)
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
      let aiid = num / (base - alphabet.length) - base
 | 
					 | 
				
			||||||
      if (aiid >= 0 && Number.isInteger(aiid)) {
 | 
					 | 
				
			||||||
        // 允许 aiid===0:当第一个用户(aiid==1)登录时,需要一个系统默认的邀请码。
 | 
					 | 
				
			||||||
        return aiid
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    return null // null 代表一切非法的regcode
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  /**
 | 
					  /**
 | 
				
			||||||
   * 压缩公钥
 | 
					   * 压缩公钥
 | 
				
			||||||
   *
 | 
					   *
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user