From 344680022c0c46a1bb108e7d2e81bf2296d79d15 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周三, 18 12月 2024 15:52:09 +0800
Subject: [PATCH] 22

---
 CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs |   55 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 52 insertions(+), 3 deletions(-)

diff --git a/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs b/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs
index a1b91dc..c185f0c 100644
--- a/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs
+++ b/CC/iWareCC_ASRS/Common/Helper/MyExtendHelper.cs
@@ -1,4 +1,6 @@
 锘縰sing Admin.NET.Application;
+using iWareCC.SrmService;
+using iWareCC.StationService;
 using iWareCommon.Common.Globle;
 using iWareCommon.Utils;
 using iWareModel;
@@ -24,6 +26,43 @@
     {
 
         /// <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>
+        /// <returns></returns>
+        public static async Task<iWareCC.StationService.SdaResEntity> WriteBoolPlcDataForWarning(string warningAddress)
+        {
+            using (StationServiceClient client = new StationServiceClient())
+            {
+
+                var res = await client.WriteBoolPlcDataAsync((int)EDevice.Station, "3000|" + warningAddress, true);
+                return res;
+            }
+        }
+
+        /// <summary>
         /// 澶勭悊 琛� mes_order_gather
         /// </summary>
         /// <param name="wmsDB"></param>
@@ -36,7 +75,8 @@
         {
             errMsg = "";
             //澶勭悊琛�  mes_order_gather
-            if (package == null) {
+            if (package == null)
+            {
                 return true;
             }
             var isAddOrder = false;
@@ -59,18 +99,25 @@
                     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.姝e父).Sum(x => Convert.ToDecimal(x.Info13));
             order.NoScanPackageArea = order.AllPackageArea - order.ScanPackageArea;
-            order.IsKitting = qitaoValue == "榻愬" ? true : false;
 
+
+            /*
             var order_unLine = false;
             //鏌ヨ涓嬩竴涓寘鏄笉鏄睘浜庤璁㈠崟
             var newLineQueue = wmsDB.mes_package_linequeue.OrderBy(x => x.Id).FirstOrDefault();
@@ -99,6 +146,8 @@
                 order.IsUnline = false;
             }
 
+            //*/
+
             if (isAddOrder)
             {
                 wmsDB.mes_order_gather.Add(order);

--
Gitblit v1.9.3