Пример #1
0
        /// <summary>
        /// 组合后缀生成唯一ID
        /// </summary>
        /// <param name="uctTimeNow">时间</param>
        /// <param name="suffix">后缀只能是由26个字母加数字组成</param>
        /// <param name="fixLen">固定长度</param>
        /// <returns></returns>
        public static string MakeTradeNo(DateTime UctTimeNow, string suffix, int fixLen)
        {
            Thread.Sleep(1);
            if (fixLen < 17)
            {
                fixLen = 17;
            }
            string text = UctTimeNow.ToString("yyMMddHHmmssfffff");
            string str  = string.Empty;

            if (!string.IsNullOrEmpty(suffix))
            {
                suffix = RegExMatch.RegexReplace(suffix, "[^A-Za-z0-9]+", "", true);
                try
                {
                    str = AnyRadixConvert.AryConvert(suffix, 36, 10);
                }
                catch
                {
                    str = string.Empty;
                }
            }
            text += str;
            int length = text.Length;

            if (length > fixLen)            //大于指定的长度
            {
                return(text.Substring(0, fixLen));
            }
            else if (length < fixLen)            //小于指定的长度
            {
                text = string.Format("{0}{1}", text, AnyRadixConvert.GetRandomNum(fixLen - length));
            }
            return(text);
        }
Пример #2
0
        /// <summary>
        /// 生成基础资料ID
        /// </summary>
        /// <param name="uctTimeNow">时间</param>
        /// <param name="suffix">后缀只能是由26个字母加数字组成</param>
        /// <param name="fixLen">固定长度</param>
        /// <returns></returns>
        public static string MakeBaseDataId(DateTime uctTimeNow, string suffix, int fixLen)
        {
            Thread.Sleep(1);
            string text   = string.Format("{0}{1}", uctTimeNow.Ticks.ToString(), suffix);
            int    length = text.Length;

            if (length > fixLen)            //大于指定的长度
            {
                text = text.Substring(0, fixLen);
            }
            else if (length < fixLen)            //小于指定的长度
            {
                text = string.Format("{0}{1}", text, AnyRadixConvert.GetRandomNum(fixLen - length));
            }
            return(text);
        }