From aa00074986140e57be1f56272311e84abd8566ac Mon Sep 17 00:00:00 2001
From: zongzhibin <zongzhibin@weben-smart.com>
Date: 周六, 30 11月 2024 17:04:28 +0800
Subject: [PATCH] Merge branch 'master' of http://222.71.245.114:9086/r/LA24030-LuLI_PackageLine
---
CC/iWareCC_ASRS/ThreadService/05_BZ30(齐套验证)/DataProcess_ValidateQiTao.cs | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 100 insertions(+), 5 deletions(-)
diff --git "a/CC/iWareCC_ASRS/ThreadService/05_BZ30\050\351\275\220\345\245\227\351\252\214\350\257\201\051/DataProcess_ValidateQiTao.cs" "b/CC/iWareCC_ASRS/ThreadService/05_BZ30\050\351\275\220\345\245\227\351\252\214\350\257\201\051/DataProcess_ValidateQiTao.cs"
index d33b27f..9757dee 100644
--- "a/CC/iWareCC_ASRS/ThreadService/05_BZ30\050\351\275\220\345\245\227\351\252\214\350\257\201\051/DataProcess_ValidateQiTao.cs"
+++ "b/CC/iWareCC_ASRS/ThreadService/05_BZ30\050\351\275\220\345\245\227\351\252\214\350\257\201\051/DataProcess_ValidateQiTao.cs"
@@ -10,6 +10,7 @@
using System;
using System.Collections.Generic;
using System.Linq;
+using System.Runtime.Remoting.Messaging;
using System.ServiceModel.Configuration;
using System.Text;
using System.Threading;
@@ -55,6 +56,7 @@
var configValues = configValue.Split('|');
var packageCode = configValues[0];
var qitaoValue = configValues[1];//榻愬 涓嶉綈濂�
+ var _UnlinePerson = configValues[2];
bool iscomplete = false;
if (qitaoValue.Equals("榻愬"))
{
@@ -80,11 +82,11 @@
//鏇存柊鍊�
bz30Config.Value = "";
- var gahter = wmsDB.mes_package_gather.Where(x => x.PackageCode == packageCode).FirstOrDefault();
- if (gahter != null)
+ var package = wmsDB.mes_package_gather.Where(x => x.PackageCode == packageCode).FirstOrDefault();
+ if (package != null)
{
- gahter.UpiStatus = (int)UpiStatusEnum.宸蹭笅绾�;
- gahter.AreaCode = (int)AreaCodeEnum.涓嬬嚎鍖哄煙;
+ package.UpiStatus = (int)UpiStatusEnum.宸蹭笅绾�;
+ package.AreaCode = (int)AreaCodeEnum.涓嬬嚎鍖哄煙;
}
var upiList = wmsDB.mes_batchOrderUPI_new.Where(x => x.PackageCode == packageCode).ToList();
foreach (var item in upiList)
@@ -99,9 +101,21 @@
{
wmsDB.mes_package_linequeue.Remove(lineQueue);
}
+
+
+ //澶勭悊琛� mes_order_gather
+ var errmsg = "";
+ var result = HandlerOrderGather(wmsDB, package, qitaoValue, _UnlinePerson, out errmsg);
+ if (result == false)
+ {
+ SystemWarningMsg._lbl_Alert_DataProcess_ValidateQiTao = errmsg;
+ continue;
+ }
+
+
//鏂板涓嬬嚎璁板綍
mes_package_unline_record record = new mes_package_unline_record();
- record = ClassHelper.RotationMapping<mes_package_unline_record, mes_package_gather>(gahter);
+ record = ClassHelper.RotationMapping<mes_package_unline_record, mes_package_gather>(package);
record.Id = Yitter.IdGenerator.YitIdHelper.NextId();
record.CreateTime = DateTime.Now;
record.UpdateTime = DateTime.Now;
@@ -122,5 +136,86 @@
}
}
+ /// <summary>
+ /// 澶勭悊 琛� mes_order_gather
+ /// </summary>
+ /// <param name="wmsDB"></param>
+ /// <param name="package"></param>
+ /// <param name="qitaoValue"></param>
+ /// <param name="_UnlinePerson"></param>
+ /// <param name="errMsg"></param>
+ /// <returns></returns>
+ public static bool HandlerOrderGather(WmsDBModel wmsDB, mes_package_gather package, string qitaoValue, string _UnlinePerson, out string errMsg)
+ {
+ errMsg = "";
+ //澶勭悊琛� mes_order_gather
+ var isAddOrder = false;
+ var packageList = wmsDB.mes_package_gather.Where(x => x.Info5 == package.Info5).ToList();
+ if (packageList == null || packageList?.Count == 0)
+ {
+ errMsg = $"娌℃湁鎵惧埌鐢熶骇鍗曞彿{package.Info5}鐨勬眹鎬绘暟鎹�";
+ return false;
+ }
+ var order = wmsDB.mes_order_gather.Where(x => x.Info5 == package.Info5).FirstOrDefault();
+ if (order != null)
+ {
+
+ }
+ else
+ {
+ order = new mes_order_gather()
+ {
+ Id = Yitter.IdGenerator.YitIdHelper.NextId(),
+ Info5 = package.Info5,
+ OrderId = package.OrderId,
+ PlanNo = package.PlanNo,
+ };
+ isAddOrder = true;
+ }
+ order.PackageNum = packageList.Count();
+ order.UnLinePackageNum = packageList.Where(x => x.UpiStatus == (int)UpiStatusEnum.宸蹭笅绾�).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.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();
+ if (newLineQueue != null && newLineQueue.Info5 != order.Info5)
+ {
+ //琛ㄧず鏄� 鍒囨崲 鏂拌鍗曚簡锛岃璁㈠崟瑕佹洿鏂颁负 宸蹭笅绾裤��
+ order_unLine = true;
+ }
+ else
+ {
+ //鍒ゆ柇璇ヨ鍗曟槸鍚﹀凡涓嬬嚎
+ if (order.PackageNum == order.UnLinePackageNum)
+ {
+ order_unLine = true;
+ }
+ }
+ //鍒ゆ柇璇ヨ鍗曟槸鍚﹀凡涓嬬嚎
+ if (order_unLine)
+ {
+ order.IsUnline = true;
+ order.UnlineTime = DateTime.Now;
+ order.UnlinePerson = _UnlinePerson;
+ }
+ else
+ {
+ order.IsUnline = false;
+ }
+
+ if (isAddOrder)
+ {
+ wmsDB.mes_order_gather.Add(order);
+ }
+
+ return true;
+ }
+
}
}
--
Gitblit v1.9.3