zoukankan      html  css  js  c++  java
  • 生成像这样得编号 XX2007032100001


        
    /// <summary>
        
    /// 最后一个编号 XX200703060001
        
    /// </summary>
        
    /// <param name="fieldName">字段ID号</param>
        
    /// <param name="tableName">表得名字</param>
        
    /// <returns></returns>

        public static object GetLastCode(string fieldName, string tableName, int autoBuildCodeLength)
        
    {
            
    string executeString = "SELECT " + fieldName + " FROM " + tableName + " WHERE LEN(" + fieldName + ") = " + autoBuildCodeLength + " ORDER BY ID DESC";
            
    return Common.GetDatabase().GetFirstData(executeString, CommandType.Text);
        }


        
    /// <summary>
        
    /// 第一位为0
        
    /// </summary>

        private static int _autoBuildCount = 0;

        
    /// <summary>
        
    /// 自动生成编号 如 "XXXX" + 2007030600001 这样的
        
    /// "XXXX" 传来的
        
    /// </summary>
        
    /// <param name="codeFormat">编号得格式</param>
        
    /// <param name="fieldName">字段ID号</param>
        
    /// <param name="tableName">表得名字</param>
        
    /// <param name="autoBuildCodeLength">自动生成编号得长度</param>
        
    /// <returns></returns>

        public static string GetAutomatismBuildCode(string codeFormat, string fieldName, string tableName,int autoBuildCodeLength)
        
    {
            
    string yearMonthDay1 = "";
            
    string yearMonthDay2 = codeFormat + DateTime.Now.Year.ToString() +
                NumberIsLessThan10(DateTime.Now.Month) 
    +
                NumberIsLessThan10(DateTime.Now.Day);
            
    object autoBuildCode;
            
    string AutomatismNumber = "";

            autoBuildCode 
    = GetLastCode(fieldName, tableName, autoBuildCodeLength);
            
    if (autoBuildCode == null)
            
    {
                _autoBuildCount 
    = 1;
            }

            
    else
            
    {
                yearMonthDay1 
    = autoBuildCode.ToString().Substring(0, autoBuildCodeLength-5);
                
    if (yearMonthDay2 == yearMonthDay1)
                
    {
                    _autoBuildCount 
    = int.Parse(autoBuildCode.ToString().Substring(autoBuildCodeLength-55));
                }

                
    ++_autoBuildCount;
            }

            AutomatismNumber 
    = yearMonthDay2 + _autoBuildCount.ToString("00000");

            _autoBuildCount 
    = 0;
            
    return AutomatismNumber;
        }


        
    /// <summary>
        
    /// 判断月日是一位还是两位数
        
    /// </summary>
        
    /// <param name="aa"></param>
        
    /// <returns></returns>

        private static string NumberIsLessThan10(int monthOrDay)
        
    {
            
    if (monthOrDay < 10)
            
    {
                
    return "0" + monthOrDay.ToString();
            }

            
    return monthOrDay.ToString();
        }

     
    XX2007032100001

    这个每添加完一条记录时最后一位都自动加一

  • 相关阅读:
    洗礼灵魂,修炼python(27)--异常处理(1)—>了解异常
    洗礼灵魂,修炼python(26)--编程核心之“递归”
    洗礼灵魂,修炼python(25)--自定义函数(6)—从匿名函数进阶话题讲解中解析“函数式编程”
    洗礼灵魂,修炼python(24)--自定义函数(5)—匿名函数lambda
    洗礼灵魂,修炼python(23)--自定义函数(4)—闭包进阶问题—>报错UnboundLocalError: local variable 'x' referenced before assignment
    721. Accounts Merge
    Union found
    547. Friend Circles
    200. Number of Islands
    684. Redundant Connection
  • 原文地址:https://www.cnblogs.com/xiaotuni/p/2365766.html
Copyright © 2011-2022 走看看