From 23e4f986644298cb23ac43173414b7e1404b6657 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期六, 15 六月 2024 17:26:23 +0800
Subject: [PATCH] 任务逻辑优化
---
代码管理/WMS/WMS_Server/WIDESEA_WMS/Services/system/Partial/dt_inventoryService.cs | 122 ++++++++++++++++++----------------------
1 files changed, 56 insertions(+), 66 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/system/Partial/dt_inventoryService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/system/Partial/dt_inventoryService.cs"
index 64201bf..9ec980a 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/system/Partial/dt_inventoryService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WMS/Services/system/Partial/dt_inventoryService.cs"
@@ -187,34 +187,31 @@
toWarehouseName = "Agv搴�",
Operator = UserContext.Current.UserName,
};
+ Idt_info_to_mesRepository mesRepository = new dt_info_to_mesRepository(context);
+
var postJson = JsonConvert.SerializeObject(moveWarehousePara);
- var mesData = Request.RequestData(postJson, MESAPIAddress.IPAddress_MES + "agvMoveWarehouse");
- if (mesData.Contains("杩炴帴灏濊瘯澶辫触"))
- throw new Exception(mesData);
- MES_Response requestMes = JsonConvert.DeserializeObject<MES_Response>(mesData);
- if (requestMes.code == "200" && requestMes.Type == "success")
+ dt_info_to_mes info_To_Mes = new dt_info_to_mes()
{
- //鏃ュ織璁板綍涓婁紶鏁版嵁鎴愬姛
- WriteWMSLog.LogAdd("", "鎴愬姛", "MES", "WMS", postJson, mesData, "浜哄伐鍚屾MES杞﹁疆绉诲簱", "agvMoveWarehouse", requestMes.message);
- inventory.stationCode = stationCode;
- _repository.Update(inventory, true);
- WriteDBLog.Write($"鎵嬪姩绉诲簱搴撳瓨 ", str, LogState.Sucess, "WMS", UserContext.Current.UserName);
- }
- else
- {
- WriteWMSLog.LogAdd("", "澶辫触", "MES", "WMS", postJson, mesData, "浜哄伐鍚屾MES杞﹁疆绉诲簱", "agvMoveWarehouse", requestMes.message);
- throw new Exception("浜哄伐鍚屾MES杞﹁疆绉诲簱澶辫触锛�" + requestMes.message);
- }
+ Info = postJson,
+ ActionName = "agvMoveWarehouse",
+ Createtime = DateTime.Now,
+ Remark = "浜哄伐鍚屾MES杞﹁疆绉诲簱",
+ State = false
+ };
+ mesRepository.Add(info_To_Mes, true);
+
+ inventory.stationCode = stationCode;
+ _repository.Update(inventory, true);
+ WriteDBLog.Write($"浜哄伐绉诲簱", str, LogState.Sucess, "WMS", UserContext.Current.UserName);
content.OK();
}
catch (Exception ex)
{
content.Message = ex.Message;
- WriteDBLog.Write($"鎵嬪姩绉诲簱搴撳瓨 ", new { 閿欒淇℃伅 = ex.Message, 鏁版嵁 = str }, LogState.Error, "WMS", UserContext.Current.UserName);
+ WriteDBLog.Write($"浜哄伐绉诲簱", new { 閿欒淇℃伅 = ex.Message, 鏁版嵁 = str }, LogState.Error, "WMS", UserContext.Current.UserName);
}
return content;
- //return base.Update(saveModel);
}
/// <summary>
/// 鍒犻櫎搴撳瓨
@@ -236,7 +233,6 @@
KeyList.Add(key);
}
var inventoryList = _repository.Find(x => KeyList.Contains(x.ID.ToString())).ToList();
- //str = $"{string.Join('銆�', inventoryList.Select(t => t.SN).ToArray())}";
foreach (var inventorys in inventoryList.GroupBy(x => x.stationCode))
{
try
@@ -251,78 +247,72 @@
}
agvInWarehousePara outWarehousePara = new agvInWarehousePara()
{
- //WorkOrder = task.jobID,
zoneID = inventorys.Key,
- //processCode = task.agv_worktype.ToString(),
details = lists,
layerNo = 1,
stackID = "1",
warehouseName = "Agv搴�",
Operator = UserContext.Current.UserName,
};
+ Idt_info_to_mesRepository mesRepository = new dt_info_to_mesRepository(context);
var postJson = JsonConvert.SerializeObject(outWarehousePara);
- var mesData = Request.RequestData(postJson, MESAPIAddress.IPAddress_MES + "agvOutWarehouse");
- if (mesData.Contains("杩炴帴灏濊瘯澶辫触")) throw new Exception(mesData);
- MES_Response requestMes = JsonConvert.DeserializeObject<MES_Response>(mesData);
- if (requestMes.code == "200" && requestMes.Type == "success")
+ dt_info_to_mes info_To_Mes = new dt_info_to_mes()
{
- //鏃ュ織璁板綍涓婁紶鏁版嵁鎴愬姛
- WriteWMSLog.LogAdd("", "鎴愬姛", "MES", "WMS", postJson, mesData, "浜哄伐鍚屾MES杞﹁疆鍑哄簱", "agvOutWarehouse", requestMes.message);
+ Info = postJson,
+ ActionName = "agvOutWarehouse",
+ Createtime = DateTime.Now,
+ Remark = "浜哄伐鍚屾MES杞﹁疆鍑哄簱",
+ State = false
+ };
+ mesRepository.Add(info_To_Mes, true);
- foreach (var inventory in inventorys)
+ foreach (var inventory in inventorys)
+ {
+ var station = stationinfoRepository.Find(x => x.stationCode == inventory.stationCode).FirstOrDefault();
+ station.quantity = station.quantity - 1;
+ if (station.quantity < 1)
{
- var station = stationinfoRepository.Find(x => x.stationCode == inventory.stationCode).FirstOrDefault();
- station.quantity = station.quantity - 1;
- if (station.quantity == 0)
- {
- station.stationType = string.Empty;
- station.heatNumber = string.Empty;
- station.Number = string.Empty;
- station.billetID = string.Empty;
- station.bindSN = string.Empty;
- station.enable = false;
- station.tray_status = string.Empty;
- station.location_state = LocationStateEnum.Empty.ToString();
- }
- else
- {
- var bindSNS = station.bindSN.Split(",");
- station.bindSN = ToMesServer.OperStr(bindSNS, inventory.SN);
- var billetS = station.billetID.Split(",");
- station.billetID = ToMesServer.OperStr(billetS, inventory.BilletNumber.ToString());
- }
-
- #region 鍙栨秷璺熻釜DbContext涓璺熻釜鐨勫疄浣�
- var currentEntry = stationinfoRepository.DbContext.ChangeTracker.Entries<dt_stationinfo>().FirstOrDefault();
- if (currentEntry != null) currentEntry.State = EntityState.Detached;
- #endregion
-
- stationinfoRepository.Update(station, true);
- _repository.Delete(inventory, true);
+ station.quantity = 0;
+ station.stationType = string.Empty;
+ station.heatNumber = string.Empty;
+ station.Number = string.Empty;
+ station.billetID = string.Empty;
+ station.bindSN = string.Empty;
+ station.enable = false;
+ station.tray_status = string.Empty;
+ station.location_state = LocationStateEnum.Empty.ToString();
}
- WriteDBLog.Write($"鎵嬪姩鍒犻櫎搴撳瓨 ", $"璐т綅缂栧彿锛歿inventorys.Key}锛汼N鍙凤細{str}", LogState.Sucess, "WMS", UserContext.Current.UserName);
+ else
+ {
+ var bindSNS = station.bindSN.Split(",");
+ station.bindSN = ToMesServer.OperStr(bindSNS, inventory.SN);
+ var billetS = station.billetID.Split(",");
+ station.billetID = ToMesServer.OperStr(billetS, inventory.BilletNumber.ToString());
+ }
+
+ #region 鍙栨秷璺熻釜DbContext涓璺熻釜鐨勫疄浣�
+ var currentEntry = stationinfoRepository.DbContext.ChangeTracker.Entries<dt_stationinfo>().FirstOrDefault();
+ if (currentEntry != null) currentEntry.State = EntityState.Detached;
+ #endregion
+
+ stationinfoRepository.Update(station, true);
+ _repository.Delete(inventory, true);
}
- else
- {
- WriteWMSLog.LogAdd("", "澶辫触", "MES", "WMS", postJson, mesData, "浜哄伐鍚屾MES杞﹁疆鍑哄簱", "agvOutWarehouse", requestMes.message);
- throw new Exception("浜哄伐鍚屾MES杞﹁疆鍑哄簱澶辫触锛�" + requestMes.message);
- }
+ WriteDBLog.Write($"浜哄伐鍑哄簱鎴愬姛 ", $"璐т綅缂栧彿锛歿inventorys.Key}锛汼N鍙凤細{str}", LogState.Sucess, "WMS", UserContext.Current.UserName);
}
catch (Exception ex)
{
content.Message = ex.Message;
- WriteDBLog.Write($"鎵嬪姩鍒犻櫎搴撳瓨 ", new { 閿欒淇℃伅 = ex.Message, 鏁版嵁 = str }, LogState.Error, "WMS", UserContext.Current.UserName);
+ WriteDBLog.Write($"浜哄伐鍑哄簱澶辫触 ", new { 閿欒淇℃伅 = ex.Message, 鏁版嵁 = str }, LogState.Error, "WMS", UserContext.Current.UserName);
}
}
content.OK();
- //content = base.Del(keys, delList);
- //WriteDBLog.Write($"鎵嬪姩鍒犻櫎搴撳瓨 ", str, LogState.Sucess, "WMS", UserContext.Current.UserName);
}
catch (Exception ex)
{
content.Message = ex.Message;
- WriteDBLog.Write($"鎵嬪姩鍒犻櫎搴撳瓨 ", new { 閿欒淇℃伅 = ex.Message, 鏁版嵁 = str }, LogState.Error, "WMS", UserContext.Current.UserName);
+ WriteDBLog.Write($"浜哄伐鍑哄簱澶辫触 ", new { 閿欒淇℃伅 = ex.Message, 鏁版嵁 = str }, LogState.Error, "WMS", UserContext.Current.UserName);
}
return content;
--
Gitblit v1.9.3