From 0ac24686e0ea025e499f7055d591bc1251bbb3f5 Mon Sep 17 00:00:00 2001
From: Administrator <Administrator@DESKTOP-5BIMHQ3>
Date: 星期三, 06 三月 2024 09:10:38 +0800
Subject: [PATCH] 出库流程问题修改
---
Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs | 95 ++++++++++++++++++++++++++++++++++-------------
1 files changed, 69 insertions(+), 26 deletions(-)
diff --git a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
index e09c0ca..1c6e0ff 100644
--- a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
+++ b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
@@ -204,10 +204,18 @@
{
throw new Exception("鏈煡璇㈠埌鍗曟嵁淇℃伅");
}
+ if (notice.Status != "5")
+ {
+ throw new Exception("澶嶆牳澶辫触锛屽崟鎹潪鍏抽棴鐘舵��");
+ }
var detail = Db.Queryable<BllExportNoticeDetail>().Where(m => m.SONo == notice.SONo && m.IsDel == "0").ToList();
if (detail.Count == 0)
{
throw new Exception("鏈煡璇㈠埌鍗曟嵁鏄庣粏淇℃伅");
+ }
+ if (userId == notice.UpdateUser)
+ {
+ throw new Exception("澶嶆牳澶辫触锛屽鏍镐汉鍛樺拰鍏抽棴璁㈠崟浜哄憳涓嶈兘鐩稿悓锛�");
}
var list = new List<SoDetail>();
foreach (var d in detail)
@@ -216,7 +224,7 @@
{
SkuNo = d.SkuNo,
LotNo = d.LotNo,
- Qty = int.Parse(d.CompleteQty.ToString())
+ Qty = (decimal)d.CompleteQty
};
list.Add(item);
}
@@ -225,21 +233,25 @@
OrderCode = notice.OrderCode,
SoDetails = list
};
- // 閫氳繃鎺ュ彛鍙戦�佽嚦erp
- var jsonData = JsonConvert.SerializeObject(soInfo);
+ #region 閫氳繃鎺ュ彛鍙戦�佽嚦erp
+ //绯荤粺瀵规帴鍚庢斁寮�
+ /*var jsonData = JsonConvert.SerializeObject(soInfo);
var response = HttpHelper.DoPost(url, jsonData, "鍑哄簱鍗曞畬鎴愪笂浼�", "ERP");
-
- //瑙f瀽杩斿洖鏁版嵁
- var obj = JsonConvert.DeserializeObject<ErpModel>(response);
+
+ var obj = JsonConvert.DeserializeObject<ErpModel>(response);//瑙f瀽杩斿洖鏁版嵁
if (obj.Success != 0)
{
throw new Exception("涓婁紶澶辫触" + obj.Message);
- }
+ }*/
+ #endregion
+
notice.Status = "6";
- notice.UpdateTime = DateTime.Now;
- notice.UpdateUser = userId;
+ notice.CheckTime = DateTime.Now;
+ notice.CheckUser = userId;
Db.Updateable(notice).ExecuteCommand();
+
+ new OperationSOServer().AddLogOperationSo("鍑哄簱浣滀笟", "鍑哄簱鍗曟嵁", notice.SONo, "澶嶆牳", $"澶嶆牳浜嗗崟鎹彿涓簕notice.SONo}鐨勫崟鎹俊鎭�", userId);
return true;
}
catch (Exception e)
@@ -348,6 +360,9 @@
break;
case "6"://浠e偍鍑哄簱
skuType = "(2)";
+ break;
+ case "8"://瀵勫瓨鍑哄簱
+ skuType = "(3)";
break;
default: //鍏跺畠鍑哄簱
skuType = "(0,1,2,3,4)";
@@ -1047,10 +1062,6 @@
{
throw new Exception("鍙傛暟寮傚父,璇锋鏌ョ姸鎬佹槸鍚︿负鎵ц瀹屾垚鎴栬鍗曞叧闂�/宸蹭笂浼�");
}
- if (userId == notice.UpdateUser)
- {
- throw new Exception("澶嶆牳澶辫触锛屽鏍镐汉鍛樺拰鍏抽棴璁㈠崟浜哄憳涓嶈兘鐩稿悓锛�");
- }
//鍑哄簱鍗曟槑缁�
var comDetail = Db.Queryable<BllCompleteDetail>().Where(m => m.IsDel == "0" && m.SONo == notice.SONo).Select(m => m.BoxNo3).ToList();
Db.BeginTran();//寮�鍚簨鍔�
@@ -1065,13 +1076,8 @@
//}
var dom = HttpHelper.EncodeParsToFuMa(comDetail, "ceshi", "ExInfoXml");
-
- notice.Status = "6";//鐘舵�侊細宸蹭笂浼�
- notice.CheckTime = DateTime.Now;//澶嶆牳鏃堕棿
- notice.CheckUser = userId;//澶嶆牳浜�
- Db.Updateable(notice).ExecuteCommand();
////娣诲姞鎿嶄綔鏃ュ織璁板綍
- var k = new OperationSOServer().AddLogOperationSo("鍑哄簱浣滀笟", "鍑哄簱鍗曟嵁", notice.SONo, "澶嶆牳", $"澶嶆牳浜嗗崟鎹彿涓簕notice.SONo}鐨勫崟鎹俊鎭�", userId);
+ //var k = new OperationSOServer().AddLogOperationSo("鍑哄簱浣滀笟", "鍑哄簱鍗曟嵁", notice.SONo, "鍏冲崟", $"鍏抽棴浜嗗崟鎹彿涓簕notice.SONo}鐨勫崟鎹俊鎭�", userId);
Db.CommitTran();
return dom;
@@ -1373,7 +1379,7 @@
#region 涓嬪彂鍑哄簱銆佸嚭搴撳畬鎴愩�侀噸鏂颁笅鍙戜换鍔°�佸彇娑堜换鍔°�佸紓甯稿鐞�
// 涓嬪彂鍑哄簱锛堣皟鐢╟s鎺ュ彛缁欎粬搴撲綅鍦板潃锛�
- public List<OutCommandDto> IssueOutHouse(string soNo, string outMode, int userId, string url, out string str)
+ public List<OutCommandDto> IssueOutHouse(string soNo, string unstackingMode, string outMode, string loadingAddre, int userId, string url, out string str)
{
try
{
@@ -1403,6 +1409,10 @@
var outLpnList = list.Select(m => m.PalletNo).ToList();
//瑕佸嚭搴撶殑鏄庣粏闆嗗悎
var outStockDetail = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && outLpnList.Contains(m.PalletNo)).ToList();
+ //鐗╂枡缂栫爜琛�
+ var skuList = Db.Queryable<SysMaterials>().Where(w => w.IsDel == "0");
+ //鍖呰琛�
+ var packagList = Db.Queryable<SysPackag>().Where(w => w.IsDel == "0");
Db.BeginTran();
try
{
@@ -1410,6 +1420,36 @@
//寰幆鍒嗛厤鐨勪俊鎭敓鎴愬嚭搴撲换鍔�
foreach (var item in list)
{
+ string toLocation = string.Empty;//鐩爣浣嶇疆
+ string unstackingMode2 = unstackingMode;//鎷嗗灈鏂瑰紡锛�0:鏈哄櫒浜烘媶鍨� 1:PDA鎷嗗灈
+ #region 鍒ゆ柇鏄惁闇�瑕佹媶绠�
+ var skuInfo = skuList.First(w => w.SkuNo == item.SkuNo);
+ if (skuInfo == null)
+ {
+ throw new Exception("鐗╂枡淇℃伅涓嶅瓨鍦紒");
+ }
+ var packagInfo = packagList.First(w => w.PackagNo == skuInfo.PackagNo);
+ if (packagInfo == null)
+ {
+ throw new Exception("鍖呰淇℃伅涓嶅瓨鍦紒");
+ }
+ if (packagInfo.L2Name == "绠�")
+ {
+ if (item.Qty % (decimal)packagInfo.L2Num != 0)//鑳芥暣闄よ鏄庝笉鐢ㄦ媶绠憋紝涓嶈兘鏁撮櫎璇存槑闇�瑕佹媶绠�
+ {
+ unstackingMode2 = "1";//闇�瑕佹媶绠遍渶璧癙DA鎷嗗灈
+ }
+ }
+ #endregion
+ if (unstackingMode2 == "0")//鏈哄櫒浜烘媶鍨�
+ {
+ toLocation = loadingAddre;//瑁呰溅鍙�
+ }
+ else //PDA鎷嗗灈
+ {
+ toLocation = outMode;//鍑哄簱鍙�
+ }
+
// 鍌ㄤ綅鍙�
var locateNo = outStockDetail.First(m => m.PalletNo == item.PalletNo).LocatNo;
@@ -1509,7 +1549,7 @@
IsSuccess = 0, //鏄惁涓嬪彂鎴愬姛 0澶辫触 1鎴愬姛
StartLocat = locate.LocatNo,//璧峰浣嶇疆
- EndLocat = outMode,//鐩爣浣嶇疆
+ EndLocat = toLocation,//outMode,//鐩爣浣嶇疆
PalletNo = item.PalletNo,//鎵樼洏鐮�
IsSend = 1,//鏄惁鍙啀娆′笅鍙�
IsCancel = 1,//鏄惁鍙彇娑�
@@ -1517,7 +1557,7 @@
Type = "1",//浠诲姟绫诲瀷 0 鍏ュ簱浠诲姟 1 鍑哄簱浠诲姟 2 绉诲簱浠诲姟
Status = "0",//浠诲姟鐘舵��0锛氱瓑寰呮墽琛�1姝e湪鎵ц2鎵ц瀹屾垚
OrderType = "1",//0 鍏ュ簱鍗� 1 鍑哄簱鍗� 2 鐩樼偣鍗� 3 绉诲簱鍗�
- Msg = "浠�" + locate.LocatNo + "鍒�" + outMode + "鐨勫嚭搴撲换鍔�", //鍏抽敭淇℃伅
+ Msg = "浠�" + locate.LocatNo + "鍒�" + toLocation + "鐨勫嚭搴撲换鍔�", //鍏抽敭淇℃伅
};
Db.Insertable(exTask).ExecuteCommand();
logTaskList.Add(exTask);
@@ -1527,7 +1567,7 @@
PalletNo = item.PalletNo,//鎵樼洏鍙�
StartLocate = locate.LocatNo, // 璧峰浣嶇疆
StartRoadway = locate.RoadwayNo,//鍏跺疄宸烽亾
- EndLocate = outMode, // 鐩爣浣嶇疆
+ EndLocate = toLocation,//outMode, // 鐩爣浣嶇疆
TaskNo = exTask.TaskNo, // 浠诲姟鍙�
TaskType = "1",// 浠诲姟绫诲瀷 (鍑哄簱)
OutMode = "", //鐩爣鍦板潃
@@ -1561,9 +1601,10 @@
item.TaskNo = exTask.TaskNo; // 鍑哄簱鍒嗛厤淇℃伅涓洿鏂颁换鍔″彿
item.Status = "1"; // 鍑哄簱鍒嗛厤淇℃伅鐘舵�佹敼涓烘鍦ㄦ墽琛�
- item.OutMode = outMode;//鍑哄簱鍙�
+ item.UnstackingMode = unstackingMode2;//鎷嗗灈鏂瑰紡
+ item.OutMode = unstackingMode2 == "1" ? outMode : "";//鍑哄簱鍙�
+ item.LoadingAddre = unstackingMode2 == "0" ? loadingAddre : "";//瑁呰溅鍙�
Db.Updateable(item).ExecuteCommand();
-
#endregion
@@ -1604,7 +1645,8 @@
}
item.TaskNo = taskNo.TaskNo;
item.Status = "1"; // 鍑哄簱鍒嗛厤淇℃伅鐘舵�佹敼涓烘鍦ㄦ墽琛�
- item.OutMode = taskNo.EndLocat;
+ item.OutMode = unstackingMode2 == "1" ? taskNo.EndLocat : "";//鍑哄簱鍙�
+ item.LoadingAddre = unstackingMode2 == "0" ? taskNo.EndLocat : "";//瑁呰溅鍙�
Db.Updateable(item).ExecuteCommand();
flagList.Add(0);
#endregion
@@ -2570,6 +2612,7 @@
LocatNo = a.LocatNo,
RoadwayNo = a.RoadwayNo,
PalletNo = a.PalletNo,
+ Demo = a.Demo,
}).ToList();
return list;
--
Gitblit v1.8.0