22
schangxiang@126.com
2024-12-15 c1c1b1f95b0880cd58afadb98d6933287fe6311c
CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs
@@ -26,6 +26,28 @@
    {
        /// <summary>
        /// 生成最新的任务号
        /// </summary>
        /// <param name="wmsDB"></param>
        /// <param name="rbTaskTypeEnum"></param>
        /// <param name="plcTaskNo"></param>
        /// <returns></returns>
        public static string GetNewTaskNo(WmsDBModel wmsDB, RbTaskTypeEnum rbTaskTypeEnum, string plcTaskNo)
        {
            //判断如果任务号跟上一个任务号重复,就自动减去1
            var lastTask = wmsDB.wms_rbline_task.Where(x => x.RbTaskType == (int)rbTaskTypeEnum).OrderByDescending(x => x.Id).FirstOrDefault();
            if (lastTask != null && lastTask.TaskNo == plcTaskNo)
            {
                plcTaskNo = (Convert.ToInt32(plcTaskNo) - 1).ToString();
            }
            else
            {
            }
            return plcTaskNo;
        }
        /// <summary>
        /// 写入 报警信息
        /// </summary>
        /// <param name="warningAddress"></param>
@@ -77,15 +99,21 @@
                    Info5 = package.Info5,
                    OrderId = package.OrderId,
                    PlanNo = package.PlanNo,
                    CreateTime = DateTime.Now,
                    UpdateTime = DateTime.Now,
                    CreateUserName = SysGloble.WCSSystem,
                    UpdateUserName = SysGloble.WCSSystem
                };
                isAddOrder = true;
            }
            order.PackageNum = packageList.Count();
            order.UnLinePackageNum = packageList.Where(x => x.UpiStatus == (int)UpiStatusEnum.已下线).Count();
            order.NgPackageNum = packageList.Where(x => x.UpiStatus == (int)UpiStatusEnum.已下线 && x.UpiFlag == (int)UpiFlagEnum.NG).Count();
            order.NoUnLinePackageNum = order.PackageNum - order.UnLinePackageNum;
            order.AllPackageArea = packageList.Sum(x => Convert.ToDecimal(x.Info13));
            order.ScanPackageArea = packageList.Where(x => x.UpiStatus == (int)UpiStatusEnum.已下线).Sum(x => Convert.ToDecimal(x.Info13));
            order.ScanPackageArea = packageList.Where(x => x.UpiStatus == (int)UpiStatusEnum.已下线 && x.UpiFlag == (int)UpiFlagEnum.正常).Sum(x => Convert.ToDecimal(x.Info13));
            order.NoScanPackageArea = order.AllPackageArea - order.ScanPackageArea;
            order.IsKitting = qitaoValue == "齐套" ? true : false;