schangxiang@126.com
2025-09-10 6bb25a0e2443749c07834048c4afab136dff7a67
wcs/yunneiWCS/yunneiWCS/Utils/TaskNoHelper.cs
@@ -17,24 +17,7 @@
        private readonly static object lock_Agv = new object();
        ///// <summary>
        ///// 随机生成1-10000的PLC任务号
        ///// </summary>
        ///// <returns></returns>
        //public static string CreatePlcTaskId()
        //{
        //    int iSeed = 10000;
        //    return new Random(Guid.NewGuid().GetHashCode()).Next(1, iSeed).ToString();
        //}
        ///// <summary>
        ///// 创建输送线任务号,随机生成(1, 3000)的PLC任务号
        ///// </summary>
        ///// <returns></returns>
        //public static string CreatePlcTaskIdForConveyorTask()
        //{
        //    int iSeed = 3000;
        //    return new Random(Guid.NewGuid().GetHashCode()).Next(1, iSeed).ToString();
        //}
        /// <summary>
        /// 创建堆垛机任务号,随机生成 (1-999999)的PLC任务号
@@ -78,8 +61,10 @@
        {
            lock (lock_Srm)
            {
                int startNum = 100001;
                int iSeed = 999999;
                return new Random(Guid.NewGuid().GetHashCode()).Next(1, iSeed).ToString();
                //按照AGV的要求,必须是6位数字 【Editby shaocx,2025-09-09】
                return new Random(Guid.NewGuid().GetHashCode()).Next(startNum, iSeed).ToString();
            }
        }
@@ -89,18 +74,18 @@
        /// <returns></returns>
        public static string CreateTaskIdForAgvTask(string plcTaskNo)
        {
            var formattedPlcTaskNo = "";
            var formattedPlcTaskNo = plcTaskNo;
            //按照AGV的要求,必须是6位数字 【Editby shaocx,2025-09-09】
            if (plcTaskNo.Length < 6)
            {
            //if (plcTaskNo.Length < 6)
            //{
                // 不足 6 位,在右侧补 0,补足到 6 位
                formattedPlcTaskNo = plcTaskNo.PadRight(6, '0');
            }
            else
            {
            //   formattedPlcTaskNo = plcTaskNo.PadRight(6, '0');
            //}
            //else
            //{
                // 已经是 6 位或更长,直接使用(如果业务上要求不能超过 6 位,可以再截取 Substring(0,6))
                formattedPlcTaskNo = plcTaskNo;
            }
            //    formattedPlcTaskNo = plcTaskNo;
            //}
            lock (lock_Agv)
            {
                //年月日时分秒-plc任务号,如 20220325190023-1234