From 82149871f30f4564d84272649352496a2ab0a38e Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期四, 23 十月 2025 17:12:52 +0800
Subject: [PATCH] 1
---
项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs | 61 ++++++++++++++++++++++++------
1 files changed, 49 insertions(+), 12 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs"
index b6c1b44..78c4035 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs"
@@ -30,10 +30,11 @@
private readonly ISys_ConfigService _configService;
private readonly ILocationInfoRepository _locationRepository;
private readonly IDt_InboundOrderRepository _inboundOrderRepository;
+ private readonly IDt_OutboundOrderRepository _outboundorderRepository;
private Timer _timer;
- public MyBackgroundService(ILogger<MyBackgroundService> logger, ILocationInfoRepository locationRepository, IStockInfoRepository stockInfoRepository, IDt_AreaInfoRepository areaInfoRepository, IDt_TaskRepository taskRepository, IDt_StationManagerRepository stationManagerRepository, ISys_ConfigService configService,IDt_InboundOrderRepository inboundOrderRepository)
+ public MyBackgroundService(ILogger<MyBackgroundService> logger, ILocationInfoRepository locationRepository, IStockInfoRepository stockInfoRepository, IDt_AreaInfoRepository areaInfoRepository, IDt_TaskRepository taskRepository, IDt_StationManagerRepository stationManagerRepository, ISys_ConfigService configService,IDt_InboundOrderRepository inboundOrderRepository, IDt_OutboundOrderRepository outboundorderRepository)
{
_logger = logger;
_locationRepository = locationRepository;
@@ -43,6 +44,7 @@
_stationManagerRepository = stationManagerRepository;
_configService = configService;
_inboundOrderRepository = inboundOrderRepository;
+ _outboundorderRepository = outboundorderRepository;
}
public Task StartAsync(CancellationToken cancellationToken)
@@ -55,22 +57,21 @@
{
try
{
+ #region 鍏ュ簱鍗曟嵁鍚屾
List<WMS_閲囪喘鍏ユ垚鍝佸叆搴撹嚜鍔ㄦ墦鍗版竻鍗昣ST> ERPPrintChecklist =SqlSugarHelper.DBERP.Queryable<WMS_閲囪喘鍏ユ垚鍝佸叆搴撹嚜鍔ㄦ墦鍗版竻鍗昣ST>().Where(x => true).ToList();
-
var printCheckList = _inboundOrderRepository.QueryData(x => true);
List<Dt_InboundOrder> inboundOrderAdd = new List<Dt_InboundOrder>();
List<Dt_InboundOrder> inboundOrderUpdate = new List<Dt_InboundOrder>();
- if (ERPPrintChecklist != null) return;
foreach (var item in ERPPrintChecklist)
{
- var x = printCheckList.Where(x => x.MaterialNo == item.鏂欏彿 && x.OrderNo == item.鍗曞彿 && x.WarehouseName == item.鍏ュ簱浠撳簱鍚嶇О).FirstOrDefault();
+ var x = printCheckList.Where(x => x.MaterialNo == item.鏂欏彿 && x.UpperOrderNo == item.鍗曞彿 && x.WarehouseName == item.鍏ュ簱浠撳簱鍚嶇О).FirstOrDefault();
if (x == null)
{
Dt_InboundOrder Print = new Dt_InboundOrder()
{
- PrintCode = GetOrderPintCode(),
- OrderNo = item.鍗曞彿,
+ OrderNo = GetOrderPintCode("OrderNoIn"),
+ UpperOrderNo = item.鍗曞彿,
DemandClassification = item.闇�姹傚垎绫�,
OrderType = item.鍗曟嵁绫诲瀷,
WarehouseName = item.鍏ュ簱浠撳簱鍚嶇О,
@@ -91,10 +92,10 @@
}
else
{
- if (x.PrintCode == null || x.PrintCode == "")
+ if (x.OrderNo == null || x.OrderNo == "")
{
- x.PrintCode = GetOrderPintCode();
- x.OrderNo = item.鍗曞彿;
+ x.OrderNo = GetOrderPintCode("OrderNoIn");
+ x.UpperOrderNo = item.鍗曞彿;
x.DemandClassification = item.闇�姹傚垎绫�;
x.OrderType = item.鍗曟嵁绫诲瀷;
x.WarehouseName = item.鍏ュ簱浠撳簱鍚嶇О;
@@ -121,6 +122,42 @@
{
_inboundOrderRepository.UpdateData(inboundOrderUpdate);
}
+ #endregion
+
+ var OutBoundOrder = _outboundorderRepository.QueryData(x => true);
+ List<Dt_OutboundOrder> outboundOrderAdd = new List<Dt_OutboundOrder>();
+ List<Dt_OutboundOrder> outboundOrderUpdate = new List<Dt_OutboundOrder>();
+
+ #region ERP鐢熶骇棰嗘枡鍗曞悓姝�
+ List<WMS_鐢ㄥ弸宸ョ▼鍙戣揣鍗曚竴瑙堣〃_ST> ERPMaterialRequisition = SqlSugarHelper.DBERP.Queryable<WMS_鐢ㄥ弸宸ョ▼鍙戣揣鍗曚竴瑙堣〃_ST>().Where(x => true).ToList();
+ foreach (var item in ERPMaterialRequisition)
+ {
+ var x = OutBoundOrder.Where(x => x.MaterielCode == item.瀛愪欢鏂欏彿 && x.UpperOrderNo == item.鍗曞彿).FirstOrDefault();
+ if(x == null)
+ {
+ Dt_OutboundOrder outOrder = new Dt_OutboundOrder()
+ {
+ OrderNo = GetOrderPintCode("OrderNoOut"),
+ UpperOrderNo = item.鍗曞彿,
+ MaterielCode = item.瀛愪欢鏂欏彿,
+ MaterielName = item.瀛愪欢鍝佸悕,
+ DemandClassification = item.闇�姹傚悕绉�,
+ OrderQuantity = item.瀛愪欢瀹為檯鐢ㄩ噺,
+ OverOutQuantity = item.瀛愪欢鍙戞斁鏁伴噺,
+ NotOutQuantity = item.瀛愪欢鏈彂鏁伴噺,
+ OrderStatus =(int)OrderStateEmun.鏈紑濮�,
+ OrderType =(int)OrderTypeEmun.鐢熶骇棰嗘枡鍗�,
+ CreateType =(int)OrderCreateTypeEmun.ERP鎺ㄩ��,
+ };
+ outboundOrderAdd.Add(outOrder);
+ }
+ }
+
+ #endregion
+ if (outboundOrderAdd.Count > 0)
+ {
+ _outboundorderRepository.AddData(outboundOrderAdd);
+ }
}
catch (Exception ex)
{
@@ -128,10 +165,10 @@
}
}
- public string GetOrderPintCode()
+ public string GetOrderPintCode(string printCode)
{
string PrintCode = "";
- var PrintSetting = SqlSugarHelper.DbWMS.Queryable<Dt_PrintSetting>().Where(x => x.PrintCode == "OrderNo").ToList().FirstOrDefault();
+ var PrintSetting = SqlSugarHelper.DbWMS.Queryable<Dt_PrintSetting>().Where(x => x.PrintCode == printCode).ToList().FirstOrDefault();
if (PrintSetting.Spare1 == DateTime.Now.ToString("yyyyMMdd"))
{
@@ -142,7 +179,7 @@
{
PrintSetting.Spare1 = DateTime.Now.ToString("yyyyMMdd");
PrintSetting.PrintNo = 2;
- PrintCode = PrintSetting.PrintCode + PrintSetting.Spare1 + 1.ToString().PadLeft(PrintSetting.Spare2, '0');
+ PrintCode = PrintSetting.Spare1 + 1.ToString().PadLeft(PrintSetting.Spare2, '0');
}
SqlSugarHelper.DbWMS.Updateable(PrintSetting).ExecuteCommand();
return PrintCode;
--
Gitblit v1.9.3