From d7f5e3607825e621b40820d505b8ed0bb4e06125 Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期四, 26 十二月 2024 15:19:30 +0800
Subject: [PATCH] 修改问题
---
Wms/WMS.BLL/BllTransServer/RcsServer.cs | 113 +++++++++++++++++++++++++++----------
Wms/Model/InterFaceModel/RCSModel.cs | 2
Wms/Wms/Controllers/DownApiController.cs | 14 ++--
3 files changed, 91 insertions(+), 38 deletions(-)
diff --git a/Wms/Model/InterFaceModel/RCSModel.cs b/Wms/Model/InterFaceModel/RCSModel.cs
index 9178884..a210cb3 100644
--- a/Wms/Model/InterFaceModel/RCSModel.cs
+++ b/Wms/Model/InterFaceModel/RCSModel.cs
@@ -28,7 +28,7 @@
public class Pallnetmsg
{
/// <summary>
- /// 璁惧鎵�鍦ㄤ綅缃紙璧峰浣嶇疆/鐩爣浣嶇疆锛夛紝璁惧缂栫爜
+ /// 璁惧缂栫爜
/// </summary>
public string Location { get; set; }
/// <summary>
diff --git a/Wms/WMS.BLL/BllTransServer/RcsServer.cs b/Wms/WMS.BLL/BllTransServer/RcsServer.cs
index 6913032..9802cee 100644
--- a/Wms/WMS.BLL/BllTransServer/RcsServer.cs
+++ b/Wms/WMS.BLL/BllTransServer/RcsServer.cs
@@ -392,43 +392,49 @@
try
{
string taskMsg = "";
- //鏌ユ壘璇ユ《鏈夋病鏈夋鍦ㄦ墽琛岀殑浠诲姟
- var tasking = Db.Queryable<LogTask>().First(w => w.IsDel == "0" && w.Status == "1" && w.PalletNo == model.PalletNo);
- if (tasking != null)
- {
- throw new Exception($"璇ユ《鏈夋鍦ㄦ墽琛岀殑浠诲姟锛孭alletNo:{model.PalletNo}");
- }
+
//閫氳繃璁惧鍙锋煡鎵惧埌鎵�灞炶澶囷紙鍖哄煙锛�
var deviceInfo = Db.Queryable<SysStorageArea>().First(w => w.IsDel == "0" && w.DeviceCode.Contains(model.Location));
if (deviceInfo == null)
{
throw new Exception("璁惧淇℃伅涓嶅瓨鍦�");
}
- var houseNo = deviceInfo.WareHouseNo;//鐢宠鍌ㄤ綅璁惧鎵�鍦ㄨ溅闂寸紪鍙�
+ //鐢宠鍌ㄤ綅璁惧鎵�鍦ㄨ溅闂寸紪鍙�
+ var houseNo = deviceInfo.WareHouseNo;
//璁惧鎵�鍦ㄥ偍浣嶄俊鎭紙璧峰鍌ㄤ綅锛�
- var deviceLocatInfo = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.WareHouseNo == houseNo && w.AreaNo == deviceInfo.AreaNo);
- if (deviceLocatInfo == null)
- {
- throw new Exception($"鏈煡璇㈠埌璇ヨ澶囨墍鍦ㄥ偍浣嶄俊鎭紝Location:{model.Location}");
- }
-
- var noticeno = "0";//鍑哄叆搴撳崟鎹槑缁咺D
+ var deviceLocatInfo = new SysStorageLocat();
+ //鍑哄叆搴撳崟鎹槑缁咺D
+ var noticeno = "0";
+ //鐩爣鍌ㄤ綅淇℃伅
+ var loction = new SysStorageLocat();
//妗跺簱瀛樹俊鎭�
- var palletInfo = Db.Queryable<DataStockDetail>().First(w => w.IsDel == "0" && w.PalletNo == model.PalletNo);
- if (palletInfo == null)
- {
- throw new Exception($"鏈煡璇㈠埌璇ユ《鐨勫簱瀛樹俊鎭紝PalletNo:{model.PalletNo}");
- }
+ var palletInfo = new DataStockDetail();
- var storageLocat = Db.Queryable<SysStorageLocat>().Where(w => w.IsDel == "0" && w.Status == "0");
//寮�鍚簨鍔�
Db.BeginTran();
-
- SysStorageLocat loction = new SysStorageLocat();//鐩爣鍌ㄤ綅淇℃伅
switch (model.Type)
{
case "3"://娓呮礂璁惧鐢宠鍌ㄤ綅锛堝噣妗剁敵璇峰偍浣嶏級
{
+ //璁惧鏀炬《鍌ㄤ綅淇℃伅锛堝師濮嬪彨妗剁洰鏍囧偍浣嶏級
+ var deviceLocatInfo2 = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.WareHouseNo == houseNo && w.AreaNo == deviceInfo.AreaNo && w.Column == 1);// Column=1 娓呮礂鍌ㄤ綅锛孋olumn=2 娓呮礂瀹屾枡鍌ㄤ綅
+ if (deviceLocatInfo2 == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌璇ヨ澶囨墍鍦ㄥ偍浣嶄俊鎭紝Location:{model.Location}");
+ }
+ //鏌ユ壘妗跺簱瀛樹俊鎭�
+ palletInfo = Db.Queryable<DataStockDetail>().Where(w => w.IsDel == "0" && w.WareHouseNo == deviceLocatInfo2.WareHouseNo && w.AreaNo == deviceLocatInfo2.AreaNo && w.LocatNo == deviceLocatInfo2.LocatNo).OrderBy(o => o.UpdateTime).First();
+ if (palletInfo == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌璇ヨ澶囦笂妗剁殑搴撳瓨淇℃伅");
+ }
+ //鏌ユ壘璇ユ《鏈夋病鏈夋鍦ㄦ墽琛岀殑浠诲姟
+ var tasking = Db.Queryable<LogTask>().First(w => w.IsDel == "0" && w.Status == "1" && w.PalletNo == palletInfo.PalletNo);
+ if (tasking != null)
+ {
+ throw new Exception($"璇ユ《鏈夋鍦ㄦ墽琛岀殑浠诲姟锛孭alletNo:{palletInfo.PalletNo}");
+ }
+
//璁惧鎵�鍦ㄥ偍浣嶄俊鎭紙璧峰鍌ㄤ綅锛�
deviceLocatInfo = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.WareHouseNo == houseNo && w.AreaNo == deviceInfo.AreaNo && w.Column == 2);// Column=1 娓呮礂鍌ㄤ綅锛孋olumn=2 娓呮礂瀹屾枡鍌ㄤ綅
if (deviceLocatInfo == null)
@@ -453,6 +459,23 @@
{
throw new Exception($"鏈煡璇㈠埌璇ヨ澶囨墍鍦ㄥ偍浣嶄俊鎭紝Location:{model.Location}");
}
+ //鏌ユ壘妗跺簱瀛樹俊鎭�
+ palletInfo = Db.Queryable<DataStockDetail>().Where(w => w.IsDel == "0" && w.WareHouseNo == deviceLocatInfo.WareHouseNo && w.AreaNo == deviceLocatInfo.AreaNo && w.LocatNo == deviceLocatInfo.LocatNo).OrderBy(o => o.UpdateTime).First();
+ if (palletInfo == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌璇ヨ澶囦笂妗剁殑搴撳瓨淇℃伅");
+ }
+ palletInfo.LotNo = model.LotNo;//鎵规鍙�
+ //鏇存柊妗跺簱瀛樹俊鎭�
+ Db.Updateable(palletInfo).ExecuteCommand();
+
+ //鏌ユ壘璇ユ《鏈夋病鏈夋鍦ㄦ墽琛岀殑浠诲姟
+ var tasking = Db.Queryable<LogTask>().First(w => w.IsDel == "0" && w.Status == "1" && w.PalletNo == palletInfo.PalletNo);
+ if (tasking != null)
+ {
+ throw new Exception($"璇ユ《鏈夋鍦ㄦ墽琛岀殑浠诲姟锛孭alletNo:{palletInfo.PalletNo}");
+ }
+
//鍒ゆ柇鏄惁鏈夋壒娆″彿
if (string.IsNullOrWhiteSpace(model.LotNo))
{
@@ -464,9 +487,7 @@
{
throw new Exception("璇ヨ溅闂撮娣峰尯鏆傛棤绌轰綑鍌ㄤ綅");
}
- palletInfo.LotNo = model.LotNo;//鎵规鍙�
- //鏇存柊妗跺簱瀛樹俊鎭�
- Db.Updateable(palletInfo).ExecuteCommand();
+
taskMsg = "鎺ユ枡璁惧锛堥娣锋枡妗讹級鐢宠鍌ㄤ綅浠诲姟";
}
@@ -479,6 +500,19 @@
{
throw new Exception($"鏈煡璇㈠埌璇ヨ澶囨墍鍦ㄥ偍浣嶄俊鎭紝Location:{model.Location}");
}
+ //鏌ユ壘妗跺簱瀛樹俊鎭�
+ palletInfo = Db.Queryable<DataStockDetail>().Where(w => w.IsDel == "0" && w.WareHouseNo == deviceLocatInfo.WareHouseNo && w.AreaNo == deviceLocatInfo.AreaNo && w.LocatNo == deviceLocatInfo.LocatNo).OrderBy(o => o.UpdateTime).First();
+ if (palletInfo == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌璇ヨ澶囦笂妗剁殑搴撳瓨淇℃伅");
+ }
+ //鏌ユ壘璇ユ《鏈夋病鏈夋鍦ㄦ墽琛岀殑浠诲姟
+ var tasking = Db.Queryable<LogTask>().First(w => w.IsDel == "0" && w.Status == "1" && w.PalletNo == palletInfo.PalletNo);
+ if (tasking != null)
+ {
+ throw new Exception($"璇ユ《鏈夋鍦ㄦ墽琛岀殑浠诲姟锛孭alletNo:{palletInfo.PalletNo}");
+ }
+
//鍒ゆ柇鏄惁鏈夋壒娆″彿
if (string.IsNullOrWhiteSpace(model.LotNo))
{
@@ -498,7 +532,7 @@
throw new Exception("璇ユ壒娆℃病鏈夊搴旂殑鍏ュ簱鍗�");
}
notice.Status = "1";//姝e湪鎵ц
- //鏇存柊鍏ュ簱鍗曠姸鎬�
+ //鏇存柊鍏ュ簱鍗曠姸鎬�
Db.Updateable(notice).ExecuteCommand();
//鏌ユ壘鍒拌杞﹂棿鍗婃垚鍝佸尯
@@ -513,10 +547,28 @@
break;
case "2"://涓嬫枡璁惧鐢宠鍌ㄤ綅锛堣剰妗剁敵璇峰偍浣嶏級
{
+ //璁惧鏀炬《鍌ㄤ綅淇℃伅锛堝師濮嬪彨妗剁洰鏍囧偍浣嶏級
+ var deviceLocatInfo2 = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.WareHouseNo == houseNo && w.AreaNo == deviceInfo.AreaNo && w.Column == 1);// Column=1 鎶曟枡鍌ㄤ綅锛孋olumn=2 鎶曞畬鏂欏偍浣�
+ if (deviceLocatInfo2 == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌璇ヨ澶囨墍鍦ㄥ偍浣嶄俊鎭紝Location:{model.Location}");
+ }
+ //鏌ユ壘妗跺簱瀛樹俊鎭�
+ palletInfo = Db.Queryable<DataStockDetail>().Where(w => w.IsDel == "0" && w.WareHouseNo == deviceLocatInfo2.WareHouseNo && w.AreaNo == deviceLocatInfo2.AreaNo && w.LocatNo == deviceLocatInfo2.LocatNo).OrderBy(o => o.UpdateTime).First();
+ if (palletInfo == null)
+ {
+ throw new Exception($"鏈煡璇㈠埌璇ヨ澶囦笂妗剁殑搴撳瓨淇℃伅");
+ }
+ //鏌ユ壘璇ユ《鏈夋病鏈夋鍦ㄦ墽琛岀殑浠诲姟
+ var tasking = Db.Queryable<LogTask>().First(w => w.IsDel == "0" && w.Status == "1" && w.PalletNo == palletInfo.PalletNo);
+ if (tasking != null)
+ {
+ throw new Exception($"璇ユ《鏈夋鍦ㄦ墽琛岀殑浠诲姟锛孭alletNo:{palletInfo.PalletNo}");
+ }
if (houseNo == "M04")//闄や簡鍠峰共杞﹂棿涓嬫枡鍙i兘鏄�2涓偍浣嶏紙鎶曟枡鍌ㄤ綅銆佹姇瀹屾枡鍌ㄤ綅锛�
{
//璁惧鎵�鍦ㄥ偍浣嶄俊鎭紙璧峰鍌ㄤ綅锛�
- deviceLocatInfo = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.WareHouseNo == houseNo && w.AreaNo == deviceInfo.AreaNo);
+ deviceLocatInfo = Db.Queryable<SysStorageLocat>().First(w => w.IsDel == "0" && w.WareHouseNo == houseNo && w.AreaNo == deviceInfo.AreaNo && w.Column == 1);
}
else
{
@@ -551,7 +603,7 @@
//BackDate = DateTime.Now, //杩斿洖鏃堕棿
StartLocat = deviceLocatInfo.LocatNo,//璧峰浣嶇疆
EndLocat = loction.LocatNo,//鐩爣浣嶇疆
- PalletNo = model.PalletNo,//妗跺彿
+ PalletNo = palletInfo.PalletNo,//妗跺彿
IsSend = 1,//鏄惁鍙啀娆′笅鍙�
IsCancel = 1,//鏄惁鍙彇娑�
IsFinish = 1,//鏄惁鍙畬鎴�
@@ -566,7 +618,7 @@
Taskno = taskNo,//浠诲姟鍙�
Startport = deviceLocatInfo.LocatNo,
Endport = loction.LocatNo,
- Pallno = model.PalletNo,
+ Pallno = palletInfo.PalletNo,
Crtype = "0",//鍏ュ簱
WareHouseNo = houseNo
};
@@ -807,7 +859,8 @@
stockDetail.WareHouseNo = endLocatInfo.WareHouseNo;//鎵�灞炰粨搴�
stockDetail.RoadwayNo = endLocatInfo.RoadwayNo;//鎵�灞炲贩閬�
stockDetail.AreaNo = endLocatInfo.AreaNo;//鎵�灞炲尯鍩�
- stockDetail.LocatNo = endLocatInfo.LocatNo;//鍌ㄤ綅鍦板潃
+ stockDetail.LocatNo = endLocatInfo.LocatNo;//鍌ㄤ綅鍦板潃
+ stockDetail.UpdateTime = DateTime.Now;//鏇存柊鏃堕棿
if (endAreaInfo.Type == "0")//娲佸噣鍖�
{
stockDetail.PalletStatus = "0";
diff --git a/Wms/Wms/Controllers/DownApiController.cs b/Wms/Wms/Controllers/DownApiController.cs
index 42bd8ac..a4e3fb8 100644
--- a/Wms/Wms/Controllers/DownApiController.cs
+++ b/Wms/Wms/Controllers/DownApiController.cs
@@ -730,13 +730,13 @@
LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData3} ),", logStr);
return Ok(resultModel);
}
- if (string.IsNullOrWhiteSpace(pallmsg.PalletNo))
- {
- resultModel = new AgvResultModel { code = "1", message = "鐢宠妗跺彿涓虹┖!", data = "", reqCode = "" };
- var jsonData3 = JsonConvert.SerializeObject(resultModel);
- LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData3} ),", logStr);
- return Ok(resultModel);
- }
+ //if (string.IsNullOrWhiteSpace(pallmsg.PalletNo))
+ //{
+ // resultModel = new AgvResultModel { code = "1", message = "鐢宠妗跺彿涓虹┖!", data = "", reqCode = "" };
+ // var jsonData3 = JsonConvert.SerializeObject(resultModel);
+ // LogFile.SaveLogToFile($"AGV鐢宠鍌ㄤ綅-杩斿洖鎶ユ枃锛�( {jsonData3} ),", logStr);
+ // return Ok(resultModel);
+ //}
string taskNo = "";
//鍏蜂綋澶勭悊鏂规硶
_rcsserver.ApplyLocatNo(pallmsg, _config.AgvHost + _config.GenAgvSchedulingTask, out taskNo);
--
Gitblit v1.8.0