From c9e3a7f0c154892f2327e300e28af53f81e40ad0 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周四, 20 2月 2025 11:03:24 +0800
Subject: [PATCH] 软件加密+ 修复 不断给plc报警的问题
---
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/ThirdInterFace/ThirdInterFaceService.cs | 65 ++++++++++++++++++++++++++------
1 files changed, 53 insertions(+), 12 deletions(-)
diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/ThirdInterFace/ThirdInterFaceService.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/ThirdInterFace/ThirdInterFaceService.cs
index ed7aa55..1463033 100644
--- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/ThirdInterFace/ThirdInterFaceService.cs
+++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Service/ThirdInterFace/ThirdInterFaceService.cs
@@ -5,7 +5,7 @@
using System.Web;
using System.Text;
using Furion.DatabaseAccessor;
-using Admin.NET.Application.Service.WmsOrder.Mes_BatchOrderUPI_New.Dto;
+using Microsoft.CodeAnalysis.Operations;
namespace Admin.NET.Application;
/// <summary>
@@ -28,7 +28,7 @@
[ApiDescriptionSettings(Name = "GetBatchOrderUPIList")]
[UnitOfWork]
[AllowAnonymous]
- public async Task GetBatchOrderUPIList(List<Mes_BatchOrderUPI_New> input)
+ public async Task GetBatchOrderUPIList(List<GetBatchOrderUPIInput> input)
{
if (input?.Count <= 0)
{
@@ -45,21 +45,49 @@
throw Oops.Oh("鏈鏈夐噸澶嶇殑UPI锛侀噸澶嶅彿涓�:" + dit.Key + ",閲嶅鏉℃暟:" + dit.Value);
}
- List<string> packageList = new List<string>();
- input.ForEach(x => packageList.Add(x.PackageCode));//upis鏄紶杩囨潵鐨剈pi瀛楁闆嗗悎
+ //鏍¢獙鏁版嵁鏄惁姝g‘ 銆怑ditby shaocx,2024-12-20銆�
+ var gg = input.GroupBy(x => x.PackageCode);
+ foreach (var item in gg)
+ {
+ var _list = item.ToList();
+ if (_list.Count() == 1)
+ {
+ throw Oops.Oh($"鍖呭彿{item.Key}涓彧鏈変竴鍧楁澘锛屼笉绗﹀悎瑕佹眰!");
+ }
+ _list = _list.OrderBy(x => x.Shelf).ToList();
+ for (int i = 0; i < _list.Count; i++)
+ {
+ if (_list[i].Shelf != (i + 1))
+ {
+ throw Oops.Oh($"鍖呭彿{item.Key}涓{(i + 1)}鍧楁澘鐨勬搴忎笉鏄瘂i + 1}锛岃�屾槸{_list[i].Shelf}锛屼笉绗﹀悎瑕佹眰!");
+ }
+ }
+ }
- var batchOrderUPIs = await _rep.AsQueryable().Where(x => packageList.Contains(x.PackageCode)).ToListAsync();//batchOrderUPIs鏄噸澶嶇殑upi闆嗗悎
+ //鍚屼竴涓猆PI鍙兘灞炰簬涓�涓� 鎵规鍙�+璁㈠崟鍙�
+ //浼氬瓨鍦� 涓�涓壒娆″彿锛屽涓鍗曞彿鐨勬儏鍐�
+ //浼氬瓨鍦� 涓�涓鍗曞彿锛屽涓壒娆″彿鐨勬儏鍐�
+
+ //鎸夌収鎵规鍙�+璁㈠崟鍙峰垹闄�
+ List<string> packageList = new List<string>();
+ input.ForEach(x => packageList.Add(x.PlanNo + "_" + x.OrderId));//upis鏄紶杩囨潵鐨剈pi瀛楁闆嗗悎
+
+ var batchOrderUPIs = await _rep.AsQueryable().Where(x => packageList.Contains(x.PlanNo + "_" + x.OrderId)).ToListAsync();//batchOrderUPIs鏄噸澶嶇殑upi闆嗗悎
//鎵归噺鍒犻櫎
await _rep.DeleteAsync(batchOrderUPIs);
//鎵归噺鍒犻櫎
- await _mes_Package_Gather_Rep.DeleteAsync(x => packageList.Contains(x.PackageCode));
+ await _mes_Package_Gather_Rep.DeleteAsync(x => packageList.Contains(x.PlanNo + "_" + x.OrderId));
- foreach (var item in input)
- {
- item.AreaCode = AreaCodeEnum.鏃犲尯鍩�;
- item.UpiStatus = UpiStatusEnum.鍒濆;
- }
+ //鍒犻櫎閲嶅鐨剈pi鏁版嵁
+ List<string> upis = new List<string>();
+ input.ForEach(x => upis.Add(x.UPI));//upis鏄紶杩囨潵鐨剈pi瀛楁闆嗗悎
+ var queryDateTime = DateTime.Now.AddDays(-7);
+ var batchOrderUPIs22 = await _rep.AsQueryable().Where(x => upis.Contains(x.UPI) && x.CreateTime >= queryDateTime).ToListAsync();//batchOrderUPIs鏄噸澶嶇殑upi闆嗗悎
+ //鎵归噺鍒犻櫎
+ await _rep.DeleteAsync(batchOrderUPIs22);
+
+
List<Mes_Package_Gather> addGatherList = new List<Mes_Package_Gather>();
var groups = input.GroupBy(x => x.PackageCode);
foreach (var group in groups)
@@ -68,11 +96,24 @@
Mes_Package_Gather newGather = first.Adapt<Mes_Package_Gather>();
newGather.AreaCode = AreaCodeEnum.鏃犲尯鍩�;
newGather.UpiStatus = UpiStatusEnum.鍒濆;
+ newGather.CreateUserName = newGather.UpdateUserName = "MES";
addGatherList.Add(newGather);
}
await _mes_Package_Gather_Rep.InsertRangeAsync(addGatherList);
- await _rep.InsertRangeAsync(input);
+ //杞崲鎴怳pi瀵硅薄
+ List<Mes_BatchOrderUPI_New> insertUpiList = new List<Mes_BatchOrderUPI_New>();
+ foreach (var item in input)
+ {
+ Mes_BatchOrderUPI_New insertUpi = item.Adapt<Mes_BatchOrderUPI_New>();
+ insertUpi.AreaCode = AreaCodeEnum.鏃犲尯鍩�;
+ insertUpi.UpiStatus = UpiStatusEnum.鍒濆;
+ insertUpi.CreateUserName = insertUpi.UpdateUserName = "MES";
+ insertUpi.CreateTime = insertUpi.UpdateTime = DateTime.Now;
+ insertUpiList.Add(insertUpi);
+ }
+
+ await _rep.InsertRangeAsync(insertUpiList);
}
}
--
Gitblit v1.9.3